@jaebradley/wakatime-cli
Version:
CLI for the Wakatime Service
1 lines • 2.48 kB
JavaScript
;var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator")),_asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")),_wakatimeClient=require("wakatime-client"),_luxon=require("luxon"),_setup=_interopRequireDefault(require("./setup")),_apiKeyStore=require("./services/apiKeyStore"),_generateDailySummary=_interopRequireDefault(require("./services/generateDailySummary")),_getRegex=_interopRequireDefault(require("./services/getRegex")),_constants=require("./constants"),getDailySummary=/*#__PURE__*/function(){var a=(0,_asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function a(b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;return _regenerator["default"].wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return c=b.date,d=void 0===c?_luxon.DateTime.local():c,e=b.editorsFilter,f=void 0===e?null:e,g=b.languagesFilter,h=void 0===g?null:g,i=b.projectsFilter,j=void 0===i?null:i,k=b.showEditors,l=void 0===k?null:k,m=b.showLanguages,n=void 0===m?null:m,o=b.showProjects,p=void 0===o?null:o,a.next=3,(0,_apiKeyStore.get)();case 3:if(q=a.sent,q){a.next=10;break}return a.next=7,(0,_setup["default"])();case 7:return a.next=9,(0,_apiKeyStore.get)();case 9:q=a.sent;case 10:return r=new _wakatimeClient.WakaTimeClient(q),a.next=13,r.getMe();case 13:return s=a.sent,t=s.data,u=t.timezone,v=d.setZone(u),w=v.toFormat(_constants.DATE_FORMAT),a.next=20,r.getMySummary({dateRange:{startDate:w,endDate:w}});case 20:x=a.sent,y=x.data.map(function(a){var b=a.grand_total,c=a.range,d=a.editors,e=a.languages,g=a.projects;return{grandTotal:b,range:c,editors:d.filter(function(a){var b=a.name;return null==f||(0,_getRegex["default"])(f).test(b)}),languages:e.filter(function(a){var b=a.name;return null==h||(0,_getRegex["default"])(h).test(b)}),projects:g.filter(function(a){var b=a.name;return null==j||(0,_getRegex["default"])(j).test(b)})}}),y.forEach(function(a){var b=a.grandTotal,c=a.range,d=a.editors,e=a.languages,f=a.projects;return(0,_generateDailySummary["default"])({grandTotal:b,range:c,editors:d,languages:e,projects:f,showEditors:l,showLanguages:n,showProjects:p})});case 23:case"end":return a.stop();}},a)}));return function(){return a.apply(this,arguments)}}(),_default=getDailySummary;exports["default"]=_default;