From 9f866ef881b63ecf302f78d0122d24639dde1105 Mon Sep 17 00:00:00 2001 From: netebakari Date: Fri, 31 Aug 2018 15:59:36 +0900 Subject: [PATCH 1/8] fix conflict: update dependency modules / removed typings.json / insert "IResponse" declaration so that Typescript build passes --- .gitignore | 2 + dist/backlog.js | 18 +- dist/backlog.min.js | 2 +- package-lock.json | 3000 +++++++++++++++++++++++++++++++++++++++++++ package.json | 48 +- src/backlog.ts | 2 + src/error.ts | 1 + src/request.ts | 2 + tsconfig.json | 20 +- 9 files changed, 3053 insertions(+), 42 deletions(-) create mode 100644 package-lock.json diff --git a/.gitignore b/.gitignore index dd61dce..7a72509 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,7 @@ npm-debug.log node_modules +dist/test/ +dist/src/ coverage *~ *.swp diff --git a/dist/backlog.js b/dist/backlog.js index 19441b9..bc27b05 100644 --- a/dist/backlog.js +++ b/dist/backlog.js @@ -1,9 +1,12 @@ (function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.Backlog = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i0}).join("&")};OAuth2.prototype.getAccessToken=function(options){return new request_1.default({host:options.host,timeout:this.timeout}).post("oauth2/token",{grant_type:"authorization_code",code:options.code,client_id:this.credentials.clientId,client_secret:this.credentials.clientSecret,redirect_uri:options.redirectUri})};OAuth2.prototype.refreshAccessToken=function(options){return new request_1.default({host:options.host,timeout:this.timeout}).post("oauth2/token",{grant_type:"refresh_token",client_id:this.credentials.clientId,client_secret:this.credentials.clientSecret,refresh_token:options.refreshToken})};return OAuth2}();exports.default=OAuth2},{"./request":7}],6:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var ActivityType;(function(ActivityType){ActivityType[ActivityType["Undefined"]=-1]="Undefined";ActivityType[ActivityType["IssueCreated"]=1]="IssueCreated";ActivityType[ActivityType["IssueUpdated"]=2]="IssueUpdated";ActivityType[ActivityType["IssueCommented"]=3]="IssueCommented";ActivityType[ActivityType["IssueDeleted"]=4]="IssueDeleted";ActivityType[ActivityType["WikiCreated"]=5]="WikiCreated";ActivityType[ActivityType["WikiUpdated"]=6]="WikiUpdated";ActivityType[ActivityType["WikiDeleted"]=7]="WikiDeleted";ActivityType[ActivityType["FileAdded"]=8]="FileAdded";ActivityType[ActivityType["FileUpdated"]=9]="FileUpdated";ActivityType[ActivityType["FileDeleted"]=10]="FileDeleted";ActivityType[ActivityType["SvnCommitted"]=11]="SvnCommitted";ActivityType[ActivityType["GitPushed"]=12]="GitPushed";ActivityType[ActivityType["GitRepositoryCreated"]=13]="GitRepositoryCreated";ActivityType[ActivityType["IssueMultiUpdated"]=14]="IssueMultiUpdated";ActivityType[ActivityType["ProjectUserAdded"]=15]="ProjectUserAdded";ActivityType[ActivityType["ProjectUserRemoved"]=16]="ProjectUserRemoved";ActivityType[ActivityType["NotifyAdded"]=17]="NotifyAdded";ActivityType[ActivityType["PullRequestAdded"]=18]="PullRequestAdded";ActivityType[ActivityType["PullRequestUpdated"]=19]="PullRequestUpdated";ActivityType[ActivityType["PullRequestCommented"]=20]="PullRequestCommented";ActivityType[ActivityType["PullRequestMerged"]=21]="PullRequestMerged"})(ActivityType=exports.ActivityType||(exports.ActivityType={}));var User;(function(User){var RoleType;(function(RoleType){RoleType[RoleType["Admin"]=1]="Admin";RoleType[RoleType["User"]=2]="User";RoleType[RoleType["Reporter"]=3]="Reporter";RoleType[RoleType["Viewer"]=4]="Viewer";RoleType[RoleType["GuestReporter"]=5]="GuestReporter";RoleType[RoleType["GuestViewer"]=6]="GuestViewer"})(RoleType=User.RoleType||(User.RoleType={}))})(User=exports.User||(exports.User={}));var Project;(function(Project){var FieldType;(function(FieldType){FieldType[FieldType["Text"]=1]="Text";FieldType[FieldType["TextArea"]=2]="TextArea";FieldType[FieldType["Numeric"]=3]="Numeric";FieldType[FieldType["Date"]=4]="Date";FieldType[FieldType["SingleList"]=5]="SingleList";FieldType[FieldType["MultipleList"]=6]="MultipleList";FieldType[FieldType["CheckBox"]=7]="CheckBox";FieldType[FieldType["Radio"]=8]="Radio"})(FieldType=Project.FieldType||(Project.FieldType={}))})(Project=exports.Project||(exports.Project={}));var Issue;(function(Issue){var ParentChildType;(function(ParentChildType){ParentChildType[ParentChildType["All"]=0]="All";ParentChildType[ParentChildType["NotChild"]=1]="NotChild";ParentChildType[ParentChildType["Child"]=2]="Child";ParentChildType[ParentChildType["NotChildNotParent"]=3]="NotChildNotParent";ParentChildType[ParentChildType["Parent"]=4]="Parent"})(ParentChildType=Issue.ParentChildType||(Issue.ParentChildType={}))})(Issue=exports.Issue||(exports.Issue={}))},{}],7:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var Error=require("./error");var Request=function(){function Request(configure){this.configure=configure}Request.prototype.get=function(path,params){return this.request({method:"GET",path:path,params:params}).then(this.parseJSON)};Request.prototype.post=function(path,params){return this.request({method:"POST",path:path,params:params}).then(this.parseJSON)};Request.prototype.put=function(path,params){return this.request({method:"PUT",path:path,params:params}).then(this.parseJSON)};Request.prototype.patch=function(path,params){return this.request({method:"PATCH",path:path,params:params}).then(this.parseJSON)};Request.prototype.delete=function(path,params){return this.request({method:"DELETE",path:path,params:params}).then(this.parseJSON)};Request.prototype.request=function(options){var method=options.method,path=options.path,_a=options.params,params=_a===void 0?{}:_a;var _b=this.configure,apiKey=_b.apiKey,accessToken=_b.accessToken,timeout=_b.timeout;var query=apiKey?{apiKey:apiKey}:{};var init={method:method,headers:{}};if(timeout){init["timeout"]=timeout}if(!apiKey&&accessToken){init.headers["Authorization"]="Bearer "+accessToken}if(typeof window!=="undefined"){init.mode="cors"}if(method!=="GET"){if(params instanceof FormData){init.body=params}else{init.headers["Content-type"]="application/x-www-form-urlencoded";init.body=this.toQueryString(params)}}else{Object.keys(params).forEach(function(key){return query[key]=params[key]})}var qs=this.toQueryString(query);var url=this.restBaseURL+"/"+path+(qs.length>0?"?"+qs:"");return fetch(url,init).then(this.checkStatus)};Request.prototype.checkStatus=function(response){return new Promise(function(resolve,reject){if(200<=response.status&&response.status<300){resolve(response)}else{response.json().then(function(data){if(response.status===401){reject(new Error.BacklogAuthError(response,data))}else{reject(new Error.BacklogApiError(response,data))}}).catch(function(err){return reject(new Error.UnexpectedError(response))})}})};Request.prototype.parseJSON=function(response){return response.json()};Request.prototype.toQueryString=function(params){return Object.keys(params).reduce(function(result,key){var value=params[key];if(!value){return result}if(Array.isArray(value)){value.forEach(function(v){return result.push(key+"[]="+v)})}else{result.push(key+"="+value)}return result},[]).join("&")};Object.defineProperty(Request.prototype,"webAppBaseURL",{get:function(){return"https://"+this.configure.host},enumerable:true,configurable:true});Object.defineProperty(Request.prototype,"restBaseURL",{get:function(){return this.webAppBaseURL+"/api/v2"},enumerable:true,configurable:true});return Request}();exports.default=Request},{"./error":3}]},{},[4])(4)}); \ No newline at end of file +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.Backlog=f()}})(function(){var define,module,exports;return function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i0}).join("&")};OAuth2.prototype.getAccessToken=function(options){return new request_1.default({host:options.host,timeout:this.timeout}).post("oauth2/token",{grant_type:"authorization_code",code:options.code,client_id:this.credentials.clientId,client_secret:this.credentials.clientSecret,redirect_uri:options.redirectUri})};OAuth2.prototype.refreshAccessToken=function(options){return new request_1.default({host:options.host,timeout:this.timeout}).post("oauth2/token",{grant_type:"refresh_token",client_id:this.credentials.clientId,client_secret:this.credentials.clientSecret,refresh_token:options.refreshToken})};return OAuth2}();exports.default=OAuth2},{"./request":7}],6:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var ActivityType;(function(ActivityType){ActivityType[ActivityType["Undefined"]=-1]="Undefined";ActivityType[ActivityType["IssueCreated"]=1]="IssueCreated";ActivityType[ActivityType["IssueUpdated"]=2]="IssueUpdated";ActivityType[ActivityType["IssueCommented"]=3]="IssueCommented";ActivityType[ActivityType["IssueDeleted"]=4]="IssueDeleted";ActivityType[ActivityType["WikiCreated"]=5]="WikiCreated";ActivityType[ActivityType["WikiUpdated"]=6]="WikiUpdated";ActivityType[ActivityType["WikiDeleted"]=7]="WikiDeleted";ActivityType[ActivityType["FileAdded"]=8]="FileAdded";ActivityType[ActivityType["FileUpdated"]=9]="FileUpdated";ActivityType[ActivityType["FileDeleted"]=10]="FileDeleted";ActivityType[ActivityType["SvnCommitted"]=11]="SvnCommitted";ActivityType[ActivityType["GitPushed"]=12]="GitPushed";ActivityType[ActivityType["GitRepositoryCreated"]=13]="GitRepositoryCreated";ActivityType[ActivityType["IssueMultiUpdated"]=14]="IssueMultiUpdated";ActivityType[ActivityType["ProjectUserAdded"]=15]="ProjectUserAdded";ActivityType[ActivityType["ProjectUserRemoved"]=16]="ProjectUserRemoved";ActivityType[ActivityType["NotifyAdded"]=17]="NotifyAdded";ActivityType[ActivityType["PullRequestAdded"]=18]="PullRequestAdded";ActivityType[ActivityType["PullRequestUpdated"]=19]="PullRequestUpdated";ActivityType[ActivityType["PullRequestCommented"]=20]="PullRequestCommented";ActivityType[ActivityType["PullRequestMerged"]=21]="PullRequestMerged"})(ActivityType=exports.ActivityType||(exports.ActivityType={}));var User;(function(User){var RoleType;(function(RoleType){RoleType[RoleType["Admin"]=1]="Admin";RoleType[RoleType["User"]=2]="User";RoleType[RoleType["Reporter"]=3]="Reporter";RoleType[RoleType["Viewer"]=4]="Viewer";RoleType[RoleType["GuestReporter"]=5]="GuestReporter";RoleType[RoleType["GuestViewer"]=6]="GuestViewer"})(RoleType=User.RoleType||(User.RoleType={}))})(User=exports.User||(exports.User={}));var Project;(function(Project){var FieldType;(function(FieldType){FieldType[FieldType["Text"]=1]="Text";FieldType[FieldType["TextArea"]=2]="TextArea";FieldType[FieldType["Numeric"]=3]="Numeric";FieldType[FieldType["Date"]=4]="Date";FieldType[FieldType["SingleList"]=5]="SingleList";FieldType[FieldType["MultipleList"]=6]="MultipleList";FieldType[FieldType["CheckBox"]=7]="CheckBox";FieldType[FieldType["Radio"]=8]="Radio"})(FieldType=Project.FieldType||(Project.FieldType={}))})(Project=exports.Project||(exports.Project={}));var Issue;(function(Issue){var ParentChildType;(function(ParentChildType){ParentChildType[ParentChildType["All"]=0]="All";ParentChildType[ParentChildType["NotChild"]=1]="NotChild";ParentChildType[ParentChildType["Child"]=2]="Child";ParentChildType[ParentChildType["NotChildNotParent"]=3]="NotChildNotParent";ParentChildType[ParentChildType["Parent"]=4]="Parent"})(ParentChildType=Issue.ParentChildType||(Issue.ParentChildType={}))})(Issue=exports.Issue||(exports.Issue={}))},{}],7:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var Error=require("./error");var Request=function(){function Request(configure){this.configure=configure}Request.prototype.get=function(path,params){return this.request({method:"GET",path:path,params:params}).then(this.parseJSON)};Request.prototype.post=function(path,params){return this.request({method:"POST",path:path,params:params}).then(this.parseJSON)};Request.prototype.put=function(path,params){return this.request({method:"PUT",path:path,params:params}).then(this.parseJSON)};Request.prototype.patch=function(path,params){return this.request({method:"PATCH",path:path,params:params}).then(this.parseJSON)};Request.prototype.delete=function(path,params){return this.request({method:"DELETE",path:path,params:params}).then(this.parseJSON)};Request.prototype.request=function(options){var method=options.method,path=options.path,_a=options.params,params=_a===void 0?{}:_a;var _b=this.configure,apiKey=_b.apiKey,accessToken=_b.accessToken,timeout=_b.timeout;var query=apiKey?{apiKey:apiKey}:{};var init={method:method,headers:{}};if(timeout){init["timeout"]=timeout}if(!apiKey&&accessToken){init.headers["Authorization"]="Bearer "+accessToken}if(typeof window!=="undefined"){init.mode="cors"}if(method!=="GET"){if(params instanceof FormData){init.body=params}else{init.headers["Content-type"]="application/x-www-form-urlencoded";init.body=this.toQueryString(params)}}else{Object.keys(params).forEach(function(key){return query[key]=params[key]})}var qs=this.toQueryString(query);var url=this.restBaseURL+"/"+path+(qs.length>0?"?"+qs:"");return fetch(url,init).then(this.checkStatus)};Request.prototype.checkStatus=function(response){return new Promise(function(resolve,reject){if(200<=response.status&&response.status<300){resolve(response)}else{response.json().then(function(data){if(response.status===401){reject(new Error.BacklogAuthError(response,data))}else{reject(new Error.BacklogApiError(response,data))}}).catch(function(err){return reject(new Error.UnexpectedError(response))})}})};Request.prototype.parseJSON=function(response){return response.json()};Request.prototype.toQueryString=function(params){return Object.keys(params).reduce(function(result,key){var value=params[key];if(!value){return result}if(Array.isArray(value)){value.forEach(function(v){return result.push(key+"[]="+v)})}else{result.push(key+"="+value)}return result},[]).join("&")};Object.defineProperty(Request.prototype,"webAppBaseURL",{get:function(){return"https://"+this.configure.host},enumerable:true,configurable:true});Object.defineProperty(Request.prototype,"restBaseURL",{get:function(){return this.webAppBaseURL+"/api/v2"},enumerable:true,configurable:true});return Request}();exports.default=Request},{"./error":3}]},{},[4])(4)}); \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..0501432 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,3000 @@ +{ + "name": "backlog-js", + "version": "0.9.1", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@types/dotenv": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/dotenv/-/dotenv-4.0.3.tgz", + "integrity": "sha512-mmhpINC/HcLGQK5ikFJlLXINVvcxhlrV+ZOUJSN7/ottYl+8X4oSXzS9lBtDkmWAl96EGyGyLrNvk9zqdSH8Fw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/empower": { + "version": "1.2.30", + "resolved": "https://registry.npmjs.org/@types/empower/-/empower-1.2.30.tgz", + "integrity": "sha1-x8/BSzph5Ux0xnTB+8kbot8NE5I=", + "dev": true + }, + "@types/isomorphic-fetch": { + "version": "0.0.35", + "resolved": "https://registry.npmjs.org/@types/isomorphic-fetch/-/isomorphic-fetch-0.0.35.tgz", + "integrity": "sha512-DaZNUvLDCAnCTjgwxgiL1eQdxIKEpNLOlTNtAgnZc50bG2copGhRrFN9/PxPBuJe+tZVLCbQ7ls0xveXVRPkvw==", + "dev": true + }, + "@types/mocha": { + "version": "5.2.5", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-5.2.5.tgz", + "integrity": "sha512-lAVp+Kj54ui/vLUFxsJTMtWvZraZxum3w3Nwkble2dNuV5VnPA+Mi2oGX9XYJAaIvZi3tn3cbjS/qcJXRb6Bww==", + "dev": true + }, + "@types/nock": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@types/nock/-/nock-9.3.0.tgz", + "integrity": "sha512-ZHf/X8rTQ5Tb1rHjxIJYqm55uO265agE3G7NoSXVa2ep+EcJXgB2fsme+zBvK7MhrxTwkC/xkB6THyv50u0MGw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/node": { + "version": "10.9.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.9.4.tgz", + "integrity": "sha512-fCHV45gS+m3hH17zgkgADUSi2RR1Vht6wOZ0jyHP8rjiQra9f+mIcgwPQHllmDocYOstIEbKlxbFDYlgrTPYqw==", + "dev": true + }, + "@types/power-assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@types/power-assert/-/power-assert-1.5.0.tgz", + "integrity": "sha512-KPoeO2vSMGOOL1g8p/d7mvTTz7SCW7RRcpavqxhFwKZoqsDd1nwPGE9QICIt50b348/9MJYuBdwjUK34Y09XJw==", + "dev": true, + "requires": { + "@types/empower": "*", + "@types/power-assert-formatter": "*" + } + }, + "@types/power-assert-formatter": { + "version": "1.4.28", + "resolved": "https://registry.npmjs.org/@types/power-assert-formatter/-/power-assert-formatter-1.4.28.tgz", + "integrity": "sha1-Jbj922MiJZxrkcNTONObD45SQlI=", + "dev": true + }, + "@types/qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-mNhVdZHdtKHMMxbqzNK3RzkBcN1cux3AvuCYGTvjEIQT2uheH3eCAyYsbMbh2Bq8nXkeOWs1kyDiF7geWRFQ4Q==", + "dev": true + }, + "JSONStream": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.4.tgz", + "integrity": "sha512-Y7vfi3I5oMOYIr+WxV8NZxDSwcbNgzdKYsTNInmycOq9bUYwGg9ryu57Wg5NLmCjqdFPNUmpMBo3kSJN9tCbXg==", + "dev": true, + "requires": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + } + }, + "abbrev": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", + "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", + "dev": true + }, + "acorn": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.2.tgz", + "integrity": "sha512-cJrKCNcr2kv8dlDnbw+JPUGjHZzo4myaxOLmpOX8a+rgX94YeTcTMv/LFJUSByRpc+i4GgVnnhLxvMu/2Y+rqw==", + "dev": true + }, + "acorn-dynamic-import": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz", + "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==", + "dev": true, + "requires": { + "acorn": "^5.0.0" + } + }, + "acorn-es7-plugin": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/acorn-es7-plugin/-/acorn-es7-plugin-1.1.7.tgz", + "integrity": "sha1-8u4fMiipDurRJF+asZIusucdM2s=", + "dev": true + }, + "acorn-node": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.5.2.tgz", + "integrity": "sha512-krFKvw/d1F17AN3XZbybIUzEY4YEPNiGo05AfP3dBlfVKrMHETKpgjpuZkSF8qDNt9UkQcqj7am8yJLseklCMg==", + "dev": true, + "requires": { + "acorn": "^5.7.1", + "acorn-dynamic-import": "^3.0.0", + "xtend": "^4.0.1" + } + }, + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" + } + }, + "align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "dev": true, + "optional": true, + "requires": { + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "array-filter": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", + "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", + "dev": true + }, + "array-find": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-find/-/array-find-1.0.0.tgz", + "integrity": "sha1-bI4obRHtdoMn+OYuzuhzU8o+eLg=", + "dev": true + }, + "array-map": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", + "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", + "dev": true + }, + "array-reduce": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", + "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", + "dev": true + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "dev": true, + "requires": { + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true + }, + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "optional": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browser-pack": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.1.0.tgz", + "integrity": "sha512-erYug8XoqzU3IfcU8fUgyHqyOXqIE4tUTTQ+7mqUjQlvnXkOO6OlT9c/ZoJVHYoAaqGxr09CN53G7XIsO4KtWA==", + "dev": true, + "requires": { + "JSONStream": "^1.0.3", + "combine-source-map": "~0.8.0", + "defined": "^1.0.0", + "safe-buffer": "^5.1.1", + "through2": "^2.0.0", + "umd": "^3.0.0" + } + }, + "browser-resolve": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", + "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "dev": true, + "requires": { + "resolve": "1.1.7" + }, + "dependencies": { + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + } + } + }, + "browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "browserify": { + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/browserify/-/browserify-16.2.2.tgz", + "integrity": "sha512-fMES05wq1Oukts6ksGUU2TMVHHp06LyQt0SIwbXIHm7waSrQmNBZePsU0iM/4f94zbvb/wHma+D1YrdzWYnF/A==", + "dev": true, + "requires": { + "JSONStream": "^1.0.3", + "assert": "^1.4.0", + "browser-pack": "^6.0.1", + "browser-resolve": "^1.11.0", + "browserify-zlib": "~0.2.0", + "buffer": "^5.0.2", + "cached-path-relative": "^1.0.0", + "concat-stream": "^1.6.0", + "console-browserify": "^1.1.0", + "constants-browserify": "~1.0.0", + "crypto-browserify": "^3.0.0", + "defined": "^1.0.0", + "deps-sort": "^2.0.0", + "domain-browser": "^1.2.0", + "duplexer2": "~0.1.2", + "events": "^2.0.0", + "glob": "^7.1.0", + "has": "^1.0.0", + "htmlescape": "^1.1.0", + "https-browserify": "^1.0.0", + "inherits": "~2.0.1", + "insert-module-globals": "^7.0.0", + "labeled-stream-splicer": "^2.0.0", + "mkdirp": "^0.5.0", + "module-deps": "^6.0.0", + "os-browserify": "~0.3.0", + "parents": "^1.0.1", + "path-browserify": "~0.0.0", + "process": "~0.11.0", + "punycode": "^1.3.2", + "querystring-es3": "~0.2.0", + "read-only-stream": "^2.0.0", + "readable-stream": "^2.0.2", + "resolve": "^1.1.4", + "shasum": "^1.0.0", + "shell-quote": "^1.6.1", + "stream-browserify": "^2.0.0", + "stream-http": "^2.0.0", + "string_decoder": "^1.1.1", + "subarg": "^1.0.0", + "syntax-error": "^1.1.1", + "through2": "^2.0.0", + "timers-browserify": "^1.0.1", + "tty-browserify": "0.0.1", + "url": "~0.11.0", + "util": "~0.10.1", + "vm-browserify": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "dev": true, + "requires": { + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "requires": { + "pako": "~1.0.5" + } + }, + "buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", + "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" + } + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "cached-path-relative": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.1.tgz", + "integrity": "sha1-0JxLUoAKpMB44t2BqGmqyQ0uVOc=", + "dev": true + }, + "call-matcher": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.1.0.tgz", + "integrity": "sha512-IoQLeNwwf9KTNbtSA7aEBb1yfDbdnzwjCetjkC8io5oGeOmK2CBNdg0xr+tadRYKO0p7uQyZzvon0kXlZbvGrw==", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "deep-equal": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.0.0" + } + }, + "call-signature": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", + "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", + "dev": true + }, + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "dev": true, + "optional": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "dev": true, + "optional": true, + "requires": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + } + }, + "chai": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.1.2.tgz", + "integrity": "sha1-D2RYS6ZC8PKs4oBiefTwbKI61zw=", + "dev": true, + "requires": { + "assertion-error": "^1.0.1", + "check-error": "^1.0.1", + "deep-eql": "^3.0.0", + "get-func-name": "^2.0.0", + "pathval": "^1.0.0", + "type-detect": "^4.0.0" + } + }, + "check-error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", + "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", + "dev": true + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "dev": true, + "optional": true, + "requires": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + }, + "dependencies": { + "wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "dev": true, + "optional": true + } + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "combine-source-map": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz", + "integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=", + "dev": true, + "requires": { + "convert-source-map": "~1.1.0", + "inline-source-map": "~0.6.0", + "lodash.memoize": "~3.0.3", + "source-map": "~0.5.3" + } + }, + "combined-stream": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", + "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", + "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "requires": { + "date-now": "^0.1.4" + } + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "convert-source-map": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz", + "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=", + "dev": true + }, + "core-js": { + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", + "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "coveralls": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.2.tgz", + "integrity": "sha512-Tv0LKe/MkBOilH2v7WBiTBdudg2ChfGbdXafc/s330djpF3zKOmuehTeRwjXWc7pzfj9FrDUTA7tEx6Div8NFw==", + "dev": true, + "requires": { + "growl": "~> 1.10.0", + "js-yaml": "^3.11.0", + "lcov-parse": "^0.0.10", + "log-driver": "^1.2.7", + "minimist": "^1.2.0", + "request": "^2.85.0" + } + }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "dev": true, + "requires": { + "es5-ext": "^0.10.9" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true, + "optional": true + }, + "deep-eql": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", + "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", + "dev": true, + "requires": { + "type-detect": "^4.0.0" + } + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "defined": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", + "dev": true + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "deps-sort": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.0.tgz", + "integrity": "sha1-CRckkC6EZYJg65EHSMzNGvbiH7U=", + "dev": true, + "requires": { + "JSONStream": "^1.0.3", + "shasum": "^1.0.0", + "subarg": "^1.0.0", + "through2": "^2.0.0" + } + }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "detective": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.1.0.tgz", + "integrity": "sha512-TFHMqfOvxlgrfVzTEkNBSh9SvSNX/HfF4OFI2QFGCyPm02EsyILqnUeb5P6q7JZ3SFNTBL5t2sePRgrN4epUWQ==", + "dev": true, + "requires": { + "acorn-node": "^1.3.0", + "defined": "^1.0.0", + "minimist": "^1.1.1" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "diff-match-patch": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/diff-match-patch/-/diff-match-patch-1.0.1.tgz", + "integrity": "sha512-A0QEhr4PxGUMEtKxd6X+JLnOTFd3BfIPSDpsc4dMvj+CbSaErDwTpoTo/nFJDMSrjxLW4BiNq+FbNisAAHhWeQ==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, + "dotenv": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-6.0.0.tgz", + "integrity": "sha512-FlWbnhgjtwD+uNLUGHbMykMOYQaTivdHEmYwAKFjn6GKe/CqY0fNae93ZHTd20snh9ZLr8mTzIL9m0APQ1pjQg==", + "dev": true + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "optional": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "elliptic": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", + "dev": true, + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "empower": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/empower/-/empower-1.3.0.tgz", + "integrity": "sha512-tP2WqM7QzrPguCCQEQfFFDF+6Pw6YWLQal3+GHQaV+0uIr0S+jyREQPWljE02zFCYPFYLZ3LosiRV+OzTrxPpQ==", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "empower-core": "^1.2.0" + } + }, + "empower-assert": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/empower-assert/-/empower-assert-1.1.0.tgz", + "integrity": "sha512-Ylck0Q6p8y/LpNzYeBccaxAPm2ZyuqBgErgZpO9KT0HuQWF0sJckBKCLmgS1/DEXEiyBi9XtYh3clZm5cAdARw==", + "dev": true, + "requires": { + "estraverse": "^4.2.0" + } + }, + "empower-core": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-1.2.0.tgz", + "integrity": "sha512-g6+K6Geyc1o6FdXs9HwrXleCFan7d66G5xSCfSF7x1mJDCes6t0om9lFQG3zOrzh3Bkb/45N0cZ5Gqsf7YrzGQ==", + "dev": true, + "requires": { + "call-signature": "0.0.2", + "core-js": "^2.0.0" + } + }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "dev": true, + "requires": { + "iconv-lite": "~0.4.13" + } + }, + "es5-ext": { + "version": "0.10.46", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.46.tgz", + "integrity": "sha512-24XxRvJXNFwEMpJb3nOkiRJKRoupmjYmOPVlI65Qy2SrtxwOTB+g6ODjBKOtwEHbYrhWRty9xxOWLNdClT2djw==", + "dev": true, + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.1", + "next-tick": "1" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-promise": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz", + "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==", + "dev": true + }, + "es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-symbol": "3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "es6-weak-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", + "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.14", + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" + } + }, + "escallmatch": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/escallmatch/-/escallmatch-1.5.0.tgz", + "integrity": "sha1-UAmdhugJGwkt+N37w/mm+wWgJNA=", + "dev": true, + "requires": { + "call-matcher": "^1.0.0", + "esprima": "^2.0.0" + }, + "dependencies": { + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true + } + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escodegen": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.0.tgz", + "integrity": "sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw==", + "dev": true, + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, + "escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "dev": true, + "requires": { + "es6-map": "^0.1.3", + "es6-weak-map": "^2.0.1", + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "espower": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/espower/-/espower-2.1.1.tgz", + "integrity": "sha512-F4TY1qYJB1aUyzB03NsZksZzUQmQoEBaTUjRJGR30GxbkbjKI41NhCyYjrF+bGgWN7x/ZsczYppRpz/0WdI0ug==", + "dev": true, + "requires": { + "array-find": "^1.0.0", + "escallmatch": "^1.5.0", + "escodegen": "^1.7.0", + "escope": "^3.3.0", + "espower-location-detector": "^1.0.0", + "espurify": "^1.3.0", + "estraverse": "^4.1.0", + "source-map": "^0.5.0", + "type-name": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "espower-location-detector": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", + "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", + "dev": true, + "requires": { + "is-url": "^1.2.1", + "path-is-absolute": "^1.0.0", + "source-map": "^0.5.0", + "xtend": "^4.0.0" + } + }, + "espower-source": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/espower-source/-/espower-source-2.3.0.tgz", + "integrity": "sha512-Wc4kC4zUAEV7Qt31JRPoBUc5jjowHRylml2L2VaDQ1XEbnqQofGWx+gPR03TZAPokAMl5dqyL36h3ITyMXy3iA==", + "dev": true, + "requires": { + "acorn": "^5.0.0", + "acorn-es7-plugin": "^1.0.10", + "convert-source-map": "^1.1.1", + "empower-assert": "^1.0.0", + "escodegen": "^1.10.0", + "espower": "^2.1.1", + "estraverse": "^4.0.0", + "merge-estraverse-visitors": "^1.0.0", + "multi-stage-sourcemap": "^0.2.1", + "path-is-absolute": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "espower-typescript": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/espower-typescript/-/espower-typescript-9.0.0.tgz", + "integrity": "sha512-5hNpnWicyLfm3m7sLTLLXXel7PGg4iz6jmGrmVvIapgXS1oQmA+TsEYEqxTjadfTXEpJ9V+bHoyBTSIdG1iV5g==", + "dev": true, + "requires": { + "espower-source": "^2.3.0", + "minimatch": "^3.0.3", + "ts-node": "^7.0.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "espurify": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.1.tgz", + "integrity": "sha512-ZDko6eY/o+D/gHCWyHTU85mKDgYcS4FJj7S+YD6WIInm7GQ6AnOjmcL4+buFV/JOztVLELi/7MmuGU5NHta0Mg==", + "dev": true, + "requires": { + "core-js": "^2.0.0" + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "events": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/events/-/events-2.1.0.tgz", + "integrity": "sha512-3Zmiobend8P9DjmKAty0Era4jV8oJ0yGYe2nJJAxgymF9+N8F2m0hhZiMoWtcfepExzNKZumFU3ksdQbInGWCg==", + "dev": true + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", + "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "1.0.6", + "mime-types": "^2.1.12" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "get-assigned-identifiers": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz", + "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==", + "dev": true + }, + "get-func-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", + "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "handlebars": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz", + "integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=", + "dev": true, + "requires": { + "async": "^1.4.0", + "optimist": "^0.6.1", + "source-map": "^0.4.4", + "uglify-js": "^2.6" + }, + "dependencies": { + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + }, + "uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "dev": true, + "optional": true, + "requires": { + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "optional": true + } + } + } + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.0.tgz", + "integrity": "sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA==", + "dev": true, + "requires": { + "ajv": "^5.3.0", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "hash.js": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.5.tgz", + "integrity": "sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "he": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", + "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", + "dev": true + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "htmlescape": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz", + "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=", + "dev": true + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ieee754": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", + "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==", + "dev": true + }, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "inline-source-map": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz", + "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=", + "dev": true, + "requires": { + "source-map": "~0.5.3" + } + }, + "insert-module-globals": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.0.tgz", + "integrity": "sha512-VE6NlW+WGn2/AeOMd496AHFYmE7eLKkUY6Ty31k4og5vmA3Fjuwe9v6ifH6Xx/Hz27QvdoMoviw1/pqWRB09Sw==", + "dev": true, + "requires": { + "JSONStream": "^1.0.3", + "acorn-node": "^1.5.2", + "combine-source-map": "^0.8.0", + "concat-stream": "^1.6.1", + "is-buffer": "^1.1.0", + "path-is-absolute": "^1.0.1", + "process": "~0.11.0", + "through2": "^2.0.0", + "undeclared-identifiers": "^1.1.2", + "xtend": "^4.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "dev": true, + "requires": { + "node-fetch": "^1.0.1", + "whatwg-fetch": ">=0.10.0" + } + }, + "isomorphic-form-data": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-form-data/-/isomorphic-form-data-2.0.0.tgz", + "integrity": "sha512-TYgVnXWeESVmQSg4GLVbalmQ+B4NPi/H4eWxqALKj63KsUrcu301YDjBqaOw3h+cbak7Na4Xyps3BiptHtxTfg==", + "dev": true, + "requires": { + "form-data": "^2.3.2" + } + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "istanbul": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", + "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=", + "dev": true, + "requires": { + "abbrev": "1.0.x", + "async": "1.x", + "escodegen": "1.8.x", + "esprima": "2.7.x", + "glob": "^5.0.15", + "handlebars": "^4.0.1", + "js-yaml": "3.x", + "mkdirp": "0.5.x", + "nopt": "3.x", + "once": "1.x", + "resolve": "1.1.x", + "supports-color": "^3.1.0", + "which": "^1.1.1", + "wordwrap": "^1.0.0" + }, + "dependencies": { + "escodegen": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", + "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", + "dev": true, + "requires": { + "esprima": "^2.7.1", + "estraverse": "^1.9.1", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.2.0" + } + }, + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true + }, + "estraverse": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", + "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=", + "dev": true + }, + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "requires": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + }, + "source-map": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", + "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", + "dev": true, + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "js-yaml": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", + "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true, + "optional": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "dev": true + }, + "json-stable-stringify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz", + "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=", + "dev": true, + "requires": { + "jsonify": "~0.0.0" + } + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "dev": true + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "optional": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "labeled-stream-splicer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.1.tgz", + "integrity": "sha512-MC94mHZRvJ3LfykJlTUipBqenZz1pacOZEMhhQ8dMGcDHs0SBE5GbsavUXV7YtP3icBW17W0Zy1I0lfASmo9Pg==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "isarray": "^2.0.4", + "stream-splicer": "^2.0.0" + }, + "dependencies": { + "isarray": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.4.tgz", + "integrity": "sha512-GMxXOiUirWg1xTKRipM0Ek07rX+ubx4nNVElTJdNLYmNO/2YrDkgJGw9CljXn+r4EWiDQg/8lsRdHyg2PJuUaA==", + "dev": true + } + } + }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "dev": true, + "optional": true + }, + "lcov-parse": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", + "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", + "dev": true + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "dev": true + }, + "lodash.memoize": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz", + "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=", + "dev": true + }, + "log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "dev": true + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", + "dev": true, + "optional": true + }, + "make-error": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz", + "integrity": "sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==", + "dev": true + }, + "md5.js": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", + "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "merge-estraverse-visitors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/merge-estraverse-visitors/-/merge-estraverse-visitors-1.0.0.tgz", + "integrity": "sha1-65aDOLXe1c7tgs7AMH3sui2OqZQ=", + "dev": true, + "requires": { + "estraverse": "^4.0.0" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, + "mime-db": { + "version": "1.36.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz", + "integrity": "sha512-L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==", + "dev": true + }, + "mime-types": { + "version": "2.1.20", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz", + "integrity": "sha512-HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==", + "dev": true, + "requires": { + "mime-db": "~1.36.0" + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + } + } + }, + "mocha": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz", + "integrity": "sha512-2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==", + "dev": true, + "requires": { + "browser-stdout": "1.3.1", + "commander": "2.15.1", + "debug": "3.1.0", + "diff": "3.5.0", + "escape-string-regexp": "1.0.5", + "glob": "7.1.2", + "growl": "1.10.5", + "he": "1.1.1", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "supports-color": "5.4.0" + }, + "dependencies": { + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", + "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "module-deps": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.1.0.tgz", + "integrity": "sha512-NPs5N511VD1rrVJihSso/LiBShRbJALYBKzDW91uZYy7BpjnO4bGnZL3HjZ9yKcFdZUWwaYjDz9zxbuP7vKMuQ==", + "dev": true, + "requires": { + "JSONStream": "^1.0.3", + "browser-resolve": "^1.7.0", + "cached-path-relative": "^1.0.0", + "concat-stream": "~1.6.0", + "defined": "^1.0.0", + "detective": "^5.0.2", + "duplexer2": "^0.1.2", + "inherits": "^2.0.1", + "parents": "^1.0.0", + "readable-stream": "^2.0.2", + "resolve": "^1.4.0", + "stream-combiner2": "^1.1.1", + "subarg": "^1.0.0", + "through2": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "multi-stage-sourcemap": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/multi-stage-sourcemap/-/multi-stage-sourcemap-0.2.1.tgz", + "integrity": "sha1-sJ/IWG6qF/gdV1xK0C4Pej9rEQU=", + "dev": true, + "requires": { + "source-map": "^0.1.34" + }, + "dependencies": { + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "dev": true + }, + "nock": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/nock/-/nock-9.6.1.tgz", + "integrity": "sha512-EDgl/WgNQ0C1BZZlASOQkQdE6tAWXJi8QQlugqzN64JJkvZ7ILijZuG24r4vCC7yOfnm6HKpne5AGExLGCeBWg==", + "dev": true, + "requires": { + "chai": "^4.1.2", + "debug": "^3.1.0", + "deep-equal": "^1.0.0", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.5", + "mkdirp": "^0.5.0", + "propagate": "^1.0.0", + "qs": "^6.5.1", + "semver": "^5.5.0" + } + }, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "dev": true, + "requires": { + "encoding": "^0.1.11", + "is-stream": "^1.0.1" + } + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "object-keys": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", + "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + }, + "dependencies": { + "minimist": { + "version": "0.0.10", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", + "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", + "dev": true + }, + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + } + } + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, + "pako": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", + "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==", + "dev": true + }, + "parents": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz", + "integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=", + "dev": true, + "requires": { + "path-platform": "~0.11.15" + } + }, + "parse-asn1": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", + "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", + "dev": true, + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3" + } + }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-platform": { + "version": "0.11.15", + "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz", + "integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=", + "dev": true + }, + "pathval": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", + "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", + "dev": true + }, + "pbkdf2": { + "version": "3.0.16", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.16.tgz", + "integrity": "sha512-y4CXP3thSxqf7c0qmOF+9UeOTrifiVTIM+u7NWlq+PRsHbr7r7dpCmvzrZxa96JJUNi0Y5w9VqG5ZNeCVMoDcA==", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "power-assert": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/power-assert/-/power-assert-1.6.0.tgz", + "integrity": "sha512-nDb6a+p2C7Wj8Y2zmFtLpuv+xobXz4+bzT5s7dr0nn71tLozn7nRMQqzwbefzwZN5qOm0N7Cxhw4kXP75xboKA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "empower": "^1.3.0", + "power-assert-formatter": "^1.4.1", + "universal-deep-strict-equal": "^1.2.1", + "xtend": "^4.0.0" + } + }, + "power-assert-context-formatter": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/power-assert-context-formatter/-/power-assert-context-formatter-1.2.0.tgz", + "integrity": "sha512-HLNEW8Bin+BFCpk/zbyKwkEu9W8/zThIStxGo7weYcFkKgMuGCHUJhvJeBGXDZf0Qm2xis4pbnnciGZiX0EpSg==", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "power-assert-context-traversal": "^1.2.0" + } + }, + "power-assert-context-reducer-ast": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/power-assert-context-reducer-ast/-/power-assert-context-reducer-ast-1.2.0.tgz", + "integrity": "sha512-EgOxmZ/Lb7tw4EwSKX7ZnfC0P/qRZFEG28dx/690qvhmOJ6hgThYFm5TUWANDLK5NiNKlPBi5WekVGd2+5wPrw==", + "dev": true, + "requires": { + "acorn": "^5.0.0", + "acorn-es7-plugin": "^1.0.12", + "core-js": "^2.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.2.0" + } + }, + "power-assert-context-traversal": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/power-assert-context-traversal/-/power-assert-context-traversal-1.2.0.tgz", + "integrity": "sha512-NFoHU6g2umNajiP2l4qb0BRWD773Aw9uWdWYH9EQsVwIZnog5bd2YYLFCVvaxWpwNzWeEfZIon2xtyc63026pQ==", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "estraverse": "^4.1.0" + } + }, + "power-assert-formatter": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/power-assert-formatter/-/power-assert-formatter-1.4.1.tgz", + "integrity": "sha1-XcEl7VCj37HdomwZNH879Y7CiEo=", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "power-assert-context-formatter": "^1.0.7", + "power-assert-context-reducer-ast": "^1.0.7", + "power-assert-renderer-assertion": "^1.0.7", + "power-assert-renderer-comparison": "^1.0.7", + "power-assert-renderer-diagram": "^1.0.7", + "power-assert-renderer-file": "^1.0.7" + } + }, + "power-assert-renderer-assertion": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/power-assert-renderer-assertion/-/power-assert-renderer-assertion-1.2.0.tgz", + "integrity": "sha512-3F7Q1ZLmV2ZCQv7aV7NJLNK9G7QsostrhOU7U0RhEQS/0vhEqrRg2jEJl1jtUL4ZyL2dXUlaaqrmPv5r9kRvIg==", + "dev": true, + "requires": { + "power-assert-renderer-base": "^1.1.1", + "power-assert-util-string-width": "^1.2.0" + } + }, + "power-assert-renderer-base": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/power-assert-renderer-base/-/power-assert-renderer-base-1.1.1.tgz", + "integrity": "sha1-lqZQxv0F7hvB9mtUrWFELIs/Y+s=", + "dev": true + }, + "power-assert-renderer-comparison": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/power-assert-renderer-comparison/-/power-assert-renderer-comparison-1.2.0.tgz", + "integrity": "sha512-7c3RKPDBKK4E3JqdPtYRE9cM8AyX4LC4yfTvvTYyx8zSqmT5kJnXwzR0yWQLOavACllZfwrAGQzFiXPc5sWa+g==", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "diff-match-patch": "^1.0.0", + "power-assert-renderer-base": "^1.1.1", + "stringifier": "^1.3.0", + "type-name": "^2.0.1" + } + }, + "power-assert-renderer-diagram": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/power-assert-renderer-diagram/-/power-assert-renderer-diagram-1.2.0.tgz", + "integrity": "sha512-JZ6PC+DJPQqfU6dwSmpcoD7gNnb/5U77bU5KgNwPPa+i1Pxiz6UuDeM3EUBlhZ1HvH9tMjI60anqVyi5l2oNdg==", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "power-assert-renderer-base": "^1.1.1", + "power-assert-util-string-width": "^1.2.0", + "stringifier": "^1.3.0" + } + }, + "power-assert-renderer-file": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/power-assert-renderer-file/-/power-assert-renderer-file-1.2.0.tgz", + "integrity": "sha512-/oaVrRbeOtGoyyd7e4IdLP/jIIUFJdqJtsYzP9/88R39CMnfF/S/rUc8ZQalENfUfQ/wQHu+XZYRMaCEZmEesg==", + "dev": true, + "requires": { + "power-assert-renderer-base": "^1.1.1" + } + }, + "power-assert-util-string-width": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/power-assert-util-string-width/-/power-assert-util-string-width-1.2.0.tgz", + "integrity": "sha512-lX90G0igAW0iyORTILZ/QjZWsa1MZ6VVY3L0K86e2eKun3S4LKPH4xZIl8fdeMYLfOjkaszbNSzf1uugLeAm2A==", + "dev": true, + "requires": { + "eastasianwidth": "^0.2.0" + } + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "propagate": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/propagate/-/propagate-1.0.0.tgz", + "integrity": "sha1-AMLa7t2iDofjeCs0Stuhzd1q1wk=", + "dev": true + }, + "psl": { + "version": "1.1.29", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz", + "integrity": "sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==", + "dev": true + }, + "public-encrypt": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz", + "integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, + "randombytes": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", + "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "read-only-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz", + "integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true, + "optional": true + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "resolve": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", + "dev": true, + "requires": { + "path-parse": "^1.0.5" + } + }, + "right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "dev": true, + "optional": true, + "requires": { + "align-text": "^0.1.1" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "semver": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", + "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shasum": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz", + "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=", + "dev": true, + "requires": { + "json-stable-stringify": "~0.0.0", + "sha.js": "~2.4.4" + } + }, + "shell-quote": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", + "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", + "dev": true, + "requires": { + "array-filter": "~0.0.0", + "array-map": "~0.0.0", + "array-reduce": "~0.0.0", + "jsonify": "~0.0.0" + } + }, + "simple-concat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz", + "integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "source-map-support": { + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.9.tgz", + "integrity": "sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", + "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stream-browserify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", + "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "stream-combiner2": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", + "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=", + "dev": true, + "requires": { + "duplexer2": "~0.1.0", + "readable-stream": "^2.0.2" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "stream-splicer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.0.tgz", + "integrity": "sha1-G2O+Q4oTPktnHMGTUZdgAXWRDYM=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.2" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "stringifier": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/stringifier/-/stringifier-1.4.0.tgz", + "integrity": "sha512-cNsMOqqrcbLcHTXEVmkw9y0fwDwkdgtZwlfyolzpQDoAE1xdNGhQhxBUfiDvvZIKl1hnUEgMv66nHwtMz3OjPw==", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "traverse": "^0.6.6", + "type-name": "^2.0.1" + } + }, + "subarg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", + "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=", + "dev": true, + "requires": { + "minimist": "^1.1.0" + } + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + }, + "syntax-error": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz", + "integrity": "sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==", + "dev": true, + "requires": { + "acorn-node": "^1.2.0" + } + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true, + "requires": { + "readable-stream": "^2.1.5", + "xtend": "~4.0.1" + } + }, + "timers-browserify": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", + "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=", + "dev": true, + "requires": { + "process": "~0.11.0" + } + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + } + }, + "traverse": { + "version": "0.6.6", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz", + "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=", + "dev": true + }, + "ts-node": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", + "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", + "dev": true, + "requires": { + "arrify": "^1.0.0", + "buffer-from": "^1.1.0", + "diff": "^3.1.0", + "make-error": "^1.1.1", + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "source-map-support": "^0.5.6", + "yn": "^2.0.0" + } + }, + "tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true, + "optional": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, + "type-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/type-name/-/type-name-2.0.2.tgz", + "integrity": "sha1-7+fUEj2KxSr/9/QMfk3sUmYAj7Q=", + "dev": true + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "typescript": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.0.3.tgz", + "integrity": "sha512-kk80vLW9iGtjMnIv11qyxLqZm20UklzuR2tL0QAnDIygIUIemcZMxlMWudl9OOt76H3ntVzcTiddQ1/pAAJMYg==", + "dev": true + }, + "uglify-js": { + "version": "3.4.8", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.8.tgz", + "integrity": "sha512-WatYTD84gP/867bELqI2F/2xC9PQBETn/L+7RGq9MQOA/7yFBNvY1UwXqvtILeE6n0ITwBXxp34M0/o70dzj6A==", + "dev": true, + "requires": { + "commander": "~2.17.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "dev": true, + "optional": true + }, + "umd": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz", + "integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==", + "dev": true + }, + "undeclared-identifiers": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/undeclared-identifiers/-/undeclared-identifiers-1.1.2.tgz", + "integrity": "sha512-13EaeocO4edF/3JKime9rD7oB6QI8llAGhgn5fKOPyfkJbRb6NFv9pYV6dFEmpa4uRjKeBqLZP8GpuzqHlKDMQ==", + "dev": true, + "requires": { + "acorn-node": "^1.3.0", + "get-assigned-identifiers": "^1.2.0", + "simple-concat": "^1.0.0", + "xtend": "^4.0.1" + } + }, + "universal-deep-strict-equal": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/universal-deep-strict-equal/-/universal-deep-strict-equal-1.2.2.tgz", + "integrity": "sha1-DaSsL3PP95JMgfpN4BjKViyisKc=", + "dev": true, + "requires": { + "array-filter": "^1.0.0", + "indexof": "0.0.1", + "object-keys": "^1.0.0" + }, + "dependencies": { + "array-filter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz", + "integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=", + "dev": true + } + } + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, + "util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "vm-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.0.tgz", + "integrity": "sha512-iq+S7vZJE60yejDYM0ek6zg308+UZsdtPExWP9VZoCFCz1zkJoXFnAX7aZfd/ZwrkidzdUZL0C/ryW+JwAiIGw==", + "dev": true + }, + "whatwg-fetch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz", + "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "dev": true, + "optional": true + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "dev": true, + "optional": true, + "requires": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } + }, + "yn": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", + "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", + "dev": true + } + } +} diff --git a/package.json b/package.json index 30bc8f2..a1476bb 100644 --- a/package.json +++ b/package.json @@ -8,33 +8,41 @@ "url": "git://github.com/nulab/backlog-js.git" }, "scripts": { - "test": "mocha --timeout 10000 --compilers ts:espower-typescript/guess test/test*.ts", - "test-cov": "istanbul cover ./node_modules/mocha/bin/_mocha --report lcovonly -- -R spec test/**/test*.js", + "test": "npx mocha --timeout 10000 --compilers ts:espower-typescript/guess test/test*.ts", + "test-cov": "npx istanbul cover ./node_modules/mocha/bin/_mocha --report lcovonly -- -R spec dist/test/**/test*.js", "coveralls": "cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js", - "build": "npm run build-tsc && npm run build-dist && npm run build-minify", - "build-dist": "browserify --standalone Backlog src/index.js -o dist/backlog.js", - "build-minify": "uglifyjs dist/backlog.js -o dist/backlog.min.js", - "build-tsc": "tsc --removeComments", - "build-tsd": "tsc -d" + "build": "npx npm run build-tsc && npm run build-dist && npm run build-minify", + "build-dist": "npx browserify --standalone Backlog dist/src/index.js -o dist/backlog.js", + "build-minify": "npx uglifyjs dist/backlog.js -o dist/backlog.min.js", + "build-tsc": "npx tsc --removeComments", + "build-tsd": "npx tsc -d" }, "author": "vvatanabe", "license": "MIT", "devDependencies": { + "@types/dotenv": "^4.0.3", + "@types/empower": "^1.2.30", "@types/isomorphic-fetch": "0.0.35", - "browserify": "^13.0.1", - "coveralls": "^2.11.9", - "dotenv": "^2.0.0", - "es6-promise": "^3.2.1", - "espower-typescript": "^5.0.1", + "@types/mocha": "^5.2.5", + "@types/nock": "^9.3.0", + "@types/node": "^10.9.4", + "@types/power-assert": "^1.5.0", + "@types/power-assert-formatter": "^1.4.28", + "@types/qs": "^6.5.1", + "browserify": "^16.2.2", + "coveralls": "^3.0.2", + "dotenv": "^6.0.0", + "es6-promise": "^4.2.4", + "espower-typescript": "^9.0.0", "isomorphic-fetch": "^2.2.1", - "isomorphic-form-data": "0.0.1", - "istanbul": "^0.4.3", - "mocha": "^2.5.3", - "nock": "^8.0.0", - "power-assert": "^1.4.1", - "qs": "^6.2.1", - "typescript": "^2.9.2", - "uglify-js": "^2.6.2" + "isomorphic-form-data": "^2.0.0", + "istanbul": "^0.4.5", + "mocha": "^5.2.0", + "nock": "^9.6.1", + "power-assert": "^1.6.0", + "qs": "^6.5.2", + "typescript": "^3.0.3", + "uglify-js": "^3.4.8" }, "keywords": [ "nulab", diff --git a/src/backlog.ts b/src/backlog.ts index f68a597..436648d 100644 --- a/src/backlog.ts +++ b/src/backlog.ts @@ -3,6 +3,8 @@ import * as Entity from './entity'; import * as Error from './error'; import Request from './request'; +declare interface IResponse { [name:string]: any; } + export default class Backlog extends Request { constructor(configure: { diff --git a/src/error.ts b/src/error.ts index 275c842..0096cfb 100644 --- a/src/error.ts +++ b/src/error.ts @@ -1,3 +1,4 @@ +declare interface IResponse { [name:string]: any; } export class BacklogError extends global.Error { private _name: BacklogErrorNameType; diff --git a/src/request.ts b/src/request.ts index 8f69db5..451a560 100644 --- a/src/request.ts +++ b/src/request.ts @@ -1,5 +1,7 @@ import * as Error from './error'; +declare interface IResponse { [name:string]: any; } + export default class Request { constructor(private configure: { diff --git a/tsconfig.json b/tsconfig.json index 5edaa7f..0a95b78 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,25 +1,15 @@ { "compilerOptions": { "target": "es5", + "lib": ["dom", "es2016"], + "outDir": "dist", "sourceMap": false, "noImplicitAny": false, "noEmitOnError": false }, - "files": [ - "./typings/index.d.ts", - "./node_modules/typescript/lib/lib.es6.d.ts", - "./src/index.ts", - "./src/backlog.ts", - "./src/error.ts", - "./src/option.ts", - "./src/entity.ts", - "./src/oauth2.ts", - "./src/request.ts", - "./test/test.ts", - "./test/fixtures/index.ts", - "./test/fixtures/oauth2.ts", - "./test/fixtures/space.ts", - "./test/fixtures/project.ts" + "include": [ + "src/**/*", + "test/**/*" ], "exclude": [ "node_modules" From c1182f0d0b7b65759b5c54d1aff6ffd2527646eb Mon Sep 17 00:00:00 2001 From: netebakari Date: Fri, 31 Aug 2018 17:01:46 +0900 Subject: [PATCH 2/8] add comments (link to reference page) --- src/backlog.ts | 364 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 364 insertions(+) diff --git a/src/backlog.ts b/src/backlog.ts index 436648d..138d22b 100644 --- a/src/backlog.ts +++ b/src/backlog.ts @@ -13,258 +13,417 @@ export default class Backlog extends Request { super(configure); } + /** + * 1: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-space/ + */ public getSpace(): Promise { return this.get('space'); } + /** + * 2: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-recent-updates/ + */ public getSpaceActivities( params: Option.Space.GetActivitiesParams ): Promise { return this.get('space/activities', params); } + /** + * 4: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-space-notification/ + */ public getSpaceNotification(): Promise { return this.get('space/notification'); } + /** + * 5: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-space-notification/ + */ public putSpaceNotification( params: Option.Space.PutSpaceNotificationParams ): Promise { return this.put('space/notification', params); } + /** + * 6: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-space-disk-usage/ + */ public getSpaceDiskUsage(): Promise { return this.get('space/diskUsage'); } + /** + * 3: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-space-logo/ + */ public getSpaceIcon(): Promise { return this.download('space/image'); } + /** + * 7: https://developer.nulab-inc.com/ja/docs/backlog/api/2/post-attachment-file/ + */ public postSpaceAttachment(form: FormData) { return this.upload("space/attachment", form); } + /** + * 8: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-user-list/ + */ public getUsers(): Promise { return this.get(`users`); } + /** + * 9: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-user/ + */ public getUser(userId: number): Promise { return this.get(`users/${userId}`); } + /** + * 10: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-user/ + */ public postUser(params: Option.User.PostUserParams): Promise { return this.post(`users`, params); } + /** + * 11: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-user/ + */ public patchUser( userId: number, params: Option.User.PatchUserParams ): Promise { return this.patch(`users/${userId}`, params); } + /** + * 12: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-user/ + */ public deleteUser(userId: number): Promise { return this.delete(`users/${userId}`); } + /** + * 13: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-own-user/ + */ public getMyself(): Promise { return this.get('users/myself'); } + /** + * 15: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-user-recent-updates/ + */ public getUserActivities( userId: number, params: Option.User.GetUserActivitiesParams ): Promise { return this.get(`users/${userId}/activities`, params); } + /** + * 16: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-received-star-list/ + */ public getUserStars( userId: number, params: Option.User.GetUserStarsParams ): Promise { return this.get(`users/${userId}/stars`, params); } + /** + * 17: https://developer.nulab-inc.com/ja/docs/backlog/api/2/count-user-received-stars/ + */ public getUserStarsCount( userId: number, params: Option.User.GetUserStarsCountParams ): Promise { return this.get(`users/${userId}/count`, params); } + /** + * 18: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-recently-viewed-issues/ + */ public getRecentlyViewedIssues( params: Option.User.GetRecentlyViewedParams ): Promise { return this.get('users/myself/recentlyViewedIssues', params); } + /** + * 19: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-recently-viewed-projects/ + */ public getRecentlyViewedProjects( params: Option.User.GetRecentlyViewedParams ): Promise { return this.get('users/myself/recentlyViewedProjects', params); } + /** + * 20: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-recently-viewed-wikis/ + */ public getRecentlyViewedWikis( params: Option.User.GetRecentlyViewedParams ): Promise { return this.get('users/myself/recentlyViewedWikis', params); } + /** + * 14: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-user-icon/ + */ public getUserIcon(userId: number): Promise { return this.download(`users/${userId}/icon`); } + /** + * 21: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-groups/ + */ public getGroups(params: Option.Group.GetGroupsParams): Promise { return this.get('groups', params); } + /** + * 22: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-group/ + */ public postGroups(params: Option.Group.PostGroupsParams): Promise { return this.post('groups', params); } + /** + * 23: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-group/ + */ public getGroup(groupId: number): Promise { return this.get(`groups/${groupId}`); } + /** + * 24: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-group/ + */ public patchGroup( groupId: number, params: Option.Group.PatchGroupParams ): Promise { return this.patch('groups', params); } + /** + * 25: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-group/ + */ public deleteGroup(groupId: number): Promise { return this.delete(`groups/${groupId}`); } + /** + * 26: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-status-list/ + */ public getStatuses(): Promise { return this.get('statuses'); } + /** + * 27: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-resolution-list/ + */ public getResolutions(): Promise { return this.get('resolutions'); } + /** + * 28: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-priority-list/ + */ public getPriorities(): Promise { return this.get('priorities'); } + /** + * 30: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-project/ + */ public postProject(params: Option.Project.PostProjectParams): Promise { return this.post('projects', params); } + /** + * 29: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-list/ + */ public getProjects(params?: Option.Project.GetProjectsParams): Promise { return this.get('projects', params); } + /** + * 31: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project/ + */ public getProject(projectIdOrKey: string): Promise { return this.get(`projects/${projectIdOrKey}`); } + /** + * 32: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-project/ + */ public patchProject( projectIdOrKey: string, params: Option.Project.PatchProjectParams ): Promise { return this.patch(`projects/${projectIdOrKey}`, params); } + /** + * 33: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-project/ + */ public deleteProject(projectIdOrKey: string): Promise { return this.delete(`projects/${projectIdOrKey}`); } + /** + * 35: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-recent-updates/ + */ public getProjectActivities( projectIdOrKey: string, params: Option.Space.GetActivitiesParams ): Promise { return this.delete(`projects/${projectIdOrKey}/activities`, params); } + /** + * 37: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-user-list/ + */ public getProjectUsers(projectIdOrKey: string): Promise { return this.get(`projects/${projectIdOrKey}/users`); } + /** + * 38: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-project-user/ + */ public deleteProjectUsers( projectIdOrKey: string, params: Option.Project.DeleteProjectUsersParams ): Promise { return this.delete(`projects/${projectIdOrKey}/users`, params); } + /** + * 39: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-project-administrator/ + */ public postProjectAdministrators( projectIdOrKey: string, params: Option.Project.PostProjectAdministrators ): Promise { return this.post(`projects/${projectIdOrKey}/administrators`, params); } + /** + * 40: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-project-administrators/ + */ public getProjectAdministrators(projectIdOrKey: string): Promise { return this.get(`projects/${projectIdOrKey}/administrators`); } + /** + * 41: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-project-administrator/ + */ public deleteProjectAdministrators( projectIdOrKey: string, params: Option.Project.DeleteProjectAdministrators ): Promise { return this.delete(`projects/${projectIdOrKey}/administrators`, params); } + /** + * 42: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-issue-type-list/ + */ public getIssueTypes(projectIdOrKey: string): Promise { return this.get(`projects/${projectIdOrKey}/issueTypes`); } + /** + * 43: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-issue-type/ + */ public postIssueType( projectIdOrKey: string, params: Option.Project.PostIssueTypeParams ): Promise { return this.get(`projects/${projectIdOrKey}/issueTypes`, params); } + /** + * 44: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-issue-type/ + */ public patchIssueType( projectIdOrKey: string, id: number, params: Option.Project.PatchIssueTypeParams ): Promise { return this.patch(`projects/${projectIdOrKey}/issueTypes/${id}`, params); } + /** + * 45: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-issue-type/ + */ public deleteIssueType( projectIdOrKey: string, id: number, params: Option.Project.DeleteIssueTypeParams ): Promise { return this.delete(`projects/${projectIdOrKey}/issueTypes/${id}`, params); } + /** + * 46: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-category-list/ + */ public getCategories(projectIdOrKey: string): Promise { return this.get(`projects/${projectIdOrKey}/categories`); } + /** + * 47: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-category/ + */ public postCategories( projectIdOrKey: string, params: Option.Project.PostCategoriesParams ): Promise { return this.post(`projects/${projectIdOrKey}/categories`, params); } + /** + * 48: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-category/ + */ public patchCategories( projectIdOrKey: string, id: number, params: Option.Project.PatchCategoriesParams ): Promise { return this.patch(`projects/${projectIdOrKey}/categories/${id}`, params); } + /** + * 49: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-category/ + */ public deleteCategories(projectIdOrKey: string, id: number): Promise { return this.delete(`projects/${projectIdOrKey}/categories/${id}`); } + /** + * 50: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-version-milestone-list/ + */ public getVersions(projectIdOrKey: string): Promise { return this.get(`projects/${projectIdOrKey}/versions`); } + /** + * 51: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-version-milestone/ + */ public postVersions( projectIdOrKey: string, params: Option.Project.PostVersionsParams ): Promise { return this.post(`projects/${projectIdOrKey}/versions`, params); } + /** + * 52: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-version-milestone/ + */ public patchVersions( projectIdOrKey: string, id: number, params: Option.Project.PatchVersionsParams ): Promise { return this.patch(`projects/${projectIdOrKey}/versions/${id}`, params); } + /** + * 53: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-version/ + */ public deleteVersions(projectIdOrKey: string, id: number): Promise { return this.delete(`projects/${projectIdOrKey}/versions/${id}`); } + /** + * 54: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-custom-field-list/ + */ public getCustomFields(projectIdOrKey: string): Promise { return this.get(`projects/${projectIdOrKey}/customFields`); } + /** + * 55: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-custom-field/ + */ public postCustomField( projectIdOrKey: string, params: Option.Project.PostCustomFieldParams @@ -275,6 +434,9 @@ export default class Backlog extends Request { return this.post(`projects/${projectIdOrKey}/customFields`, params); } + /** + * 56: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-custom-field/ + */ public patchCustomField( projectIdOrKey: string, id: number, @@ -286,254 +448,410 @@ export default class Backlog extends Request { return this.patch(`projects/${projectIdOrKey}/customFields/${id}`, params); } + /** + * 57: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-custom-field/ + */ public deleteCustomField(projectIdOrKey: string, id: number): Promise { return this.delete(`projects/${projectIdOrKey}/customFields/${id}`); } + /** + * 58: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-list-item-for-list-type-custom-field/ + */ public postCustomFieldItem( projectIdOrKey: string, id: number, params: Option.Project.PostCustomFieldItemParams ): Promise { return this.post(`projects/${projectIdOrKey}/customFields/${id}/items`, params); } + /** + * 59: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-list-item-for-list-type-custom-field/ + */ public patchCustomFieldItem( projectIdOrKey: string, id: number, itemId: number, params: Option.Project.PatchCustomFieldItemParams ): Promise { return this.patch(`projects/${projectIdOrKey}/customFields/${id}/items/${itemId}`, params); } + /** + * 60: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-list-item-for-list-type-custom-field/ + */ public deleteCustomFieldItem( projectIdOrKey: string, id: number, params: Option.Project.PostCustomFieldItemParams ): Promise { return this.delete(`projects/${projectIdOrKey}/customFields/${id}/items`); } + /** + * 61: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-shared-files/ + */ public getSharedFiles( projectIdOrKey: string, path: string, params: Option.Project.GetSharedFilesParams ): Promise { return this.get(`projects/${projectIdOrKey}/files/metadata/${path}`); } + /** + * 63: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-disk-usage/ + */ public getProjectsDiskUsage( projectIdOrKey: string ): Promise { return this.get(`projects/${projectIdOrKey}/diskUsage`); } + /** + * 64: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-webhooks/ + */ public getWebhooks( projectIdOrKey: string ): Promise { return this.get(`projects/${projectIdOrKey}/webhooks`); } + /** + * 65: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-webhook/ + */ public postWebhook( projectIdOrKey: string, params: Option.Project.PostWebhookParams ): Promise { return this.post(`projects/${projectIdOrKey}/webhooks`, params); } + /** + * 66: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-webhook/ + */ public getWebhook( projectIdOrKey: string, webhookId: string ): Promise { return this.get(`projects/${projectIdOrKey}/webhooks/${webhookId}`); } + /** + * 67: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-webhook/ + */ public patchWebhook( projectIdOrKey: string, webhookId: string, params: Option.Project.PatchWebhookParams ): Promise { return this.patch(`projects/${projectIdOrKey}/webhooks/${webhookId}`, params); } + /** + * 68: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-webhook/ + */ public deleteWebhook( projectIdOrKey: string, webhookId: string ): Promise { return this.delete(`projects/${projectIdOrKey}/webhooks/${webhookId}`); } + /** + * 71: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-issue/ + */ public postIssue(params: Option.Issue.PostIssueParams): Promise { return this.post('issues', params); } + /** + * 73: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-issue/ + */ public patchIssue( issueIdOrKey: string, params: Option.Issue.PatchIssueParams ): Promise { return this.patch(`issues/${issueIdOrKey}`, params); } + /** + * 69: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-issue-list/ + */ public getIssues(params?: Option.Issue.GetIssuesParams): Promise { return this.get('issues', params); } + /** + * 72: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-issue/ + */ public getIssue(issueIdOrKey: string): Promise { return this.get(`issues/${issueIdOrKey}`); } + /** + * 70: https://developer.nulab-inc.com/ja/docs/backlog/api/2/count-issue/ + */ public getIssuesCount(params?: Option.Issue.GetIssuesParams): Promise { return this.get('issues/count', params); } + /** + * 74: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-issue/ + */ public deleteIssuesCount(issueIdOrKey: string): Promise { return this.delete(`issues/${issueIdOrKey}`); } + /** + * 75: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-comment-list/ + */ public getIssueComments( issueIdOrKey: string, params: Option.Issue.GetIssueCommentsParams ): Promise { return this.get(`issues/${issueIdOrKey}/comments`, params); } + /** + * 76: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-comment/ + */ public postIssueComments( issueIdOrKey: string, params: Option.Issue.PostIssueCommentsParams ): Promise { return this.post(`issues/${issueIdOrKey}/comments`, params); } + /** + * 77: https://developer.nulab-inc.com/ja/docs/backlog/api/2/count-comment/ + */ public getIssueCommentsCount(issueIdOrKey: string): Promise { return this.get(`issues/${issueIdOrKey}/comments/count`); } + /** + * 78: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-comment/ + */ public getIssueComment(issueIdOrKey: string, commentId: number): Promise { return this.get(`issues/${issueIdOrKey}/comments/${commentId}`); } + /** + * 79: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-comment/ + */ public patchIssueComment( issueIdOrKey: string, commentId: number, params: Option.Issue.PatchIssueCommentParams ): Promise { return this.patch(`issues/${issueIdOrKey}/comments/${commentId}`, params); } + /** + * 80: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-comment-notifications/ + */ public getIssueCommentNotifications( issueIdOrKey: string, commentId: number ): Promise { return this.get(`issues/${issueIdOrKey}/comments/${commentId}/notifications`); } + /** + * 81: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-comment-notification/ + */ public postIssueCommentNotifications( issueIdOrKey: string, commentId: number, prams: Option.Issue.IssueCommentNotifications ): Promise { return this.post(`issues/${issueIdOrKey}/comments/${commentId}/notifications`, prams); } + /** + * 82: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-issue-attachments/ + */ public getIssueAttachments(issueIdOrKey: string): Promise { return this.get(`issues/${issueIdOrKey}/attachments`); } + /** + * 84: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-issue-attachment/ + */ public deleteIssueAttachment(issueIdOrKey: string, attachmentId: string): Promise { return this.delete(`issues/${issueIdOrKey}/attachments/${attachmentId}`); } + /** + * 85: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-linked-shared-files/ + */ public getIssueSharedFiles(issueIdOrKey: string): Promise { return this.get(`issues/${issueIdOrKey}/sharedFiles`); } + /** + * 86: https://developer.nulab-inc.com/ja/docs/backlog/api/2/link-shared-files-to-issue/ + */ public linkIssueSharedFiles( issueIdOrKey: string, params: Option.Issue.LinkIssueSharedFilesParams ): Promise { return this.post(`issues/${issueIdOrKey}/sharedFiles`, params); } + /** + * 87: https://developer.nulab-inc.com/ja/docs/backlog/api/2/remove-link-to-shared-file-from-issue/ + */ public unlinkIssueSharedFile(issueIdOrKey: string, id: number): Promise { return this.delete(`issues/${issueIdOrKey}/sharedFiles/${id}`); } + /** + * 88: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-wiki-page-list/ + */ public getWikis(projectIdOrKey: number): Promise { return this.get(`wikis`, { projectIdOrKey }); } + /** + * 89: https://developer.nulab-inc.com/ja/docs/backlog/api/2/count-wiki-page/ + */ public getWikisCount(projectIdOrKey: number): Promise { return this.get(`wikis/count`, { projectIdOrKey }); } + /** + * 90: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-wiki-page-tag-list/ + */ public getWikisTags(projectIdOrKey: number): Promise { return this.get(`wikis/tags`, { projectIdOrKey }); } + /** + * 91: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-wiki-page/ + */ public postWiki(params: Option.Wiki.PostWikiParams): Promise { return this.post(`wikis`, params); } + /** + * 92: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-wiki-page/ + */ public getWiki(wikiId: number): Promise { return this.get(`wikis/${wikiId}`); } + /** + * 93: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-wiki-page/ + */ public patchWiki( wikiId: number, params: Option.Wiki.PatchWikiParams ): Promise { return this.patch(`wikis/${wikiId}`, params); } + /** + * 94: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-wiki-page/ + */ public deleteWiki(wikiId: number, mailNotify: boolean): Promise { return this.delete(`wikis/${wikiId}`, { mailNotify }); } + /** + * 95: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-wiki-attachments/ + */ public getWikisAttachments(wikiId: number): Promise { return this.get(`wikis/${wikiId}/attachments`); } + /** + * 96: https://developer.nulab-inc.com/ja/docs/backlog/api/2/attach-file-to-wiki/ + */ public postWikisAttachments(wikiId: number, attachmentId: number[]): Promise { return this.post(`wikis/${wikiId}/attachments`, { attachmentId }); } + /** + * 98: https://developer.nulab-inc.com/ja/docs/backlog/api/2/remove-wiki-attachment/ + */ public deleteWikisAttachments(wikiId: number, attachmentId: number): Promise { return this.delete(`wikis/${wikiId}/attachments/${attachmentId}`); } + /** + * 99: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-shared-files-on-wiki/ + */ public getWikisSharedFiles(wikiId: number): Promise { return this.get(`wikis/${wikiId}/sharedFiles`); } + /** + * 100: https://developer.nulab-inc.com/ja/docs/backlog/api/2/link-shared-files-to-wiki/ + */ public linkWikisSharedFiles(wikiId: number, fileId: number[]): Promise { return this.post(`wikis/${wikiId}/sharedFiles`, { fileId }); } + /** + * 101: https://developer.nulab-inc.com/ja/docs/backlog/api/2/remove-link-to-shared-file-from-wiki/ + */ public unlinkWikisSharedFiles(wikiId: number, id: number): Promise { return this.delete(`wikis/${wikiId}/sharedFiles/${id}`); } + /** + * 102: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-wiki-page-history/ + */ public getWikisHistory( wikiId: number, params: Option.Wiki.GetWikisHistoryParams ): Promise { return this.get(`wikis/${wikiId}/history`, params); } + /** + * 103: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-wiki-page-star/ + */ public getWikisStars(wikiId: number): Promise { return this.get(`wikis/${wikiId}/stars`); } + /** + * 104: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-star/ + */ public postStar(params: Option.Project.PostStarParams): Promise { return this.post('stars', params); } + /** + * 105: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-notification/ + */ public getNotifications( params: Option.Notification.GetNotificationsParams ): Promise { return this.get('notifications', params); } + /** + * 106: https://developer.nulab-inc.com/ja/docs/backlog/api/2/count-notification/ + */ public getNotificationsCount( params: Option.Notification.GetNotificationsCountParams ): Promise { return this.get('notifications/count', params); } + /** + * 107: https://developer.nulab-inc.com/ja/docs/backlog/api/2/reset-unread-notification-count/ + */ public resetNotificationsMarkAsRead(): Promise { return this.post('notifications/markAsRead'); } + /** + * 108: https://developer.nulab-inc.com/ja/docs/backlog/api/2/read-notification/ + */ public markAsReadNotification(id: number): Promise { return this.post(`notifications/${id}/markAsRead`); } + /** + * 109: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-git-repositories/ + */ public getGitRepositories(projectIdOrKey: string): Promise { return this.get(`projects/${projectIdOrKey}/git/repositories`); } + /** + * 110: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-git-repository/ + */ public getGitRepository( projectIdOrKey: string, repoIdOrName: string ): Promise { return this.get(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}`); } + /** + * 111: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-pull-request-list/ + */ public getPullRequests( projectIdOrKey: string, repoIdOrName: string, @@ -542,6 +860,9 @@ export default class Backlog extends Request { return this.get(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests`, params); } + /** + * 112: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-number-of-pull-requests/ + */ public getPullRequestsCount( projectIdOrKey: string, repoIdOrName: string, @@ -550,6 +871,9 @@ export default class Backlog extends Request { return this.get(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/count`, params); } + /** + * 113: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-pull-request/ + */ public postPullRequest( projectIdOrKey: string, repoIdOrName: string, @@ -558,12 +882,18 @@ export default class Backlog extends Request { return this.post(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests`, params); } + /** + * 114: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-pull-request/ + */ public getPullRequest( projectIdOrKey: string, repoIdOrName: string, number: number ): Promise { return this.get(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}`); } + /** + * 115: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-pull-request/ + */ public patchPullRequest( projectIdOrKey: string, repoIdOrName: string, @@ -573,6 +903,9 @@ export default class Backlog extends Request { return this.patch(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}`, params); } + /** + * 116: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-pull-request-comment/ + */ public getPullRequestComments( projectIdOrKey: string, repoIdOrName: string, @@ -582,6 +915,9 @@ export default class Backlog extends Request { return this.get(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/comments`, params); } + /** + * 117: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-pull-request-comment/ + */ public postPullRequestComments( projectIdOrKey: string, repoIdOrName: string, @@ -591,12 +927,18 @@ export default class Backlog extends Request { return this.post(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/comments`, params); } + /** + * 118: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-number-of-pull-request-comments/ + */ public getPullRequestCommentsCount( projectIdOrKey: string, repoIdOrName: string, number: number ): Promise { return this.get(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/comments/count`); } + /** + * 119: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-pull-request-comment-information/ + */ public patchPullRequestComments( projectIdOrKey: string, repoIdOrName: string, @@ -607,40 +949,62 @@ export default class Backlog extends Request { return this.patch(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/${commentId}`, params); } + /** + * 120: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-pull-request-attachment/ + */ public getPullRequestAttachments( projectIdOrKey: string, repoIdOrName: string, number: number ): Promise { return this.get(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/attachments`); } + /** + * 122: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-pull-request-attachments/ + */ public deletePullRequestAttachment( projectIdOrKey: string, repoIdOrName: string, number: number, attachmentId: number ): Promise { return this.get(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/attachments/${attachmentId}`); } + /** + * 34: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-icon/ + */ public getProjectIcon(projectIdOrKey: string): Promise { return this.download(`projects/${projectIdOrKey}/image`); } + /** + * 62: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-file/ + */ public getSharedFile(projectIdOrKey: string, sharedFileId: number): Promise { return this.download(`projects/${projectIdOrKey}/files/${sharedFileId}`); } + /** + * 83: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-issue-attachment/ + */ public getIssueAttachment(issueIdOrKey: string, attachmentId: number): Promise { return this.download(`issues/${issueIdOrKey}/attachments/${attachmentId}`); } + /** + * 97: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-wiki-page-attachment/ + */ public getWikiAttachment(wikiId: number, attachmentId: number): Promise { return this.download(`wikis/${wikiId}/attachments/${attachmentId}`); } + /** + * 121: https://developer.nulab-inc.com/ja/docs/backlog/api/2/download-pull-request-attachment/ + */ public getPullRequestAttachment( projectIdOrKey: string, repoIdOrName: string, number: number, attachmentId: number ): Promise { return this.download(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/attachments/${attachmentId}`); } + private download(path: string): Promise { return this.request({ method: 'GET', path }).then(this.parseFileData); } From b42431f5feb9d2a0a4b35a4591581c77e3600134 Mon Sep 17 00:00:00 2001 From: netebakari Date: Fri, 31 Aug 2018 17:15:48 +0900 Subject: [PATCH 3/8] alter http method according to reference (no:35, 43) / append some unimplemented methods (no:36, 123-134) --- src/backlog.ts | 95 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 93 insertions(+), 2 deletions(-) diff --git a/src/backlog.ts b/src/backlog.ts index 138d22b..46bdac7 100644 --- a/src/backlog.ts +++ b/src/backlog.ts @@ -272,7 +272,14 @@ export default class Backlog extends Request { public getProjectActivities( projectIdOrKey: string, params: Option.Space.GetActivitiesParams ): Promise { - return this.delete(`projects/${projectIdOrKey}/activities`, params); + return this.get(`projects/${projectIdOrKey}/activities`, params); + } + + /** + * 36: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-project-user/ + */ + public postProjectUser(projectIdOrKey: string|number, userId: string): Promise { + return this.post(`projects/${projectIdOrKey}/users`, { userId }); } /** @@ -329,7 +336,7 @@ export default class Backlog extends Request { public postIssueType( projectIdOrKey: string, params: Option.Project.PostIssueTypeParams ): Promise { - return this.get(`projects/${projectIdOrKey}/issueTypes`, params); + return this.post(`projects/${projectIdOrKey}/issueTypes`, params); } /** @@ -1004,6 +1011,90 @@ export default class Backlog extends Request { return this.download(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/attachments/${attachmentId}`); } + /** + * 123: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-watching-list + */ + public getWatchingListItems(userId: number): Promise { + return this.get(`users/${userId}/watchings`); + } + + /** + * 124: https://developer.nulab-inc.com/ja/docs/backlog/api/2/count-watching + */ + public getWatchingListCount(userId: number): Promise { + return this.get(`users/${userId}/watchings/count`); + } + + /** + * 125: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-watching + */ + public getWatchingListItem(watchId: number): Promise { + return this.get(`watchings/${watchId}`); + } + + /** + * 126: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-watching + */ + public postWatchingListItem(params: any) { + return this.post(`watchings`, params); + } + + /** + * 127: https://developer.nulab-inc.com/ja/docs/backlog/api/2/update-watching + */ + public patchWatchingListItem(watchId: number, note: string): Promise { + return this.patch(`watchings/${watchId}`, { note }); + } + + /** + * 128: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-watching + */ + public deletehWatchingListItem(watchId: number) { + return this.delete(`watchings/${watchId}`); + } + + /** + * 129: https://developer.nulab-inc.com/ja/docs/backlog/api/2/mark-watching-as-read + */ + public resetWatchingListItemAsRead(watchId: number): Promise { + return this.post(`watchings/${watchId}/markAsRead`); + } + + /** + * 130: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-group-list + */ + public getProjectGroupList(projectIdOrKey: string|number) { + return this.get(`projects/${projectIdOrKey}/groups`) + } + + /** + * 131: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-project-group + */ + public postProjectGroup(projectIdOrKey: string|number, params: any) { + return this.post(`projects/${projectIdOrKey}/groups`, params); + } + + /** + * 132: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-project-group + */ + public deleteProjectGroup(projectIdOrKey: string|number) { + return this.delete(`projects/${projectIdOrKey}/groups`); + } + + /** + * 133: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-group-icon + */ + public getGroupIcon(groupId: string): Promise { + return this.download(`groups/${groupId}/icon`); + } + + /** + * 134: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-licence + */ + public getLicence(): Promise { + return this.get(`space/licence`); + } + private download(path: string): Promise { return this.request({ method: 'GET', path }).then(this.parseFileData); From 7f5327f97df6e3c6fb2c9cccaef550718ea650a4 Mon Sep 17 00:00:00 2001 From: netebakari Date: Fri, 31 Aug 2018 17:50:30 +0900 Subject: [PATCH 4/8] fix conflict: change the methods order (according to reference page) https://developer.nulab-inc.com/ja/docs/backlog/ --- dist/backlog.d.ts | 33 +++++++---- src/backlog.ts | 138 +++++++++++++++++++++++----------------------- 2 files changed, 92 insertions(+), 79 deletions(-) diff --git a/dist/backlog.d.ts b/dist/backlog.d.ts index 2c0adf9..8f89452 100644 --- a/dist/backlog.d.ts +++ b/dist/backlog.d.ts @@ -39,10 +39,10 @@ declare module 'backlog-js' { }); getSpace(): Promise; getSpaceActivities(params: Option.Space.GetActivitiesParams): Promise; + getSpaceIcon(): Promise; getSpaceNotification(): Promise; putSpaceNotification(params: Option.Space.PutSpaceNotificationParams): Promise; getSpaceDiskUsage(): Promise; - getSpaceIcon(): Promise; postSpaceAttachment(form: FormData): Promise; getUsers(): Promise; getUser(userId: number): Promise; @@ -50,13 +50,13 @@ declare module 'backlog-js' { patchUser(userId: number, params: Option.User.PatchUserParams): Promise; deleteUser(userId: number): Promise; getMyself(): Promise; + getUserIcon(userId: number): Promise; getUserActivities(userId: number, params: Option.User.GetUserActivitiesParams): Promise; getUserStars(userId: number, params: Option.User.GetUserStarsParams): Promise; getUserStarsCount(userId: number, params: Option.User.GetUserStarsCountParams): Promise; getRecentlyViewedIssues(params: Option.User.GetRecentlyViewedParams): Promise; getRecentlyViewedProjects(params: Option.User.GetRecentlyViewedParams): Promise; getRecentlyViewedWikis(params: Option.User.GetRecentlyViewedParams): Promise; - getUserIcon(userId: number): Promise; getGroups(params: Option.Group.GetGroupsParams): Promise; postGroups(params: Option.Group.PostGroupsParams): Promise; getGroup(groupId: number): Promise; @@ -65,12 +65,14 @@ declare module 'backlog-js' { getStatuses(): Promise; getResolutions(): Promise; getPriorities(): Promise; - postProject(params: Option.Project.PostProjectParams): Promise; getProjects(params?: Option.Project.GetProjectsParams): Promise; + postProject(params: Option.Project.PostProjectParams): Promise; getProject(projectIdOrKey: string): Promise; patchProject(projectIdOrKey: string, params: Option.Project.PatchProjectParams): Promise; deleteProject(projectIdOrKey: string): Promise; + getProjectIcon(projectIdOrKey: string): Promise; getProjectActivities(projectIdOrKey: string, params: Option.Space.GetActivitiesParams): Promise; + postProjectUser(projectIdOrKey: string|number, userId: string): Promise; getProjectUsers(projectIdOrKey: string): Promise; deleteProjectUsers(projectIdOrKey: string, params: Option.Project.DeleteProjectUsersParams): Promise; postProjectAdministrators(projectIdOrKey: string, params: Option.Project.PostProjectAdministrators): Promise; @@ -96,17 +98,18 @@ declare module 'backlog-js' { patchCustomFieldItem(projectIdOrKey: string, id: number, itemId: number, params: Option.Project.PatchCustomFieldItemParams): Promise; deleteCustomFieldItem(projectIdOrKey: string, id: number, params: Option.Project.PostCustomFieldItemParams): Promise; getSharedFiles(projectIdOrKey: string, path: string, params: Option.Project.GetSharedFilesParams): Promise; + getSharedFile(projectIdOrKey: string, sharedFileId: number): Promise; getProjectsDiskUsage(projectIdOrKey: string): Promise; getWebhooks(projectIdOrKey: string): Promise; postWebhook(projectIdOrKey: string, params: Option.Project.PostWebhookParams): Promise; getWebhook(projectIdOrKey: string, webhookId: string): Promise; patchWebhook(projectIdOrKey: string, webhookId: string, params: Option.Project.PatchWebhookParams): Promise; deleteWebhook(projectIdOrKey: string, webhookId: string): Promise; + getIssues(params?: Option.Issue.GetIssuesParams): Promise; + getIssuesCount(params?: Option.Issue.GetIssuesParams): Promise; postIssue(params: Option.Issue.PostIssueParams): Promise; patchIssue(issueIdOrKey: string, params: Option.Issue.PatchIssueParams): Promise; - getIssues(params?: Option.Issue.GetIssuesParams): Promise; getIssue(issueIdOrKey: string): Promise; - getIssuesCount(params?: Option.Issue.GetIssuesParams): Promise; deleteIssuesCount(issueIdOrKey: string): Promise; getIssueComments(issueIdOrKey: string, params: Option.Issue.GetIssueCommentsParams): Promise; postIssueComments(issueIdOrKey: string, params: Option.Issue.PostIssueCommentsParams): Promise; @@ -116,6 +119,7 @@ declare module 'backlog-js' { getIssueCommentNotifications(issueIdOrKey: string, commentId: number): Promise; postIssueCommentNotifications(issueIdOrKey: string, commentId: number, prams: Option.Issue.IssueCommentNotifications): Promise; getIssueAttachments(issueIdOrKey: string): Promise; + getIssueAttachment(issueIdOrKey: string, attachmentId: number): Promise; deleteIssueAttachment(issueIdOrKey: string, attachmentId: string): Promise; getIssueSharedFiles(issueIdOrKey: string): Promise; linkIssueSharedFiles(issueIdOrKey: string, params: Option.Issue.LinkIssueSharedFilesParams): Promise; @@ -129,6 +133,7 @@ declare module 'backlog-js' { deleteWiki(wikiId: number, mailNotify: boolean): Promise; getWikisAttachments(wikiId: number): Promise; postWikisAttachments(wikiId: number, attachmentId: number[]): Promise; + getWikiAttachment(wikiId: number, attachmentId: number): Promise; deleteWikisAttachments(wikiId: number, attachmentId: number): Promise; getWikisSharedFiles(wikiId: number): Promise; linkWikisSharedFiles(wikiId: number, fileId: number[]): Promise; @@ -152,12 +157,20 @@ declare module 'backlog-js' { getPullRequestCommentsCount(projectIdOrKey: string, repoIdOrName: string, number: number): Promise; patchPullRequestComments(projectIdOrKey: string, repoIdOrName: string, number: number, commentId: number, params: Option.PullRequest.PatchPullRequestCommentsParams): Promise; getPullRequestAttachments(projectIdOrKey: string, repoIdOrName: string, number: number): Promise; - deletePullRequestAttachment(projectIdOrKey: string, repoIdOrName: string, number: number, attachmentId: number): Promise; - getProjectIcon(projectIdOrKey: string): Promise; - getSharedFile(projectIdOrKey: string, sharedFileId: number): Promise; - getIssueAttachment(issueIdOrKey: string, attachmentId: number): Promise; - getWikiAttachment(wikiId: number, attachmentId: number): Promise; getPullRequestAttachment(projectIdOrKey: string, repoIdOrName: string, number: number, attachmentId: number): Promise; + deletePullRequestAttachment(projectIdOrKey: string, repoIdOrName: string, number: number, attachmentId: number): Promise; + getWatchingListItems(userId: number): Promise; + getWatchingListCount(userId: number): Promise; + getWatchingListItem(watchId: number): Promise; + postWatchingListItem(params: any); + patchWatchingListItem(watchId: number, note: string): Promise; + deletehWatchingListItem(watchId: number); + resetWatchingListItemAsRead(watchId: number): Promise; + getProjectGroupList(projectIdOrKey: string|number); + postProjectGroup(projectIdOrKey: string|number, params: any); + deleteProjectGroup(projectIdOrKey: string|number); + getGroupIcon(groupId: string): Promise; + getLicence(): Promise; private download; private upload; private parseFileData; diff --git a/src/backlog.ts b/src/backlog.ts index 46bdac7..f5c1031 100644 --- a/src/backlog.ts +++ b/src/backlog.ts @@ -29,6 +29,13 @@ export default class Backlog extends Request { return this.get('space/activities', params); } + /** + * 3: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-space-logo/ + */ + public getSpaceIcon(): Promise { + return this.download('space/image'); + } + /** * 4: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-space-notification/ */ @@ -52,13 +59,6 @@ export default class Backlog extends Request { return this.get('space/diskUsage'); } - /** - * 3: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-space-logo/ - */ - public getSpaceIcon(): Promise { - return this.download('space/image'); - } - /** * 7: https://developer.nulab-inc.com/ja/docs/backlog/api/2/post-attachment-file/ */ @@ -110,6 +110,13 @@ export default class Backlog extends Request { return this.get('users/myself'); } + /** + * 14: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-user-icon/ + */ + public getUserIcon(userId: number): Promise { + return this.download(`users/${userId}/icon`); + } + /** * 15: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-user-recent-updates/ */ @@ -164,13 +171,6 @@ export default class Backlog extends Request { return this.get('users/myself/recentlyViewedWikis', params); } - /** - * 14: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-user-icon/ - */ - public getUserIcon(userId: number): Promise { - return this.download(`users/${userId}/icon`); - } - /** * 21: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-list-of-groups/ */ @@ -230,17 +230,17 @@ export default class Backlog extends Request { } /** - * 30: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-project/ + * 29: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-list/ */ - public postProject(params: Option.Project.PostProjectParams): Promise { - return this.post('projects', params); + public getProjects(params?: Option.Project.GetProjectsParams): Promise { + return this.get('projects', params); } /** - * 29: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-list/ + * 30: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-project/ */ - public getProjects(params?: Option.Project.GetProjectsParams): Promise { - return this.get('projects', params); + public postProject(params: Option.Project.PostProjectParams): Promise { + return this.post('projects', params); } /** @@ -265,6 +265,12 @@ export default class Backlog extends Request { public deleteProject(projectIdOrKey: string): Promise { return this.delete(`projects/${projectIdOrKey}`); } + /** + * 34: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-icon/ + */ + public getProjectIcon(projectIdOrKey: string): Promise { + return this.download(`projects/${projectIdOrKey}/image`); + } /** * 35: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-recent-updates/ @@ -498,6 +504,13 @@ export default class Backlog extends Request { return this.get(`projects/${projectIdOrKey}/files/metadata/${path}`); } + /** + * 62: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-file/ + */ + public getSharedFile(projectIdOrKey: string, sharedFileId: number): Promise { + return this.download(`projects/${projectIdOrKey}/files/${sharedFileId}`); + } + /** * 63: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-disk-usage/ */ @@ -552,6 +565,20 @@ export default class Backlog extends Request { return this.delete(`projects/${projectIdOrKey}/webhooks/${webhookId}`); } + /** + * 69: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-issue-list/ + */ + public getIssues(params?: Option.Issue.GetIssuesParams): Promise { + return this.get('issues', params); + } + + /** + * 70: https://developer.nulab-inc.com/ja/docs/backlog/api/2/count-issue/ + */ + public getIssuesCount(params?: Option.Issue.GetIssuesParams): Promise { + return this.get('issues/count', params); + } + /** * 71: https://developer.nulab-inc.com/ja/docs/backlog/api/2/add-issue/ */ @@ -568,13 +595,6 @@ export default class Backlog extends Request { return this.patch(`issues/${issueIdOrKey}`, params); } - /** - * 69: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-issue-list/ - */ - public getIssues(params?: Option.Issue.GetIssuesParams): Promise { - return this.get('issues', params); - } - /** * 72: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-issue/ */ @@ -582,12 +602,6 @@ export default class Backlog extends Request { return this.get(`issues/${issueIdOrKey}`); } - /** - * 70: https://developer.nulab-inc.com/ja/docs/backlog/api/2/count-issue/ - */ - public getIssuesCount(params?: Option.Issue.GetIssuesParams): Promise { - return this.get('issues/count', params); - } /** * 74: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-issue/ @@ -662,6 +676,13 @@ export default class Backlog extends Request { return this.get(`issues/${issueIdOrKey}/attachments`); } + /** + * 83: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-issue-attachment/ + */ + public getIssueAttachment(issueIdOrKey: string, attachmentId: number): Promise { + return this.download(`issues/${issueIdOrKey}/attachments/${attachmentId}`); + } + /** * 84: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-issue-attachment/ */ @@ -757,6 +778,13 @@ export default class Backlog extends Request { return this.post(`wikis/${wikiId}/attachments`, { attachmentId }); } + /** + * 97: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-wiki-page-attachment/ + */ + public getWikiAttachment(wikiId: number, attachmentId: number): Promise { + return this.download(`wikis/${wikiId}/attachments/${attachmentId}`); + } + /** * 98: https://developer.nulab-inc.com/ja/docs/backlog/api/2/remove-wiki-attachment/ */ @@ -966,49 +994,21 @@ export default class Backlog extends Request { } /** - * 122: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-pull-request-attachments/ + * 121: https://developer.nulab-inc.com/ja/docs/backlog/api/2/download-pull-request-attachment/ */ - public deletePullRequestAttachment( + public getPullRequestAttachment( projectIdOrKey: string, repoIdOrName: string, number: number, attachmentId: number - ): Promise { - return this.get(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/attachments/${attachmentId}`); - } - - /** - * 34: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-project-icon/ - */ - public getProjectIcon(projectIdOrKey: string): Promise { - return this.download(`projects/${projectIdOrKey}/image`); - } - - /** - * 62: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-file/ - */ - public getSharedFile(projectIdOrKey: string, sharedFileId: number): Promise { - return this.download(`projects/${projectIdOrKey}/files/${sharedFileId}`); - } - - /** - * 83: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-issue-attachment/ - */ - public getIssueAttachment(issueIdOrKey: string, attachmentId: number): Promise { - return this.download(`issues/${issueIdOrKey}/attachments/${attachmentId}`); - } - - /** - * 97: https://developer.nulab-inc.com/ja/docs/backlog/api/2/get-wiki-page-attachment/ - */ - public getWikiAttachment(wikiId: number, attachmentId: number): Promise { - return this.download(`wikis/${wikiId}/attachments/${attachmentId}`); + ): Promise { + return this.download(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/attachments/${attachmentId}`); } /** - * 121: https://developer.nulab-inc.com/ja/docs/backlog/api/2/download-pull-request-attachment/ + * 122: https://developer.nulab-inc.com/ja/docs/backlog/api/2/delete-pull-request-attachments/ */ - public getPullRequestAttachment( + public deletePullRequestAttachment( projectIdOrKey: string, repoIdOrName: string, number: number, attachmentId: number - ): Promise { - return this.download(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/attachments/${attachmentId}`); + ): Promise { + return this.get(`projects/${projectIdOrKey}/git/repositories/${repoIdOrName}/pullRequests/${number}/attachments/${attachmentId}`); } /** From 7c1eac6174bfe2307c83d7fe1cb082670e597cb7 Mon Sep 17 00:00:00 2001 From: netebakari Date: Fri, 31 Aug 2018 18:04:31 +0900 Subject: [PATCH 5/8] fix conflict: transpiled to javascript --- dist/backlog.js | 93 ++++++++++++++++++++++++++++++++------------- dist/backlog.min.js | 2 +- 2 files changed, 67 insertions(+), 28 deletions(-) diff --git a/dist/backlog.js b/dist/backlog.js index bc27b05..a1643b3 100644 --- a/dist/backlog.js +++ b/dist/backlog.js @@ -26,6 +26,9 @@ var Backlog = (function (_super) { Backlog.prototype.getSpaceActivities = function (params) { return this.get('space/activities', params); }; + Backlog.prototype.getSpaceIcon = function () { + return this.download('space/image'); + }; Backlog.prototype.getSpaceNotification = function () { return this.get('space/notification'); }; @@ -35,9 +38,6 @@ var Backlog = (function (_super) { Backlog.prototype.getSpaceDiskUsage = function () { return this.get('space/diskUsage'); }; - Backlog.prototype.getSpaceIcon = function () { - return this.download('space/image'); - }; Backlog.prototype.postSpaceAttachment = function (form) { return this.upload("space/attachment", form); }; @@ -59,6 +59,9 @@ var Backlog = (function (_super) { Backlog.prototype.getMyself = function () { return this.get('users/myself'); }; + Backlog.prototype.getUserIcon = function (userId) { + return this.download("users/" + userId + "/icon"); + }; Backlog.prototype.getUserActivities = function (userId, params) { return this.get("users/" + userId + "/activities", params); }; @@ -77,9 +80,6 @@ var Backlog = (function (_super) { Backlog.prototype.getRecentlyViewedWikis = function (params) { return this.get('users/myself/recentlyViewedWikis', params); }; - Backlog.prototype.getUserIcon = function (userId) { - return this.download("users/" + userId + "/icon"); - }; Backlog.prototype.getGroups = function (params) { return this.get('groups', params); }; @@ -104,12 +104,12 @@ var Backlog = (function (_super) { Backlog.prototype.getPriorities = function () { return this.get('priorities'); }; - Backlog.prototype.postProject = function (params) { - return this.post('projects', params); - }; Backlog.prototype.getProjects = function (params) { return this.get('projects', params); }; + Backlog.prototype.postProject = function (params) { + return this.post('projects', params); + }; Backlog.prototype.getProject = function (projectIdOrKey) { return this.get("projects/" + projectIdOrKey); }; @@ -119,8 +119,14 @@ var Backlog = (function (_super) { Backlog.prototype.deleteProject = function (projectIdOrKey) { return this.delete("projects/" + projectIdOrKey); }; + Backlog.prototype.getProjectIcon = function (projectIdOrKey) { + return this.download("projects/" + projectIdOrKey + "/image"); + }; Backlog.prototype.getProjectActivities = function (projectIdOrKey, params) { - return this.delete("projects/" + projectIdOrKey + "/activities", params); + return this.get("projects/" + projectIdOrKey + "/activities", params); + }; + Backlog.prototype.postProjectUser = function (projectIdOrKey, userId) { + return this.post("projects/" + projectIdOrKey + "/users", { userId: userId }); }; Backlog.prototype.getProjectUsers = function (projectIdOrKey) { return this.get("projects/" + projectIdOrKey + "/users"); @@ -141,7 +147,7 @@ var Backlog = (function (_super) { return this.get("projects/" + projectIdOrKey + "/issueTypes"); }; Backlog.prototype.postIssueType = function (projectIdOrKey, params) { - return this.get("projects/" + projectIdOrKey + "/issueTypes", params); + return this.post("projects/" + projectIdOrKey + "/issueTypes", params); }; Backlog.prototype.patchIssueType = function (projectIdOrKey, id, params) { return this.patch("projects/" + projectIdOrKey + "/issueTypes/" + id, params); @@ -197,6 +203,9 @@ var Backlog = (function (_super) { Backlog.prototype.getSharedFiles = function (projectIdOrKey, path, params) { return this.get("projects/" + projectIdOrKey + "/files/metadata/" + path); }; + Backlog.prototype.getSharedFile = function (projectIdOrKey, sharedFileId) { + return this.download("projects/" + projectIdOrKey + "/files/" + sharedFileId); + }; Backlog.prototype.getProjectsDiskUsage = function (projectIdOrKey) { return this.get("projects/" + projectIdOrKey + "/diskUsage"); }; @@ -215,21 +224,21 @@ var Backlog = (function (_super) { Backlog.prototype.deleteWebhook = function (projectIdOrKey, webhookId) { return this.delete("projects/" + projectIdOrKey + "/webhooks/" + webhookId); }; + Backlog.prototype.getIssues = function (params) { + return this.get('issues', params); + }; + Backlog.prototype.getIssuesCount = function (params) { + return this.get('issues/count', params); + }; Backlog.prototype.postIssue = function (params) { return this.post('issues', params); }; Backlog.prototype.patchIssue = function (issueIdOrKey, params) { return this.patch("issues/" + issueIdOrKey, params); }; - Backlog.prototype.getIssues = function (params) { - return this.get('issues', params); - }; Backlog.prototype.getIssue = function (issueIdOrKey) { return this.get("issues/" + issueIdOrKey); }; - Backlog.prototype.getIssuesCount = function (params) { - return this.get('issues/count', params); - }; Backlog.prototype.deleteIssuesCount = function (issueIdOrKey) { return this.delete("issues/" + issueIdOrKey); }; @@ -257,6 +266,9 @@ var Backlog = (function (_super) { Backlog.prototype.getIssueAttachments = function (issueIdOrKey) { return this.get("issues/" + issueIdOrKey + "/attachments"); }; + Backlog.prototype.getIssueAttachment = function (issueIdOrKey, attachmentId) { + return this.download("issues/" + issueIdOrKey + "/attachments/" + attachmentId); + }; Backlog.prototype.deleteIssueAttachment = function (issueIdOrKey, attachmentId) { return this.delete("issues/" + issueIdOrKey + "/attachments/" + attachmentId); }; @@ -296,6 +308,9 @@ var Backlog = (function (_super) { Backlog.prototype.postWikisAttachments = function (wikiId, attachmentId) { return this.post("wikis/" + wikiId + "/attachments", { attachmentId: attachmentId }); }; + Backlog.prototype.getWikiAttachment = function (wikiId, attachmentId) { + return this.download("wikis/" + wikiId + "/attachments/" + attachmentId); + }; Backlog.prototype.deleteWikisAttachments = function (wikiId, attachmentId) { return this.delete("wikis/" + wikiId + "/attachments/" + attachmentId); }; @@ -365,23 +380,47 @@ var Backlog = (function (_super) { Backlog.prototype.getPullRequestAttachments = function (projectIdOrKey, repoIdOrName, number) { return this.get("projects/" + projectIdOrKey + "/git/repositories/" + repoIdOrName + "/pullRequests/" + number + "/attachments"); }; + Backlog.prototype.getPullRequestAttachment = function (projectIdOrKey, repoIdOrName, number, attachmentId) { + return this.download("projects/" + projectIdOrKey + "/git/repositories/" + repoIdOrName + "/pullRequests/" + number + "/attachments/" + attachmentId); + }; Backlog.prototype.deletePullRequestAttachment = function (projectIdOrKey, repoIdOrName, number, attachmentId) { return this.get("projects/" + projectIdOrKey + "/git/repositories/" + repoIdOrName + "/pullRequests/" + number + "/attachments/" + attachmentId); }; - Backlog.prototype.getProjectIcon = function (projectIdOrKey) { - return this.download("projects/" + projectIdOrKey + "/image"); + Backlog.prototype.getWatchingListItems = function (userId) { + return this.get("users/" + userId + "/watchings"); }; - Backlog.prototype.getSharedFile = function (projectIdOrKey, sharedFileId) { - return this.download("projects/" + projectIdOrKey + "/files/" + sharedFileId); + Backlog.prototype.getWatchingListCount = function (userId) { + return this.get("users/" + userId + "/watchings/count"); }; - Backlog.prototype.getIssueAttachment = function (issueIdOrKey, attachmentId) { - return this.download("issues/" + issueIdOrKey + "/attachments/" + attachmentId); + Backlog.prototype.getWatchingListItem = function (watchId) { + return this.get("watchings/" + watchId); }; - Backlog.prototype.getWikiAttachment = function (wikiId, attachmentId) { - return this.download("wikis/" + wikiId + "/attachments/" + attachmentId); + Backlog.prototype.postWatchingListItem = function (params) { + return this.post("watchings", params); }; - Backlog.prototype.getPullRequestAttachment = function (projectIdOrKey, repoIdOrName, number, attachmentId) { - return this.download("projects/" + projectIdOrKey + "/git/repositories/" + repoIdOrName + "/pullRequests/" + number + "/attachments/" + attachmentId); + Backlog.prototype.patchWatchingListItem = function (watchId, note) { + return this.patch("watchings/" + watchId, { note: note }); + }; + Backlog.prototype.deletehWatchingListItem = function (watchId) { + return this.delete("watchings/" + watchId); + }; + Backlog.prototype.resetWatchingListItemAsRead = function (watchId) { + return this.post("watchings/" + watchId + "/markAsRead"); + }; + Backlog.prototype.getProjectGroupList = function (projectIdOrKey) { + return this.get("projects/" + projectIdOrKey + "/groups"); + }; + Backlog.prototype.postProjectGroup = function (projectIdOrKey, params) { + return this.post("projects/" + projectIdOrKey + "/groups", params); + }; + Backlog.prototype.deleteProjectGroup = function (projectIdOrKey) { + return this.delete("projects/" + projectIdOrKey + "/groups"); + }; + Backlog.prototype.getGroupIcon = function (groupId) { + return this.download("groups/" + groupId + "/icon"); + }; + Backlog.prototype.getLicence = function () { + return this.get("space/licence"); }; Backlog.prototype.download = function (path) { return this.request({ method: 'GET', path: path }).then(this.parseFileData); diff --git a/dist/backlog.min.js b/dist/backlog.min.js index f0570cf..8b0fea2 100644 --- a/dist/backlog.min.js +++ b/dist/backlog.min.js @@ -1 +1 @@ -(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.Backlog=f()}})(function(){var define,module,exports;return function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i0}).join("&")};OAuth2.prototype.getAccessToken=function(options){return new request_1.default({host:options.host,timeout:this.timeout}).post("oauth2/token",{grant_type:"authorization_code",code:options.code,client_id:this.credentials.clientId,client_secret:this.credentials.clientSecret,redirect_uri:options.redirectUri})};OAuth2.prototype.refreshAccessToken=function(options){return new request_1.default({host:options.host,timeout:this.timeout}).post("oauth2/token",{grant_type:"refresh_token",client_id:this.credentials.clientId,client_secret:this.credentials.clientSecret,refresh_token:options.refreshToken})};return OAuth2}();exports.default=OAuth2},{"./request":7}],6:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var ActivityType;(function(ActivityType){ActivityType[ActivityType["Undefined"]=-1]="Undefined";ActivityType[ActivityType["IssueCreated"]=1]="IssueCreated";ActivityType[ActivityType["IssueUpdated"]=2]="IssueUpdated";ActivityType[ActivityType["IssueCommented"]=3]="IssueCommented";ActivityType[ActivityType["IssueDeleted"]=4]="IssueDeleted";ActivityType[ActivityType["WikiCreated"]=5]="WikiCreated";ActivityType[ActivityType["WikiUpdated"]=6]="WikiUpdated";ActivityType[ActivityType["WikiDeleted"]=7]="WikiDeleted";ActivityType[ActivityType["FileAdded"]=8]="FileAdded";ActivityType[ActivityType["FileUpdated"]=9]="FileUpdated";ActivityType[ActivityType["FileDeleted"]=10]="FileDeleted";ActivityType[ActivityType["SvnCommitted"]=11]="SvnCommitted";ActivityType[ActivityType["GitPushed"]=12]="GitPushed";ActivityType[ActivityType["GitRepositoryCreated"]=13]="GitRepositoryCreated";ActivityType[ActivityType["IssueMultiUpdated"]=14]="IssueMultiUpdated";ActivityType[ActivityType["ProjectUserAdded"]=15]="ProjectUserAdded";ActivityType[ActivityType["ProjectUserRemoved"]=16]="ProjectUserRemoved";ActivityType[ActivityType["NotifyAdded"]=17]="NotifyAdded";ActivityType[ActivityType["PullRequestAdded"]=18]="PullRequestAdded";ActivityType[ActivityType["PullRequestUpdated"]=19]="PullRequestUpdated";ActivityType[ActivityType["PullRequestCommented"]=20]="PullRequestCommented";ActivityType[ActivityType["PullRequestMerged"]=21]="PullRequestMerged"})(ActivityType=exports.ActivityType||(exports.ActivityType={}));var User;(function(User){var RoleType;(function(RoleType){RoleType[RoleType["Admin"]=1]="Admin";RoleType[RoleType["User"]=2]="User";RoleType[RoleType["Reporter"]=3]="Reporter";RoleType[RoleType["Viewer"]=4]="Viewer";RoleType[RoleType["GuestReporter"]=5]="GuestReporter";RoleType[RoleType["GuestViewer"]=6]="GuestViewer"})(RoleType=User.RoleType||(User.RoleType={}))})(User=exports.User||(exports.User={}));var Project;(function(Project){var FieldType;(function(FieldType){FieldType[FieldType["Text"]=1]="Text";FieldType[FieldType["TextArea"]=2]="TextArea";FieldType[FieldType["Numeric"]=3]="Numeric";FieldType[FieldType["Date"]=4]="Date";FieldType[FieldType["SingleList"]=5]="SingleList";FieldType[FieldType["MultipleList"]=6]="MultipleList";FieldType[FieldType["CheckBox"]=7]="CheckBox";FieldType[FieldType["Radio"]=8]="Radio"})(FieldType=Project.FieldType||(Project.FieldType={}))})(Project=exports.Project||(exports.Project={}));var Issue;(function(Issue){var ParentChildType;(function(ParentChildType){ParentChildType[ParentChildType["All"]=0]="All";ParentChildType[ParentChildType["NotChild"]=1]="NotChild";ParentChildType[ParentChildType["Child"]=2]="Child";ParentChildType[ParentChildType["NotChildNotParent"]=3]="NotChildNotParent";ParentChildType[ParentChildType["Parent"]=4]="Parent"})(ParentChildType=Issue.ParentChildType||(Issue.ParentChildType={}))})(Issue=exports.Issue||(exports.Issue={}))},{}],7:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var Error=require("./error");var Request=function(){function Request(configure){this.configure=configure}Request.prototype.get=function(path,params){return this.request({method:"GET",path:path,params:params}).then(this.parseJSON)};Request.prototype.post=function(path,params){return this.request({method:"POST",path:path,params:params}).then(this.parseJSON)};Request.prototype.put=function(path,params){return this.request({method:"PUT",path:path,params:params}).then(this.parseJSON)};Request.prototype.patch=function(path,params){return this.request({method:"PATCH",path:path,params:params}).then(this.parseJSON)};Request.prototype.delete=function(path,params){return this.request({method:"DELETE",path:path,params:params}).then(this.parseJSON)};Request.prototype.request=function(options){var method=options.method,path=options.path,_a=options.params,params=_a===void 0?{}:_a;var _b=this.configure,apiKey=_b.apiKey,accessToken=_b.accessToken,timeout=_b.timeout;var query=apiKey?{apiKey:apiKey}:{};var init={method:method,headers:{}};if(timeout){init["timeout"]=timeout}if(!apiKey&&accessToken){init.headers["Authorization"]="Bearer "+accessToken}if(typeof window!=="undefined"){init.mode="cors"}if(method!=="GET"){if(params instanceof FormData){init.body=params}else{init.headers["Content-type"]="application/x-www-form-urlencoded";init.body=this.toQueryString(params)}}else{Object.keys(params).forEach(function(key){return query[key]=params[key]})}var qs=this.toQueryString(query);var url=this.restBaseURL+"/"+path+(qs.length>0?"?"+qs:"");return fetch(url,init).then(this.checkStatus)};Request.prototype.checkStatus=function(response){return new Promise(function(resolve,reject){if(200<=response.status&&response.status<300){resolve(response)}else{response.json().then(function(data){if(response.status===401){reject(new Error.BacklogAuthError(response,data))}else{reject(new Error.BacklogApiError(response,data))}}).catch(function(err){return reject(new Error.UnexpectedError(response))})}})};Request.prototype.parseJSON=function(response){return response.json()};Request.prototype.toQueryString=function(params){return Object.keys(params).reduce(function(result,key){var value=params[key];if(!value){return result}if(Array.isArray(value)){value.forEach(function(v){return result.push(key+"[]="+v)})}else{result.push(key+"="+value)}return result},[]).join("&")};Object.defineProperty(Request.prototype,"webAppBaseURL",{get:function(){return"https://"+this.configure.host},enumerable:true,configurable:true});Object.defineProperty(Request.prototype,"restBaseURL",{get:function(){return this.webAppBaseURL+"/api/v2"},enumerable:true,configurable:true});return Request}();exports.default=Request},{"./error":3}]},{},[4])(4)}); \ No newline at end of file +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.Backlog=f()}})(function(){var define,module,exports;return function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i0}).join("&")};OAuth2.prototype.getAccessToken=function(options){return new request_1.default({host:options.host,timeout:this.timeout}).post("oauth2/token",{grant_type:"authorization_code",code:options.code,client_id:this.credentials.clientId,client_secret:this.credentials.clientSecret,redirect_uri:options.redirectUri})};OAuth2.prototype.refreshAccessToken=function(options){return new request_1.default({host:options.host,timeout:this.timeout}).post("oauth2/token",{grant_type:"refresh_token",client_id:this.credentials.clientId,client_secret:this.credentials.clientSecret,refresh_token:options.refreshToken})};return OAuth2}();exports.default=OAuth2},{"./request":7}],6:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var ActivityType;(function(ActivityType){ActivityType[ActivityType["Undefined"]=-1]="Undefined";ActivityType[ActivityType["IssueCreated"]=1]="IssueCreated";ActivityType[ActivityType["IssueUpdated"]=2]="IssueUpdated";ActivityType[ActivityType["IssueCommented"]=3]="IssueCommented";ActivityType[ActivityType["IssueDeleted"]=4]="IssueDeleted";ActivityType[ActivityType["WikiCreated"]=5]="WikiCreated";ActivityType[ActivityType["WikiUpdated"]=6]="WikiUpdated";ActivityType[ActivityType["WikiDeleted"]=7]="WikiDeleted";ActivityType[ActivityType["FileAdded"]=8]="FileAdded";ActivityType[ActivityType["FileUpdated"]=9]="FileUpdated";ActivityType[ActivityType["FileDeleted"]=10]="FileDeleted";ActivityType[ActivityType["SvnCommitted"]=11]="SvnCommitted";ActivityType[ActivityType["GitPushed"]=12]="GitPushed";ActivityType[ActivityType["GitRepositoryCreated"]=13]="GitRepositoryCreated";ActivityType[ActivityType["IssueMultiUpdated"]=14]="IssueMultiUpdated";ActivityType[ActivityType["ProjectUserAdded"]=15]="ProjectUserAdded";ActivityType[ActivityType["ProjectUserRemoved"]=16]="ProjectUserRemoved";ActivityType[ActivityType["NotifyAdded"]=17]="NotifyAdded";ActivityType[ActivityType["PullRequestAdded"]=18]="PullRequestAdded";ActivityType[ActivityType["PullRequestUpdated"]=19]="PullRequestUpdated";ActivityType[ActivityType["PullRequestCommented"]=20]="PullRequestCommented";ActivityType[ActivityType["PullRequestMerged"]=21]="PullRequestMerged"})(ActivityType=exports.ActivityType||(exports.ActivityType={}));var User;(function(User){var RoleType;(function(RoleType){RoleType[RoleType["Admin"]=1]="Admin";RoleType[RoleType["User"]=2]="User";RoleType[RoleType["Reporter"]=3]="Reporter";RoleType[RoleType["Viewer"]=4]="Viewer";RoleType[RoleType["GuestReporter"]=5]="GuestReporter";RoleType[RoleType["GuestViewer"]=6]="GuestViewer"})(RoleType=User.RoleType||(User.RoleType={}))})(User=exports.User||(exports.User={}));var Project;(function(Project){var FieldType;(function(FieldType){FieldType[FieldType["Text"]=1]="Text";FieldType[FieldType["TextArea"]=2]="TextArea";FieldType[FieldType["Numeric"]=3]="Numeric";FieldType[FieldType["Date"]=4]="Date";FieldType[FieldType["SingleList"]=5]="SingleList";FieldType[FieldType["MultipleList"]=6]="MultipleList";FieldType[FieldType["CheckBox"]=7]="CheckBox";FieldType[FieldType["Radio"]=8]="Radio"})(FieldType=Project.FieldType||(Project.FieldType={}))})(Project=exports.Project||(exports.Project={}));var Issue;(function(Issue){var ParentChildType;(function(ParentChildType){ParentChildType[ParentChildType["All"]=0]="All";ParentChildType[ParentChildType["NotChild"]=1]="NotChild";ParentChildType[ParentChildType["Child"]=2]="Child";ParentChildType[ParentChildType["NotChildNotParent"]=3]="NotChildNotParent";ParentChildType[ParentChildType["Parent"]=4]="Parent"})(ParentChildType=Issue.ParentChildType||(Issue.ParentChildType={}))})(Issue=exports.Issue||(exports.Issue={}))},{}],7:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var Error=require("./error");var Request=function(){function Request(configure){this.configure=configure}Request.prototype.get=function(path,params){return this.request({method:"GET",path:path,params:params}).then(this.parseJSON)};Request.prototype.post=function(path,params){return this.request({method:"POST",path:path,params:params}).then(this.parseJSON)};Request.prototype.put=function(path,params){return this.request({method:"PUT",path:path,params:params}).then(this.parseJSON)};Request.prototype.patch=function(path,params){return this.request({method:"PATCH",path:path,params:params}).then(this.parseJSON)};Request.prototype.delete=function(path,params){return this.request({method:"DELETE",path:path,params:params}).then(this.parseJSON)};Request.prototype.request=function(options){var method=options.method,path=options.path,_a=options.params,params=_a===void 0?{}:_a;var _b=this.configure,apiKey=_b.apiKey,accessToken=_b.accessToken,timeout=_b.timeout;var query=apiKey?{apiKey:apiKey}:{};var init={method:method,headers:{}};if(timeout){init["timeout"]=timeout}if(!apiKey&&accessToken){init.headers["Authorization"]="Bearer "+accessToken}if(typeof window!=="undefined"){init.mode="cors"}if(method!=="GET"){if(params instanceof FormData){init.body=params}else{init.headers["Content-type"]="application/x-www-form-urlencoded";init.body=this.toQueryString(params)}}else{Object.keys(params).forEach(function(key){return query[key]=params[key]})}var qs=this.toQueryString(query);var url=this.restBaseURL+"/"+path+(qs.length>0?"?"+qs:"");return fetch(url,init).then(this.checkStatus)};Request.prototype.checkStatus=function(response){return new Promise(function(resolve,reject){if(200<=response.status&&response.status<300){resolve(response)}else{response.json().then(function(data){if(response.status===401){reject(new Error.BacklogAuthError(response,data))}else{reject(new Error.BacklogApiError(response,data))}}).catch(function(err){return reject(new Error.UnexpectedError(response))})}})};Request.prototype.parseJSON=function(response){return response.json()};Request.prototype.toQueryString=function(params){return Object.keys(params).reduce(function(result,key){var value=params[key];if(!value){return result}if(Array.isArray(value)){value.forEach(function(v){return result.push(key+"[]="+v)})}else{result.push(key+"="+value)}return result},[]).join("&")};Object.defineProperty(Request.prototype,"webAppBaseURL",{get:function(){return"https://"+this.configure.host},enumerable:true,configurable:true});Object.defineProperty(Request.prototype,"restBaseURL",{get:function(){return this.webAppBaseURL+"/api/v2"},enumerable:true,configurable:true});return Request}();exports.default=Request},{"./error":3}]},{},[4])(4)}); \ No newline at end of file From 03d3302b4b7ce50c62f6c4426b3d4f24a453d4d7 Mon Sep 17 00:00:00 2001 From: Makoto Motohashi Date: Sun, 13 Sep 2020 15:24:45 +0900 Subject: [PATCH 6/8] remove unused IResponse --- src/backlog.ts | 3 --- src/error.ts | 2 -- src/request.ts | 2 -- 3 files changed, 7 deletions(-) diff --git a/src/backlog.ts b/src/backlog.ts index f5c1031..5aebf96 100644 --- a/src/backlog.ts +++ b/src/backlog.ts @@ -1,10 +1,7 @@ import * as Option from './option'; import * as Entity from './entity'; -import * as Error from './error'; import Request from './request'; -declare interface IResponse { [name:string]: any; } - export default class Backlog extends Request { constructor(configure: { diff --git a/src/error.ts b/src/error.ts index 0096cfb..6e08372 100644 --- a/src/error.ts +++ b/src/error.ts @@ -1,5 +1,3 @@ -declare interface IResponse { [name:string]: any; } - export class BacklogError extends global.Error { private _name: BacklogErrorNameType; private _url: string; diff --git a/src/request.ts b/src/request.ts index 451a560..8f69db5 100644 --- a/src/request.ts +++ b/src/request.ts @@ -1,7 +1,5 @@ import * as Error from './error'; -declare interface IResponse { [name:string]: any; } - export default class Request { constructor(private configure: { From a4ea7a453810851f729e27aa4816a4d4a7d04ba3 Mon Sep 17 00:00:00 2001 From: Makoto Motohashi Date: Sun, 13 Sep 2020 15:34:02 +0900 Subject: [PATCH 7/8] remove unused typings --- README.md | 5 ----- typings.json | 12 ------------ 2 files changed, 17 deletions(-) delete mode 100644 typings.json diff --git a/README.md b/README.md index ff92615..ad5b443 100644 --- a/README.md +++ b/README.md @@ -10,11 +10,6 @@ npm: $ npm install --save backlog-js ``` -Typings: -``` -$ typings install dt~backlog-js --save --global -``` - ## Getting started Append your "API Key" or "OAuth2 Access Token" to requests to the API to return data. diff --git a/typings.json b/typings.json deleted file mode 100644 index c9b86c0..0000000 --- a/typings.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "globalDependencies": { - "dotenv": "registry:dt/dotenv#2.0.0+20160327131627", - "empower": "registry:dt/empower#0.0.0+20160317120654", - "mocha": "registry:dt/mocha#2.2.5+20160317120654", - "nock": "registry:dt/nock#0.54.0+20160613160405", - "node": "registry:dt/node#6.0.0+20160613154055", - "power-assert": "registry:dt/power-assert#0.0.0+20160316155526", - "power-assert-formatter": "registry:dt/power-assert-formatter#0.0.0+20160317120654", - "qs": "registry:dt/qs#6.2.0+20160707010053" - } -} From f40e89a1a06e33b197c7f0c705f5aeda70fbf3f9 Mon Sep 17 00:00:00 2001 From: Makoto Motohashi Date: Sun, 4 Oct 2020 20:25:42 +0900 Subject: [PATCH 8/8] remove typings from .travis.yml --- .travis.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 88748af..12f9198 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,9 +2,6 @@ sudo: false language: node_js node_js: - node -before_install: - - npm install -g typings install: - - npm install - - typings install + - npm ci script: npm run build && npm test