@loaders.gl/kml 3.0.10 → 3.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- !function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=2)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"geojsonToBinary",{enumerable:!0,get:function(){return r.geojsonToBinary}}),Object.defineProperty(t,"binaryToGeojson",{enumerable:!0,get:function(){return o.binaryToGeojson}}),Object.defineProperty(t,"binaryToGeoJson",{enumerable:!0,get:function(){return o.binaryToGeoJson}}),Object.defineProperty(t,"binaryToGeometry",{enumerable:!0,get:function(){return o.binaryToGeometry}}),Object.defineProperty(t,"transformBinaryCoords",{enumerable:!0,get:function(){return i.transformBinaryCoords}}),Object.defineProperty(t,"transformGeoJsonCoords",{enumerable:!0,get:function(){return i.transformGeoJsonCoords}});var r=n(6),o=n(7),i=n(8)},function(e,t,n){!function(e){"use strict";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||""}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function r(e){const r={};if(e){const o=n(e,"line");if(o){const e=t(n(o,"color")),i=parseFloat(t(n(o,"opacity"))),a=parseFloat(t(n(o,"width")));e&&(r.stroke=e),isNaN(i)||(r["stroke-opacity"]=i),isNaN(a)||(r["stroke-width"]=96*a/25.4)}}return r}function o(e,r){const o={};let i,a;for(a=0;a<r.length;a++)i=n(e,r[a]),i&&(o[r[a]]=t(i));return o}function i(e){const n=o(e,["name","cmt","desc","type","time","keywords"]),r=e.getElementsByTagNameNS("http://www.garmin.com/xmlschemas/GpxExtensions/v3","*");for(let o=0;o<r.length;o++){const i=r[o];i.parentNode.parentNode===e&&(n[i.tagName.replace(":","_")]=t(i))}const i=e.getElementsByTagName("link");i.length&&(n.links=[]);for(let e=0;e<i.length;e++)n.links.push(Object.assign({href:i[e].getAttribute("href")},o(i[e],["text","type"])));return n}function a(e){const r=[parseFloat(e.getAttribute("lon")),parseFloat(e.getAttribute("lat"))],o=n(e,"ele"),i=n(e,"gpxtpx:hr")||n(e,"hr"),a=n(e,"time");let s;o&&(s=parseFloat(t(o)),isNaN(s)||r.push(s));const l={coordinates:r,time:a?t(a):null,extendedValues:[]};i&&l.extendedValues.push(["heart",parseFloat(t(i))]);const u=n(e,"extensions");if(null!==u)for(const e of["speed","course","hAcc","vAcc"]){const r=parseFloat(t(n(u,e)));isNaN(r)||l.extendedValues.push([e,r])}return l}function s(e){const t=l(e,"rtept");if(t)return{type:"Feature",properties:Object.assign(i(e),r(n(e,"extensions")),{_gpxType:"rte"}),geometry:{type:"LineString",coordinates:t.line}}}function l(e,t){const n=e.getElementsByTagName(t);if(n.length<2)return;const r=[],o=[],i={};for(let e=0;e<n.length;e++){const t=a(n[e]);r.push(t.coordinates),t.time&&o.push(t.time);for(let r=0;r<t.extendedValues.length;r++){const[o,a]=t.extendedValues[r],s="heart"===o?o:o+"s";i[s]||(i[s]=Array(n.length).fill(null)),i[s][e]=a}}return{line:r,times:o,extendedValues:i}}function u(e){const t=e.getElementsByTagName("trkseg"),o=[],a=[],s=[];for(let e=0;e<t.length;e++){const n=l(t[e],"trkpt");n&&(s.push(n),n.times&&n.times.length&&a.push(n.times))}if(0===s.length)return;const u=s.length>1,c=Object.assign(i(e),r(n(e,"extensions")),{_gpxType:"trk"},a.length?{coordinateProperties:{times:u?a:a[0]}}:{});for(let e=0;e<s.length;e++){const t=s[e];o.push(t.line);for(const[n,r]of Object.entries(t.extendedValues)){let t=c;"heart"===n&&(c.coordinateProperties||(c.coordinateProperties={}),t=c.coordinateProperties),u?(t[n]||(t[n]=s.map(e=>new Array(e.line.length).fill(null))),t[n][e]=r):t[n]=r}}return{type:"Feature",properties:c,geometry:u?{type:"MultiLineString",coordinates:o}:{type:"LineString",coordinates:o[0]}}}function*c(e){const t=e.getElementsByTagName("trk"),n=e.getElementsByTagName("rte"),r=e.getElementsByTagName("wpt");for(let e=0;e<t.length;e++){const n=u(t[e]);n&&(yield n)}for(let e=0;e<n.length;e++){const t=s(n[e]);t&&(yield t)}for(let e=0;e<r.length;e++)yield(l=r[e],{type:"Feature",properties:Object.assign(i(l),o(l,["sym"])),geometry:{type:"Point",coordinates:a(l).coordinates}});var l}const f=[["heartRate","heartRates"],["Cadence","cadences"],["Speed","speeds"],["Watts","watts"]],p=[["TotalTimeSeconds","totalTimeSeconds"],["DistanceMeters","distanceMeters"],["MaximumSpeed","maxSpeed"],["AverageHeartRateBpm","avgHeartRate"],["MaximumHeartRateBpm","maxHeartRate"],["AvgSpeed","avgSpeed"],["AvgWatts","avgWatts"],["MaxWatts","maxWatts"]];function d(e,r){const o=[];for(const[i,a]of r){let r=n(e,i);if(!r){const t=e.getElementsByTagNameNS("http://www.garmin.com/xmlschemas/ActivityExtension/v2",i);t.length&&(r=t[0])}const s=parseFloat(t(r));isNaN(s)||o.push([a,s])}return o}function y(e){const r=t(n(e,"LongitudeDegrees")),o=t(n(e,"LatitudeDegrees"));if(!r.length||!o.length)return null;const i=[parseFloat(r),parseFloat(o)],a=n(e,"AltitudeMeters"),s=n(e,"HeartRateBpm"),l=n(e,"Time");let u;return a&&(u=parseFloat(t(a)),isNaN(u)||i.push(u)),{coordinates:i,time:l?t(l):null,heartRate:s?parseFloat(t(s)):null,extensions:d(e,f)}}function g(e,t){const n=e.getElementsByTagName(t),r=[],o=[],i=[];if(n.length<2)return null;const a={extendedProperties:{}};for(let e=0;e<n.length;e++){const t=y(n[e]);if(null!==t){r.push(t.coordinates),t.time&&o.push(t.time),t.heartRate&&i.push(t.heartRate);for(const[r,o]of t.extensions)a.extendedProperties[r]||(a.extendedProperties[r]=Array(n.length).fill(null)),a.extendedProperties[r][e]=o}}return Object.assign(a,{line:r,times:o,heartRates:i})}function m(e){const r=e.getElementsByTagName("Track"),o=[],i=[],a=[],s=[];let l;const u=function(e){const t={};for(const[n,r]of e)t[n]=r;return t}(d(e,p)),c=n(e,"Name");c&&(u.name=t(c));for(let e=0;e<r.length;e++)l=g(r[e],"Trackpoint"),l&&(o.push(l.line),l.times.length&&i.push(l.times),l.heartRates.length&&a.push(l.heartRates),s.push(l.extendedProperties));for(let e=0;e<s.length;e++){const t=s[e];for(const n in t)1===r.length?u[n]=l.extendedProperties[n]:(u[n]||(u[n]=o.map(e=>Array(e.length).fill(null))),u[n][e]=t[n])}if(0!==o.length)return(i.length||a.length)&&(u.coordinateProperties=Object.assign(i.length?{times:1===o.length?i[0]:i}:{},a.length?{heart:1===o.length?a[0]:a}:{})),{type:"Feature",properties:u,geometry:{type:1===o.length?"LineString":"MultiLineString",coordinates:1===o.length?o[0]:o}}}function*h(e){const t=e.getElementsByTagName("Lap");for(let e=0;e<t.length;e++){const n=m(t[e]);n&&(yield n)}const n=e.getElementsByTagName("Courses");for(let e=0;e<n.length;e++){const t=m(n[e]);t&&(yield t)}}const v=/\s*/g,b=/^\s*|\s*$/g,P=/\s+/;function w(e){if(!e||!e.length)return 0;let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return t}function x(e){return e.replace(v,"").split(",").map(parseFloat)}function T(e){return e.replace(b,"").split(P).map(x)}function j(e){if(void 0!==e.xml)return e.xml;if(e.tagName){let t=e.tagName;for(let n=0;n<e.attributes.length;n++)t+=e.attributes[n].name+e.attributes[n].value;for(let n=0;n<e.childNodes.length;n++)t+=j(e.childNodes[n]);return t}return"#text"===e.nodeName?(e.nodeValue||e.value||"").trim():"#cdata-section"===e.nodeName?e.nodeValue:""}const O=["Polygon","LineString","Point","Track","gx:Track"];function S(e,r,o){let i=t(n(r,"color"))||"";const a="stroke"==o||"fill"===o?o:o+"-color";"#"===i.substr(0,1)&&(i=i.substr(1)),6===i.length||3===i.length?e[a]=i:8===i.length&&(e[o+"-opacity"]=parseInt(i.substr(0,2),16)/255,e[a]="#"+i.substr(6,2)+i.substr(4,2)+i.substr(2,2))}function A(e,r,o,i){const a=parseFloat(t(n(r,o)));isNaN(a)||(e[i]=a)}function I(e){let n=e.getElementsByTagName("coord");const r=[],o=[];0===n.length&&(n=e.getElementsByTagName("gx:coord"));for(let e=0;e<n.length;e++)r.push(t(n[e]).split(" ").map(parseFloat));const i=e.getElementsByTagName("when");for(let e=0;e<i.length;e++)o.push(t(i[e]));return{coords:r,times:o}}function F(e,r,o,i){const a=function e(r){let o,i,a,s,l;const u=[],c=[];if(n(r,"MultiGeometry"))return e(n(r,"MultiGeometry"));if(n(r,"MultiTrack"))return e(n(r,"MultiTrack"));if(n(r,"gx:MultiTrack"))return e(n(r,"gx:MultiTrack"));for(a=0;a<O.length;a++)if(i=r.getElementsByTagName(O[a]),i)for(s=0;s<i.length;s++)if(o=i[s],"Point"===O[a])u.push({type:"Point",coordinates:x(t(n(o,"coordinates")))});else if("LineString"===O[a])u.push({type:"LineString",coordinates:T(t(n(o,"coordinates")))});else if("Polygon"===O[a]){const e=o.getElementsByTagName("LinearRing"),r=[];for(l=0;l<e.length;l++)r.push(T(t(n(e[l],"coordinates"))));u.push({type:"Polygon",coordinates:r})}else if("Track"===O[a]||"gx:Track"===O[a]){const e=I(o);u.push({type:"LineString",coordinates:e.coords}),e.times.length&&c.push(e.times)}return{geoms:u,coordTimes:c}}(e);let s;const l={},u=t(n(e,"name")),c=t(n(e,"address"));let f=t(n(e,"styleUrl"));const p=t(n(e,"description")),d=n(e,"TimeSpan"),y=n(e,"TimeStamp"),g=n(e,"ExtendedData");let m=n(e,"IconStyle"),h=n(e,"LabelStyle"),v=n(e,"LineStyle"),b=n(e,"PolyStyle");const P=n(e,"visibility");if(u&&(l.name=u),c&&(l.address=c),f){"#"!==f[0]&&(f="#"+f),l.styleUrl=f,r[f]&&(l.styleHash=r[f]),o[f]&&(l.styleMapHash=o[f],l.styleHash=r[o[f].normal]);const e=i[l.styleHash];e&&(m||(m=n(e,"IconStyle")),h||(h=n(e,"LabelStyle")),v||(v=n(e,"LineStyle")),b||(b=n(e,"PolyStyle")))}if(p&&(l.description=p),d){const e=t(n(d,"begin")),r=t(n(d,"end"));l.timespan={begin:e,end:r}}if(y&&(l.timestamp=t(n(y,"when"))),m){S(l,m,"icon"),A(l,m,"scale","icon-scale"),A(l,m,"heading","icon-heading");const e=n(m,"hotSpot");if(e){const t=parseFloat(e.getAttribute("x")),n=parseFloat(e.getAttribute("y"));isNaN(t)||isNaN(n)||(l["icon-offset"]=[t,n])}const r=n(m,"Icon");if(r){const e=t(n(r,"href"));e&&(l.icon=e)}}if(h&&(S(l,h,"label"),A(l,h,"scale","label-scale")),v&&(S(l,v,"stroke"),A(l,v,"width","stroke-width")),b){S(l,b,"fill");const e=t(n(b,"fill")),r=t(n(b,"outline"));e&&(l["fill-opacity"]="1"===e?l["fill-opacity"]||1:0),r&&(l["stroke-opacity"]="1"===r?l["stroke-opacity"]||1:0)}if(g){const e=g.getElementsByTagName("Data"),r=g.getElementsByTagName("SimpleData");for(s=0;s<e.length;s++)l[e[s].getAttribute("name")]=t(n(e[s],"value"));for(s=0;s<r.length;s++)l[r[s].getAttribute("name")]=t(r[s])}P&&(l.visibility=t(P)),a.coordTimes.length&&(l.coordinateProperties={times:1===a.coordTimes.length?a.coordTimes[0]:a.coordTimes});const w={type:"Feature",geometry:0===a.geoms.length?null:1===a.geoms.length?a.geoms[0]:{type:"GeometryCollection",geometries:a.geoms},properties:l};return e.getAttribute("id")&&(w.id=e.getAttribute("id")),w}function*k(e){const r={},o={},i={},a=e.getElementsByTagName("Placemark"),s=e.getElementsByTagName("Style"),l=e.getElementsByTagName("StyleMap");for(let e=0;e<s.length;e++){const t=w(j(s[e])).toString(16);r["#"+s[e].getAttribute("id")]=t,o[t]=s[e]}for(let e=0;e<l.length;e++){r["#"+l[e].getAttribute("id")]=w(j(l[e])).toString(16);const o=l[e].getElementsByTagName("Pair"),a={};for(let e=0;e<o.length;e++)a[t(n(o[e],"key"))]=t(n(o[e],"styleUrl"));i["#"+l[e].getAttribute("id")]=a}for(let e=0;e<a.length;e++){const t=F(a[e],r,i,o);t&&(yield t)}}e.gpx=function(e){return{type:"FeatureCollection",features:Array.from(c(e))}},e.gpxGen=c,e.kml=function(e){return{type:"FeatureCollection",features:Array.from(k(e))}},e.kmlGen=k,e.tcx=function(e){return{type:"FeatureCollection",features:Array.from(h(e))}},e.tcxGen=h,Object.defineProperty(e,"__esModule",{value:!0})}(t)},function(e,t,n){"use strict";(function(t){var r=n(4),o="undefined"==typeof window?t:window;o.loaders=o.loaders||{},e.exports=Object.assign(o.loaders,r)}).call(this,n(3))},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"GPXLoader",{enumerable:!0,get:function(){return r.GPXLoader}}),Object.defineProperty(t,"KMLLoader",{enumerable:!0,get:function(){return o.KMLLoader}}),Object.defineProperty(t,"TCXLoader",{enumerable:!0,get:function(){return i.TCXLoader}});var r=n(5),o=n(9),i=n(10)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._typecheckGPXLoader=t.GPXLoader=void 0;var r=n(0),o=n(1);function i(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var a,s,l={name:"GPX (GPS exchange format)",id:"gpx",module:"kml",version:"3.0.10",extensions:["gpx"],mimeTypes:["application/gpx+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<gpx'],parse:(a=regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u((new TextDecoder).decode(t),n));case 1:case"end":return e.stop()}}),e)})),s=function(){var e=this,t=arguments;return new Promise((function(n,r){var o=a.apply(e,t);function s(e){i(o,n,r,s,l,"next",e)}function l(e){i(o,n,r,s,l,"throw",e)}s(void 0)}))},function(e,t){return s.apply(this,arguments)}),parseTextSync:u,options:{gpx:{},gis:{format:"geojson"}}};function u(e,t){var n,i,a=(new DOMParser).parseFromString(e,"text/xml"),s=(0,o.gpx)(a);switch(null==t||null===(n=t.gpx)||void 0===n?void 0:n.type){case"object-row-table":return s.features}switch(null==t||null===(i=t.gis)||void 0===i?void 0:i.format){case"geojson":return s;case"binary":return(0,r.geojsonToBinary)(s.features);case"raw":return a;default:throw new Error}}t.GPXLoader=l;var c=l;t._typecheckGPXLoader=c},function(e,t,n){"use strict";function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){i(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||l(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function s(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=l(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw i}}}}function l(e,t){if(e){if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?u(e,t):void 0}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}Object.defineProperty(t,"__esModule",{value:!0}),t.geojsonToBinary=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=f(e);return p(e,n,{coordLength:t.coordLength||n.coordLength,numericPropKeys:t.numericPropKeys||n.numericPropKeys,PositionDataType:t.PositionDataType||Float32Array})},t.TEST_EXPORTS=void 0;var c={firstPass:f,secondPass:p};function f(e){var t,n,r=0,o=0,i=0,l=0,u=0,c=0,f=0,p=0,d=0,y=new Set,g={},m=s(e);try{for(m.s();!(t=m.n()).done;){var h=t.value,v=h.geometry;switch(v.type){case"Point":o++,r++,y.add(v.coordinates.length);break;case"MultiPoint":o++,r+=v.coordinates.length;var b,P=s(v.coordinates);try{for(P.s();!(b=P.n()).done;){var w=b.value;y.add(w.length)}}catch(e){P.e(e)}finally{P.f()}break;case"LineString":u++,i+=v.coordinates.length,l++;var T,j=s(v.coordinates);try{for(j.s();!(T=j.n()).done;){var O=T.value;y.add(O.length)}}catch(e){j.e(e)}finally{j.f()}break;case"MultiLineString":u++;var S,A=s(v.coordinates);try{for(A.s();!(S=A.n()).done;){var I=S.value;i+=I.length,l++;var F,k=s(I);try{for(k.s();!(F=k.n()).done;){var L=F.value;y.add(L.length)}}catch(e){k.e(e)}finally{k.f()}}}catch(e){A.e(e)}finally{A.f()}break;case"Polygon":d++,f++,p+=v.coordinates.length,c+=x(v.coordinates).length;var N,M=s(x(v.coordinates));try{for(M.s();!(N=M.n()).done;){var E=N.value;y.add(E.length)}}catch(e){M.e(e)}finally{M.f()}break;case"MultiPolygon":d++;var C,B=s(v.coordinates);try{for(B.s();!(C=B.n()).done;){var _=C.value;f++,p+=_.length,c+=x(_).length;var U,G=s(x(_));try{for(G.s();!(U=G.n()).done;){var R=U.value;y.add(R.length)}}catch(e){G.e(e)}finally{G.f()}}}catch(e){B.e(e)}finally{B.f()}break;default:throw new Error("Unsupported geometry type: ".concat(v.type))}if(h.properties)for(var D in h.properties){var z=h.properties[D];g[D]=g[D]||void 0===g[D]?(n=z,Number.isFinite(n)):g[D]}}}catch(e){m.e(e)}finally{m.f()}return{coordLength:y.size>0?Math.max.apply(Math,a(y)):2,pointPositionsCount:r,pointFeaturesCount:o,linePositionsCount:i,linePathsCount:l,lineFeaturesCount:u,polygonPositionsCount:c,polygonObjectsCount:f,polygonRingsCount:p,polygonFeaturesCount:d,numericPropKeys:Object.keys(g).filter((function(e){return g[e]}))}}function p(e,t,n){for(var r=t.pointPositionsCount,i=t.pointFeaturesCount,a=t.linePositionsCount,l=t.linePathsCount,u=t.lineFeaturesCount,c=t.polygonPositionsCount,f=t.polygonObjectsCount,p=t.polygonRingsCount,b=t.polygonFeaturesCount,w=n.coordLength,x=n.numericPropKeys,T=n.PositionDataType,j=void 0===T?Float32Array:T,O=e.length>65535?Uint32Array:Uint16Array,S={positions:new j(r*w),globalFeatureIds:new O(r),featureIds:i>65535?new Uint32Array(r):new Uint16Array(r),numericProps:{},properties:Array(),fields:Array()},A={positions:new j(a*w),pathIndices:a>65535?new Uint32Array(l+1):new Uint16Array(l+1),globalFeatureIds:new O(a),featureIds:u>65535?new Uint32Array(a):new Uint16Array(a),numericProps:{},properties:Array(),fields:Array()},I={positions:new j(c*w),polygonIndices:c>65535?new Uint32Array(f+1):new Uint16Array(f+1),primitivePolygonIndices:c>65535?new Uint32Array(p+1):new Uint16Array(p+1),globalFeatureIds:new O(c),featureIds:b>65535?new Uint32Array(c):new Uint16Array(c),numericProps:{},properties:Array(),fields:Array()},F=0,k=[S,A,I];F<k.length;F++){var L,N=k[F],M=s(x||[]);try{for(M.s();!(L=M.n()).done;){var E=L.value;N.numericProps[E]=new Float32Array(N.positions.length/w)}}catch(e){M.e(e)}finally{M.f()}}A.pathIndices[l]=a,I.polygonIndices[f]=c,I.primitivePolygonIndices[p]=c;var C,B={pointPosition:0,pointFeature:0,linePosition:0,linePath:0,lineFeature:0,polygonPosition:0,polygonObject:0,polygonRing:0,polygonFeature:0,feature:0},_=s(e);try{for(_.s();!(C=_.n()).done;){var U=C.value,G=U.geometry,R=U.properties||{};switch(G.type){case"Point":d(G.coordinates,S,B,w,R),S.properties.push(P(R,x)),B.pointFeature++;break;case"MultiPoint":y(G.coordinates,S,B,w,R),S.properties.push(P(R,x)),B.pointFeature++;break;case"LineString":g(G.coordinates,A,B,w,R),A.properties.push(P(R,x)),B.lineFeature++;break;case"MultiLineString":m(G.coordinates,A,B,w,R),A.properties.push(P(R,x)),B.lineFeature++;break;case"Polygon":h(G.coordinates,I,B,w,R),I.properties.push(P(R,x)),B.polygonFeature++;break;case"MultiPolygon":v(G.coordinates,I,B,w,R),I.properties.push(P(R,x)),B.polygonFeature++;break;default:throw new Error("Invalid geometry type")}B.feature++}}catch(e){_.e(e)}finally{_.f()}return function(e,t,n,r){var i={points:o(o({},e),{},{positions:{value:e.positions,size:r},globalFeatureIds:{value:e.globalFeatureIds,size:1},featureIds:{value:e.featureIds,size:1},type:"Point"}),lines:o(o({},t),{},{pathIndices:{value:t.pathIndices,size:1},positions:{value:t.positions,size:r},globalFeatureIds:{value:t.globalFeatureIds,size:1},featureIds:{value:t.featureIds,size:1},type:"LineString"}),polygons:o(o({},n),{},{polygonIndices:{value:n.polygonIndices,size:1},primitivePolygonIndices:{value:n.primitivePolygonIndices,size:1},positions:{value:n.positions,size:r},globalFeatureIds:{value:n.globalFeatureIds,size:1},featureIds:{value:n.featureIds,size:1},type:"Polygon"})};for(var a in i)for(var s in i[a].numericProps)i[a].numericProps[s]={value:i[a].numericProps[s],size:1};return i}(S,A,I,w)}function d(e,t,n,r,o){t.positions.set(e,n.pointPosition*r),t.globalFeatureIds[n.pointPosition]=n.feature,t.featureIds[n.pointPosition]=n.pointFeature,b(t,o,n.pointPosition,1),n.pointPosition++}function y(e,t,n,r,o){var i,a=s(e);try{for(a.s();!(i=a.n()).done;){d(i.value,t,n,r,o)}}catch(e){a.e(e)}finally{a.f()}}function g(e,t,n,r,o){t.pathIndices[n.linePath]=n.linePosition,n.linePath++,w(t.positions,e,n.linePosition,r);var i=e.length;b(t,o,n.linePosition,i),t.globalFeatureIds.set(new Uint32Array(i).fill(n.feature),n.linePosition),t.featureIds.set(new Uint32Array(i).fill(n.lineFeature),n.linePosition),n.linePosition+=i}function m(e,t,n,r,o){var i,a=s(e);try{for(a.s();!(i=a.n()).done;){g(i.value,t,n,r,o)}}catch(e){a.e(e)}finally{a.f()}}function h(e,t,n,r,o){t.polygonIndices[n.polygonObject]=n.polygonPosition,n.polygonObject++;var i,a=s(e);try{for(a.s();!(i=a.n()).done;){var l=i.value;t.primitivePolygonIndices[n.polygonRing]=n.polygonPosition,n.polygonRing++,w(t.positions,l,n.polygonPosition,r);var u=l.length;b(t,o,n.polygonPosition,u),t.globalFeatureIds.set(new Uint32Array(u).fill(n.feature),n.polygonPosition),t.featureIds.set(new Uint32Array(u).fill(n.polygonFeature),n.polygonPosition),n.polygonPosition+=u}}catch(e){a.e(e)}finally{a.f()}}function v(e,t,n,r,o){var i,a=s(e);try{for(a.s();!(i=a.n()).done;){h(i.value,t,n,r,o)}}catch(e){a.e(e)}finally{a.f()}}function b(e,t,n,r){for(var o in e.numericProps)o in t&&e.numericProps[o].set(new Array(r).fill(t[o]),n)}function P(e,t){var n={};for(var r in e)t.includes(r)||(n[r]=e[r]);return n}function w(e,t,n,r){var o,i=n*r,a=s(t);try{for(a.s();!(o=a.n()).done;){var l=o.value;e.set(l,i),i+=r}}catch(e){a.e(e)}finally{a.f()}}function x(e){var t;return(t=[]).concat.apply(t,a(e))}t.TEST_EXPORTS=c},function(e,t,n){"use strict";function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return a(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return a(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,s=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){l=!0,i=e},f:function(){try{s||null==n.return||n.return()}finally{if(l)throw i}}}}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function s(e,t){return function(e){var t,n=[],r=i(e);try{for(r.s();!(t=r.n()).done;){var o=t.value;if(0!==o.featureIds.value.length){for(var a=0,s=o.featureIds.value[0],l=0;l<o.featureIds.value.length;l++){var u=o.featureIds.value[l];u!==s&&(n.push(c(o,a,l)),a=l,s=u)}n.push(c(o,a,o.featureIds.value.length))}}}catch(e){r.e(e)}finally{r.f()}return n}(u(e,t))}function l(e,t,n){switch(e.type){case"Point":return function(e,t,n){var r=f(e.positions,t,n);if(r.length>1)return{type:"MultiPoint",coordinates:r};return{type:"Point",coordinates:r[0]}}(e,t,n);case"LineString":return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1/0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1/0,r=e.positions,o=e.pathIndices.value.filter((function(e){return e>=t&&e<=n})),i=o.length>2;if(!i){var a=f(r,o[0],o[1]);return{type:"LineString",coordinates:a}}for(var s=[],l=0;l<o.length-1;l++){var u=f(r,o[l],o[l+1]);s.push(u)}return{type:"MultiLineString",coordinates:s}}(e,t,n);case"Polygon":return function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1/0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1/0,o=t.positions,i=t.polygonIndices.value.filter((function(e){return e>=n&&e<=r})),a=t.primitivePolygonIndices.value.filter((function(e){return e>=n&&e<=r})),s=i.length>2;if(!s){for(var l=[],u=0;u<a.length-1;u++){var c=a[u],p=a[u+1],d=f(o,c,p);l.push(d)}return{type:"Polygon",coordinates:l}}for(var y=[],g=0;g<i.length-1;g++){var m=i[g],h=i[g+1],v=e(t,m,h).coordinates;y.push(v)}return{type:"MultiPolygon",coordinates:y}}(e,t,n);default:var r=e;throw new Error("Unsupported geometry type: ".concat(null==r?void 0:r.type))}}function u(e,t){if(!Boolean(e.points||e.lines||e.polygons))return e.type=t||function(e){if(e.pathIndices)return"LineString";if(e.polygonIndices)return"Polygon";return"Point"}(e),[e];var n=[];return e.points&&(e.points.type="Point",n.push(e.points)),e.lines&&(e.lines.type="LineString",n.push(e.lines)),e.polygons&&(e.polygons.type="Polygon",n.push(e.polygons)),n}function c(e,t,n){return function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({type:"Feature",geometry:l(e,t,n),properties:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=Object.assign({},e.properties[e.featureIds.value[t]]);for(var r in e.numericProps)n[r]=e.numericProps[r].value[t];return n}(e,t,n)},function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.fields&&e.fields[e.featureIds.value[t]]}(e,t,n))}function f(e,t,n){t=t||0,n=n||e.value.length/e.size;for(var r=[],o=t;o<n;o++){for(var i=Array(),a=o*e.size;a<(o+1)*e.size;a++)i.push(Number(e.value[a]));r.push(i)}return r}Object.defineProperty(t,"__esModule",{value:!0}),t.binaryToGeojson=function(e,t){var n=null==t?void 0:t.globalFeatureId;if(void 0!==n)return function(e,t){var n,r=i(u(e));try{for(r.s();!(n=r.n()).done;){for(var o=n.value,a=0,s=o.featureIds.value[0],l=0;l<o.featureIds.value.length;l++){var f=o.featureIds.value[l];if(f!==s){if(t===o.globalFeatureIds.value[a])return c(o,a,l);a=l,s=f}}if(t===o.globalFeatureIds.value[a])return c(o,a,o.featureIds.value.length)}}catch(e){r.e(e)}finally{r.f()}throw new Error("featureId:".concat(t," not found"))}(e,n);return s(e,null==t?void 0:t.type)},t.binaryToGeoJson=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"feature";switch(n){case"feature":return s(e,t);case"geometry":return l(e);default:throw new Error(n)}},t.binaryToGeometry=l},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function o(e,t){for(var n=e.positions,r=0;r<n.value.length;r+=n.size){var o=t(Array.from(n.value.subarray(r,r+n.size)));n.value.set(o,r)}}function i(e,t){return function(e){return Number.isFinite(e[0])&&Number.isFinite(e[1])}(e)?t(e):e.map((function(e){return i(e,t)}))}Object.defineProperty(t,"__esModule",{value:!0}),t.transformBinaryCoords=function(e,t){e.points&&o(e.points,t);e.lines&&o(e.lines,t);e.polygons&&o(e.polygons,t);return e},t.transformGeoJsonCoords=function(e,t){var n,o=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0,i=function(){};return{s:i,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){l=!0,a=e},f:function(){try{s||null==n.return||n.return()}finally{if(l)throw a}}}}(e);try{for(o.s();!(n=o.n()).done;){var a=n.value;a.geometry.coordinates=i(a.geometry.coordinates,t)}}catch(e){o.e(e)}finally{o.f()}return e}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._typecheckKMLLoader=t.KMLLoader=void 0;var r=n(0),o=n(1);function i(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var a,s,l={name:"KML (Keyhole Markup Language)",id:"kml",module:"kml",version:"3.0.10",extensions:["kml"],mimeTypes:["application/vnd.google-earth.kml+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<kml xmlns="http://www.opengis.net/kml/2.2">'],parse:(a=regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u((new TextDecoder).decode(t),n));case 1:case"end":return e.stop()}}),e)})),s=function(){var e=this,t=arguments;return new Promise((function(n,r){var o=a.apply(e,t);function s(e){i(o,n,r,s,l,"next",e)}function l(e){i(o,n,r,s,l,"throw",e)}s(void 0)}))},function(e,t){return s.apply(this,arguments)}),parseTextSync:u,options:{kml:{},gis:{format:"geojson"}}};function u(e,t){var n,i,a=(new DOMParser).parseFromString(e,"text/xml"),s=(0,o.kml)(a);switch(null==t||null===(n=t.kml)||void 0===n?void 0:n.type){case"object-row-table":return s.features}switch(null==t||null===(i=t.gis)||void 0===i?void 0:i.format){case"geojson":return s;case"binary":return(0,r.geojsonToBinary)(s.features);case"raw":return a;default:throw new Error}}t.KMLLoader=l;var c=l;t._typecheckKMLLoader=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._typecheckTCXLoader=t.TCXLoader=void 0;var r=n(0),o=n(1);function i(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var a,s,l={name:"TCX (Training Center XML)",id:"tcx",module:"kml",version:"3.0.10",extensions:["tcx"],mimeTypes:["application/vnd.garmin.tcx+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<TrainingCenterDatabase'],parse:(a=regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u((new TextDecoder).decode(t),n));case 1:case"end":return e.stop()}}),e)})),s=function(){var e=this,t=arguments;return new Promise((function(n,r){var o=a.apply(e,t);function s(e){i(o,n,r,s,l,"next",e)}function l(e){i(o,n,r,s,l,"throw",e)}s(void 0)}))},function(e,t){return s.apply(this,arguments)}),parseTextSync:u,options:{tcx:{},gis:{format:"geojson"}}};function u(e){var t,n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=(new DOMParser).parseFromString(e,"text/xml"),s=(0,o.tcx)(a);switch(null==i||null===(t=i.tcx)||void 0===t?void 0:t.type){case"object-row-table":return s.features}switch(null==i||null===(n=i.gis)||void 0===n?void 0:n.format){case"geojson":return s;case"binary":return(0,r.geojsonToBinary)(s.features);case"raw":return a;default:throw new Error}}t.TCXLoader=l;var c=l;t._typecheckTCXLoader=c}]);
1
+ !function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=2)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"geojsonToBinary",{enumerable:!0,get:function(){return r.geojsonToBinary}}),Object.defineProperty(t,"binaryToGeojson",{enumerable:!0,get:function(){return o.binaryToGeojson}}),Object.defineProperty(t,"binaryToGeoJson",{enumerable:!0,get:function(){return o.binaryToGeoJson}}),Object.defineProperty(t,"binaryToGeometry",{enumerable:!0,get:function(){return o.binaryToGeometry}}),Object.defineProperty(t,"transformBinaryCoords",{enumerable:!0,get:function(){return i.transformBinaryCoords}}),Object.defineProperty(t,"transformGeoJsonCoords",{enumerable:!0,get:function(){return i.transformGeoJsonCoords}});var r=n(6),o=n(7),i=n(8)},function(e,t,n){!function(e){"use strict";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||""}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function r(e){const r={};if(e){const o=n(e,"line");if(o){const e=t(n(o,"color")),i=parseFloat(t(n(o,"opacity"))),a=parseFloat(t(n(o,"width")));e&&(r.stroke=e),isNaN(i)||(r["stroke-opacity"]=i),isNaN(a)||(r["stroke-width"]=96*a/25.4)}}return r}function o(e,r){const o={};let i,a;for(a=0;a<r.length;a++)i=n(e,r[a]),i&&(o[r[a]]=t(i));return o}function i(e){const n=o(e,["name","cmt","desc","type","time","keywords"]),r=e.getElementsByTagNameNS("http://www.garmin.com/xmlschemas/GpxExtensions/v3","*");for(let o=0;o<r.length;o++){const i=r[o];i.parentNode.parentNode===e&&(n[i.tagName.replace(":","_")]=t(i))}const i=e.getElementsByTagName("link");i.length&&(n.links=[]);for(let e=0;e<i.length;e++)n.links.push(Object.assign({href:i[e].getAttribute("href")},o(i[e],["text","type"])));return n}function a(e){const r=[parseFloat(e.getAttribute("lon")),parseFloat(e.getAttribute("lat"))],o=n(e,"ele"),i=n(e,"gpxtpx:hr")||n(e,"hr"),a=n(e,"time");let s;o&&(s=parseFloat(t(o)),isNaN(s)||r.push(s));const l={coordinates:r,time:a?t(a):null,extendedValues:[]};i&&l.extendedValues.push(["heart",parseFloat(t(i))]);const u=n(e,"extensions");if(null!==u)for(const e of["speed","course","hAcc","vAcc"]){const r=parseFloat(t(n(u,e)));isNaN(r)||l.extendedValues.push([e,r])}return l}function s(e){const t=l(e,"rtept");if(t)return{type:"Feature",properties:Object.assign(i(e),r(n(e,"extensions")),{_gpxType:"rte"}),geometry:{type:"LineString",coordinates:t.line}}}function l(e,t){const n=e.getElementsByTagName(t);if(n.length<2)return;const r=[],o=[],i={};for(let e=0;e<n.length;e++){const t=a(n[e]);r.push(t.coordinates),t.time&&o.push(t.time);for(let r=0;r<t.extendedValues.length;r++){const[o,a]=t.extendedValues[r],s="heart"===o?o:o+"s";i[s]||(i[s]=Array(n.length).fill(null)),i[s][e]=a}}return{line:r,times:o,extendedValues:i}}function u(e){const t=e.getElementsByTagName("trkseg"),o=[],a=[],s=[];for(let e=0;e<t.length;e++){const n=l(t[e],"trkpt");n&&(s.push(n),n.times&&n.times.length&&a.push(n.times))}if(0===s.length)return;const u=s.length>1,c=Object.assign(i(e),r(n(e,"extensions")),{_gpxType:"trk"},a.length?{coordinateProperties:{times:u?a:a[0]}}:{});for(let e=0;e<s.length;e++){const t=s[e];o.push(t.line);for(const[n,r]of Object.entries(t.extendedValues)){let t=c;"heart"===n&&(c.coordinateProperties||(c.coordinateProperties={}),t=c.coordinateProperties),u?(t[n]||(t[n]=s.map(e=>new Array(e.line.length).fill(null))),t[n][e]=r):t[n]=r}}return{type:"Feature",properties:c,geometry:u?{type:"MultiLineString",coordinates:o}:{type:"LineString",coordinates:o[0]}}}function*c(e){const t=e.getElementsByTagName("trk"),n=e.getElementsByTagName("rte"),r=e.getElementsByTagName("wpt");for(let e=0;e<t.length;e++){const n=u(t[e]);n&&(yield n)}for(let e=0;e<n.length;e++){const t=s(n[e]);t&&(yield t)}for(let e=0;e<r.length;e++)yield(l=r[e],{type:"Feature",properties:Object.assign(i(l),o(l,["sym"])),geometry:{type:"Point",coordinates:a(l).coordinates}});var l}const f=[["heartRate","heartRates"],["Cadence","cadences"],["Speed","speeds"],["Watts","watts"]],p=[["TotalTimeSeconds","totalTimeSeconds"],["DistanceMeters","distanceMeters"],["MaximumSpeed","maxSpeed"],["AverageHeartRateBpm","avgHeartRate"],["MaximumHeartRateBpm","maxHeartRate"],["AvgSpeed","avgSpeed"],["AvgWatts","avgWatts"],["MaxWatts","maxWatts"]];function d(e,r){const o=[];for(const[i,a]of r){let r=n(e,i);if(!r){const t=e.getElementsByTagNameNS("http://www.garmin.com/xmlschemas/ActivityExtension/v2",i);t.length&&(r=t[0])}const s=parseFloat(t(r));isNaN(s)||o.push([a,s])}return o}function y(e){const r=t(n(e,"LongitudeDegrees")),o=t(n(e,"LatitudeDegrees"));if(!r.length||!o.length)return null;const i=[parseFloat(r),parseFloat(o)],a=n(e,"AltitudeMeters"),s=n(e,"HeartRateBpm"),l=n(e,"Time");let u;return a&&(u=parseFloat(t(a)),isNaN(u)||i.push(u)),{coordinates:i,time:l?t(l):null,heartRate:s?parseFloat(t(s)):null,extensions:d(e,f)}}function g(e,t){const n=e.getElementsByTagName(t),r=[],o=[],i=[];if(n.length<2)return null;const a={extendedProperties:{}};for(let e=0;e<n.length;e++){const t=y(n[e]);if(null!==t){r.push(t.coordinates),t.time&&o.push(t.time),t.heartRate&&i.push(t.heartRate);for(const[r,o]of t.extensions)a.extendedProperties[r]||(a.extendedProperties[r]=Array(n.length).fill(null)),a.extendedProperties[r][e]=o}}return Object.assign(a,{line:r,times:o,heartRates:i})}function m(e){const r=e.getElementsByTagName("Track"),o=[],i=[],a=[],s=[];let l;const u=function(e){const t={};for(const[n,r]of e)t[n]=r;return t}(d(e,p)),c=n(e,"Name");c&&(u.name=t(c));for(let e=0;e<r.length;e++)l=g(r[e],"Trackpoint"),l&&(o.push(l.line),l.times.length&&i.push(l.times),l.heartRates.length&&a.push(l.heartRates),s.push(l.extendedProperties));for(let e=0;e<s.length;e++){const t=s[e];for(const n in t)1===r.length?u[n]=l.extendedProperties[n]:(u[n]||(u[n]=o.map(e=>Array(e.length).fill(null))),u[n][e]=t[n])}if(0!==o.length)return(i.length||a.length)&&(u.coordinateProperties=Object.assign(i.length?{times:1===o.length?i[0]:i}:{},a.length?{heart:1===o.length?a[0]:a}:{})),{type:"Feature",properties:u,geometry:{type:1===o.length?"LineString":"MultiLineString",coordinates:1===o.length?o[0]:o}}}function*h(e){const t=e.getElementsByTagName("Lap");for(let e=0;e<t.length;e++){const n=m(t[e]);n&&(yield n)}const n=e.getElementsByTagName("Courses");for(let e=0;e<n.length;e++){const t=m(n[e]);t&&(yield t)}}const v=/\s*/g,b=/^\s*|\s*$/g,P=/\s+/;function w(e){if(!e||!e.length)return 0;let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return t}function x(e){return e.replace(v,"").split(",").map(parseFloat)}function T(e){return e.replace(b,"").split(P).map(x)}function j(e){if(void 0!==e.xml)return e.xml;if(e.tagName){let t=e.tagName;for(let n=0;n<e.attributes.length;n++)t+=e.attributes[n].name+e.attributes[n].value;for(let n=0;n<e.childNodes.length;n++)t+=j(e.childNodes[n]);return t}return"#text"===e.nodeName?(e.nodeValue||e.value||"").trim():"#cdata-section"===e.nodeName?e.nodeValue:""}const O=["Polygon","LineString","Point","Track","gx:Track"];function S(e,r,o){let i=t(n(r,"color"))||"";const a="stroke"==o||"fill"===o?o:o+"-color";"#"===i.substr(0,1)&&(i=i.substr(1)),6===i.length||3===i.length?e[a]=i:8===i.length&&(e[o+"-opacity"]=parseInt(i.substr(0,2),16)/255,e[a]="#"+i.substr(6,2)+i.substr(4,2)+i.substr(2,2))}function A(e,r,o,i){const a=parseFloat(t(n(r,o)));isNaN(a)||(e[i]=a)}function I(e){let n=e.getElementsByTagName("coord");const r=[],o=[];0===n.length&&(n=e.getElementsByTagName("gx:coord"));for(let e=0;e<n.length;e++)r.push(t(n[e]).split(" ").map(parseFloat));const i=e.getElementsByTagName("when");for(let e=0;e<i.length;e++)o.push(t(i[e]));return{coords:r,times:o}}function F(e,r,o,i){const a=function e(r){let o,i,a,s,l;const u=[],c=[];if(n(r,"MultiGeometry"))return e(n(r,"MultiGeometry"));if(n(r,"MultiTrack"))return e(n(r,"MultiTrack"));if(n(r,"gx:MultiTrack"))return e(n(r,"gx:MultiTrack"));for(a=0;a<O.length;a++)if(i=r.getElementsByTagName(O[a]),i)for(s=0;s<i.length;s++)if(o=i[s],"Point"===O[a])u.push({type:"Point",coordinates:x(t(n(o,"coordinates")))});else if("LineString"===O[a])u.push({type:"LineString",coordinates:T(t(n(o,"coordinates")))});else if("Polygon"===O[a]){const e=o.getElementsByTagName("LinearRing"),r=[];for(l=0;l<e.length;l++)r.push(T(t(n(e[l],"coordinates"))));u.push({type:"Polygon",coordinates:r})}else if("Track"===O[a]||"gx:Track"===O[a]){const e=I(o);u.push({type:"LineString",coordinates:e.coords}),e.times.length&&c.push(e.times)}return{geoms:u,coordTimes:c}}(e);let s;const l={},u=t(n(e,"name")),c=t(n(e,"address"));let f=t(n(e,"styleUrl"));const p=t(n(e,"description")),d=n(e,"TimeSpan"),y=n(e,"TimeStamp"),g=n(e,"ExtendedData");let m=n(e,"IconStyle"),h=n(e,"LabelStyle"),v=n(e,"LineStyle"),b=n(e,"PolyStyle");const P=n(e,"visibility");if(u&&(l.name=u),c&&(l.address=c),f){"#"!==f[0]&&(f="#"+f),l.styleUrl=f,r[f]&&(l.styleHash=r[f]),o[f]&&(l.styleMapHash=o[f],l.styleHash=r[o[f].normal]);const e=i[l.styleHash];e&&(m||(m=n(e,"IconStyle")),h||(h=n(e,"LabelStyle")),v||(v=n(e,"LineStyle")),b||(b=n(e,"PolyStyle")))}if(p&&(l.description=p),d){const e=t(n(d,"begin")),r=t(n(d,"end"));l.timespan={begin:e,end:r}}if(y&&(l.timestamp=t(n(y,"when"))),m){S(l,m,"icon"),A(l,m,"scale","icon-scale"),A(l,m,"heading","icon-heading");const e=n(m,"hotSpot");if(e){const t=parseFloat(e.getAttribute("x")),n=parseFloat(e.getAttribute("y"));isNaN(t)||isNaN(n)||(l["icon-offset"]=[t,n])}const r=n(m,"Icon");if(r){const e=t(n(r,"href"));e&&(l.icon=e)}}if(h&&(S(l,h,"label"),A(l,h,"scale","label-scale")),v&&(S(l,v,"stroke"),A(l,v,"width","stroke-width")),b){S(l,b,"fill");const e=t(n(b,"fill")),r=t(n(b,"outline"));e&&(l["fill-opacity"]="1"===e?l["fill-opacity"]||1:0),r&&(l["stroke-opacity"]="1"===r?l["stroke-opacity"]||1:0)}if(g){const e=g.getElementsByTagName("Data"),r=g.getElementsByTagName("SimpleData");for(s=0;s<e.length;s++)l[e[s].getAttribute("name")]=t(n(e[s],"value"));for(s=0;s<r.length;s++)l[r[s].getAttribute("name")]=t(r[s])}P&&(l.visibility=t(P)),a.coordTimes.length&&(l.coordinateProperties={times:1===a.coordTimes.length?a.coordTimes[0]:a.coordTimes});const w={type:"Feature",geometry:0===a.geoms.length?null:1===a.geoms.length?a.geoms[0]:{type:"GeometryCollection",geometries:a.geoms},properties:l};return e.getAttribute("id")&&(w.id=e.getAttribute("id")),w}function*k(e){const r={},o={},i={},a=e.getElementsByTagName("Placemark"),s=e.getElementsByTagName("Style"),l=e.getElementsByTagName("StyleMap");for(let e=0;e<s.length;e++){const t=w(j(s[e])).toString(16);r["#"+s[e].getAttribute("id")]=t,o[t]=s[e]}for(let e=0;e<l.length;e++){r["#"+l[e].getAttribute("id")]=w(j(l[e])).toString(16);const o=l[e].getElementsByTagName("Pair"),a={};for(let e=0;e<o.length;e++)a[t(n(o[e],"key"))]=t(n(o[e],"styleUrl"));i["#"+l[e].getAttribute("id")]=a}for(let e=0;e<a.length;e++){const t=F(a[e],r,i,o);t&&(yield t)}}e.gpx=function(e){return{type:"FeatureCollection",features:Array.from(c(e))}},e.gpxGen=c,e.kml=function(e){return{type:"FeatureCollection",features:Array.from(k(e))}},e.kmlGen=k,e.tcx=function(e){return{type:"FeatureCollection",features:Array.from(h(e))}},e.tcxGen=h,Object.defineProperty(e,"__esModule",{value:!0})}(t)},function(e,t,n){"use strict";(function(t){var r=n(4),o="undefined"==typeof window?t:window;o.loaders=o.loaders||{},e.exports=Object.assign(o.loaders,r)}).call(this,n(3))},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"GPXLoader",{enumerable:!0,get:function(){return r.GPXLoader}}),Object.defineProperty(t,"KMLLoader",{enumerable:!0,get:function(){return o.KMLLoader}}),Object.defineProperty(t,"TCXLoader",{enumerable:!0,get:function(){return i.TCXLoader}});var r=n(5),o=n(9),i=n(10)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._typecheckGPXLoader=t.GPXLoader=void 0;var r=n(0),o=n(1);function i(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var a,s,l={name:"GPX (GPS exchange format)",id:"gpx",module:"kml",version:"3.0.14",extensions:["gpx"],mimeTypes:["application/gpx+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<gpx'],parse:(a=regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u((new TextDecoder).decode(t),n));case 1:case"end":return e.stop()}}),e)})),s=function(){var e=this,t=arguments;return new Promise((function(n,r){var o=a.apply(e,t);function s(e){i(o,n,r,s,l,"next",e)}function l(e){i(o,n,r,s,l,"throw",e)}s(void 0)}))},function(e,t){return s.apply(this,arguments)}),parseTextSync:u,options:{gpx:{},gis:{format:"geojson"}}};function u(e,t){var n,i,a=(new DOMParser).parseFromString(e,"text/xml"),s=(0,o.gpx)(a);switch(null==t||null===(n=t.gpx)||void 0===n?void 0:n.type){case"object-row-table":return s.features}switch(null==t||null===(i=t.gis)||void 0===i?void 0:i.format){case"geojson":return s;case"binary":return(0,r.geojsonToBinary)(s.features);case"raw":return a;default:throw new Error}}t.GPXLoader=l;var c=l;t._typecheckGPXLoader=c},function(e,t,n){"use strict";function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){i(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||l(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function s(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=l(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw i}}}}function l(e,t){if(e){if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?u(e,t):void 0}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}Object.defineProperty(t,"__esModule",{value:!0}),t.geojsonToBinary=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=f(e);return p(e,n,{coordLength:t.coordLength||n.coordLength,numericPropKeys:t.numericPropKeys||n.numericPropKeys,PositionDataType:t.PositionDataType||Float32Array})},t.TEST_EXPORTS=void 0;var c={firstPass:f,secondPass:p};function f(e){var t,n,r=0,o=0,i=0,l=0,u=0,c=0,f=0,p=0,d=0,y=new Set,g={},m=s(e);try{for(m.s();!(t=m.n()).done;){var h=t.value,v=h.geometry;switch(v.type){case"Point":o++,r++,y.add(v.coordinates.length);break;case"MultiPoint":o++,r+=v.coordinates.length;var b,P=s(v.coordinates);try{for(P.s();!(b=P.n()).done;){var w=b.value;y.add(w.length)}}catch(e){P.e(e)}finally{P.f()}break;case"LineString":u++,i+=v.coordinates.length,l++;var T,j=s(v.coordinates);try{for(j.s();!(T=j.n()).done;){var O=T.value;y.add(O.length)}}catch(e){j.e(e)}finally{j.f()}break;case"MultiLineString":u++;var S,A=s(v.coordinates);try{for(A.s();!(S=A.n()).done;){var I=S.value;i+=I.length,l++;var F,k=s(I);try{for(k.s();!(F=k.n()).done;){var L=F.value;y.add(L.length)}}catch(e){k.e(e)}finally{k.f()}}}catch(e){A.e(e)}finally{A.f()}break;case"Polygon":d++,f++,p+=v.coordinates.length,c+=x(v.coordinates).length;var N,M=s(x(v.coordinates));try{for(M.s();!(N=M.n()).done;){var E=N.value;y.add(E.length)}}catch(e){M.e(e)}finally{M.f()}break;case"MultiPolygon":d++;var C,B=s(v.coordinates);try{for(B.s();!(C=B.n()).done;){var _=C.value;f++,p+=_.length,c+=x(_).length;var U,G=s(x(_));try{for(G.s();!(U=G.n()).done;){var R=U.value;y.add(R.length)}}catch(e){G.e(e)}finally{G.f()}}}catch(e){B.e(e)}finally{B.f()}break;default:throw new Error("Unsupported geometry type: ".concat(v.type))}if(h.properties)for(var D in h.properties){var z=h.properties[D];g[D]=g[D]||void 0===g[D]?(n=z,Number.isFinite(n)):g[D]}}}catch(e){m.e(e)}finally{m.f()}return{coordLength:y.size>0?Math.max.apply(Math,a(y)):2,pointPositionsCount:r,pointFeaturesCount:o,linePositionsCount:i,linePathsCount:l,lineFeaturesCount:u,polygonPositionsCount:c,polygonObjectsCount:f,polygonRingsCount:p,polygonFeaturesCount:d,numericPropKeys:Object.keys(g).filter((function(e){return g[e]}))}}function p(e,t,n){for(var r=t.pointPositionsCount,i=t.pointFeaturesCount,a=t.linePositionsCount,l=t.linePathsCount,u=t.lineFeaturesCount,c=t.polygonPositionsCount,f=t.polygonObjectsCount,p=t.polygonRingsCount,b=t.polygonFeaturesCount,w=n.coordLength,x=n.numericPropKeys,T=n.PositionDataType,j=void 0===T?Float32Array:T,O=e.length>65535?Uint32Array:Uint16Array,S={positions:new j(r*w),globalFeatureIds:new O(r),featureIds:i>65535?new Uint32Array(r):new Uint16Array(r),numericProps:{},properties:Array(),fields:Array()},A={positions:new j(a*w),pathIndices:a>65535?new Uint32Array(l+1):new Uint16Array(l+1),globalFeatureIds:new O(a),featureIds:u>65535?new Uint32Array(a):new Uint16Array(a),numericProps:{},properties:Array(),fields:Array()},I={positions:new j(c*w),polygonIndices:c>65535?new Uint32Array(f+1):new Uint16Array(f+1),primitivePolygonIndices:c>65535?new Uint32Array(p+1):new Uint16Array(p+1),globalFeatureIds:new O(c),featureIds:b>65535?new Uint32Array(c):new Uint16Array(c),numericProps:{},properties:Array(),fields:Array()},F=0,k=[S,A,I];F<k.length;F++){var L,N=k[F],M=s(x||[]);try{for(M.s();!(L=M.n()).done;){var E=L.value;N.numericProps[E]=new Float32Array(N.positions.length/w)}}catch(e){M.e(e)}finally{M.f()}}A.pathIndices[l]=a,I.polygonIndices[f]=c,I.primitivePolygonIndices[p]=c;var C,B={pointPosition:0,pointFeature:0,linePosition:0,linePath:0,lineFeature:0,polygonPosition:0,polygonObject:0,polygonRing:0,polygonFeature:0,feature:0},_=s(e);try{for(_.s();!(C=_.n()).done;){var U=C.value,G=U.geometry,R=U.properties||{};switch(G.type){case"Point":d(G.coordinates,S,B,w,R),S.properties.push(P(R,x)),B.pointFeature++;break;case"MultiPoint":y(G.coordinates,S,B,w,R),S.properties.push(P(R,x)),B.pointFeature++;break;case"LineString":g(G.coordinates,A,B,w,R),A.properties.push(P(R,x)),B.lineFeature++;break;case"MultiLineString":m(G.coordinates,A,B,w,R),A.properties.push(P(R,x)),B.lineFeature++;break;case"Polygon":h(G.coordinates,I,B,w,R),I.properties.push(P(R,x)),B.polygonFeature++;break;case"MultiPolygon":v(G.coordinates,I,B,w,R),I.properties.push(P(R,x)),B.polygonFeature++;break;default:throw new Error("Invalid geometry type")}B.feature++}}catch(e){_.e(e)}finally{_.f()}return function(e,t,n,r){var i={points:o(o({},e),{},{positions:{value:e.positions,size:r},globalFeatureIds:{value:e.globalFeatureIds,size:1},featureIds:{value:e.featureIds,size:1},type:"Point"}),lines:o(o({},t),{},{pathIndices:{value:t.pathIndices,size:1},positions:{value:t.positions,size:r},globalFeatureIds:{value:t.globalFeatureIds,size:1},featureIds:{value:t.featureIds,size:1},type:"LineString"}),polygons:o(o({},n),{},{polygonIndices:{value:n.polygonIndices,size:1},primitivePolygonIndices:{value:n.primitivePolygonIndices,size:1},positions:{value:n.positions,size:r},globalFeatureIds:{value:n.globalFeatureIds,size:1},featureIds:{value:n.featureIds,size:1},type:"Polygon"})};for(var a in i)for(var s in i[a].numericProps)i[a].numericProps[s]={value:i[a].numericProps[s],size:1};return i}(S,A,I,w)}function d(e,t,n,r,o){t.positions.set(e,n.pointPosition*r),t.globalFeatureIds[n.pointPosition]=n.feature,t.featureIds[n.pointPosition]=n.pointFeature,b(t,o,n.pointPosition,1),n.pointPosition++}function y(e,t,n,r,o){var i,a=s(e);try{for(a.s();!(i=a.n()).done;){d(i.value,t,n,r,o)}}catch(e){a.e(e)}finally{a.f()}}function g(e,t,n,r,o){t.pathIndices[n.linePath]=n.linePosition,n.linePath++,w(t.positions,e,n.linePosition,r);var i=e.length;b(t,o,n.linePosition,i),t.globalFeatureIds.set(new Uint32Array(i).fill(n.feature),n.linePosition),t.featureIds.set(new Uint32Array(i).fill(n.lineFeature),n.linePosition),n.linePosition+=i}function m(e,t,n,r,o){var i,a=s(e);try{for(a.s();!(i=a.n()).done;){g(i.value,t,n,r,o)}}catch(e){a.e(e)}finally{a.f()}}function h(e,t,n,r,o){t.polygonIndices[n.polygonObject]=n.polygonPosition,n.polygonObject++;var i,a=s(e);try{for(a.s();!(i=a.n()).done;){var l=i.value;t.primitivePolygonIndices[n.polygonRing]=n.polygonPosition,n.polygonRing++,w(t.positions,l,n.polygonPosition,r);var u=l.length;b(t,o,n.polygonPosition,u),t.globalFeatureIds.set(new Uint32Array(u).fill(n.feature),n.polygonPosition),t.featureIds.set(new Uint32Array(u).fill(n.polygonFeature),n.polygonPosition),n.polygonPosition+=u}}catch(e){a.e(e)}finally{a.f()}}function v(e,t,n,r,o){var i,a=s(e);try{for(a.s();!(i=a.n()).done;){h(i.value,t,n,r,o)}}catch(e){a.e(e)}finally{a.f()}}function b(e,t,n,r){for(var o in e.numericProps)o in t&&e.numericProps[o].set(new Array(r).fill(t[o]),n)}function P(e,t){var n={};for(var r in e)t.includes(r)||(n[r]=e[r]);return n}function w(e,t,n,r){var o,i=n*r,a=s(t);try{for(a.s();!(o=a.n()).done;){var l=o.value;e.set(l,i),i+=r}}catch(e){a.e(e)}finally{a.f()}}function x(e){var t;return(t=[]).concat.apply(t,a(e))}t.TEST_EXPORTS=c},function(e,t,n){"use strict";function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return a(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return a(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,s=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){l=!0,i=e},f:function(){try{s||null==n.return||n.return()}finally{if(l)throw i}}}}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function s(e,t){return function(e){var t,n=[],r=i(e);try{for(r.s();!(t=r.n()).done;){var o=t.value;if(0!==o.featureIds.value.length){for(var a=0,s=o.featureIds.value[0],l=0;l<o.featureIds.value.length;l++){var u=o.featureIds.value[l];u!==s&&(n.push(c(o,a,l)),a=l,s=u)}n.push(c(o,a,o.featureIds.value.length))}}}catch(e){r.e(e)}finally{r.f()}return n}(u(e,t))}function l(e,t,n){switch(e.type){case"Point":return function(e,t,n){var r=f(e.positions,t,n);if(r.length>1)return{type:"MultiPoint",coordinates:r};return{type:"Point",coordinates:r[0]}}(e,t,n);case"LineString":return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1/0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1/0,r=e.positions,o=e.pathIndices.value.filter((function(e){return e>=t&&e<=n})),i=o.length>2;if(!i){var a=f(r,o[0],o[1]);return{type:"LineString",coordinates:a}}for(var s=[],l=0;l<o.length-1;l++){var u=f(r,o[l],o[l+1]);s.push(u)}return{type:"MultiLineString",coordinates:s}}(e,t,n);case"Polygon":return function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1/0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1/0,o=t.positions,i=t.polygonIndices.value.filter((function(e){return e>=n&&e<=r})),a=t.primitivePolygonIndices.value.filter((function(e){return e>=n&&e<=r})),s=i.length>2;if(!s){for(var l=[],u=0;u<a.length-1;u++){var c=a[u],p=a[u+1],d=f(o,c,p);l.push(d)}return{type:"Polygon",coordinates:l}}for(var y=[],g=0;g<i.length-1;g++){var m=i[g],h=i[g+1],v=e(t,m,h).coordinates;y.push(v)}return{type:"MultiPolygon",coordinates:y}}(e,t,n);default:var r=e;throw new Error("Unsupported geometry type: ".concat(null==r?void 0:r.type))}}function u(e,t){if(!Boolean(e.points||e.lines||e.polygons))return e.type=t||function(e){if(e.pathIndices)return"LineString";if(e.polygonIndices)return"Polygon";return"Point"}(e),[e];var n=[];return e.points&&(e.points.type="Point",n.push(e.points)),e.lines&&(e.lines.type="LineString",n.push(e.lines)),e.polygons&&(e.polygons.type="Polygon",n.push(e.polygons)),n}function c(e,t,n){return function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({type:"Feature",geometry:l(e,t,n),properties:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=Object.assign({},e.properties[e.featureIds.value[t]]);for(var r in e.numericProps)n[r]=e.numericProps[r].value[t];return n}(e,t,n)},function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.fields&&e.fields[e.featureIds.value[t]]}(e,t,n))}function f(e,t,n){t=t||0,n=n||e.value.length/e.size;for(var r=[],o=t;o<n;o++){for(var i=Array(),a=o*e.size;a<(o+1)*e.size;a++)i.push(Number(e.value[a]));r.push(i)}return r}Object.defineProperty(t,"__esModule",{value:!0}),t.binaryToGeojson=function(e,t){var n=null==t?void 0:t.globalFeatureId;if(void 0!==n)return function(e,t){var n,r=i(u(e));try{for(r.s();!(n=r.n()).done;){for(var o=n.value,a=0,s=o.featureIds.value[0],l=0;l<o.featureIds.value.length;l++){var f=o.featureIds.value[l];if(f!==s){if(t===o.globalFeatureIds.value[a])return c(o,a,l);a=l,s=f}}if(t===o.globalFeatureIds.value[a])return c(o,a,o.featureIds.value.length)}}catch(e){r.e(e)}finally{r.f()}throw new Error("featureId:".concat(t," not found"))}(e,n);return s(e,null==t?void 0:t.type)},t.binaryToGeoJson=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"feature";switch(n){case"feature":return s(e,t);case"geometry":return l(e);default:throw new Error(n)}},t.binaryToGeometry=l},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function o(e,t){for(var n=e.positions,r=0;r<n.value.length;r+=n.size){var o=t(Array.from(n.value.subarray(r,r+n.size)));n.value.set(o,r)}}function i(e,t){return function(e){return Number.isFinite(e[0])&&Number.isFinite(e[1])}(e)?t(e):e.map((function(e){return i(e,t)}))}Object.defineProperty(t,"__esModule",{value:!0}),t.transformBinaryCoords=function(e,t){e.points&&o(e.points,t);e.lines&&o(e.lines,t);e.polygons&&o(e.polygons,t);return e},t.transformGeoJsonCoords=function(e,t){var n,o=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0,i=function(){};return{s:i,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){l=!0,a=e},f:function(){try{s||null==n.return||n.return()}finally{if(l)throw a}}}}(e);try{for(o.s();!(n=o.n()).done;){var a=n.value;a.geometry.coordinates=i(a.geometry.coordinates,t)}}catch(e){o.e(e)}finally{o.f()}return e}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._typecheckKMLLoader=t.KMLLoader=void 0;var r=n(0),o=n(1);function i(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var a,s,l={name:"KML (Keyhole Markup Language)",id:"kml",module:"kml",version:"3.0.14",extensions:["kml"],mimeTypes:["application/vnd.google-earth.kml+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<kml xmlns="http://www.opengis.net/kml/2.2">'],parse:(a=regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u((new TextDecoder).decode(t),n));case 1:case"end":return e.stop()}}),e)})),s=function(){var e=this,t=arguments;return new Promise((function(n,r){var o=a.apply(e,t);function s(e){i(o,n,r,s,l,"next",e)}function l(e){i(o,n,r,s,l,"throw",e)}s(void 0)}))},function(e,t){return s.apply(this,arguments)}),parseTextSync:u,options:{kml:{},gis:{format:"geojson"}}};function u(e,t){var n,i,a=(new DOMParser).parseFromString(e,"text/xml"),s=(0,o.kml)(a);switch(null==t||null===(n=t.kml)||void 0===n?void 0:n.type){case"object-row-table":return s.features}switch(null==t||null===(i=t.gis)||void 0===i?void 0:i.format){case"geojson":return s;case"binary":return(0,r.geojsonToBinary)(s.features);case"raw":return a;default:throw new Error}}t.KMLLoader=l;var c=l;t._typecheckKMLLoader=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._typecheckTCXLoader=t.TCXLoader=void 0;var r=n(0),o=n(1);function i(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var a,s,l={name:"TCX (Training Center XML)",id:"tcx",module:"kml",version:"3.0.14",extensions:["tcx"],mimeTypes:["application/vnd.garmin.tcx+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<TrainingCenterDatabase'],parse:(a=regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u((new TextDecoder).decode(t),n));case 1:case"end":return e.stop()}}),e)})),s=function(){var e=this,t=arguments;return new Promise((function(n,r){var o=a.apply(e,t);function s(e){i(o,n,r,s,l,"next",e)}function l(e){i(o,n,r,s,l,"throw",e)}s(void 0)}))},function(e,t){return s.apply(this,arguments)}),parseTextSync:u,options:{tcx:{},gis:{format:"geojson"}}};function u(e){var t,n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=(new DOMParser).parseFromString(e,"text/xml"),s=(0,o.tcx)(a);switch(null==i||null===(t=i.tcx)||void 0===t?void 0:t.type){case"object-row-table":return s.features}switch(null==i||null===(n=i.gis)||void 0===n?void 0:n.format){case"geojson":return s;case"binary":return(0,r.geojsonToBinary)(s.features);case"raw":return a;default:throw new Error}}t.TCXLoader=l;var c=l;t._typecheckTCXLoader=c}]);
2
2
  //# sourceMappingURL=dist.es5.min.js.map
