UNPKG

sukejuuru

Version:
2 lines (1 loc) 1.28 kB
'use strict';var _createClass=function(){function a(a,b){for(var c,d=0;d<b.length;d++)c=b[d],c.enumerable=c.enumerable||!1,c.configurable=!0,'value'in c&&(c.writable=!0),Object.defineProperty(a,c.key,c)}return function(b,c,d){return c&&a(b.prototype,c),d&&a(b,d),b}}();function _classCallCheck(a,b){if(!(a instanceof b))throw new TypeError('Cannot call a class as a function')}var Dateparser=require('./lib/dateparser.js'),http=require('http'),sukejuuru=function(){function a(){_classCallCheck(this,a),this._dateparser=new Dateparser,this.api='http://cal.syoboi.jp'}return _createClass(a,[{key:'get',value:function d(a,b){var c=this;return b||(b=new Date().toISOString().split('T')[0]),new Promise(function(d,e){http.get(c.api+'/cal_chk.php?alt=json&days='+a+'&start='+b,function(a){var b='';a.setEncoding('utf8'),a.on('data',function(a){b+=a}),a.on('end',function(){var a=void 0,f=[];try{a=JSON.parse(b),a.ProgItems.ProgItem.map(function(a){var b={tid:a['@attributes'].TID,stTime:c._dateparser.getDatetime(a['@attributes'].StTime),count:a['@attributes'].Count,title:a['@attributes'].Title};f.push(b)})}catch(a){e(a)}d(f.filter(function(a,b,c){return b===c.findIndex(function(b){return b.tid===a.tid})}))})}).on('error',function(a){e(a)})})}}]),a}();module.exports=sukejuuru;