UNPKG

@surflog/fit2geo

Version:
4 lines (3 loc) 1.64 kB
#!/usr/bin/env node "use strict";var h=Object.create;var u=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var R=Object.getPrototypeOf,S=Object.prototype.hasOwnProperty;var b=(r,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of P(e))!S.call(r,i)&&i!==t&&u(r,i,{get:()=>e[i],enumerable:!(o=y(e,i))||o.enumerable});return r};var a=(r,e,t)=>(t=r!=null?h(R(r)):{},b(e||!r||!r.__esModule?u(t,"default",{value:r,enumerable:!0}):t,r));var d=require("fs/promises");var m=a(require("fit-file-parser")),v={mode:"list",speedUnit:"km/h",lengthUnit:"km",elapsedRecordField:!0};function A(r){return new Promise((e,t)=>{new m.default(v).parse(r,(i,f)=>{if(i)return t(i);e(f)})})}var s=A;var n=require("@turf/helpers"),l=a(require("@turf/bbox"));function C(r){return r.every(({position_long:e,position_lat:t})=>[e,t].every(n.isNumber))}function p({position_long:r,position_lat:e}){return[r,e]}function k(r,e){return e>0?[r[e-1],r[e]]:r.length===1?[r[e],r[e]]:[r[e],r[e+1]]}function L(r,e,t,o){let[i,f]=k(o,t);return C([i,f])&&r.push((0,n.lineString)([p(i),p(f)],e)),r}function w(r,e){if(Array.isArray(r)&&r.length>0)return r[0];if(Array.isArray(e)&&e.length>0)return{name:e[0].sport}}function B({records:r,sports:e,sessions:t}){let o=(0,n.featureCollection)(r.reduce(L,[]));return o.bbox=(0,l.default)(o),o.properties===void 0&&(o.properties={}),o.properties.sport=w(e,t),o}var c=B;async function N(r){return s(r).then(c)}var F=N;function U(r){return(0,d.readFile)(r).then(F).then(JSON.stringify).then(console.log)}var[,,g]=process.argv;typeof g=="string"&&U(g); //# sourceMappingURL=cli.js.map