package/dist/dist.min.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var o in n)("object"==typeof exports?exports:e)[o]=n[o]}}(window,(function(){return function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=2)}([function(e,t,n){!function(e){"use strict";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||""}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function o(e){const o={};if(e){const r=n(e,"line");if(r){const e=t(n(r,"color")),i=parseFloat(t(n(r,"opacity"))),s=parseFloat(t(n(r,"width")));e&&(o.stroke=e),isNaN(i)||(o["stroke-opacity"]=i),isNaN(s)||(o["stroke-width"]=96*s/25.4)}}return o}function r(e,o){const r={};let i,s;for(s=0;s<o.length;s++)i=n(e,o[s]),i&&(r[o[s]]=t(i));return r}function i(e){const n=r(e,["name","cmt","desc","type","time","keywords"]),o=e.getElementsByTagNameNS("http://www.garmin.com/xmlschemas/GpxExtensions/v3","*");for(let r=0;r<o.length;r++){const i=o[r];i.parentNode.parentNode===e&&(n[i.tagName.replace(":","_")]=t(i))}const i=e.getElementsByTagName("link");i.length&&(n.links=[]);for(let e=0;e<i.length;e++)n.links.push(Object.assign({href:i[e].getAttribute("href")},r(i[e],["text","type"])));return n}function s(e){const o=[parseFloat(e.getAttribute("lon")),parseFloat(e.getAttribute("lat"))],r=n(e,"ele"),i=n(e,"gpxtpx:hr")||n(e,"hr"),s=n(e,"time");let a;r&&(a=parseFloat(t(r)),isNaN(a)||o.push(a));const l={coordinates:o,time:s?t(s):null,extendedValues:[]};i&&l.extendedValues.push(["heart",parseFloat(t(i))]);const c=n(e,"extensions");if(null!==c)for(const e of["speed","course","hAcc","vAcc"]){const o=parseFloat(t(n(c,e)));isNaN(o)||l.extendedValues.push([e,o])}return l}function a(e){const t=l(e,"rtept");if(t)return{type:"Feature",properties:Object.assign(i(e),o(n(e,"extensions")),{_gpxType:"rte"}),geometry:{type:"LineString",coordinates:t.line}}}function l(e,t){const n=e.getElementsByTagName(t);if(n.length<2)return;const o=[],r=[],i={};for(let e=0;e<n.length;e++){const t=s(n[e]);o.push(t.coordinates),t.time&&r.push(t.time);for(let o=0;o<t.extendedValues.length;o++){const[r,s]=t.extendedValues[o],a="heart"===r?r:r+"s";i[a]||(i[a]=Array(n.length).fill(null)),i[a][e]=s}}return{line:o,times:r,extendedValues:i}}function c(e){const t=e.getElementsByTagName("trkseg"),r=[],s=[],a=[];for(let e=0;e<t.length;e++){const n=l(t[e],"trkpt");n&&(a.push(n),n.times&&n.times.length&&s.push(n.times))}if(0===a.length)return;const c=a.length>1,u=Object.assign(i(e),o(n(e,"extensions")),{_gpxType:"trk"},s.length?{coordinateProperties:{times:c?s:s[0]}}:{});for(let e=0;e<a.length;e++){const t=a[e];r.push(t.line);for(const[n,o]of Object.entries(t.extendedValues)){let t=u;"heart"===n&&(u.coordinateProperties||(u.coordinateProperties={}),t=u.coordinateProperties),c?(t[n]||(t[n]=a.map(e=>new Array(e.line.length).fill(null))),t[n][e]=o):t[n]=o}}return{type:"Feature",properties:u,geometry:c?{type:"MultiLineString",coordinates:r}:{type:"LineString",coordinates:r[0]}}}function*u(e){const t=e.getElementsByTagName("trk"),n=e.getElementsByTagName("rte"),o=e.getElementsByTagName("wpt");for(let e=0;e<t.length;e++){const n=c(t[e]);n&&(yield n)}for(let e=0;e<n.length;e++){const t=a(n[e]);t&&(yield t)}for(let e=0;e<o.length;e++)yield(l=o[e],{type:"Feature",properties:Object.assign(i(l),r(l,["sym"])),geometry:{type:"Point",coordinates:s(l).coordinates}});var l}const p=[["heartRate","heartRates"],["Cadence","cadences"],["Speed","speeds"],["Watts","watts"]],g=[["TotalTimeSeconds","totalTimeSeconds"],["DistanceMeters","distanceMeters"],["MaximumSpeed","maxSpeed"],["AverageHeartRateBpm","avgHeartRate"],["MaximumHeartRateBpm","maxHeartRate"],["AvgSpeed","avgSpeed"],["AvgWatts","avgWatts"],["MaxWatts","maxWatts"]];function d(e,o){const r=[];for(const[i,s]of o){let o=n(e,i);if(!o){const t=e.getElementsByTagNameNS("http://www.garmin.com/xmlschemas/ActivityExtension/v2",i);t.length&&(o=t[0])}const a=parseFloat(t(o));isNaN(a)||r.push([s,a])}return r}function f(e){const o=t(n(e,"LongitudeDegrees")),r=t(n(e,"LatitudeDegrees"));if(!o.length||!r.length)return null;const i=[parseFloat(o),parseFloat(r)],s=n(e,"AltitudeMeters"),a=n(e,"HeartRateBpm"),l=n(e,"Time");let c;return s&&(c=parseFloat(t(s)),isNaN(c)||i.push(c)),{coordinates:i,time:l?t(l):null,heartRate:a?parseFloat(t(a)):null,extensions:d(e,p)}}function y(e,t){const n=e.getElementsByTagName(t),o=[],r=[],i=[];if(n.length<2)return null;const s={extendedProperties:{}};for(let e=0;e<n.length;e++){const t=f(n[e]);if(null!==t){o.push(t.coordinates),t.time&&r.push(t.time),t.heartRate&&i.push(t.heartRate);for(const[o,r]of t.extensions)s.extendedProperties[o]||(s.extendedProperties[o]=Array(n.length).fill(null)),s.extendedProperties[o][e]=r}}return Object.assign(s,{line:o,times:r,heartRates:i})}function m(e){const o=e.getElementsByTagName("Track"),r=[],i=[],s=[],a=[];let l;const c=function(e){const t={};for(const[n,o]of e)t[n]=o;return t}(d(e,g)),u=n(e,"Name");u&&(c.name=t(u));for(let e=0;e<o.length;e++)l=y(o[e],"Trackpoint"),l&&(r.push(l.line),l.times.length&&i.push(l.times),l.heartRates.length&&s.push(l.heartRates),a.push(l.extendedProperties));for(let e=0;e<a.length;e++){const t=a[e];for(const n in t)1===o.length?c[n]=l.extendedProperties[n]:(c[n]||(c[n]=r.map(e=>Array(e.length).fill(null))),c[n][e]=t[n])}if(0!==r.length)return(i.length||s.length)&&(c.coordinateProperties=Object.assign(i.length?{times:1===r.length?i[0]:i}:{},s.length?{heart:1===r.length?s[0]:s}:{})),{type:"Feature",properties:c,geometry:{type:1===r.length?"LineString":"MultiLineString",coordinates:1===r.length?r[0]:r}}}function*h(e){const t=e.getElementsByTagName("Lap");for(let e=0;e<t.length;e++){const n=m(t[e]);n&&(yield n)}const n=e.getElementsByTagName("Courses");for(let e=0;e<n.length;e++){const t=m(n[e]);t&&(yield t)}}const x=/\s*/g,b=/^\s*|\s*$/g,P=/\s+/;function w(e){if(!e||!e.length)return 0;let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return t}function v(e){return e.replace(x,"").split(",").map(parseFloat)}function T(e){return e.replace(b,"").split(P).map(v)}function F(e){if(void 0!==e.xml)return e.xml;if(e.tagName){let t=e.tagName;for(let n=0;n<e.attributes.length;n++)t+=e.attributes[n].name+e.attributes[n].value;for(let n=0;n<e.childNodes.length;n++)t+=F(e.childNodes[n]);return t}return"#text"===e.nodeName?(e.nodeValue||e.value||"").trim():"#cdata-section"===e.nodeName?e.nodeValue:""}const k=["Polygon","LineString","Point","Track","gx:Track"];function A(e,o,r){let i=t(n(o,"color"))||"";const s="stroke"==r||"fill"===r?r:r+"-color";"#"===i.substr(0,1)&&(i=i.substr(1)),6===i.length||3===i.length?e[s]=i:8===i.length&&(e[r+"-opacity"]=parseInt(i.substr(0,2),16)/255,e[s]="#"+i.substr(6,2)+i.substr(4,2)+i.substr(2,2))}function N(e,o,r,i){const s=parseFloat(t(n(o,r)));isNaN(s)||(e[i]=s)}function S(e){let n=e.getElementsByTagName("coord");const o=[],r=[];0===n.length&&(n=e.getElementsByTagName("gx:coord"));for(let e=0;e<n.length;e++)o.push(t(n[e]).split(" ").map(parseFloat));const i=e.getElementsByTagName("when");for(let e=0;e<i.length;e++)r.push(t(i[e]));return{coords:o,times:r}}function I(e,o,r,i){const s=function e(o){let r,i,s,a,l;const c=[],u=[];if(n(o,"MultiGeometry"))return e(n(o,"MultiGeometry"));if(n(o,"MultiTrack"))return e(n(o,"MultiTrack"));if(n(o,"gx:MultiTrack"))return e(n(o,"gx:MultiTrack"));for(s=0;s<k.length;s++)if(i=o.getElementsByTagName(k[s]),i)for(a=0;a<i.length;a++)if(r=i[a],"Point"===k[s])c.push({type:"Point",coordinates:v(t(n(r,"coordinates")))});else if("LineString"===k[s])c.push({type:"LineString",coordinates:T(t(n(r,"coordinates")))});else if("Polygon"===k[s]){const e=r.getElementsByTagName("LinearRing"),o=[];for(l=0;l<e.length;l++)o.push(T(t(n(e[l],"coordinates"))));c.push({type:"Polygon",coordinates:o})}else if("Track"===k[s]||"gx:Track"===k[s]){const e=S(r);c.push({type:"LineString",coordinates:e.coords}),e.times.length&&u.push(e.times)}return{geoms:c,coordTimes:u}}(e);let a;const l={},c=t(n(e,"name")),u=t(n(e,"address"));let p=t(n(e,"styleUrl"));const g=t(n(e,"description")),d=n(e,"TimeSpan"),f=n(e,"TimeStamp"),y=n(e,"ExtendedData");let m=n(e,"IconStyle"),h=n(e,"LabelStyle"),x=n(e,"LineStyle"),b=n(e,"PolyStyle");const P=n(e,"visibility");if(c&&(l.name=c),u&&(l.address=u),p){"#"!==p[0]&&(p="#"+p),l.styleUrl=p,o[p]&&(l.styleHash=o[p]),r[p]&&(l.styleMapHash=r[p],l.styleHash=o[r[p].normal]);const e=i[l.styleHash];e&&(m||(m=n(e,"IconStyle")),h||(h=n(e,"LabelStyle")),x||(x=n(e,"LineStyle")),b||(b=n(e,"PolyStyle")))}if(g&&(l.description=g),d){const e=t(n(d,"begin")),o=t(n(d,"end"));l.timespan={begin:e,end:o}}if(f&&(l.timestamp=t(n(f,"when"))),m){A(l,m,"icon"),N(l,m,"scale","icon-scale"),N(l,m,"heading","icon-heading");const e=n(m,"hotSpot");if(e){const t=parseFloat(e.getAttribute("x")),n=parseFloat(e.getAttribute("y"));isNaN(t)||isNaN(n)||(l["icon-offset"]=[t,n])}const o=n(m,"Icon");if(o){const e=t(n(o,"href"));e&&(l.icon=e)}}if(h&&(A(l,h,"label"),N(l,h,"scale","label-scale")),x&&(A(l,x,"stroke"),N(l,x,"width","stroke-width")),b){A(l,b,"fill");const e=t(n(b,"fill")),o=t(n(b,"outline"));e&&(l["fill-opacity"]="1"===e?l["fill-opacity"]||1:0),o&&(l["stroke-opacity"]="1"===o?l["stroke-opacity"]||1:0)}if(y){const e=y.getElementsByTagName("Data"),o=y.getElementsByTagName("SimpleData");for(a=0;a<e.length;a++)l[e[a].getAttribute("name")]=t(n(e[a],"value"));for(a=0;a<o.length;a++)l[o[a].getAttribute("name")]=t(o[a])}P&&(l.visibility=t(P)),s.coordTimes.length&&(l.coordinateProperties={times:1===s.coordTimes.length?s.coordTimes[0]:s.coordTimes});const w={type:"Feature",geometry:0===s.geoms.length?null:1===s.geoms.length?s.geoms[0]:{type:"GeometryCollection",geometries:s.geoms},properties:l};return e.getAttribute("id")&&(w.id=e.getAttribute("id")),w}function*j(e){const o={},r={},i={},s=e.getElementsByTagName("Placemark"),a=e.getElementsByTagName("Style"),l=e.getElementsByTagName("StyleMap");for(let e=0;e<a.length;e++){const t=w(F(a[e])).toString(16);o["#"+a[e].getAttribute("id")]=t,r[t]=a[e]}for(let e=0;e<l.length;e++){o["#"+l[e].getAttribute("id")]=w(F(l[e])).toString(16);const r=l[e].getElementsByTagName("Pair"),s={};for(let e=0;e<r.length;e++)s[t(n(r[e],"key"))]=t(n(r[e],"styleUrl"));i["#"+l[e].getAttribute("id")]=s}for(let e=0;e<s.length;e++){const t=I(s[e],o,i,r);t&&(yield t)}}e.gpx=function(e){return{type:"FeatureCollection",features:Array.from(u(e))}},e.gpxGen=u,e.kml=function(e){return{type:"FeatureCollection",features:Array.from(j(e))}},e.kmlGen=j,e.tcx=function(e){return{type:"FeatureCollection",features:Array.from(h(e))}},e.tcxGen=h,Object.defineProperty(e,"__esModule",{value:!0})}(t)},,function(e,t,n){(function(t){const o=n(4),r="undefined"==typeof window?t:window;r.loaders=r.loaders||{},e.exports=Object.assign(r.loaders,o)}).call(this,n(3))},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";function o(e,t={}){const n=r(e);return i(e,n,{coordLength:t.coordLength||n.coordLength,numericPropKeys:t.numericPropKeys||n.numericPropKeys,PositionDataType:t.PositionDataType||Float32Array})}n.r(t),n.d(t,"GPXLoader",(function(){return h})),n.d(t,"KMLLoader",(function(){return b})),n.d(t,"TCXLoader",(function(){return w}));function r(e){let t=0,n=0,o=0,r=0,i=0,s=0,a=0,l=0,c=0;const u=new Set,p={};for(const d of e){const e=d.geometry;switch(e.type){case"Point":n++,t++,u.add(e.coordinates.length);break;case"MultiPoint":n++,t+=e.coordinates.length;for(const t of e.coordinates)u.add(t.length);break;case"LineString":i++,o+=e.coordinates.length,r++;for(const t of e.coordinates)u.add(t.length);break;case"MultiLineString":i++;for(const t of e.coordinates){o+=t.length,r++;for(const e of t)u.add(e.length)}break;case"Polygon":c++,a++,l+=e.coordinates.length,s+=y(e.coordinates).length;for(const t of y(e.coordinates))u.add(t.length);break;case"MultiPolygon":c++;for(const t of e.coordinates){a++,l+=t.length,s+=y(t).length;for(const e of y(t))u.add(e.length)}break;default:throw new Error("Unsupported geometry type: "+e.type)}if(d.properties)for(const e in d.properties){const t=d.properties[e];p[e]=p[e]||void 0===p[e]?(g=t,Number.isFinite(g)):p[e]}}var g;return{coordLength:u.size>0?Math.max(...u):2,pointPositionsCount:t,pointFeaturesCount:n,linePositionsCount:o,linePathsCount:r,lineFeaturesCount:i,polygonPositionsCount:s,polygonObjectsCount:a,polygonRingsCount:l,polygonFeaturesCount:c,numericPropKeys:Object.keys(p).filter(e=>p[e])}}function i(e,t,n){const{pointPositionsCount:o,pointFeaturesCount:r,linePositionsCount:i,linePathsCount:g,lineFeaturesCount:f,polygonPositionsCount:y,polygonObjectsCount:m,polygonRingsCount:h,polygonFeaturesCount:x}=t,{coordLength:b,numericPropKeys:P,PositionDataType:w=Float32Array}=n,v=e.length>65535?Uint32Array:Uint16Array,T={positions:new w(o*b),globalFeatureIds:new v(o),featureIds:r>65535?new Uint32Array(o):new Uint16Array(o),numericProps:{},properties:Array(),fields:Array()},F={positions:new w(i*b),pathIndices:i>65535?new Uint32Array(g+1):new Uint16Array(g+1),globalFeatureIds:new v(i),featureIds:f>65535?new Uint32Array(i):new Uint16Array(i),numericProps:{},properties:Array(),fields:Array()},k={positions:new w(y*b),polygonIndices:y>65535?new Uint32Array(m+1):new Uint16Array(m+1),primitivePolygonIndices:y>65535?new Uint32Array(h+1):new Uint16Array(h+1),globalFeatureIds:new v(y),featureIds:x>65535?new Uint32Array(y):new Uint16Array(y),numericProps:{},properties:Array(),fields:Array()};for(const e of[T,F,k])for(const t of P||[])e.numericProps[t]=new Float32Array(e.positions.length/b);F.pathIndices[g]=i,k.polygonIndices[m]=y,k.primitivePolygonIndices[h]=y;const A={pointPosition:0,pointFeature:0,linePosition:0,linePath:0,lineFeature:0,polygonPosition:0,polygonObject:0,polygonRing:0,polygonFeature:0,feature:0};for(const t of e){const e=t.geometry,n=t.properties||{};switch(e.type){case"Point":s(e.coordinates,T,A,b,n),T.properties.push(d(n,P)),A.pointFeature++;break;case"MultiPoint":a(e.coordinates,T,A,b,n),T.properties.push(d(n,P)),A.pointFeature++;break;case"LineString":l(e.coordinates,F,A,b,n),F.properties.push(d(n,P)),A.lineFeature++;break;case"MultiLineString":c(e.coordinates,F,A,b,n),F.properties.push(d(n,P)),A.lineFeature++;break;case"Polygon":u(e.coordinates,k,A,b,n),k.properties.push(d(n,P)),A.polygonFeature++;break;case"MultiPolygon":p(e.coordinates,k,A,b,n),k.properties.push(d(n,P)),A.polygonFeature++;break;default:throw new Error("Invalid geometry type")}A.feature++}return function(e,t,n,o){const r={points:{...e,positions:{value:e.positions,size:o},globalFeatureIds:{value:e.globalFeatureIds,size:1},featureIds:{value:e.featureIds,size:1},type:"Point"},lines:{...t,pathIndices:{value:t.pathIndices,size:1},positions:{value:t.positions,size:o},globalFeatureIds:{value:t.globalFeatureIds,size:1},featureIds:{value:t.featureIds,size:1},type:"LineString"},polygons:{...n,polygonIndices:{value:n.polygonIndices,size:1},primitivePolygonIndices:{value:n.primitivePolygonIndices,size:1},positions:{value:n.positions,size:o},globalFeatureIds:{value:n.globalFeatureIds,size:1},featureIds:{value:n.featureIds,size:1},type:"Polygon"}};for(const e in r)for(const t in r[e].numericProps)r[e].numericProps[t]={value:r[e].numericProps[t],size:1};return r}(T,F,k,b)}function s(e,t,n,o,r){t.positions.set(e,n.pointPosition*o),t.globalFeatureIds[n.pointPosition]=n.feature,t.featureIds[n.pointPosition]=n.pointFeature,g(t,r,n.pointPosition,1),n.pointPosition++}function a(e,t,n,o,r){for(const i of e)s(i,t,n,o,r)}function l(e,t,n,o,r){t.pathIndices[n.linePath]=n.linePosition,n.linePath++,f(t.positions,e,n.linePosition,o);const i=e.length;g(t,r,n.linePosition,i),t.globalFeatureIds.set(new Uint32Array(i).fill(n.feature),n.linePosition),t.featureIds.set(new Uint32Array(i).fill(n.lineFeature),n.linePosition),n.linePosition+=i}function c(e,t,n,o,r){for(const i of e)l(i,t,n,o,r)}function u(e,t,n,o,r){t.polygonIndices[n.polygonObject]=n.polygonPosition,n.polygonObject++;for(const i of e){t.primitivePolygonIndices[n.polygonRing]=n.polygonPosition,n.polygonRing++,f(t.positions,i,n.polygonPosition,o);const e=i.length;g(t,r,n.polygonPosition,e),t.globalFeatureIds.set(new Uint32Array(e).fill(n.feature),n.polygonPosition),t.featureIds.set(new Uint32Array(e).fill(n.polygonFeature),n.polygonPosition),n.polygonPosition+=e}}function p(e,t,n,o,r){for(const i of e)u(i,t,n,o,r)}function g(e,t,n,o){for(const r in e.numericProps)r in t&&e.numericProps[r].set(new Array(o).fill(t[r]),n)}function d(e,t){const n={};for(const o in e)t.includes(o)||(n[o]=e[o]);return n}function f(e,t,n,o){let r=n*o;for(const n of t)e.set(n,r),r+=o}function y(e){return[].concat(...e)}var m=n(0);const h={name:"GPX (GPS exchange format)",id:"gpx",module:"kml",version:"3.0.10",extensions:["gpx"],mimeTypes:["application/gpx+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<gpx'],parse:async(e,t)=>x((new TextDecoder).decode(e),t),parseTextSync:x,options:{gpx:{},gis:{format:"geojson"}}};function x(e,t){var n,r;const i=(new DOMParser).parseFromString(e,"text/xml"),s=Object(m.gpx)(i);switch(null==t||null===(n=t.gpx)||void 0===n?void 0:n.type){case"object-row-table":return s.features}switch(null==t||null===(r=t.gis)||void 0===r?void 0:r.format){case"geojson":return s;case"binary":return o(s.features);case"raw":return i;default:throw new Error}}const b={name:"KML (Keyhole Markup Language)",id:"kml",module:"kml",version:"3.0.10",extensions:["kml"],mimeTypes:["application/vnd.google-earth.kml+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<kml xmlns="http://www.opengis.net/kml/2.2">'],parse:async(e,t)=>P((new TextDecoder).decode(e),t),parseTextSync:P,options:{kml:{},gis:{format:"geojson"}}};function P(e,t){var n,r;const i=(new DOMParser).parseFromString(e,"text/xml"),s=Object(m.kml)(i);switch(null==t||null===(n=t.kml)||void 0===n?void 0:n.type){case"object-row-table":return s.features}switch(null==t||null===(r=t.gis)||void 0===r?void 0:r.format){case"geojson":return s;case"binary":return o(s.features);case"raw":return i;default:throw new Error}}const w={name:"TCX (Training Center XML)",id:"tcx",module:"kml",version:"3.0.10",extensions:["tcx"],mimeTypes:["application/vnd.garmin.tcx+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<TrainingCenterDatabase'],parse:async(e,t)=>v((new TextDecoder).decode(e),t),parseTextSync:v,options:{tcx:{},gis:{format:"geojson"}}};function v(e,t={}){var n,r;const i=(new DOMParser).parseFromString(e,"text/xml"),s=Object(m.tcx)(i);switch(null==t||null===(n=t.tcx)||void 0===n?void 0:n.type){case"object-row-table":return s.features}switch(null==t||null===(r=t.gis)||void 0===r?void 0:r.format){case"geojson":return s;case"binary":return o(s.features);case"raw":return i;default:throw new Error}}}])}));
1
+ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var o in n)("object"==typeof exports?exports:e)[o]=n[o]}}(window,(function(){return function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=2)}([function(e,t,n){!function(e){"use strict";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||""}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function o(e){const o={};if(e){const r=n(e,"line");if(r){const e=t(n(r,"color")),i=parseFloat(t(n(r,"opacity"))),s=parseFloat(t(n(r,"width")));e&&(o.stroke=e),isNaN(i)||(o["stroke-opacity"]=i),isNaN(s)||(o["stroke-width"]=96*s/25.4)}}return o}function r(e,o){const r={};let i,s;for(s=0;s<o.length;s++)i=n(e,o[s]),i&&(r[o[s]]=t(i));return r}function i(e){const n=r(e,["name","cmt","desc","type","time","keywords"]),o=e.getElementsByTagNameNS("http://www.garmin.com/xmlschemas/GpxExtensions/v3","*");for(let r=0;r<o.length;r++){const i=o[r];i.parentNode.parentNode===e&&(n[i.tagName.replace(":","_")]=t(i))}const i=e.getElementsByTagName("link");i.length&&(n.links=[]);for(let e=0;e<i.length;e++)n.links.push(Object.assign({href:i[e].getAttribute("href")},r(i[e],["text","type"])));return n}function s(e){const o=[parseFloat(e.getAttribute("lon")),parseFloat(e.getAttribute("lat"))],r=n(e,"ele"),i=n(e,"gpxtpx:hr")||n(e,"hr"),s=n(e,"time");let a;r&&(a=parseFloat(t(r)),isNaN(a)||o.push(a));const l={coordinates:o,time:s?t(s):null,extendedValues:[]};i&&l.extendedValues.push(["heart",parseFloat(t(i))]);const c=n(e,"extensions");if(null!==c)for(const e of["speed","course","hAcc","vAcc"]){const o=parseFloat(t(n(c,e)));isNaN(o)||l.extendedValues.push([e,o])}return l}function a(e){const t=l(e,"rtept");if(t)return{type:"Feature",properties:Object.assign(i(e),o(n(e,"extensions")),{_gpxType:"rte"}),geometry:{type:"LineString",coordinates:t.line}}}function l(e,t){const n=e.getElementsByTagName(t);if(n.length<2)return;const o=[],r=[],i={};for(let e=0;e<n.length;e++){const t=s(n[e]);o.push(t.coordinates),t.time&&r.push(t.time);for(let o=0;o<t.extendedValues.length;o++){const[r,s]=t.extendedValues[o],a="heart"===r?r:r+"s";i[a]||(i[a]=Array(n.length).fill(null)),i[a][e]=s}}return{line:o,times:r,extendedValues:i}}function c(e){const t=e.getElementsByTagName("trkseg"),r=[],s=[],a=[];for(let e=0;e<t.length;e++){const n=l(t[e],"trkpt");n&&(a.push(n),n.times&&n.times.length&&s.push(n.times))}if(0===a.length)return;const c=a.length>1,u=Object.assign(i(e),o(n(e,"extensions")),{_gpxType:"trk"},s.length?{coordinateProperties:{times:c?s:s[0]}}:{});for(let e=0;e<a.length;e++){const t=a[e];r.push(t.line);for(const[n,o]of Object.entries(t.extendedValues)){let t=u;"heart"===n&&(u.coordinateProperties||(u.coordinateProperties={}),t=u.coordinateProperties),c?(t[n]||(t[n]=a.map(e=>new Array(e.line.length).fill(null))),t[n][e]=o):t[n]=o}}return{type:"Feature",properties:u,geometry:c?{type:"MultiLineString",coordinates:r}:{type:"LineString",coordinates:r[0]}}}function*u(e){const t=e.getElementsByTagName("trk"),n=e.getElementsByTagName("rte"),o=e.getElementsByTagName("wpt");for(let e=0;e<t.length;e++){const n=c(t[e]);n&&(yield n)}for(let e=0;e<n.length;e++){const t=a(n[e]);t&&(yield t)}for(let e=0;e<o.length;e++)yield(l=o[e],{type:"Feature",properties:Object.assign(i(l),r(l,["sym"])),geometry:{type:"Point",coordinates:s(l).coordinates}});var l}const p=[["heartRate","heartRates"],["Cadence","cadences"],["Speed","speeds"],["Watts","watts"]],g=[["TotalTimeSeconds","totalTimeSeconds"],["DistanceMeters","distanceMeters"],["MaximumSpeed","maxSpeed"],["AverageHeartRateBpm","avgHeartRate"],["MaximumHeartRateBpm","maxHeartRate"],["AvgSpeed","avgSpeed"],["AvgWatts","avgWatts"],["MaxWatts","maxWatts"]];function d(e,o){const r=[];for(const[i,s]of o){let o=n(e,i);if(!o){const t=e.getElementsByTagNameNS("http://www.garmin.com/xmlschemas/ActivityExtension/v2",i);t.length&&(o=t[0])}const a=parseFloat(t(o));isNaN(a)||r.push([s,a])}return r}function f(e){const o=t(n(e,"LongitudeDegrees")),r=t(n(e,"LatitudeDegrees"));if(!o.length||!r.length)return null;const i=[parseFloat(o),parseFloat(r)],s=n(e,"AltitudeMeters"),a=n(e,"HeartRateBpm"),l=n(e,"Time");let c;return s&&(c=parseFloat(t(s)),isNaN(c)||i.push(c)),{coordinates:i,time:l?t(l):null,heartRate:a?parseFloat(t(a)):null,extensions:d(e,p)}}function y(e,t){const n=e.getElementsByTagName(t),o=[],r=[],i=[];if(n.length<2)return null;const s={extendedProperties:{}};for(let e=0;e<n.length;e++){const t=f(n[e]);if(null!==t){o.push(t.coordinates),t.time&&r.push(t.time),t.heartRate&&i.push(t.heartRate);for(const[o,r]of t.extensions)s.extendedProperties[o]||(s.extendedProperties[o]=Array(n.length).fill(null)),s.extendedProperties[o][e]=r}}return Object.assign(s,{line:o,times:r,heartRates:i})}function m(e){const o=e.getElementsByTagName("Track"),r=[],i=[],s=[],a=[];let l;const c=function(e){const t={};for(const[n,o]of e)t[n]=o;return t}(d(e,g)),u=n(e,"Name");u&&(c.name=t(u));for(let e=0;e<o.length;e++)l=y(o[e],"Trackpoint"),l&&(r.push(l.line),l.times.length&&i.push(l.times),l.heartRates.length&&s.push(l.heartRates),a.push(l.extendedProperties));for(let e=0;e<a.length;e++){const t=a[e];for(const n in t)1===o.length?c[n]=l.extendedProperties[n]:(c[n]||(c[n]=r.map(e=>Array(e.length).fill(null))),c[n][e]=t[n])}if(0!==r.length)return(i.length||s.length)&&(c.coordinateProperties=Object.assign(i.length?{times:1===r.length?i[0]:i}:{},s.length?{heart:1===r.length?s[0]:s}:{})),{type:"Feature",properties:c,geometry:{type:1===r.length?"LineString":"MultiLineString",coordinates:1===r.length?r[0]:r}}}function*h(e){const t=e.getElementsByTagName("Lap");for(let e=0;e<t.length;e++){const n=m(t[e]);n&&(yield n)}const n=e.getElementsByTagName("Courses");for(let e=0;e<n.length;e++){const t=m(n[e]);t&&(yield t)}}const x=/\s*/g,b=/^\s*|\s*$/g,P=/\s+/;function w(e){if(!e||!e.length)return 0;let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return t}function v(e){return e.replace(x,"").split(",").map(parseFloat)}function T(e){return e.replace(b,"").split(P).map(v)}function F(e){if(void 0!==e.xml)return e.xml;if(e.tagName){let t=e.tagName;for(let n=0;n<e.attributes.length;n++)t+=e.attributes[n].name+e.attributes[n].value;for(let n=0;n<e.childNodes.length;n++)t+=F(e.childNodes[n]);return t}return"#text"===e.nodeName?(e.nodeValue||e.value||"").trim():"#cdata-section"===e.nodeName?e.nodeValue:""}const k=["Polygon","LineString","Point","Track","gx:Track"];function A(e,o,r){let i=t(n(o,"color"))||"";const s="stroke"==r||"fill"===r?r:r+"-color";"#"===i.substr(0,1)&&(i=i.substr(1)),6===i.length||3===i.length?e[s]=i:8===i.length&&(e[r+"-opacity"]=parseInt(i.substr(0,2),16)/255,e[s]="#"+i.substr(6,2)+i.substr(4,2)+i.substr(2,2))}function N(e,o,r,i){const s=parseFloat(t(n(o,r)));isNaN(s)||(e[i]=s)}function S(e){let n=e.getElementsByTagName("coord");const o=[],r=[];0===n.length&&(n=e.getElementsByTagName("gx:coord"));for(let e=0;e<n.length;e++)o.push(t(n[e]).split(" ").map(parseFloat));const i=e.getElementsByTagName("when");for(let e=0;e<i.length;e++)r.push(t(i[e]));return{coords:o,times:r}}function I(e,o,r,i){const s=function e(o){let r,i,s,a,l;const c=[],u=[];if(n(o,"MultiGeometry"))return e(n(o,"MultiGeometry"));if(n(o,"MultiTrack"))return e(n(o,"MultiTrack"));if(n(o,"gx:MultiTrack"))return e(n(o,"gx:MultiTrack"));for(s=0;s<k.length;s++)if(i=o.getElementsByTagName(k[s]),i)for(a=0;a<i.length;a++)if(r=i[a],"Point"===k[s])c.push({type:"Point",coordinates:v(t(n(r,"coordinates")))});else if("LineString"===k[s])c.push({type:"LineString",coordinates:T(t(n(r,"coordinates")))});else if("Polygon"===k[s]){const e=r.getElementsByTagName("LinearRing"),o=[];for(l=0;l<e.length;l++)o.push(T(t(n(e[l],"coordinates"))));c.push({type:"Polygon",coordinates:o})}else if("Track"===k[s]||"gx:Track"===k[s]){const e=S(r);c.push({type:"LineString",coordinates:e.coords}),e.times.length&&u.push(e.times)}return{geoms:c,coordTimes:u}}(e);let a;const l={},c=t(n(e,"name")),u=t(n(e,"address"));let p=t(n(e,"styleUrl"));const g=t(n(e,"description")),d=n(e,"TimeSpan"),f=n(e,"TimeStamp"),y=n(e,"ExtendedData");let m=n(e,"IconStyle"),h=n(e,"LabelStyle"),x=n(e,"LineStyle"),b=n(e,"PolyStyle");const P=n(e,"visibility");if(c&&(l.name=c),u&&(l.address=u),p){"#"!==p[0]&&(p="#"+p),l.styleUrl=p,o[p]&&(l.styleHash=o[p]),r[p]&&(l.styleMapHash=r[p],l.styleHash=o[r[p].normal]);const e=i[l.styleHash];e&&(m||(m=n(e,"IconStyle")),h||(h=n(e,"LabelStyle")),x||(x=n(e,"LineStyle")),b||(b=n(e,"PolyStyle")))}if(g&&(l.description=g),d){const e=t(n(d,"begin")),o=t(n(d,"end"));l.timespan={begin:e,end:o}}if(f&&(l.timestamp=t(n(f,"when"))),m){A(l,m,"icon"),N(l,m,"scale","icon-scale"),N(l,m,"heading","icon-heading");const e=n(m,"hotSpot");if(e){const t=parseFloat(e.getAttribute("x")),n=parseFloat(e.getAttribute("y"));isNaN(t)||isNaN(n)||(l["icon-offset"]=[t,n])}const o=n(m,"Icon");if(o){const e=t(n(o,"href"));e&&(l.icon=e)}}if(h&&(A(l,h,"label"),N(l,h,"scale","label-scale")),x&&(A(l,x,"stroke"),N(l,x,"width","stroke-width")),b){A(l,b,"fill");const e=t(n(b,"fill")),o=t(n(b,"outline"));e&&(l["fill-opacity"]="1"===e?l["fill-opacity"]||1:0),o&&(l["stroke-opacity"]="1"===o?l["stroke-opacity"]||1:0)}if(y){const e=y.getElementsByTagName("Data"),o=y.getElementsByTagName("SimpleData");for(a=0;a<e.length;a++)l[e[a].getAttribute("name")]=t(n(e[a],"value"));for(a=0;a<o.length;a++)l[o[a].getAttribute("name")]=t(o[a])}P&&(l.visibility=t(P)),s.coordTimes.length&&(l.coordinateProperties={times:1===s.coordTimes.length?s.coordTimes[0]:s.coordTimes});const w={type:"Feature",geometry:0===s.geoms.length?null:1===s.geoms.length?s.geoms[0]:{type:"GeometryCollection",geometries:s.geoms},properties:l};return e.getAttribute("id")&&(w.id=e.getAttribute("id")),w}function*j(e){const o={},r={},i={},s=e.getElementsByTagName("Placemark"),a=e.getElementsByTagName("Style"),l=e.getElementsByTagName("StyleMap");for(let e=0;e<a.length;e++){const t=w(F(a[e])).toString(16);o["#"+a[e].getAttribute("id")]=t,r[t]=a[e]}for(let e=0;e<l.length;e++){o["#"+l[e].getAttribute("id")]=w(F(l[e])).toString(16);const r=l[e].getElementsByTagName("Pair"),s={};for(let e=0;e<r.length;e++)s[t(n(r[e],"key"))]=t(n(r[e],"styleUrl"));i["#"+l[e].getAttribute("id")]=s}for(let e=0;e<s.length;e++){const t=I(s[e],o,i,r);t&&(yield t)}}e.gpx=function(e){return{type:"FeatureCollection",features:Array.from(u(e))}},e.gpxGen=u,e.kml=function(e){return{type:"FeatureCollection",features:Array.from(j(e))}},e.kmlGen=j,e.tcx=function(e){return{type:"FeatureCollection",features:Array.from(h(e))}},e.tcxGen=h,Object.defineProperty(e,"__esModule",{value:!0})}(t)},,function(e,t,n){(function(t){const o=n(4),r="undefined"==typeof window?t:window;r.loaders=r.loaders||{},e.exports=Object.assign(r.loaders,o)}).call(this,n(3))},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";function o(e,t={}){const n=r(e);return i(e,n,{coordLength:t.coordLength||n.coordLength,numericPropKeys:t.numericPropKeys||n.numericPropKeys,PositionDataType:t.PositionDataType||Float32Array})}n.r(t),n.d(t,"GPXLoader",(function(){return h})),n.d(t,"KMLLoader",(function(){return b})),n.d(t,"TCXLoader",(function(){return w}));function r(e){let t=0,n=0,o=0,r=0,i=0,s=0,a=0,l=0,c=0;const u=new Set,p={};for(const d of e){const e=d.geometry;switch(e.type){case"Point":n++,t++,u.add(e.coordinates.length);break;case"MultiPoint":n++,t+=e.coordinates.length;for(const t of e.coordinates)u.add(t.length);break;case"LineString":i++,o+=e.coordinates.length,r++;for(const t of e.coordinates)u.add(t.length);break;case"MultiLineString":i++;for(const t of e.coordinates){o+=t.length,r++;for(const e of t)u.add(e.length)}break;case"Polygon":c++,a++,l+=e.coordinates.length,s+=y(e.coordinates).length;for(const t of y(e.coordinates))u.add(t.length);break;case"MultiPolygon":c++;for(const t of e.coordinates){a++,l+=t.length,s+=y(t).length;for(const e of y(t))u.add(e.length)}break;default:throw new Error("Unsupported geometry type: "+e.type)}if(d.properties)for(const e in d.properties){const t=d.properties[e];p[e]=p[e]||void 0===p[e]?(g=t,Number.isFinite(g)):p[e]}}var g;return{coordLength:u.size>0?Math.max(...u):2,pointPositionsCount:t,pointFeaturesCount:n,linePositionsCount:o,linePathsCount:r,lineFeaturesCount:i,polygonPositionsCount:s,polygonObjectsCount:a,polygonRingsCount:l,polygonFeaturesCount:c,numericPropKeys:Object.keys(p).filter(e=>p[e])}}function i(e,t,n){const{pointPositionsCount:o,pointFeaturesCount:r,linePositionsCount:i,linePathsCount:g,lineFeaturesCount:f,polygonPositionsCount:y,polygonObjectsCount:m,polygonRingsCount:h,polygonFeaturesCount:x}=t,{coordLength:b,numericPropKeys:P,PositionDataType:w=Float32Array}=n,v=e.length>65535?Uint32Array:Uint16Array,T={positions:new w(o*b),globalFeatureIds:new v(o),featureIds:r>65535?new Uint32Array(o):new Uint16Array(o),numericProps:{},properties:Array(),fields:Array()},F={positions:new w(i*b),pathIndices:i>65535?new Uint32Array(g+1):new Uint16Array(g+1),globalFeatureIds:new v(i),featureIds:f>65535?new Uint32Array(i):new Uint16Array(i),numericProps:{},properties:Array(),fields:Array()},k={positions:new w(y*b),polygonIndices:y>65535?new Uint32Array(m+1):new Uint16Array(m+1),primitivePolygonIndices:y>65535?new Uint32Array(h+1):new Uint16Array(h+1),globalFeatureIds:new v(y),featureIds:x>65535?new Uint32Array(y):new Uint16Array(y),numericProps:{},properties:Array(),fields:Array()};for(const e of[T,F,k])for(const t of P||[])e.numericProps[t]=new Float32Array(e.positions.length/b);F.pathIndices[g]=i,k.polygonIndices[m]=y,k.primitivePolygonIndices[h]=y;const A={pointPosition:0,pointFeature:0,linePosition:0,linePath:0,lineFeature:0,polygonPosition:0,polygonObject:0,polygonRing:0,polygonFeature:0,feature:0};for(const t of e){const e=t.geometry,n=t.properties||{};switch(e.type){case"Point":s(e.coordinates,T,A,b,n),T.properties.push(d(n,P)),A.pointFeature++;break;case"MultiPoint":a(e.coordinates,T,A,b,n),T.properties.push(d(n,P)),A.pointFeature++;break;case"LineString":l(e.coordinates,F,A,b,n),F.properties.push(d(n,P)),A.lineFeature++;break;case"MultiLineString":c(e.coordinates,F,A,b,n),F.properties.push(d(n,P)),A.lineFeature++;break;case"Polygon":u(e.coordinates,k,A,b,n),k.properties.push(d(n,P)),A.polygonFeature++;break;case"MultiPolygon":p(e.coordinates,k,A,b,n),k.properties.push(d(n,P)),A.polygonFeature++;break;default:throw new Error("Invalid geometry type")}A.feature++}return function(e,t,n,o){const r={points:{...e,positions:{value:e.positions,size:o},globalFeatureIds:{value:e.globalFeatureIds,size:1},featureIds:{value:e.featureIds,size:1},type:"Point"},lines:{...t,pathIndices:{value:t.pathIndices,size:1},positions:{value:t.positions,size:o},globalFeatureIds:{value:t.globalFeatureIds,size:1},featureIds:{value:t.featureIds,size:1},type:"LineString"},polygons:{...n,polygonIndices:{value:n.polygonIndices,size:1},primitivePolygonIndices:{value:n.primitivePolygonIndices,size:1},positions:{value:n.positions,size:o},globalFeatureIds:{value:n.globalFeatureIds,size:1},featureIds:{value:n.featureIds,size:1},type:"Polygon"}};for(const e in r)for(const t in r[e].numericProps)r[e].numericProps[t]={value:r[e].numericProps[t],size:1};return r}(T,F,k,b)}function s(e,t,n,o,r){t.positions.set(e,n.pointPosition*o),t.globalFeatureIds[n.pointPosition]=n.feature,t.featureIds[n.pointPosition]=n.pointFeature,g(t,r,n.pointPosition,1),n.pointPosition++}function a(e,t,n,o,r){for(const i of e)s(i,t,n,o,r)}function l(e,t,n,o,r){t.pathIndices[n.linePath]=n.linePosition,n.linePath++,f(t.positions,e,n.linePosition,o);const i=e.length;g(t,r,n.linePosition,i),t.globalFeatureIds.set(new Uint32Array(i).fill(n.feature),n.linePosition),t.featureIds.set(new Uint32Array(i).fill(n.lineFeature),n.linePosition),n.linePosition+=i}function c(e,t,n,o,r){for(const i of e)l(i,t,n,o,r)}function u(e,t,n,o,r){t.polygonIndices[n.polygonObject]=n.polygonPosition,n.polygonObject++;for(const i of e){t.primitivePolygonIndices[n.polygonRing]=n.polygonPosition,n.polygonRing++,f(t.positions,i,n.polygonPosition,o);const e=i.length;g(t,r,n.polygonPosition,e),t.globalFeatureIds.set(new Uint32Array(e).fill(n.feature),n.polygonPosition),t.featureIds.set(new Uint32Array(e).fill(n.polygonFeature),n.polygonPosition),n.polygonPosition+=e}}function p(e,t,n,o,r){for(const i of e)u(i,t,n,o,r)}function g(e,t,n,o){for(const r in e.numericProps)r in t&&e.numericProps[r].set(new Array(o).fill(t[r]),n)}function d(e,t){const n={};for(const o in e)t.includes(o)||(n[o]=e[o]);return n}function f(e,t,n,o){let r=n*o;for(const n of t)e.set(n,r),r+=o}function y(e){return[].concat(...e)}var m=n(0);const h={name:"GPX (GPS exchange format)",id:"gpx",module:"kml",version:"3.0.14",extensions:["gpx"],mimeTypes:["application/gpx+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<gpx'],parse:async(e,t)=>x((new TextDecoder).decode(e),t),parseTextSync:x,options:{gpx:{},gis:{format:"geojson"}}};function x(e,t){var n,r;const i=(new DOMParser).parseFromString(e,"text/xml"),s=Object(m.gpx)(i);switch(null==t||null===(n=t.gpx)||void 0===n?void 0:n.type){case"object-row-table":return s.features}switch(null==t||null===(r=t.gis)||void 0===r?void 0:r.format){case"geojson":return s;case"binary":return o(s.features);case"raw":return i;default:throw new Error}}const b={name:"KML (Keyhole Markup Language)",id:"kml",module:"kml",version:"3.0.14",extensions:["kml"],mimeTypes:["application/vnd.google-earth.kml+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<kml xmlns="http://www.opengis.net/kml/2.2">'],parse:async(e,t)=>P((new TextDecoder).decode(e),t),parseTextSync:P,options:{kml:{},gis:{format:"geojson"}}};function P(e,t){var n,r;const i=(new DOMParser).parseFromString(e,"text/xml"),s=Object(m.kml)(i);switch(null==t||null===(n=t.kml)||void 0===n?void 0:n.type){case"object-row-table":return s.features}switch(null==t||null===(r=t.gis)||void 0===r?void 0:r.format){case"geojson":return s;case"binary":return o(s.features);case"raw":return i;default:throw new Error}}const w={name:"TCX (Training Center XML)",id:"tcx",module:"kml",version:"3.0.14",extensions:["tcx"],mimeTypes:["application/vnd.garmin.tcx+xml"],text:!0,tests:['<?xml version="1.0" encoding="UTF-8"?>\n<TrainingCenterDatabase'],parse:async(e,t)=>v((new TextDecoder).decode(e),t),parseTextSync:v,options:{tcx:{},gis:{format:"geojson"}}};function v(e,t={}){var n,r;const i=(new DOMParser).parseFromString(e,"text/xml"),s=Object(m.tcx)(i);switch(null==t||null===(n=t.tcx)||void 0===n?void 0:n.type){case"object-row-table":return s.features}switch(null==t||null===(r=t.gis)||void 0===r?void 0:r.format){case"geojson":return s;case"binary":return o(s.features);case"raw":return i;default:throw new Error}}}])}));
2
2
  //# sourceMappingURL=dist.min.js.map
@@ -15,7 +15,7 @@ var _gis = require("@loaders.gl/gis");
15
15
 
16
16
  var _togeojson = require("@tmcw/togeojson");
17
17
 
18
- var VERSION = typeof "3.0.10" !== 'undefined' ? "3.0.10" : 'latest';
18
+ var VERSION = typeof "3.0.14" !== 'undefined' ? "3.0.14" : 'latest';
19
19
  var GPX_HEADER = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<gpx";
20
20
  var GPXLoader = {
21
21
  name: 'GPX (GPS exchange format)',
@@ -15,7 +15,7 @@ var _gis = require("@loaders.gl/gis");
15
15
 
16
16
  var _togeojson = require("@tmcw/togeojson");
17
17
 
18
- var VERSION = typeof "3.0.10" !== 'undefined' ? "3.0.10" : 'latest';
18
+ var VERSION = typeof "3.0.14" !== 'undefined' ? "3.0.14" : 'latest';
19
19
  var KML_HEADER = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<kml xmlns=\"http://www.opengis.net/kml/2.2\">";
20
20
  var KMLLoader = {
21
21
  name: 'KML (Keyhole Markup Language)',
@@ -15,7 +15,7 @@ var _gis = require("@loaders.gl/gis");
15
15
 
16
16
  var _togeojson = require("@tmcw/togeojson");
17
17
 
18
- var VERSION = typeof "3.0.10" !== 'undefined' ? "3.0.10" : 'latest';
18
+ var VERSION = typeof "3.0.14" !== 'undefined' ? "3.0.14" : 'latest';
19
19
  var TCX_HEADER = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<TrainingCenterDatabase";
20
20
  var TCXLoader = {
21
21
  name: 'TCX (Training Center XML)',
@@ -1,9 +1,7 @@
1
1
  import { geojsonToBinary } from '@loaders.gl/gis';
2
2
  import { gpx } from '@tmcw/togeojson';
3
- const VERSION = typeof "3.0.10" !== 'undefined' ? "3.0.10" : 'latest';
4
- const GPX_HEADER = `\
5
- <?xml version="1.0" encoding="UTF-8"?>
6
- <gpx`;
3
+ const VERSION = typeof "3.0.14" !== 'undefined' ? "3.0.14" : 'latest';
4
+ const GPX_HEADER = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<gpx";
7
5
  export const GPXLoader = {
8
6
  name: 'GPX (GPS exchange format)',
9
7
  id: 'gpx',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/gpx-loader.ts"],"names":["geojsonToBinary","gpx","VERSION","GPX_HEADER","GPXLoader","name","id","module","version","extensions","mimeTypes","text","tests","parse","arrayBuffer","options","parseTextSync","TextDecoder","decode","gis","format","doc","DOMParser","parseFromString","geojson","type","features","Error","_typecheckGPXLoader"],"mappings":"AACA,SAAQA,eAAR,QAA8B,iBAA9B;AACA,SAAQC,GAAR,QAAkB,iBAAlB;AAIA,MAAMC,OAAO,GAAG,oBAAuB,WAAvB,cAAmD,QAAnE;AAMA,MAAMC,UAAU,GAAI;AACpB;AACA,KAFA;AAOA,OAAO,MAAMC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,2BADiB;AAEvBC,EAAAA,EAAE,EAAE,KAFmB;AAGvBC,EAAAA,MAAM,EAAE,KAHe;AAIvBC,EAAAA,OAAO,EAAEN,OAJc;AAKvBO,EAAAA,UAAU,EAAE,CAAC,KAAD,CALW;AAMvBC,EAAAA,SAAS,EAAE,CAAC,qBAAD,CANY;AAOvBC,EAAAA,IAAI,EAAE,IAPiB;AAQvBC,EAAAA,KAAK,EAAE,CAACT,UAAD,CARgB;AASvBU,EAAAA,KAAK,EAAE,OAAOC,WAAP,EAAoBC,OAApB,KACLC,aAAa,CAAC,IAAIC,WAAJ,GAAkBC,MAAlB,CAAyBJ,WAAzB,CAAD,EAAwCC,OAAxC,CAVQ;AAWvBC,EAAAA,aAXuB;AAYvBD,EAAAA,OAAO,EAAE;AACPd,IAAAA,GAAG,EAAE,EADE;AAEPkB,IAAAA,GAAG,EAAE;AAACC,MAAAA,MAAM,EAAE;AAAT;AAFE;AAZc,CAAlB;;AAkBP,SAASJ,aAAT,CAAuBL,IAAvB,EAAqCI,OAArC,EAAmD;AAAA;;AACjD,QAAMM,GAAG,GAAG,IAAIC,SAAJ,GAAgBC,eAAhB,CAAgCZ,IAAhC,EAAsC,UAAtC,CAAZ;AACA,QAAMa,OAAO,GAAGvB,GAAG,CAACoB,GAAD,CAAnB;;AAEA,UAAQN,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEd,GAAjB,iDAAQ,aAAcwB,IAAtB;AACE,SAAK,kBAAL;AACE,aAAOD,OAAO,CAACE,QAAf;;AACF;AAHF;;AAMA,UAAQX,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEI,GAAjB,iDAAQ,aAAcC,MAAtB;AACE,SAAK,SAAL;AACE,aAAOI,OAAP;;AACF,SAAK,QAAL;AACE,aAAOxB,eAAe,CAACwB,OAAO,CAACE,QAAT,CAAtB;;AACF,SAAK,KAAL;AACE,aAAOL,GAAP;;AACF;AACE,YAAM,IAAIM,KAAJ,EAAN;AARJ;AAUD;;AAED,OAAO,MAAMC,mBAAmB,GAAGxB,SAA5B","sourcesContent":["import type {LoaderOptions} from '@loaders.gl/loader-utils';\nimport {geojsonToBinary} from '@loaders.gl/gis';\nimport {gpx} from '@tmcw/togeojson';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type GPXLoaderOptions = LoaderOptions & {\n gpx?: {};\n};\n\nconst GPX_HEADER = `\\\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<gpx`;\n\n/**\n * Loader for GPX (GPS exchange format)\n */\nexport const GPXLoader = {\n name: 'GPX (GPS exchange format)',\n id: 'gpx',\n module: 'kml',\n version: VERSION,\n extensions: ['gpx'],\n mimeTypes: ['application/gpx+xml'],\n text: true,\n tests: [GPX_HEADER],\n parse: async (arrayBuffer, options) =>\n parseTextSync(new TextDecoder().decode(arrayBuffer), options),\n parseTextSync,\n options: {\n gpx: {},\n gis: {format: 'geojson'}\n }\n};\n\nfunction parseTextSync(text: string, options: any) {\n const doc = new DOMParser().parseFromString(text, 'text/xml');\n const geojson = gpx(doc);\n\n switch (options?.gpx?.type) {\n case 'object-row-table':\n return geojson.features;\n default:\n }\n\n switch (options?.gis?.format) {\n case 'geojson':\n return geojson;\n case 'binary':\n return geojsonToBinary(geojson.features);\n case 'raw':\n return doc;\n default:\n throw new Error();\n }\n}\n\nexport const _typecheckGPXLoader = GPXLoader;\n"],"file":"gpx-loader.js"}
1
+ {"version":3,"sources":["../../src/gpx-loader.ts"],"names":["geojsonToBinary","gpx","VERSION","GPX_HEADER","GPXLoader","name","id","module","version","extensions","mimeTypes","text","tests","parse","arrayBuffer","options","parseTextSync","TextDecoder","decode","gis","format","doc","DOMParser","parseFromString","geojson","type","features","Error","_typecheckGPXLoader"],"mappings":"AACA,SAAQA,eAAR,QAA8B,iBAA9B;AACA,SAAQC,GAAR,QAAkB,iBAAlB;AAIA,MAAMC,OAAO,GAAG,oBAAuB,WAAvB,cAAmD,QAAnE;AAMA,MAAMC,UAAU,qDAAhB;AAOA,OAAO,MAAMC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,2BADiB;AAEvBC,EAAAA,EAAE,EAAE,KAFmB;AAGvBC,EAAAA,MAAM,EAAE,KAHe;AAIvBC,EAAAA,OAAO,EAAEN,OAJc;AAKvBO,EAAAA,UAAU,EAAE,CAAC,KAAD,CALW;AAMvBC,EAAAA,SAAS,EAAE,CAAC,qBAAD,CANY;AAOvBC,EAAAA,IAAI,EAAE,IAPiB;AAQvBC,EAAAA,KAAK,EAAE,CAACT,UAAD,CARgB;AASvBU,EAAAA,KAAK,EAAE,OAAOC,WAAP,EAAoBC,OAApB,KACLC,aAAa,CAAC,IAAIC,WAAJ,GAAkBC,MAAlB,CAAyBJ,WAAzB,CAAD,EAAwCC,OAAxC,CAVQ;AAWvBC,EAAAA,aAXuB;AAYvBD,EAAAA,OAAO,EAAE;AACPd,IAAAA,GAAG,EAAE,EADE;AAEPkB,IAAAA,GAAG,EAAE;AAACC,MAAAA,MAAM,EAAE;AAAT;AAFE;AAZc,CAAlB;;AAkBP,SAASJ,aAAT,CAAuBL,IAAvB,EAAqCI,OAArC,EAAmD;AAAA;;AACjD,QAAMM,GAAG,GAAG,IAAIC,SAAJ,GAAgBC,eAAhB,CAAgCZ,IAAhC,EAAsC,UAAtC,CAAZ;AACA,QAAMa,OAAO,GAAGvB,GAAG,CAACoB,GAAD,CAAnB;;AAEA,UAAQN,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEd,GAAjB,iDAAQ,aAAcwB,IAAtB;AACE,SAAK,kBAAL;AACE,aAAOD,OAAO,CAACE,QAAf;;AACF;AAHF;;AAMA,UAAQX,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEI,GAAjB,iDAAQ,aAAcC,MAAtB;AACE,SAAK,SAAL;AACE,aAAOI,OAAP;;AACF,SAAK,QAAL;AACE,aAAOxB,eAAe,CAACwB,OAAO,CAACE,QAAT,CAAtB;;AACF,SAAK,KAAL;AACE,aAAOL,GAAP;;AACF;AACE,YAAM,IAAIM,KAAJ,EAAN;AARJ;AAUD;;AAED,OAAO,MAAMC,mBAAmB,GAAGxB,SAA5B","sourcesContent":["import type {LoaderOptions} from '@loaders.gl/loader-utils';\nimport {geojsonToBinary} from '@loaders.gl/gis';\nimport {gpx} from '@tmcw/togeojson';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type GPXLoaderOptions = LoaderOptions & {\n gpx?: {};\n};\n\nconst GPX_HEADER = `\\\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<gpx`;\n\n/**\n * Loader for GPX (GPS exchange format)\n */\nexport const GPXLoader = {\n name: 'GPX (GPS exchange format)',\n id: 'gpx',\n module: 'kml',\n version: VERSION,\n extensions: ['gpx'],\n mimeTypes: ['application/gpx+xml'],\n text: true,\n tests: [GPX_HEADER],\n parse: async (arrayBuffer, options) =>\n parseTextSync(new TextDecoder().decode(arrayBuffer), options),\n parseTextSync,\n options: {\n gpx: {},\n gis: {format: 'geojson'}\n }\n};\n\nfunction parseTextSync(text: string, options: any) {\n const doc = new DOMParser().parseFromString(text, 'text/xml');\n const geojson = gpx(doc);\n\n switch (options?.gpx?.type) {\n case 'object-row-table':\n return geojson.features;\n default:\n }\n\n switch (options?.gis?.format) {\n case 'geojson':\n return geojson;\n case 'binary':\n return geojsonToBinary(geojson.features);\n case 'raw':\n return doc;\n default:\n throw new Error();\n }\n}\n\nexport const _typecheckGPXLoader = GPXLoader;\n"],"file":"gpx-loader.js"}
@@ -1,9 +1,7 @@
1
1
  import { geojsonToBinary } from '@loaders.gl/gis';
2
2
  import { kml } from '@tmcw/togeojson';
3
- const VERSION = typeof "3.0.10" !== 'undefined' ? "3.0.10" : 'latest';
4
- const KML_HEADER = `\
5
- <?xml version="1.0" encoding="UTF-8"?>
6
- <kml xmlns="http://www.opengis.net/kml/2.2">`;
3
+ const VERSION = typeof "3.0.14" !== 'undefined' ? "3.0.14" : 'latest';
4
+ const KML_HEADER = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<kml xmlns=\"http://www.opengis.net/kml/2.2\">";
7
5
  export const KMLLoader = {
8
6
  name: 'KML (Keyhole Markup Language)',
9
7
  id: 'kml',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/kml-loader.ts"],"names":["geojsonToBinary","kml","VERSION","KML_HEADER","KMLLoader","name","id","module","version","extensions","mimeTypes","text","tests","parse","arrayBuffer","options","parseTextSync","TextDecoder","decode","gis","format","doc","DOMParser","parseFromString","geojson","type","features","Error","_typecheckKMLLoader"],"mappings":"AACA,SAAQA,eAAR,QAA8B,iBAA9B;AACA,SAAQC,GAAR,QAAkB,iBAAlB;AAIA,MAAMC,OAAO,GAAG,oBAAuB,WAAvB,cAAmD,QAAnE;AAMA,MAAMC,UAAU,GAAI;AACpB;AACA,6CAFA;AAOA,OAAO,MAAMC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,+BADiB;AAEvBC,EAAAA,EAAE,EAAE,KAFmB;AAGvBC,EAAAA,MAAM,EAAE,KAHe;AAIvBC,EAAAA,OAAO,EAAEN,OAJc;AAKvBO,EAAAA,UAAU,EAAE,CAAC,KAAD,CALW;AAMvBC,EAAAA,SAAS,EAAE,CAAC,sCAAD,CANY;AAOvBC,EAAAA,IAAI,EAAE,IAPiB;AAQvBC,EAAAA,KAAK,EAAE,CAACT,UAAD,CARgB;AASvBU,EAAAA,KAAK,EAAE,OAAOC,WAAP,EAAoBC,OAApB,KACLC,aAAa,CAAC,IAAIC,WAAJ,GAAkBC,MAAlB,CAAyBJ,WAAzB,CAAD,EAAwCC,OAAxC,CAVQ;AAWvBC,EAAAA,aAXuB;AAYvBD,EAAAA,OAAO,EAAE;AACPd,IAAAA,GAAG,EAAE,EADE;AAEPkB,IAAAA,GAAG,EAAE;AAACC,MAAAA,MAAM,EAAE;AAAT;AAFE;AAZc,CAAlB;;AAkBP,SAASJ,aAAT,CAAuBL,IAAvB,EAAqCI,OAArC,EAAmD;AAAA;;AACjD,QAAMM,GAAG,GAAG,IAAIC,SAAJ,GAAgBC,eAAhB,CAAgCZ,IAAhC,EAAsC,UAAtC,CAAZ;AACA,QAAMa,OAAO,GAAGvB,GAAG,CAACoB,GAAD,CAAnB;;AAEA,UAAQN,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEd,GAAjB,iDAAQ,aAAcwB,IAAtB;AACE,SAAK,kBAAL;AACE,aAAOD,OAAO,CAACE,QAAf;;AACF;AAHF;;AAMA,UAAQX,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEI,GAAjB,iDAAQ,aAAcC,MAAtB;AACE,SAAK,SAAL;AACE,aAAOI,OAAP;;AACF,SAAK,QAAL;AACE,aAAOxB,eAAe,CAACwB,OAAO,CAACE,QAAT,CAAtB;;AACF,SAAK,KAAL;AACE,aAAOL,GAAP;;AACF;AACE,YAAM,IAAIM,KAAJ,EAAN;AARJ;AAUD;;AAED,OAAO,MAAMC,mBAAqC,GAAGxB,SAA9C","sourcesContent":["import type {LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';\nimport {geojsonToBinary} from '@loaders.gl/gis';\nimport {kml} from '@tmcw/togeojson';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type KMLLoaderOptions = LoaderOptions & {\n kml?: {};\n};\n\nconst KML_HEADER = `\\\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<kml xmlns=\"http://www.opengis.net/kml/2.2\">`;\n\n/**\n * Loader for KML (Keyhole Markup Language)\n */\nexport const KMLLoader = {\n name: 'KML (Keyhole Markup Language)',\n id: 'kml',\n module: 'kml',\n version: VERSION,\n extensions: ['kml'],\n mimeTypes: ['application/vnd.google-earth.kml+xml'],\n text: true,\n tests: [KML_HEADER],\n parse: async (arrayBuffer, options) =>\n parseTextSync(new TextDecoder().decode(arrayBuffer), options),\n parseTextSync,\n options: {\n kml: {},\n gis: {format: 'geojson'}\n }\n};\n\nfunction parseTextSync(text: string, options: any) {\n const doc = new DOMParser().parseFromString(text, 'text/xml');\n const geojson = kml(doc);\n\n switch (options?.kml?.type) {\n case 'object-row-table':\n return geojson.features;\n default:\n }\n\n switch (options?.gis?.format) {\n case 'geojson':\n return geojson;\n case 'binary':\n return geojsonToBinary(geojson.features);\n case 'raw':\n return doc;\n default:\n throw new Error();\n }\n}\n\nexport const _typecheckKMLLoader: LoaderWithParser = KMLLoader;\n"],"file":"kml-loader.js"}
1
+ {"version":3,"sources":["../../src/kml-loader.ts"],"names":["geojsonToBinary","kml","VERSION","KML_HEADER","KMLLoader","name","id","module","version","extensions","mimeTypes","text","tests","parse","arrayBuffer","options","parseTextSync","TextDecoder","decode","gis","format","doc","DOMParser","parseFromString","geojson","type","features","Error","_typecheckKMLLoader"],"mappings":"AACA,SAAQA,eAAR,QAA8B,iBAA9B;AACA,SAAQC,GAAR,QAAkB,iBAAlB;AAIA,MAAMC,OAAO,GAAG,oBAAuB,WAAvB,cAAmD,QAAnE;AAMA,MAAMC,UAAU,+FAAhB;AAOA,OAAO,MAAMC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,+BADiB;AAEvBC,EAAAA,EAAE,EAAE,KAFmB;AAGvBC,EAAAA,MAAM,EAAE,KAHe;AAIvBC,EAAAA,OAAO,EAAEN,OAJc;AAKvBO,EAAAA,UAAU,EAAE,CAAC,KAAD,CALW;AAMvBC,EAAAA,SAAS,EAAE,CAAC,sCAAD,CANY;AAOvBC,EAAAA,IAAI,EAAE,IAPiB;AAQvBC,EAAAA,KAAK,EAAE,CAACT,UAAD,CARgB;AASvBU,EAAAA,KAAK,EAAE,OAAOC,WAAP,EAAoBC,OAApB,KACLC,aAAa,CAAC,IAAIC,WAAJ,GAAkBC,MAAlB,CAAyBJ,WAAzB,CAAD,EAAwCC,OAAxC,CAVQ;AAWvBC,EAAAA,aAXuB;AAYvBD,EAAAA,OAAO,EAAE;AACPd,IAAAA,GAAG,EAAE,EADE;AAEPkB,IAAAA,GAAG,EAAE;AAACC,MAAAA,MAAM,EAAE;AAAT;AAFE;AAZc,CAAlB;;AAkBP,SAASJ,aAAT,CAAuBL,IAAvB,EAAqCI,OAArC,EAAmD;AAAA;;AACjD,QAAMM,GAAG,GAAG,IAAIC,SAAJ,GAAgBC,eAAhB,CAAgCZ,IAAhC,EAAsC,UAAtC,CAAZ;AACA,QAAMa,OAAO,GAAGvB,GAAG,CAACoB,GAAD,CAAnB;;AAEA,UAAQN,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEd,GAAjB,iDAAQ,aAAcwB,IAAtB;AACE,SAAK,kBAAL;AACE,aAAOD,OAAO,CAACE,QAAf;;AACF;AAHF;;AAMA,UAAQX,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEI,GAAjB,iDAAQ,aAAcC,MAAtB;AACE,SAAK,SAAL;AACE,aAAOI,OAAP;;AACF,SAAK,QAAL;AACE,aAAOxB,eAAe,CAACwB,OAAO,CAACE,QAAT,CAAtB;;AACF,SAAK,KAAL;AACE,aAAOL,GAAP;;AACF;AACE,YAAM,IAAIM,KAAJ,EAAN;AARJ;AAUD;;AAED,OAAO,MAAMC,mBAAqC,GAAGxB,SAA9C","sourcesContent":["import type {LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';\nimport {geojsonToBinary} from '@loaders.gl/gis';\nimport {kml} from '@tmcw/togeojson';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type KMLLoaderOptions = LoaderOptions & {\n kml?: {};\n};\n\nconst KML_HEADER = `\\\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<kml xmlns=\"http://www.opengis.net/kml/2.2\">`;\n\n/**\n * Loader for KML (Keyhole Markup Language)\n */\nexport const KMLLoader = {\n name: 'KML (Keyhole Markup Language)',\n id: 'kml',\n module: 'kml',\n version: VERSION,\n extensions: ['kml'],\n mimeTypes: ['application/vnd.google-earth.kml+xml'],\n text: true,\n tests: [KML_HEADER],\n parse: async (arrayBuffer, options) =>\n parseTextSync(new TextDecoder().decode(arrayBuffer), options),\n parseTextSync,\n options: {\n kml: {},\n gis: {format: 'geojson'}\n }\n};\n\nfunction parseTextSync(text: string, options: any) {\n const doc = new DOMParser().parseFromString(text, 'text/xml');\n const geojson = kml(doc);\n\n switch (options?.kml?.type) {\n case 'object-row-table':\n return geojson.features;\n default:\n }\n\n switch (options?.gis?.format) {\n case 'geojson':\n return geojson;\n case 'binary':\n return geojsonToBinary(geojson.features);\n case 'raw':\n return doc;\n default:\n throw new Error();\n }\n}\n\nexport const _typecheckKMLLoader: LoaderWithParser = KMLLoader;\n"],"file":"kml-loader.js"}
@@ -1,9 +1,7 @@
1
1
  import { geojsonToBinary } from '@loaders.gl/gis';
2
2
  import { tcx } from '@tmcw/togeojson';
3
- const VERSION = typeof "3.0.10" !== 'undefined' ? "3.0.10" : 'latest';
4
- const TCX_HEADER = `\
5
- <?xml version="1.0" encoding="UTF-8"?>
6
- <TrainingCenterDatabase`;
3
+ const VERSION = typeof "3.0.14" !== 'undefined' ? "3.0.14" : 'latest';
4
+ const TCX_HEADER = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<TrainingCenterDatabase";
7
5
  export const TCXLoader = {
8
6
  name: 'TCX (Training Center XML)',
9
7
  id: 'tcx',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/tcx-loader.ts"],"names":["geojsonToBinary","tcx","VERSION","TCX_HEADER","TCXLoader","name","id","module","version","extensions","mimeTypes","text","tests","parse","arrayBuffer","options","parseTextSync","TextDecoder","decode","gis","format","doc","DOMParser","parseFromString","geojson","type","features","Error","_typecheckTCXLoader"],"mappings":"AACA,SAAQA,eAAR,QAA8B,iBAA9B;AACA,SAAQC,GAAR,QAAkB,iBAAlB;AAIA,MAAMC,OAAO,GAAG,oBAAuB,WAAvB,cAAmD,QAAnE;AAMA,MAAMC,UAAU,GAAI;AACpB;AACA,wBAFA;AAOA,OAAO,MAAMC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,2BADiB;AAEvBC,EAAAA,EAAE,EAAE,KAFmB;AAGvBC,EAAAA,MAAM,EAAE,KAHe;AAIvBC,EAAAA,OAAO,EAAEN,OAJc;AAKvBO,EAAAA,UAAU,EAAE,CAAC,KAAD,CALW;AAMvBC,EAAAA,SAAS,EAAE,CAAC,gCAAD,CANY;AAOvBC,EAAAA,IAAI,EAAE,IAPiB;AAQvBC,EAAAA,KAAK,EAAE,CAACT,UAAD,CARgB;AASvBU,EAAAA,KAAK,EAAE,OAAOC,WAAP,EAAoBC,OAApB,KACLC,aAAa,CAAC,IAAIC,WAAJ,GAAkBC,MAAlB,CAAyBJ,WAAzB,CAAD,EAAwCC,OAAxC,CAVQ;AAWvBC,EAAAA,aAXuB;AAYvBD,EAAAA,OAAO,EAAE;AACPd,IAAAA,GAAG,EAAE,EADE;AAEPkB,IAAAA,GAAG,EAAE;AAACC,MAAAA,MAAM,EAAE;AAAT;AAFE;AAZc,CAAlB;;AAkBP,SAASJ,aAAT,CAAuBL,IAAvB,EAAqCI,OAAY,GAAG,EAApD,EAAwD;AAAA;;AACtD,QAAMM,GAAG,GAAG,IAAIC,SAAJ,GAAgBC,eAAhB,CAAgCZ,IAAhC,EAAsC,UAAtC,CAAZ;AACA,QAAMa,OAAO,GAAGvB,GAAG,CAACoB,GAAD,CAAnB;;AAEA,UAAQN,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEd,GAAjB,iDAAQ,aAAcwB,IAAtB;AACE,SAAK,kBAAL;AACE,aAAOD,OAAO,CAACE,QAAf;;AACF;AAHF;;AAMA,UAAQX,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEI,GAAjB,iDAAQ,aAAcC,MAAtB;AACE,SAAK,SAAL;AACE,aAAOI,OAAP;;AACF,SAAK,QAAL;AACE,aAAOxB,eAAe,CAACwB,OAAO,CAACE,QAAT,CAAtB;;AACF,SAAK,KAAL;AACE,aAAOL,GAAP;;AACF;AACE,YAAM,IAAIM,KAAJ,EAAN;AARJ;AAUD;;AAED,OAAO,MAAMC,mBAAqC,GAAGxB,SAA9C","sourcesContent":["import type {LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';\nimport {geojsonToBinary} from '@loaders.gl/gis';\nimport {tcx} from '@tmcw/togeojson';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type TCXLoaderOptions = LoaderOptions & {\n tcx?: {};\n};\n\nconst TCX_HEADER = `\\\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<TrainingCenterDatabase`;\n\n/**\n * Loader for TCX (Training Center XML) - Garmin GPS track format\n */\nexport const TCXLoader = {\n name: 'TCX (Training Center XML)',\n id: 'tcx',\n module: 'kml',\n version: VERSION,\n extensions: ['tcx'],\n mimeTypes: ['application/vnd.garmin.tcx+xml'],\n text: true,\n tests: [TCX_HEADER],\n parse: async (arrayBuffer, options) =>\n parseTextSync(new TextDecoder().decode(arrayBuffer), options),\n parseTextSync,\n options: {\n tcx: {},\n gis: {format: 'geojson'}\n }\n};\n\nfunction parseTextSync(text: string, options: any = {}) {\n const doc = new DOMParser().parseFromString(text, 'text/xml');\n const geojson = tcx(doc);\n\n switch (options?.tcx?.type) {\n case 'object-row-table':\n return geojson.features;\n default:\n }\n\n switch (options?.gis?.format) {\n case 'geojson':\n return geojson;\n case 'binary':\n return geojsonToBinary(geojson.features);\n case 'raw':\n return doc;\n default:\n throw new Error();\n }\n}\n\nexport const _typecheckTCXLoader: LoaderWithParser = TCXLoader;\n"],"file":"tcx-loader.js"}
1
+ {"version":3,"sources":["../../src/tcx-loader.ts"],"names":["geojsonToBinary","tcx","VERSION","TCX_HEADER","TCXLoader","name","id","module","version","extensions","mimeTypes","text","tests","parse","arrayBuffer","options","parseTextSync","TextDecoder","decode","gis","format","doc","DOMParser","parseFromString","geojson","type","features","Error","_typecheckTCXLoader"],"mappings":"AACA,SAAQA,eAAR,QAA8B,iBAA9B;AACA,SAAQC,GAAR,QAAkB,iBAAlB;AAIA,MAAMC,OAAO,GAAG,oBAAuB,WAAvB,cAAmD,QAAnE;AAMA,MAAMC,UAAU,wEAAhB;AAOA,OAAO,MAAMC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,2BADiB;AAEvBC,EAAAA,EAAE,EAAE,KAFmB;AAGvBC,EAAAA,MAAM,EAAE,KAHe;AAIvBC,EAAAA,OAAO,EAAEN,OAJc;AAKvBO,EAAAA,UAAU,EAAE,CAAC,KAAD,CALW;AAMvBC,EAAAA,SAAS,EAAE,CAAC,gCAAD,CANY;AAOvBC,EAAAA,IAAI,EAAE,IAPiB;AAQvBC,EAAAA,KAAK,EAAE,CAACT,UAAD,CARgB;AASvBU,EAAAA,KAAK,EAAE,OAAOC,WAAP,EAAoBC,OAApB,KACLC,aAAa,CAAC,IAAIC,WAAJ,GAAkBC,MAAlB,CAAyBJ,WAAzB,CAAD,EAAwCC,OAAxC,CAVQ;AAWvBC,EAAAA,aAXuB;AAYvBD,EAAAA,OAAO,EAAE;AACPd,IAAAA,GAAG,EAAE,EADE;AAEPkB,IAAAA,GAAG,EAAE;AAACC,MAAAA,MAAM,EAAE;AAAT;AAFE;AAZc,CAAlB;;AAkBP,SAASJ,aAAT,CAAuBL,IAAvB,EAAqCI,OAAY,GAAG,EAApD,EAAwD;AAAA;;AACtD,QAAMM,GAAG,GAAG,IAAIC,SAAJ,GAAgBC,eAAhB,CAAgCZ,IAAhC,EAAsC,UAAtC,CAAZ;AACA,QAAMa,OAAO,GAAGvB,GAAG,CAACoB,GAAD,CAAnB;;AAEA,UAAQN,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEd,GAAjB,iDAAQ,aAAcwB,IAAtB;AACE,SAAK,kBAAL;AACE,aAAOD,OAAO,CAACE,QAAf;;AACF;AAHF;;AAMA,UAAQX,OAAR,aAAQA,OAAR,uCAAQA,OAAO,CAAEI,GAAjB,iDAAQ,aAAcC,MAAtB;AACE,SAAK,SAAL;AACE,aAAOI,OAAP;;AACF,SAAK,QAAL;AACE,aAAOxB,eAAe,CAACwB,OAAO,CAACE,QAAT,CAAtB;;AACF,SAAK,KAAL;AACE,aAAOL,GAAP;;AACF;AACE,YAAM,IAAIM,KAAJ,EAAN;AARJ;AAUD;;AAED,OAAO,MAAMC,mBAAqC,GAAGxB,SAA9C","sourcesContent":["import type {LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';\nimport {geojsonToBinary} from '@loaders.gl/gis';\nimport {tcx} from '@tmcw/togeojson';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type TCXLoaderOptions = LoaderOptions & {\n tcx?: {};\n};\n\nconst TCX_HEADER = `\\\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<TrainingCenterDatabase`;\n\n/**\n * Loader for TCX (Training Center XML) - Garmin GPS track format\n */\nexport const TCXLoader = {\n name: 'TCX (Training Center XML)',\n id: 'tcx',\n module: 'kml',\n version: VERSION,\n extensions: ['tcx'],\n mimeTypes: ['application/vnd.garmin.tcx+xml'],\n text: true,\n tests: [TCX_HEADER],\n parse: async (arrayBuffer, options) =>\n parseTextSync(new TextDecoder().decode(arrayBuffer), options),\n parseTextSync,\n options: {\n tcx: {},\n gis: {format: 'geojson'}\n }\n};\n\nfunction parseTextSync(text: string, options: any = {}) {\n const doc = new DOMParser().parseFromString(text, 'text/xml');\n const geojson = tcx(doc);\n\n switch (options?.tcx?.type) {\n case 'object-row-table':\n return geojson.features;\n default:\n }\n\n switch (options?.gis?.format) {\n case 'geojson':\n return geojson;\n case 'binary':\n return geojsonToBinary(geojson.features);\n case 'raw':\n return doc;\n default:\n throw new Error();\n }\n}\n\nexport const _typecheckTCXLoader: LoaderWithParser = TCXLoader;\n"],"file":"tcx-loader.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loaders.gl/kml",
3
- "version": "3.0.10",
3
+ "version": "3.0.14",
4
4
  "description": "Framework-independent loader for the KML format",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -32,11 +32,11 @@
32
32
  "build-bundle": "webpack --display=minimal --config ../../scripts/webpack/bundle.js"
33
33
  },
34
34
  "dependencies": {
35
- "@loaders.gl/core": "3.0.10",
36
- "@loaders.gl/gis": "3.0.10",
37
- "@loaders.gl/loader-utils": "3.0.10",
38
- "@loaders.gl/schema": "3.0.10",
35
+ "@loaders.gl/core": "3.0.14",
36
+ "@loaders.gl/gis": "3.0.14",
37
+ "@loaders.gl/loader-utils": "3.0.14",
38
+ "@loaders.gl/schema": "3.0.14",
39
39
  "@tmcw/togeojson": "^4.5.0"
40
40
  },
41
- "gitHead": "b6986964a745616ff74dcb397026afc9aa315f2f"
41
+ "gitHead": "dc931768fc34de549ef6baeb94e2ee5aa8163baf"
42
42
  }