diff --git a/CHANGELOG.md b/CHANGELOG.md index eb7b96e..a339545 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # changelog +## 8.0.0 - 30 July 2019 + +* EventStream returned by getEventStream handles errors better [PR #99](https://github.com/particle-iot/particle-api-js/pull/99). + **Breaking changes for EventStream:** + - Only emits a single event named 'event' for each Particle event received instead of 2 events, one named 'event' and another named after the Particle event name. This behavior caused EventStream to disconnects if a Particle event named 'error' was published. + - Does not emit the 'error' event when a network error happens. Instead it emits 'disconnect' and automatically reconnects. + ## 7.4.1 - 6 May 2019 * Do not require network ID to remove a device from its network [PR #103](https://github.com/particle-iot/particle-api-js/pull/103) diff --git a/dist/particle.min.js b/dist/particle.min.js index ddda170..1c2811d 100644 --- a/dist/particle.min.js +++ b/dist/particle.min.js @@ -1,404 +1,398 @@ (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.Particle = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o0&&void 0!==arguments[0]?arguments[0]:{};return this.api.listLibraries((0,_assign2.default)({},t,{auth:this.auth})).then(function(t){return(t.body.data||[]).map(function(t){return new _Library2.default(e,t)})})}},{key:"library",value:function(e){var t=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.api.getLibrary((0,_assign2.default)({},r,{name:e,auth:this.auth})).then(function(e){var r=e.body.data||{};return new _Library2.default(t,r)})}},{key:"libraryVersions",value:function(e){var t=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.api.getLibraryVersions((0,_assign2.default)({},r,{name:e,auth:this.auth})).then(function(e){return(e.body.data||[]).map(function(e){return new _Library2.default(t,e)})})}},{key:"contributeLibrary",value:function(e){var t=this;return this.api.contributeLibrary({archive:e,auth:this.auth}).then(function(e){var r=e.body.data||{};return new _Library2.default(t,r)},function(e){t._throwError(e)})}},{key:"publishLibrary",value:function(e){var t=this;return this.api.publishLibrary({name:e,auth:this.auth}).then(function(e){var r=e.body.data||{};return new _Library2.default(t,r)},function(e){t._throwError(e)})}},{key:"deleteLibrary",value:function(e){var t=this,r=e.name,a=(e.version,e.force);return this.api.deleteLibrary({name:r,force:a,auth:this.auth}).then(function(e){return!0},function(e){t._throwError(e)})}},{key:"_throwError",value:function(e){if(e.body&&e.body.errors){var t=e.body.errors.map(function(e){return e.message}).join("\n");throw new Error(t)}throw e}},{key:"downloadFile",value:function(e){return this.api.downloadFile({url:e})}},{key:"compileCode",value:function(e,t,r){return this.api.compileCode({files:e,platformId:t,targetVersion:r,auth:this.auth})}},{key:"signalDevice",value:function(e){var t=e.signal,r=e.deviceId;return this.api.signalDevice({signal:t,deviceId:r,auth:this.auth})}},{key:"listDevices",value:function(){return this.api.listDevices({auth:this.auth})}},{key:"listBuildTargets",value:function(){return this.api.listBuildTargets({onlyFeatured:!0,auth:this.auth}).then(function(e){var t=[],r=!0,a=!1,i=void 0;try{for(var n,u=(0,_getIterator3.default)(e.body.targets);!(r=(n=u.next()).done);r=!0){var l=n.value,o=!0,s=!1,h=void 0;try{for(var c,f=(0,_getIterator3.default)(l.platforms);!(o=(c=f.next()).done);o=!0){var d=c.value;t.push({version:l.version,platform:d,prerelease:l.prereleases.indexOf(d)>-1,firmware_vendor:l.firmware_vendor})}}catch(e){s=!0,h=e}finally{try{!o&&f.return&&f.return()}finally{if(s)throw h}}}}catch(e){a=!0,i=e}finally{try{!r&&u.return&&u.return()}finally{if(a)throw i}}return t},function(e){})}},{key:"trackingIdentity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.full,r=void 0!==t&&t,a=e.context;return this.api.trackingIdentity({full:r,context:a,auth:this.auth}).then(function(e){return e.body})}}]),e}();exports.default=Client,module.exports=exports.default; -},{"./Library":5,"./Particle":6,"babel-runtime/core-js/get-iterator":8,"babel-runtime/core-js/object/assign":11,"babel-runtime/helpers/classCallCheck":21,"babel-runtime/helpers/createClass":22}],3:[function(require,module,exports){ +},{"./Library":5,"./Particle":6,"babel-runtime/core-js/get-iterator":8,"babel-runtime/core-js/object/assign":10,"babel-runtime/helpers/classCallCheck":20,"babel-runtime/helpers/createClass":21}],3:[function(require,module,exports){ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default={baseUrl:"https://api.particle.io",clientSecret:"particle-api",clientId:"particle-api",tokenDuration:7776e3},module.exports=exports.default; },{}],4:[function(require,module,exports){ -"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var _isNan=require("babel-runtime/core-js/number/is-nan"),_isNan2=_interopRequireDefault(_isNan),_promise=require("babel-runtime/core-js/promise"),_promise2=_interopRequireDefault(_promise),_assign=require("babel-runtime/core-js/object/assign"),_assign2=_interopRequireDefault(_assign),_getPrototypeOf=require("babel-runtime/core-js/object/get-prototype-of"),_getPrototypeOf2=_interopRequireDefault(_getPrototypeOf),_classCallCheck2=require("babel-runtime/helpers/classCallCheck"),_classCallCheck3=_interopRequireDefault(_classCallCheck2),_createClass2=require("babel-runtime/helpers/createClass"),_createClass3=_interopRequireDefault(_createClass2),_possibleConstructorReturn2=require("babel-runtime/helpers/possibleConstructorReturn"),_possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2),_inherits2=require("babel-runtime/helpers/inherits"),_inherits3=_interopRequireDefault(_inherits2),_http=require("http"),_http2=_interopRequireDefault(_http),_https=require("https"),_https2=_interopRequireDefault(_https),_url=require("url"),_url2=_interopRequireDefault(_url),_events=require("events"),EventStream=function(e){function t(e,r,i){(0,_classCallCheck3.default)(this,t);var s=(0,_possibleConstructorReturn3.default)(this,(t.__proto__||(0,_getPrototypeOf2.default)(t)).call(this));return s.uri=e,s.token=r,s.reconnectInterval=2e3,(0,_assign2.default)(s,i),s}return(0,_inherits3.default)(t,e),(0,_createClass3.default)(t,[{key:"connect",value:function(){var e=this;return new _promise2.default(function(t,r){var i=_url2.default.parse(e.uri),s=i.hostname,n=i.protocol,a=i.port,o=i.path;e.origin=n+"//"+s+(a?":"+a:"");var u="https:"===n,l=u?_https2.default:_http2.default,h=l.request({hostname:s,protocol:n,path:o+"?history_limit=30&access_token="+e.token,method:"get",port:a||(u?443:80),avoidFetch:!0,mode:"prefer-streaming"});e.req=h,e.debug&&e.debug(e),h.on("error",function(t){r({error:t,errorDescription:"Network error from "+e.uri})}),h.on("response",function(i){var s=i.statusCode;if(200!==s){var n="";return i.on("data",function(e){return n+=e}),void i.on("end",function(){try{n=JSON.parse(n)}catch(e){}finally{try{e.emit("response",{statusCode:s,body:n})}catch(t){e.emit("error",t)}var t="HTTP error "+s+" from "+e.uri;n&&n.error_description&&(t+=" - "+n.error_description),r({statusCode:s,errorDescription:t,body:n}),e.req=void 0}})}e.data="",e.buf="",i.on("data",e.parse.bind(e)),i.once("end",e.end.bind(e)),t(e)}),h.end()})}},{key:"abort",value:function(){this.req&&(this.req.abort(),this.req=void 0),this.removeAllListeners()}},{key:"end",value:function(){var e=this;this.req&&(this.req=void 0,setTimeout(function(){e.connect().catch(function(t){e.emit("error",t),e.removeAllListeners()})},this.reconnectInterval))}},{key:"parse",value:function(e){this.buf+=e;for(var t=0,r=this.buf.length,i=!1;t0&&(this.buf=this.buf.slice(t))}},{key:"parseEventStreamLine",value:function(e,t,r){if(0===r)try{if(this.data.length>0&&this.event){var i=JSON.parse(this.data);i.name=this.eventName||"";try{-1===["event","error","response"].indexOf(this.eventName)&&this.emit(this.eventName,i),this.emit("event",i)}catch(e){this.emit("error",e)}}}catch(e){}finally{this.data="",this.eventName=void 0,this.event=!1}else if(t>0){var s=this.buf.slice(e,e+t),n=0;n=" "!==this.buf[e+t+1]?t+1:t+2,e+=n;var a=r-n,o=this.buf.slice(e,e+a);if("data"===s)this.data+=o+"\n";else if("event"===s)this.eventName=o,this.event=!0;else if("id"===s)this.lastEventId=o;else if("retry"===s){var u=parseInt(o,10);(0,_isNan2.default)(u)||(this.reconnectInterval=u)}}}}]),t}(_events.EventEmitter);exports.default=EventStream,module.exports=exports.default; -},{"babel-runtime/core-js/number/is-nan":10,"babel-runtime/core-js/object/assign":11,"babel-runtime/core-js/object/get-prototype-of":15,"babel-runtime/core-js/promise":18,"babel-runtime/helpers/classCallCheck":21,"babel-runtime/helpers/createClass":22,"babel-runtime/helpers/inherits":23,"babel-runtime/helpers/possibleConstructorReturn":24,"events":141,"http":167,"https":167,"url":180}],5:[function(require,module,exports){ +"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var _promise=require("babel-runtime/core-js/promise"),_promise2=_interopRequireDefault(_promise),_getPrototypeOf=require("babel-runtime/core-js/object/get-prototype-of"),_getPrototypeOf2=_interopRequireDefault(_getPrototypeOf),_classCallCheck2=require("babel-runtime/helpers/classCallCheck"),_classCallCheck3=_interopRequireDefault(_classCallCheck2),_createClass2=require("babel-runtime/helpers/createClass"),_createClass3=_interopRequireDefault(_createClass2),_possibleConstructorReturn2=require("babel-runtime/helpers/possibleConstructorReturn"),_possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2),_inherits2=require("babel-runtime/helpers/inherits"),_inherits3=_interopRequireDefault(_inherits2),_http=require("http"),_http2=_interopRequireDefault(_http),_https=require("https"),_https2=_interopRequireDefault(_https),_url=require("url"),_url2=_interopRequireDefault(_url),_events=require("events"),EventStream=function(e){function t(e,r){(0,_classCallCheck3.default)(this,t);var i=(0,_possibleConstructorReturn3.default)(this,(t.__proto__||(0,_getPrototypeOf2.default)(t)).call(this));return i.uri=e,i.token=r,i.reconnectInterval=2e3,i.timeout=13e3,i.data="",i.buf="",i.parse=i.parse.bind(i),i.end=i.end.bind(i),i.idleTimeoutExpired=i.idleTimeoutExpired.bind(i),i}return(0,_inherits3.default)(t,e),(0,_createClass3.default)(t,[{key:"connect",value:function(){var e=this;return new _promise2.default(function(t,r){var i=_url2.default.parse(e.uri),n=i.hostname,o=i.protocol,s=i.port,u=i.path;e.origin=o+"//"+n+(s?":"+s:"");var a="https:"===o,l=a?_https2.default:_http2.default,c=l.request({hostname:n,protocol:o,path:u+"?access_token="+e.token,method:"get",port:parseInt(s,10)||(a?443:80),avoidFetch:!0,mode:"prefer-streaming"});e.req=c;var f=!1,h=setTimeout(function(){e.req&&e.req.abort(),r({error:new Error("Timeout"),errorDescription:"Timeout connecting to "+e.uri})},e.timeout);c.on("error",function(t){clearTimeout(h),f?e.end():r({error:t,errorDescription:"Network error from "+e.uri})}),c.on("response",function(i){clearTimeout(h);var n=i.statusCode;if(200!==n){var o="";return i.on("data",function(e){return o+=e}),void i.on("end",function(){try{o=JSON.parse(o)}catch(e){}finally{var t="HTTP error "+n+" from "+e.uri;o&&o.error_description&&(t+=" - "+o.error_description),r({statusCode:n,errorDescription:t,body:o}),e.req=void 0}})}e.data="",e.buf="",f=!0,i.on("data",e.parse),i.once("end",e.end),e.startIdleTimeout(),t(e)}),c.end()})}},{key:"abort",value:function(){this.req&&(this.req.abort(),this.req=void 0),this.removeAllListeners()}},{key:"emitSafe",value:function(e,t){try{this.emit(e,t)}catch(t){"error"!==e&&this.emitSafe("error",t)}}},{key:"end",value:function(){this.stopIdleTimeout(),this.req&&(this.req=void 0,this.emitSafe("disconnect"),this.reconnect())}},{key:"reconnect",value:function(){var e=this;setTimeout(function(){if(e.isOffline())return void e.reconnect();e.emitSafe("reconnect"),e.connect().then(function(){e.emitSafe("reconnect-success")}).catch(function(t){e.emitSafe("reconnect-error",t),e.reconnect()})},this.reconnectInterval)}},{key:"isOffline",value:function(){return"undefined"!=typeof navigator&&!navigator.hasOwnProperty("onLine")&&!navigator.onLine}},{key:"startIdleTimeout",value:function(){this.stopIdleTimeout(),this.idleTimeout=setTimeout(this.idleTimeoutExpired,this.timeout)}},{key:"stopIdleTimeout",value:function(){this.idleTimeout&&(clearTimeout(this.idleTimeout),this.idleTimeout=null)}},{key:"idleTimeoutExpired",value:function(){this.req&&(this.req.abort(),this.end())}},{key:"parse",value:function(e){this.startIdleTimeout(),this.buf+=e;for(var t=0,r=this.buf.length,i=!1;t0&&(this.buf=this.buf.slice(t))}},{key:"parseEventStreamLine",value:function(e,t,r){if(0===r)try{if(this.data.length>0&&this.event){var i=JSON.parse(this.data);i.name=this.eventName||"",this.emitSafe("event",i)}}catch(e){}finally{this.data="",this.eventName=void 0,this.event=!1}else if(t>0){var n=this.buf.slice(e,e+t),o=0;o=" "!==this.buf[e+t+1]?t+1:t+2,e+=o;var s=r-o,u=this.buf.slice(e,e+s);"data"===n?this.data+=u+"\n":"event"===n&&(this.eventName=u,this.event=!0)}}}]),t}(_events.EventEmitter);exports.default=EventStream,module.exports=exports.default; +},{"babel-runtime/core-js/object/get-prototype-of":14,"babel-runtime/core-js/promise":17,"babel-runtime/helpers/classCallCheck":20,"babel-runtime/helpers/createClass":21,"babel-runtime/helpers/inherits":22,"babel-runtime/helpers/possibleConstructorReturn":23,"events":138,"http":164,"https":164,"url":177}],5:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var _promise=require("babel-runtime/core-js/promise"),_promise2=_interopRequireDefault(_promise),_assign=require("babel-runtime/core-js/object/assign"),_assign2=_interopRequireDefault(_assign),_classCallCheck2=require("babel-runtime/helpers/classCallCheck"),_classCallCheck3=_interopRequireDefault(_classCallCheck2),_createClass2=require("babel-runtime/helpers/createClass"),_createClass3=_interopRequireDefault(_createClass2),Library=function(){function e(r,t){(0,_classCallCheck3.default)(this,e),Object.defineProperty(this,"client",{value:r}),this._assignAttributes(t),this.downloadUrl=t.links&&t.links.download}return(0,_createClass3.default)(e,[{key:"_assignAttributes",value:function(e){(0,_assign2.default)(this,e.attributes)}},{key:"download",value:function(){return this.downloadUrl?this.client.downloadFile(this.downloadUrl):_promise2.default.reject(new Error("No download URL for this library"))}}]),e}();exports.default=Library,module.exports=exports.default; -},{"babel-runtime/core-js/object/assign":11,"babel-runtime/core-js/promise":18,"babel-runtime/helpers/classCallCheck":21,"babel-runtime/helpers/createClass":22}],6:[function(require,module,exports){ -"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var _assign=require("babel-runtime/core-js/object/assign"),_assign2=_interopRequireDefault(_assign),_classCallCheck2=require("babel-runtime/helpers/classCallCheck"),_classCallCheck3=_interopRequireDefault(_classCallCheck2),_createClass2=require("babel-runtime/helpers/createClass"),_createClass3=_interopRequireDefault(_createClass2),_superagent=require("superagent"),_superagent2=_interopRequireDefault(_superagent),_superagentBinaryParser=require("./superagent-binary-parser"),_superagentBinaryParser2=_interopRequireDefault(_superagentBinaryParser),_Defaults=require("./Defaults"),_Defaults2=_interopRequireDefault(_Defaults),_EventStream=require("./EventStream"),_EventStream2=_interopRequireDefault(_EventStream),_Agent=require("./Agent"),_Agent2=_interopRequireDefault(_Agent),_Client=require("./Client"),_Client2=_interopRequireDefault(_Client),Particle=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,_classCallCheck3.default)(this,e),(0,_assign2.default)(this,_Defaults2.default,t),this.context={},this.agent=new _Agent2.default(this.baseUrl)}return(0,_createClass3.default)(e,[{key:"_isValidContext",value:function(e,t){return("tool"===e||"project"===e)&&void 0!==t}},{key:"setContext",value:function(e,t){if(void 0!==t){if(!this._isValidContext(e,t))throw Error("uknown context name or undefined context: "+e);this.context[e]=t}}},{key:"_buildContext",value:function(e){return(0,_assign2.default)(this.context,e)}},{key:"login",value:function(e){var t=e.username,r=e.password,i=e.tokenDuration,n=void 0===i?this.tokenDuration:i,u=e.context;return this.request({uri:"/oauth/token",form:{username:t,password:r,grant_type:"password",client_id:this.clientId,client_secret:this.clientSecret,expires_in:n},method:"post",context:u})}},{key:"sendOtp",value:function(e){var t=e.mfaToken,r=e.otp,i=e.context;return this.request({uri:"/oauth/token",form:{grant_type:"urn:custom:mfa-otp",mfa_token:t,otp:r,client_id:this.clientId,client_secret:this.clientSecret},method:"post",context:i})}},{key:"enableMfa",value:function(e){var t=e.auth,r=e.context;return this.get("/v1/user/mfa-enable",t,void 0,r)}},{key:"confirmMfa",value:function(e){var t=e.auth,r=e.mfaToken,i=e.otp,n=e.context;return this.post("/v1/user/mfa-enable",{mfa_token:r,otp:i},t,n)}},{key:"disableMfa",value:function(e){var t=e.auth,r=e.currentPassword,i=e.context;return this.put("/v1/user/mfa-disable",{current_password:r},t,i)}},{key:"createCustomer",value:function(e){var t=e.email,r=e.password,i=e.product,n=e.context,u="/v1/products/"+i+"/customers";return this.request({uri:u,form:{email:t,password:r,grant_type:"client_credentials",client_id:this.clientId,client_secret:this.clientSecret},method:"post",context:n})}},{key:"loginAsClientOwner",value:function(e){var t=e.context;return this.request({uri:"/oauth/token",form:{grant_type:"client_credentials",client_id:this.clientId,client_secret:this.clientSecret},method:"post",context:t})}},{key:"createUser",value:function(e){var t=e.username,r=e.password,i=e.accountInfo,n=e.context;return this.post("/v1/users",{username:t,password:r,account_info:i},void 0,n)}},{key:"verifyUser",value:function(e){var t=e.token,r=e.context;return this.post("/v1/user/verify",{token:t},void 0,r)}},{key:"resetPassword",value:function(e){var t=e.username,r=e.context;return this.post("/v1/user/password-reset",{username:t},void 0,r)}},{key:"deleteAccessToken",value:function(e){var t=e.username,r=e.password,i=e.token,n=e.context;return this.delete("/v1/access_tokens/"+i,{access_token:i},{username:t,password:r},n)}},{key:"deleteCurrentAccessToken",value:function(e){var t=e.auth,r=e.context;return this.delete("/v1/access_tokens/current",void 0,t,r)}},{key:"listAccessTokens",value:function(e){var t=e.username,r=e.password,i=e.context;return this.get("/v1/access_tokens",{username:t,password:r},void 0,i)}},{key:"trackingIdentity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.auth,r=e.full,i=void 0!==r&&r,n=e.context;return this.get("/v1/user/identify",t,i?void 0:{tracking:1},n)}},{key:"listDevices",value:function(e){var t=e.deviceId,r=e.deviceName,i=e.sortAttr,n=e.sortDir,u=e.page,o=e.perPage,a=e.product,s=e.auth,c=e.context,d=a?"/v1/products/"+a+"/devices":"/v1/devices",v=a?{deviceId:t,deviceName:r,sortAttr:i,sortDir:n,page:u,per_page:o}:void 0;return this.get(d,s,v,c)}},{key:"getDevice",value:function(e){var t=e.deviceId,r=e.product,i=e.auth,n=e.context,u=this.deviceUri({deviceId:t,product:r});return this.get(u,i,void 0,n)}},{key:"claimDevice",value:function(e){var t=e.deviceId,r=e.requestTransfer,i=e.auth,n=e.context;return this.post("/v1/devices",{id:t,request_transfer:!!r},i,n)}},{key:"addDeviceToProduct",value:function(e){var t=e.deviceId,r=e.product,i=e.auth,n=e.context,u="/v1/products/"+r+"/devices";return this.post(u,{id:t},i,n)}},{key:"removeDevice",value:function(e){var t=e.deviceId,r=e.deny,i=e.product,n=e.auth,u=e.context,o=this.deviceUri({deviceId:t,product:i}),a=i?{deny:r}:void 0;return this.delete(o,a,n,u)}},{key:"removeDeviceOwner",value:function(e){var t=e.deviceId,r=(e.deny,e.product),i=e.auth,n=e.context,u="/v1/products/"+r+"/devices/"+t+"/owner";return this.delete(u,void 0,i,n)}},{key:"renameDevice",value:function(e){var t=e.deviceId,r=e.name,i=e.product,n=e.auth,u=e.context;return this.updateDevice({deviceId:t,name:r,product:i,auth:n,context:u})}},{key:"signalDevice",value:function(e){var t=e.deviceId,r=e.signal,i=e.product,n=e.auth,u=e.context;return this.updateDevice({deviceId:t,signal:r,product:i,auth:n,context:u})}},{key:"setDeviceNotes",value:function(e){var t=e.deviceId,r=e.notes,i=e.product,n=e.auth,u=e.context;return this.updateDevice({deviceId:t,notes:r,product:i,auth:n,context:u})}},{key:"markAsDevelopmentDevice",value:function(e){var t=e.deviceId,r=e.development,i=void 0===r||r,n=e.product,u=e.auth,o=e.context;return this.updateDevice({deviceId:t,development:i,product:n,auth:u,context:o})}},{key:"lockDeviceProductFirmware",value:function(e){var t=e.deviceId,r=e.desiredFirmwareVersion,i=e.flash,n=e.product,u=e.auth,o=e.context;return this.updateDevice({deviceId:t,desiredFirmwareVersion:r,flash:i,product:n,auth:u,context:o})}},{key:"unlockDeviceProductFirmware",value:function(e){var t=e.deviceId,r=e.product,i=e.auth,n=e.context;return this.updateDevice({deviceId:t,desiredFirmwareVersion:null,product:r,auth:i,context:n})}},{key:"updateDevice",value:function(e){var t=e.deviceId,r=e.name,i=e.signal,n=e.notes,u=e.development,o=e.desiredFirmwareVersion,a=e.flash,s=e.product,c=e.auth,d=e.context;i=i?"1":"0";var v=this.deviceUri({deviceId:t,product:s}),l=s?{name:r,signal:i,notes:n,development:u,desired_firmware_version:o,flash:a}:{name:r,signal:i,notes:n};return this.put(v,l,c,d)}},{key:"provisionDevice",value:function(e){var t=e.productId,r=e.auth,i=e.context;return this.post("/v1/devices",{product_id:t},r,i)}},{key:"getClaimCode",value:function(e){var t=e.iccid,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/device_claims":"/v1/device_claims";return this.post(u,{iccid:t},i,n)}},{key:"validatePromoCode",value:function(e){var t=e.auth,r=e.promoCode,i=e.context;return this.get("/v1/promo_code/"+r,t,void 0,i)}},{key:"changeProduct",value:function(e){var t=e.deviceId,r=e.productId,i=e.auth,n=e.context;return this.put("/v1/devices/"+t,{product_id:r},i,n)}},{key:"getVariable",value:function(e){var t=e.deviceId,r=e.name,i=e.product,n=e.auth,u=e.context,o=i?"/v1/products/"+i+"/devices/"+t+"/"+r:"/v1/devices/"+t+"/"+r;return this.get(o,n,void 0,u)}},{key:"flashDevice",value:function(e){var t=e.deviceId,r=e.product,i=e.files,n=e.targetVersion,u=e.auth,o=e.context,a=this.deviceUri({deviceId:t,product:r}),s={};return n?s.build_target_version=n:s.latest="true",this.request({uri:a,files:i,auth:u,form:s,context:o,method:"put"})}},{key:"flashTinker",value:function(e){var t=e.deviceId,r=e.auth,i=e.context;return console&&console.warning&&console.warning("Particle.flashTinker is deprecated"),this.put("/v1/devices/"+t,{app:"tinker"},r,i)}},{key:"compileCode",value:function(e){var t=e.files,r=e.platformId,i=e.targetVersion,n=e.auth,u=e.context,o={platform_id:r};return i?o.build_target_version=i:o.latest="true",this.request({uri:"/v1/binaries",files:t,auth:n,form:o,context:u,method:"post"})}},{key:"downloadFirmwareBinary",value:function(e){var t=e.binaryId,r=e.auth,i=(e.context,"/v1/binaries/"+t),n=(0,_superagent2.default)("get",i);return n.use(this.prefix),this.headers(n,r),this.debug&&this.debug(n),n}},{key:"sendPublicKey",value:function(e){var t=e.deviceId,r=e.key,i=e.algorithm,n=e.auth,u=e.context;return this.post("/v1/provisioning/"+t,{deviceID:t,publicKey:"string"==typeof r?r:r.toString(),filename:"particle-api",order:"manual_"+Date.now(),algorithm:i||"rsa"},n,u)}},{key:"callFunction",value:function(e){var t=e.deviceId,r=e.name,i=e.argument,n=e.product,u=e.auth,o=e.context,a=n?"/v1/products/"+n+"/devices/"+t+"/"+r:"/v1/devices/"+t+"/"+r;return this.post(a,{args:i},u,o)}},{key:"getEventStream",value:function(e){var t=e.deviceId,r=e.name,i=e.org,n=e.product,u=e.auth,o=(e.context,"/v1/");return i&&(o+="orgs/"+i+"/"),n&&(o+="products/"+n+"/"),t&&(o+="devices/","mine"!==t.toLowerCase()&&(o+=t+"/")),o+="events",r&&(o+="/"+encodeURIComponent(r)),new _EventStream2.default(""+this.baseUrl+o,u,{debug:this.debug}).connect()}},{key:"publishEvent",value:function(e){var t=e.name,r=e.data,i=e.isPrivate,n=e.product,u=e.auth,o=e.context,a=n?"/v1/products/"+n+"/events":"/v1/devices/events",s={name:t,data:r,private:i};return this.post(a,s,u,o)}},{key:"createWebhook",value:function(e){var t=e.deviceId,r=e.name,i=e.url,n=e.requestType,u=e.headers,o=e.json,a=e.query,s=e.body,c=e.responseTemplate,d=e.responseTopic,v=e.rejectUnauthorized,l=e.webhookAuth,h=e.noDefaults,p=e.form,f=e.product,m=e.auth,k=e.context;"mine"===t&&(t=void 0);var g=f?"/v1/products/"+f+"/webhooks":"/v1/webhooks",y={event:r,deviceid:t,url:i,requestType:n,headers:u,json:o,query:a,body:s,responseTemplate:c,responseTopic:d,rejectUnauthorized:v,auth:l,noDefaults:h,form:p};return this.post(g,y,m,k)}},{key:"deleteWebhook",value:function(e){var t=e.hookId,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/webhooks/"+t:"/v1/webhooks/"+t;return this.delete(u,void 0,i,n)}},{key:"listWebhooks",value:function(e){var t=e.product,r=e.auth,i=e.context,n=t?"/v1/products/"+t+"/webhooks":"/v1/webhooks";return this.get(n,r,void 0,i)}},{key:"createIntegration",value:function(e){var t=(e.integrationType,e.event),r=e.settings,i=e.deviceId,n=e.product,u=e.auth,o=e.context,a=n?"/v1/products/"+n+"/integrations":"/v1/integrations",s=(0,_assign2.default)({event:t,deviceid:i},r);return this.post(a,s,u,o)}},{key:"editIntegration",value:function(e){var t=e.integrationId,r=e.event,i=e.settings,n=e.deviceId,u=e.product,o=e.auth,a=e.context,s=u?"/v1/products/"+u+"/integrations/"+t:"/v1/integrations/"+t,c=(0,_assign2.default)({event:r,deviceid:n},i);return this.put(s,c,o,a)}},{key:"deleteIntegration",value:function(e){var t=e.integrationId,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/integrations/"+t:"/v1/integrations/"+t;return this.delete(u,void 0,i,n)}},{key:"listIntegrations",value:function(e){var t=e.product,r=e.auth,i=e.context,n=t?"/v1/products/"+t+"/integrations":"/v1/integrations";return this.get(n,r,void 0,i)}},{key:"getUserInfo",value:function(e){var t=e.auth,r=e.context;return this.get("/v1/user",t,void 0,r)}},{key:"setUserInfo",value:function(e){var t=e.accountInfo,r=e.auth,i=e.context,n={account_info:t};return this.put("/v1/user",n,r,i)}},{key:"changeUsername",value:function(e){var t=e.currentPassword,r=e.username,i=e.auth,n=e.context,u={current_password:t,username:r};return this.put("/v1/user",u,i,n)}},{key:"changeUserPassword",value:function(e){var t=e.currentPassword,r=e.password,i=e.auth,n=e.context,u={current_password:t,password:r};return this.put("/v1/user",u,i,n)}},{key:"listSIMs",value:function(e){var t=e.iccid,r=e.deviceId,i=e.deviceName,n=e.page,u=e.perPage,o=e.product,a=e.auth,s=e.context,c=o?"/v1/products/"+o+"/sims":"/v1/sims",d=o?{iccid:t,deviceId:r,deviceName:i,page:n,per_page:u}:void 0;return this.get(c,a,d,s)}},{key:"getSIMDataUsage",value:function(e){var t=e.iccid,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/sims/"+t+"/data_usage":"/v1/sims/"+t+"/data_usage";return this.get(u,i,void 0,n)}},{key:"getFleetDataUsage",value:function(e){var t=e.product,r=e.auth,i=e.context;return this.get("/v1/products/"+t+"/sims/data_usage",r,void 0,i)}},{key:"checkSIM",value:function(e){var t=e.iccid,r=e.auth,i=e.context;return this.head("/v1/sims/"+t,r,void 0,i)}},{key:"activateSIM",value:function(e){var t=e.iccid,r=e.iccids,i=e.country,n=e.promoCode,u=e.product,o=e.auth,a=e.context;r=r||[t];var s=u?"/v1/products/"+u+"/sims":"/v1/sims/"+t,c=u?{sims:r,country:i}:{country:i,promoCode:n,action:"activate"},d=u?"post":"put";return this.request({uri:s,method:d,data:c,auth:o,context:a})}},{key:"deactivateSIM",value:function(e){var t=e.iccid,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/sims/"+t:"/v1/sims/"+t,o={action:"deactivate"};return this.put(u,o,i,n)}},{key:"reactivateSIM",value:function(e){var t=e.iccid,r=e.mbLimit,i=e.product,n=e.auth,u=e.context,o=i?"/v1/products/"+i+"/sims/"+t:"/v1/sims/"+t,a={mb_limit:r,action:"reactivate"};return this.put(o,a,n,u)}},{key:"updateSIM",value:function(e){var t=e.iccid,r=e.mbLimit,i=e.product,n=e.auth,u=e.context,o=i?"/v1/products/"+i+"/sims/"+t:"/v1/sims/"+t,a={mb_limit:r};return this.put(o,a,n,u)}},{key:"removeSIM",value:function(e){var t=e.iccid,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/sims/"+t:"/v1/sims/"+t;return this.delete(u,void 0,i,n)}},{key:"listBuildTargets",value:function(e){var t=e.onlyFeatured,r=e.auth,i=e.context,n=void 0;return void 0!==t&&(n={featured:!!t}),this.get("/v1/build_targets",r,n,i)}},{key:"listLibraries",value:function(e){var t=e.page,r=e.limit,i=e.filter,n=e.sort,u=e.architectures,o=e.category,a=e.scope,s=e.excludeScopes,c=e.auth,d=e.context;return this.get("/v1/libraries",c,{page:t,filter:i,limit:r,sort:n,architectures:this._asList(u),category:o,scope:a,excludeScopes:this._asList(s)},d)}},{key:"_asList",value:function(e){return Array.isArray(e)?e.join(","):e}},{key:"getLibrary",value:function(e){var t=e.name,r=e.version,i=e.auth,n=e.context;return this.get("/v1/libraries/"+t,i,{version:r},n)}},{key:"getLibraryVersions",value:function(e){var t=e.name,r=e.page,i=e.limit,n=e.auth,u=e.context;return this.get("/v1/libraries/"+t+"/versions",n,{page:r,limit:i},u)}},{key:"contributeLibrary",value:function(e){var t=e.archive,r=e.auth,i=e.context,n={"archive.tar.gz":t};return this.request({uri:"/v1/libraries",files:n,auth:r,context:i,method:"post"})}},{key:"publishLibrary",value:function(e){var t=e.name,r=e.auth,i=e.context;return this.request({uri:"/v1/libraries/"+t,auth:r,context:i,method:"patch",data:{visibility:"public"}})}},{key:"deleteLibrary",value:function(e){var t=e.name,r=e.force,i=e.auth,n=e.context;return this.delete("/v1/libraries/"+t,{force:r},i,n)}},{key:"downloadFile",value:function(e){var t=e.url,r=_superagent2.default.get(t);return _superagent2.default.getXHR?r.responseType&&(r=r.responseType("arraybuffer").then(function(e){return e.body=e.xhr.response,e})):r=r.buffer(!0).parse(_superagentBinaryParser2.default),r.then(function(e){return e.body})}},{key:"listOAuthClients",value:function(e){var t=e.product,r=e.auth,i=e.context,n=t?"/v1/products/"+t+"/clients":"/v1/clients";return this.get(n,r,void 0,i)}},{key:"createOAuthClient",value:function(e){var t=e.name,r=e.type,i=e.redirect_uri,n=e.scope,u=e.product,o=e.auth,a=e.context,s=u?"/v1/products/"+u+"/clients":"/v1/clients",c={name:t,type:r,redirect_uri:i,scope:n};return this.post(s,c,o,a)}},{key:"updateOAuthClient",value:function(e){var t=e.clientId,r=e.name,i=e.scope,n=e.product,u=e.auth,o=e.context,a=n?"/v1/products/"+n+"/clients/"+t:"/v1/clients/"+t,s={name:r,scope:i};return this.put(a,s,u,o)}},{key:"deleteOAuthClient",value:function(e){var t=e.clientId,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/clients/"+t:"/v1/clients/"+t;return this.delete(u,void 0,i,n)}},{key:"listProducts",value:function(e){var t=e.auth,r=e.context;return this.get("/v1/products",t,void 0,r)}},{key:"getProduct",value:function(e){var t=e.product,r=e.auth,i=e.context;return this.get("/v1/products/"+t,r,void 0,i)}},{key:"listProductFirmware",value:function(e){var t=e.product,r=e.auth,i=e.context;return this.get("/v1/products/"+t+"/firmware",r,void 0,i)}},{key:"uploadProductFirmware",value:function(e){var t=e.file,r=e.version,i=e.title,n=e.description,u=e.product,o=e.auth,a=e.context;return this.request({uri:"/v1/products/"+u+"/firmware",method:"post",files:{"firmware.bin":t},form:{version:r,title:i,description:n},context:a,auth:o})}},{key:"getProductFirmware",value:function(e){var t=e.version,r=e.product,i=e.auth,n=e.context;return this.get("/v1/products/"+r+"/firmware/"+t,i,void 0,n)}},{key:"updateProductFirmware",value:function(e){var t=e.version,r=e.title,i=e.description,n=e.product,u=e.auth,o=e.context,a="/v1/products/"+n+"/firmware/"+t;return this.put(a,{title:r,description:i},u,o)}},{key:"downloadProductFirmware",value:function(e){var t=e.version,r=e.product,i=e.auth,n=(e.context,"/v1/products/"+r+"/firmware/"+t+"/binary"),u=(0,_superagent2.default)("get",n);return u.use(this.prefix),this.headers(u,i),this.debug&&this.debug(u),u}},{key:"releaseProductFirmware",value:function(e){var t=e.version,r=e.product,i=e.auth,n=e.context,u="/v1/products/"+r+"/firmware/release";return this.put(u,{version:t},i,n)}},{key:"listTeamMembers",value:function(e){var t=e.product,r=e.auth,i=e.context;return this.get("/v1/products/"+t+"/team",r,void 0,i)}},{key:"inviteTeamMember",value:function(e){var t=e.username,r=e.product,i=e.auth,n=e.context;return this.post("/v1/products/"+r+"/team",{username:t},i,n)}},{key:"removeTeamMember",value:function(e){var t=e.username,r=e.product,i=e.auth,n=e.context;return this.delete("/v1/products/"+r+"/team/"+t,void 0,i,n)}},{key:"lookupSerialNumber",value:function(e){var t=e.serialNumber,r=e.auth,i=e.context;return this.get("/v1/serial_numbers/"+t,r,void 0,i)}},{key:"createMeshNetwork",value:function(e){var t=e.name,r=e.deviceId,i=e.iccid,n=e.auth,u=e.context;return this.post("/v1/networks",{name:t,device_id:r,iccid:i},n,u)}},{key:"removeMeshNetwork",value:function(e){var t=e.networkId,r=e.auth,i=e.context;return this.delete("/v1/networks/"+t,void 0,r,i)}},{key:"listMeshNetworks",value:function(e){var t=e.auth,r=e.context,i=e.page,n=e.perPage,u=i?{page:i,per_page:n}:void 0;return this.get("/v1/networks",t,u,r)}},{key:"getMeshNetwork",value:function(e){var t=e.networkId,r=e.auth,i=e.context;return this.get("/v1/networks/"+t,r,void 0,i)}},{key:"updateMeshNetwork",value:function(e){var t=e.networkId,r=e.action,i=e.deviceId,n=e.auth,u=e.context;return this.put("/v1/networks/"+t,{action:r,device_id:i},n,u)}},{key:"addMeshNetworkDevice",value:function(e){var t=e.networkId,r=e.deviceId,i=e.auth,n=e.context;return this.updateMeshNetwork({action:"add-device",networkId:t,deviceId:r,auth:i,context:n})}},{key:"removeMeshNetworkDevice",value:function(e){var t=e.networkId,r=e.deviceId,i=e.auth,n=e.context;return t?this.updateMeshNetwork({action:"remove-device",networkId:t,deviceId:r,auth:i,context:n}):this.delete("/v1/devices/"+r+"/network",void 0,i,n)}},{key:"listMeshNetworkDevices",value:function(e){var t=e.networkId,r=e.auth,i=e.role,n=e.page,u=e.perPage,o=e.context,a=i||n?{role:i,page:n,per_page:u}:void 0;return this.get("/v1/networks/"+t+"/devices",r,a,o)}},{key:"deviceUri",value:function(e){var t=e.deviceId,r=e.product;return r?"/v1/products/"+r+"/devices/"+t:"/v1/devices/"+t}},{key:"get",value:function(e,t,r,i){return i=this._buildContext(i),this.agent.get(e,t,r,i)}},{key:"head",value:function(e,t,r,i){return i=this._buildContext(i),this.agent.head(e,t,r,i)}},{key:"post",value:function(e,t,r,i){return i=this._buildContext(i),this.agent.post(e,t,r,i)}},{key:"put",value:function(e,t,r,i){return i=this._buildContext(i),this.agent.put(e,t,r,i)}},{key:"delete",value:function(e,t,r,i){return i=this._buildContext(i),this.agent.delete(e,t,r,i)}},{key:"request",value:function(e){return e.context=this._buildContext(e.context),this.agent.request(e)}},{key:"client",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new _Client2.default((0,_assign2.default)({api:this},e))}}]),e}();Particle.prototype.removeAccessToken=Particle.prototype.deleteAccessToken,exports.default=Particle,module.exports=exports.default; -},{"./Agent":1,"./Client":2,"./Defaults":3,"./EventStream":4,"./superagent-binary-parser":7,"babel-runtime/core-js/object/assign":11,"babel-runtime/helpers/classCallCheck":21,"babel-runtime/helpers/createClass":22,"superagent":173}],7:[function(require,module,exports){ +},{"babel-runtime/core-js/object/assign":10,"babel-runtime/core-js/promise":17,"babel-runtime/helpers/classCallCheck":20,"babel-runtime/helpers/createClass":21}],6:[function(require,module,exports){ +"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var _assign=require("babel-runtime/core-js/object/assign"),_assign2=_interopRequireDefault(_assign),_classCallCheck2=require("babel-runtime/helpers/classCallCheck"),_classCallCheck3=_interopRequireDefault(_classCallCheck2),_createClass2=require("babel-runtime/helpers/createClass"),_createClass3=_interopRequireDefault(_createClass2),_superagent=require("superagent"),_superagent2=_interopRequireDefault(_superagent),_superagentBinaryParser=require("./superagent-binary-parser"),_superagentBinaryParser2=_interopRequireDefault(_superagentBinaryParser),_Defaults=require("./Defaults"),_Defaults2=_interopRequireDefault(_Defaults),_EventStream=require("./EventStream"),_EventStream2=_interopRequireDefault(_EventStream),_Agent=require("./Agent"),_Agent2=_interopRequireDefault(_Agent),_Client=require("./Client"),_Client2=_interopRequireDefault(_Client),Particle=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,_classCallCheck3.default)(this,e),(0,_assign2.default)(this,_Defaults2.default,t),this.context={},this.agent=new _Agent2.default(this.baseUrl)}return(0,_createClass3.default)(e,[{key:"_isValidContext",value:function(e,t){return("tool"===e||"project"===e)&&void 0!==t}},{key:"setContext",value:function(e,t){if(void 0!==t){if(!this._isValidContext(e,t))throw Error("uknown context name or undefined context: "+e);this.context[e]=t}}},{key:"_buildContext",value:function(e){return(0,_assign2.default)(this.context,e)}},{key:"login",value:function(e){var t=e.username,r=e.password,i=e.tokenDuration,n=void 0===i?this.tokenDuration:i,u=e.context;return this.request({uri:"/oauth/token",form:{username:t,password:r,grant_type:"password",client_id:this.clientId,client_secret:this.clientSecret,expires_in:n},method:"post",context:u})}},{key:"sendOtp",value:function(e){var t=e.mfaToken,r=e.otp,i=e.context;return this.request({uri:"/oauth/token",form:{grant_type:"urn:custom:mfa-otp",mfa_token:t,otp:r,client_id:this.clientId,client_secret:this.clientSecret},method:"post",context:i})}},{key:"enableMfa",value:function(e){var t=e.auth,r=e.context;return this.get("/v1/user/mfa-enable",t,void 0,r)}},{key:"confirmMfa",value:function(e){var t=e.auth,r=e.mfaToken,i=e.otp,n=e.context;return this.post("/v1/user/mfa-enable",{mfa_token:r,otp:i},t,n)}},{key:"disableMfa",value:function(e){var t=e.auth,r=e.currentPassword,i=e.context;return this.put("/v1/user/mfa-disable",{current_password:r},t,i)}},{key:"createCustomer",value:function(e){var t=e.email,r=e.password,i=e.product,n=e.context,u="/v1/products/"+i+"/customers";return this.request({uri:u,form:{email:t,password:r,grant_type:"client_credentials",client_id:this.clientId,client_secret:this.clientSecret},method:"post",context:n})}},{key:"loginAsClientOwner",value:function(e){var t=e.context;return this.request({uri:"/oauth/token",form:{grant_type:"client_credentials",client_id:this.clientId,client_secret:this.clientSecret},method:"post",context:t})}},{key:"createUser",value:function(e){var t=e.username,r=e.password,i=e.accountInfo,n=e.context;return this.post("/v1/users",{username:t,password:r,account_info:i},void 0,n)}},{key:"verifyUser",value:function(e){var t=e.token,r=e.context;return this.post("/v1/user/verify",{token:t},void 0,r)}},{key:"resetPassword",value:function(e){var t=e.username,r=e.context;return this.post("/v1/user/password-reset",{username:t},void 0,r)}},{key:"deleteAccessToken",value:function(e){var t=e.username,r=e.password,i=e.token,n=e.context;return this.delete("/v1/access_tokens/"+i,{access_token:i},{username:t,password:r},n)}},{key:"deleteCurrentAccessToken",value:function(e){var t=e.auth,r=e.context;return this.delete("/v1/access_tokens/current",void 0,t,r)}},{key:"listAccessTokens",value:function(e){var t=e.username,r=e.password,i=e.context;return this.get("/v1/access_tokens",{username:t,password:r},void 0,i)}},{key:"trackingIdentity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.auth,r=e.full,i=void 0!==r&&r,n=e.context;return this.get("/v1/user/identify",t,i?void 0:{tracking:1},n)}},{key:"listDevices",value:function(e){var t=e.deviceId,r=e.deviceName,i=e.sortAttr,n=e.sortDir,u=e.page,o=e.perPage,a=e.product,s=e.auth,c=e.context,d=a?"/v1/products/"+a+"/devices":"/v1/devices",v=a?{deviceId:t,deviceName:r,sortAttr:i,sortDir:n,page:u,per_page:o}:void 0;return this.get(d,s,v,c)}},{key:"getDevice",value:function(e){var t=e.deviceId,r=e.product,i=e.auth,n=e.context,u=this.deviceUri({deviceId:t,product:r});return this.get(u,i,void 0,n)}},{key:"claimDevice",value:function(e){var t=e.deviceId,r=e.requestTransfer,i=e.auth,n=e.context;return this.post("/v1/devices",{id:t,request_transfer:!!r},i,n)}},{key:"addDeviceToProduct",value:function(e){var t=e.deviceId,r=e.product,i=e.auth,n=e.context,u="/v1/products/"+r+"/devices";return this.post(u,{id:t},i,n)}},{key:"removeDevice",value:function(e){var t=e.deviceId,r=e.deny,i=e.product,n=e.auth,u=e.context,o=this.deviceUri({deviceId:t,product:i}),a=i?{deny:r}:void 0;return this.delete(o,a,n,u)}},{key:"removeDeviceOwner",value:function(e){var t=e.deviceId,r=(e.deny,e.product),i=e.auth,n=e.context,u="/v1/products/"+r+"/devices/"+t+"/owner";return this.delete(u,void 0,i,n)}},{key:"renameDevice",value:function(e){var t=e.deviceId,r=e.name,i=e.product,n=e.auth,u=e.context;return this.updateDevice({deviceId:t,name:r,product:i,auth:n,context:u})}},{key:"signalDevice",value:function(e){var t=e.deviceId,r=e.signal,i=e.product,n=e.auth,u=e.context;return this.updateDevice({deviceId:t,signal:r,product:i,auth:n,context:u})}},{key:"setDeviceNotes",value:function(e){var t=e.deviceId,r=e.notes,i=e.product,n=e.auth,u=e.context;return this.updateDevice({deviceId:t,notes:r,product:i,auth:n,context:u})}},{key:"markAsDevelopmentDevice",value:function(e){var t=e.deviceId,r=e.development,i=void 0===r||r,n=e.product,u=e.auth,o=e.context;return this.updateDevice({deviceId:t,development:i,product:n,auth:u,context:o})}},{key:"lockDeviceProductFirmware",value:function(e){var t=e.deviceId,r=e.desiredFirmwareVersion,i=e.flash,n=e.product,u=e.auth,o=e.context;return this.updateDevice({deviceId:t,desiredFirmwareVersion:r,flash:i,product:n,auth:u,context:o})}},{key:"unlockDeviceProductFirmware",value:function(e){var t=e.deviceId,r=e.product,i=e.auth,n=e.context;return this.updateDevice({deviceId:t,desiredFirmwareVersion:null,product:r,auth:i,context:n})}},{key:"updateDevice",value:function(e){var t=e.deviceId,r=e.name,i=e.signal,n=e.notes,u=e.development,o=e.desiredFirmwareVersion,a=e.flash,s=e.product,c=e.auth,d=e.context;i=i?"1":"0";var v=this.deviceUri({deviceId:t,product:s}),l=s?{name:r,signal:i,notes:n,development:u,desired_firmware_version:o,flash:a}:{name:r,signal:i,notes:n};return this.put(v,l,c,d)}},{key:"provisionDevice",value:function(e){var t=e.productId,r=e.auth,i=e.context;return this.post("/v1/devices",{product_id:t},r,i)}},{key:"getClaimCode",value:function(e){var t=e.iccid,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/device_claims":"/v1/device_claims";return this.post(u,{iccid:t},i,n)}},{key:"validatePromoCode",value:function(e){var t=e.auth,r=e.promoCode,i=e.context;return this.get("/v1/promo_code/"+r,t,void 0,i)}},{key:"changeProduct",value:function(e){var t=e.deviceId,r=e.productId,i=e.auth,n=e.context;return this.put("/v1/devices/"+t,{product_id:r},i,n)}},{key:"getVariable",value:function(e){var t=e.deviceId,r=e.name,i=e.product,n=e.auth,u=e.context,o=i?"/v1/products/"+i+"/devices/"+t+"/"+r:"/v1/devices/"+t+"/"+r;return this.get(o,n,void 0,u)}},{key:"flashDevice",value:function(e){var t=e.deviceId,r=e.product,i=e.files,n=e.targetVersion,u=e.auth,o=e.context,a=this.deviceUri({deviceId:t,product:r}),s={};return n?s.build_target_version=n:s.latest="true",this.request({uri:a,files:i,auth:u,form:s,context:o,method:"put"})}},{key:"flashTinker",value:function(e){var t=e.deviceId,r=e.auth,i=e.context;return console&&console.warning&&console.warning("Particle.flashTinker is deprecated"),this.put("/v1/devices/"+t,{app:"tinker"},r,i)}},{key:"compileCode",value:function(e){var t=e.files,r=e.platformId,i=e.targetVersion,n=e.auth,u=e.context,o={platform_id:r};return i?o.build_target_version=i:o.latest="true",this.request({uri:"/v1/binaries",files:t,auth:n,form:o,context:u,method:"post"})}},{key:"downloadFirmwareBinary",value:function(e){var t=e.binaryId,r=e.auth,i=(e.context,"/v1/binaries/"+t),n=(0,_superagent2.default)("get",i);return n.use(this.prefix),this.headers(n,r),n}},{key:"sendPublicKey",value:function(e){var t=e.deviceId,r=e.key,i=e.algorithm,n=e.auth,u=e.context;return this.post("/v1/provisioning/"+t,{deviceID:t,publicKey:"string"==typeof r?r:r.toString(),filename:"particle-api",order:"manual_"+Date.now(),algorithm:i||"rsa"},n,u)}},{key:"callFunction",value:function(e){var t=e.deviceId,r=e.name,i=e.argument,n=e.product,u=e.auth,o=e.context,a=n?"/v1/products/"+n+"/devices/"+t+"/"+r:"/v1/devices/"+t+"/"+r;return this.post(a,{args:i},u,o)}},{key:"getEventStream",value:function(e){var t=e.deviceId,r=e.name,i=e.org,n=e.product,u=e.auth,o=(e.context,"/v1/");return i&&(o+="orgs/"+i+"/"),n&&(o+="products/"+n+"/"),t&&(o+="devices/","mine"!==t.toLowerCase()&&(o+=t+"/")),o+="events",r&&(o+="/"+encodeURIComponent(r)),new _EventStream2.default(""+this.baseUrl+o,u).connect()}},{key:"publishEvent",value:function(e){var t=e.name,r=e.data,i=e.isPrivate,n=e.product,u=e.auth,o=e.context,a=n?"/v1/products/"+n+"/events":"/v1/devices/events",s={name:t,data:r,private:i};return this.post(a,s,u,o)}},{key:"createWebhook",value:function(e){var t=e.deviceId,r=e.name,i=e.url,n=e.requestType,u=e.headers,o=e.json,a=e.query,s=e.body,c=e.responseTemplate,d=e.responseTopic,v=e.rejectUnauthorized,l=e.webhookAuth,p=e.noDefaults,h=e.form,f=e.product,m=e.auth,k=e.context;"mine"===t&&(t=void 0);var g=f?"/v1/products/"+f+"/webhooks":"/v1/webhooks",y={event:r,deviceid:t,url:i,requestType:n,headers:u,json:o,query:a,body:s,responseTemplate:c,responseTopic:d,rejectUnauthorized:v,auth:l,noDefaults:p,form:h};return this.post(g,y,m,k)}},{key:"deleteWebhook",value:function(e){var t=e.hookId,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/webhooks/"+t:"/v1/webhooks/"+t;return this.delete(u,void 0,i,n)}},{key:"listWebhooks",value:function(e){var t=e.product,r=e.auth,i=e.context,n=t?"/v1/products/"+t+"/webhooks":"/v1/webhooks";return this.get(n,r,void 0,i)}},{key:"createIntegration",value:function(e){var t=(e.integrationType,e.event),r=e.settings,i=e.deviceId,n=e.product,u=e.auth,o=e.context,a=n?"/v1/products/"+n+"/integrations":"/v1/integrations",s=(0,_assign2.default)({event:t,deviceid:i},r);return this.post(a,s,u,o)}},{key:"editIntegration",value:function(e){var t=e.integrationId,r=e.event,i=e.settings,n=e.deviceId,u=e.product,o=e.auth,a=e.context,s=u?"/v1/products/"+u+"/integrations/"+t:"/v1/integrations/"+t,c=(0,_assign2.default)({event:r,deviceid:n},i);return this.put(s,c,o,a)}},{key:"deleteIntegration",value:function(e){var t=e.integrationId,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/integrations/"+t:"/v1/integrations/"+t;return this.delete(u,void 0,i,n)}},{key:"listIntegrations",value:function(e){var t=e.product,r=e.auth,i=e.context,n=t?"/v1/products/"+t+"/integrations":"/v1/integrations";return this.get(n,r,void 0,i)}},{key:"getUserInfo",value:function(e){var t=e.auth,r=e.context;return this.get("/v1/user",t,void 0,r)}},{key:"setUserInfo",value:function(e){var t=e.accountInfo,r=e.auth,i=e.context,n={account_info:t};return this.put("/v1/user",n,r,i)}},{key:"changeUsername",value:function(e){var t=e.currentPassword,r=e.username,i=e.auth,n=e.context,u={current_password:t,username:r};return this.put("/v1/user",u,i,n)}},{key:"changeUserPassword",value:function(e){var t=e.currentPassword,r=e.password,i=e.auth,n=e.context,u={current_password:t,password:r};return this.put("/v1/user",u,i,n)}},{key:"listSIMs",value:function(e){var t=e.iccid,r=e.deviceId,i=e.deviceName,n=e.page,u=e.perPage,o=e.product,a=e.auth,s=e.context,c=o?"/v1/products/"+o+"/sims":"/v1/sims",d=o?{iccid:t,deviceId:r,deviceName:i,page:n,per_page:u}:void 0;return this.get(c,a,d,s)}},{key:"getSIMDataUsage",value:function(e){var t=e.iccid,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/sims/"+t+"/data_usage":"/v1/sims/"+t+"/data_usage";return this.get(u,i,void 0,n)}},{key:"getFleetDataUsage",value:function(e){var t=e.product,r=e.auth,i=e.context;return this.get("/v1/products/"+t+"/sims/data_usage",r,void 0,i)}},{key:"checkSIM",value:function(e){var t=e.iccid,r=e.auth,i=e.context;return this.head("/v1/sims/"+t,r,void 0,i)}},{key:"activateSIM",value:function(e){var t=e.iccid,r=e.iccids,i=e.country,n=e.promoCode,u=e.product,o=e.auth,a=e.context;r=r||[t];var s=u?"/v1/products/"+u+"/sims":"/v1/sims/"+t,c=u?{sims:r,country:i}:{country:i,promoCode:n,action:"activate"},d=u?"post":"put";return this.request({uri:s,method:d,data:c,auth:o,context:a})}},{key:"deactivateSIM",value:function(e){var t=e.iccid,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/sims/"+t:"/v1/sims/"+t,o={action:"deactivate"};return this.put(u,o,i,n)}},{key:"reactivateSIM",value:function(e){var t=e.iccid,r=e.mbLimit,i=e.product,n=e.auth,u=e.context,o=i?"/v1/products/"+i+"/sims/"+t:"/v1/sims/"+t,a={mb_limit:r,action:"reactivate"};return this.put(o,a,n,u)}},{key:"updateSIM",value:function(e){var t=e.iccid,r=e.mbLimit,i=e.product,n=e.auth,u=e.context,o=i?"/v1/products/"+i+"/sims/"+t:"/v1/sims/"+t,a={mb_limit:r};return this.put(o,a,n,u)}},{key:"removeSIM",value:function(e){var t=e.iccid,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/sims/"+t:"/v1/sims/"+t;return this.delete(u,void 0,i,n)}},{key:"listBuildTargets",value:function(e){var t=e.onlyFeatured,r=e.auth,i=e.context,n=void 0;return void 0!==t&&(n={featured:!!t}),this.get("/v1/build_targets",r,n,i)}},{key:"listLibraries",value:function(e){var t=e.page,r=e.limit,i=e.filter,n=e.sort,u=e.architectures,o=e.category,a=e.scope,s=e.excludeScopes,c=e.auth,d=e.context;return this.get("/v1/libraries",c,{page:t,filter:i,limit:r,sort:n,architectures:this._asList(u),category:o,scope:a,excludeScopes:this._asList(s)},d)}},{key:"_asList",value:function(e){return Array.isArray(e)?e.join(","):e}},{key:"getLibrary",value:function(e){var t=e.name,r=e.version,i=e.auth,n=e.context;return this.get("/v1/libraries/"+t,i,{version:r},n)}},{key:"getLibraryVersions",value:function(e){var t=e.name,r=e.page,i=e.limit,n=e.auth,u=e.context;return this.get("/v1/libraries/"+t+"/versions",n,{page:r,limit:i},u)}},{key:"contributeLibrary",value:function(e){var t=e.archive,r=e.auth,i=e.context,n={"archive.tar.gz":t};return this.request({uri:"/v1/libraries",files:n,auth:r,context:i,method:"post"})}},{key:"publishLibrary",value:function(e){var t=e.name,r=e.auth,i=e.context;return this.request({uri:"/v1/libraries/"+t,auth:r,context:i,method:"patch",data:{visibility:"public"}})}},{key:"deleteLibrary",value:function(e){var t=e.name,r=e.force,i=e.auth,n=e.context;return this.delete("/v1/libraries/"+t,{force:r},i,n)}},{key:"downloadFile",value:function(e){var t=e.url,r=_superagent2.default.get(t);return _superagent2.default.getXHR?r.responseType&&(r=r.responseType("arraybuffer").then(function(e){return e.body=e.xhr.response,e})):r=r.buffer(!0).parse(_superagentBinaryParser2.default),r.then(function(e){return e.body})}},{key:"listOAuthClients",value:function(e){var t=e.product,r=e.auth,i=e.context,n=t?"/v1/products/"+t+"/clients":"/v1/clients";return this.get(n,r,void 0,i)}},{key:"createOAuthClient",value:function(e){var t=e.name,r=e.type,i=e.redirect_uri,n=e.scope,u=e.product,o=e.auth,a=e.context,s=u?"/v1/products/"+u+"/clients":"/v1/clients",c={name:t,type:r,redirect_uri:i,scope:n};return this.post(s,c,o,a)}},{key:"updateOAuthClient",value:function(e){var t=e.clientId,r=e.name,i=e.scope,n=e.product,u=e.auth,o=e.context,a=n?"/v1/products/"+n+"/clients/"+t:"/v1/clients/"+t,s={name:r,scope:i};return this.put(a,s,u,o)}},{key:"deleteOAuthClient",value:function(e){var t=e.clientId,r=e.product,i=e.auth,n=e.context,u=r?"/v1/products/"+r+"/clients/"+t:"/v1/clients/"+t;return this.delete(u,void 0,i,n)}},{key:"listProducts",value:function(e){var t=e.auth,r=e.context;return this.get("/v1/products",t,void 0,r)}},{key:"getProduct",value:function(e){var t=e.product,r=e.auth,i=e.context;return this.get("/v1/products/"+t,r,void 0,i)}},{key:"listProductFirmware",value:function(e){var t=e.product,r=e.auth,i=e.context;return this.get("/v1/products/"+t+"/firmware",r,void 0,i)}},{key:"uploadProductFirmware",value:function(e){var t=e.file,r=e.version,i=e.title,n=e.description,u=e.product,o=e.auth,a=e.context;return this.request({uri:"/v1/products/"+u+"/firmware",method:"post",files:{"firmware.bin":t},form:{version:r,title:i,description:n},context:a,auth:o})}},{key:"getProductFirmware",value:function(e){var t=e.version,r=e.product,i=e.auth,n=e.context;return this.get("/v1/products/"+r+"/firmware/"+t,i,void 0,n)}},{key:"updateProductFirmware",value:function(e){var t=e.version,r=e.title,i=e.description,n=e.product,u=e.auth,o=e.context,a="/v1/products/"+n+"/firmware/"+t;return this.put(a,{title:r,description:i},u,o)}},{key:"downloadProductFirmware",value:function(e){var t=e.version,r=e.product,i=e.auth,n=(e.context,"/v1/products/"+r+"/firmware/"+t+"/binary"),u=(0,_superagent2.default)("get",n);return u.use(this.prefix),this.headers(u,i),u}},{key:"releaseProductFirmware",value:function(e){var t=e.version,r=e.product,i=e.auth,n=e.context,u="/v1/products/"+r+"/firmware/release";return this.put(u,{version:t},i,n)}},{key:"listTeamMembers",value:function(e){var t=e.product,r=e.auth,i=e.context;return this.get("/v1/products/"+t+"/team",r,void 0,i)}},{key:"inviteTeamMember",value:function(e){var t=e.username,r=e.product,i=e.auth,n=e.context;return this.post("/v1/products/"+r+"/team",{username:t},i,n)}},{key:"removeTeamMember",value:function(e){var t=e.username,r=e.product,i=e.auth,n=e.context;return this.delete("/v1/products/"+r+"/team/"+t,void 0,i,n)}},{key:"lookupSerialNumber",value:function(e){var t=e.serialNumber,r=e.auth,i=e.context;return this.get("/v1/serial_numbers/"+t,r,void 0,i)}},{key:"createMeshNetwork",value:function(e){var t=e.name,r=e.deviceId,i=e.iccid,n=e.auth,u=e.context;return this.post("/v1/networks",{name:t,device_id:r,iccid:i},n,u)}},{key:"removeMeshNetwork",value:function(e){var t=e.networkId,r=e.auth,i=e.context;return this.delete("/v1/networks/"+t,void 0,r,i)}},{key:"listMeshNetworks",value:function(e){var t=e.auth,r=e.context,i=e.page,n=e.perPage,u=i?{page:i,per_page:n}:void 0;return this.get("/v1/networks",t,u,r)}},{key:"getMeshNetwork",value:function(e){var t=e.networkId,r=e.auth,i=e.context;return this.get("/v1/networks/"+t,r,void 0,i)}},{key:"updateMeshNetwork",value:function(e){var t=e.networkId,r=e.action,i=e.deviceId,n=e.auth,u=e.context;return this.put("/v1/networks/"+t,{action:r,device_id:i},n,u)}},{key:"addMeshNetworkDevice",value:function(e){var t=e.networkId,r=e.deviceId,i=e.auth,n=e.context;return this.updateMeshNetwork({action:"add-device",networkId:t,deviceId:r,auth:i,context:n})}},{key:"removeMeshNetworkDevice",value:function(e){var t=e.networkId,r=e.deviceId,i=e.auth,n=e.context;return t?this.updateMeshNetwork({action:"remove-device",networkId:t,deviceId:r,auth:i,context:n}):this.delete("/v1/devices/"+r+"/network",void 0,i,n)}},{key:"listMeshNetworkDevices",value:function(e){var t=e.networkId,r=e.auth,i=e.role,n=e.page,u=e.perPage,o=e.context,a=i||n?{role:i,page:n,per_page:u}:void 0;return this.get("/v1/networks/"+t+"/devices",r,a,o)}},{key:"deviceUri",value:function(e){var t=e.deviceId,r=e.product;return r?"/v1/products/"+r+"/devices/"+t:"/v1/devices/"+t}},{key:"get",value:function(e,t,r,i){return i=this._buildContext(i),this.agent.get(e,t,r,i)}},{key:"head",value:function(e,t,r,i){return i=this._buildContext(i),this.agent.head(e,t,r,i)}},{key:"post",value:function(e,t,r,i){return i=this._buildContext(i),this.agent.post(e,t,r,i)}},{key:"put",value:function(e,t,r,i){return i=this._buildContext(i),this.agent.put(e,t,r,i)}},{key:"delete",value:function(e,t,r,i){return i=this._buildContext(i),this.agent.delete(e,t,r,i)}},{key:"request",value:function(e){return e.context=this._buildContext(e.context),this.agent.request(e)}},{key:"client",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new _Client2.default((0,_assign2.default)({api:this},e))}}]),e}();Particle.prototype.removeAccessToken=Particle.prototype.deleteAccessToken,exports.default=Particle,module.exports=exports.default; +},{"./Agent":1,"./Client":2,"./Defaults":3,"./EventStream":4,"./superagent-binary-parser":7,"babel-runtime/core-js/object/assign":10,"babel-runtime/helpers/classCallCheck":20,"babel-runtime/helpers/createClass":21,"superagent":170}],7:[function(require,module,exports){ (function (Buffer){ "use strict";function binaryParser(e,r){var t=[];e.on("data",function(e){return t.push(e)}),e.on("end",function(){return r(null,Buffer.concat(t))})}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=binaryParser,module.exports=exports.default; }).call(this,require("buffer").Buffer) -},{"buffer":29}],8:[function(require,module,exports){ +},{"buffer":28}],8:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/get-iterator"),__esModule:!0}; -},{"core-js/library/fn/get-iterator":32}],9:[function(require,module,exports){ +},{"core-js/library/fn/get-iterator":31}],9:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/is-iterable"),__esModule:!0}; -},{"core-js/library/fn/is-iterable":33}],10:[function(require,module,exports){ -module.exports={default:require("core-js/library/fn/number/is-nan"),__esModule:!0}; -},{"core-js/library/fn/number/is-nan":34}],11:[function(require,module,exports){ +},{"core-js/library/fn/is-iterable":32}],10:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/object/assign"),__esModule:!0}; -},{"core-js/library/fn/object/assign":35}],12:[function(require,module,exports){ +},{"core-js/library/fn/object/assign":33}],11:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/object/create"),__esModule:!0}; -},{"core-js/library/fn/object/create":36}],13:[function(require,module,exports){ +},{"core-js/library/fn/object/create":34}],12:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/object/define-property"),__esModule:!0}; -},{"core-js/library/fn/object/define-property":37}],14:[function(require,module,exports){ +},{"core-js/library/fn/object/define-property":35}],13:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/object/entries"),__esModule:!0}; -},{"core-js/library/fn/object/entries":38}],15:[function(require,module,exports){ +},{"core-js/library/fn/object/entries":36}],14:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/object/get-prototype-of"),__esModule:!0}; -},{"core-js/library/fn/object/get-prototype-of":39}],16:[function(require,module,exports){ +},{"core-js/library/fn/object/get-prototype-of":37}],15:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/object/keys"),__esModule:!0}; -},{"core-js/library/fn/object/keys":40}],17:[function(require,module,exports){ +},{"core-js/library/fn/object/keys":38}],16:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/object/set-prototype-of"),__esModule:!0}; -},{"core-js/library/fn/object/set-prototype-of":41}],18:[function(require,module,exports){ +},{"core-js/library/fn/object/set-prototype-of":39}],17:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/promise"),__esModule:!0}; -},{"core-js/library/fn/promise":42}],19:[function(require,module,exports){ +},{"core-js/library/fn/promise":40}],18:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/symbol"),__esModule:!0}; -},{"core-js/library/fn/symbol":43}],20:[function(require,module,exports){ +},{"core-js/library/fn/symbol":41}],19:[function(require,module,exports){ module.exports={default:require("core-js/library/fn/symbol/iterator"),__esModule:!0}; -},{"core-js/library/fn/symbol/iterator":44}],21:[function(require,module,exports){ +},{"core-js/library/fn/symbol/iterator":42}],20:[function(require,module,exports){ "use strict";exports.__esModule=!0,exports.default=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}; -},{}],22:[function(require,module,exports){ +},{}],21:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}exports.__esModule=!0;var _defineProperty=require("../core-js/object/define-property"),_defineProperty2=_interopRequireDefault(_defineProperty);exports.default=function(){function e(e,r){for(var t=0;t0)throw new Error("Invalid string. Length must be a multiple of 4");return"="===o[r-2]?2:"="===o[r-1]?1:0}function byteLength(o){return 3*o.length/4-placeHoldersCount(o)}function toByteArray(o){var r,e,t,u,n,p=o.length;u=placeHoldersCount(o),n=new Arr(3*p/4-u),e=u>0?p-4:p;var a=0;for(r=0;r>16&255,n[a++]=t>>8&255,n[a++]=255&t;return 2===u?(t=revLookup[o.charCodeAt(r)]<<2|revLookup[o.charCodeAt(r+1)]>>4,n[a++]=255&t):1===u&&(t=revLookup[o.charCodeAt(r)]<<10|revLookup[o.charCodeAt(r+1)]<<4|revLookup[o.charCodeAt(r+2)]>>2,n[a++]=t>>8&255,n[a++]=255&t),n}function tripletToBase64(o){return lookup[o>>18&63]+lookup[o>>12&63]+lookup[o>>6&63]+lookup[63&o]}function encodeChunk(o,r,e){for(var t,u=[],n=r;na?a:p+16383));return 1===t?(r=o[e-1],u+=lookup[r>>2],u+=lookup[r<<4&63],u+="=="):2===t&&(r=(o[e-2]<<8)+o[e-1],u+=lookup[r>>10],u+=lookup[r>>4&63],u+=lookup[r<<2&63],u+="="),n.push(u),n.join("")}exports.byteLength=byteLength,exports.toByteArray=toByteArray,exports.fromByteArray=fromByteArray;for(var lookup=[],revLookup=[],Arr="undefined"!=typeof Uint8Array?Uint8Array:Array,code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=0,len=code.length;i=kMaxLength())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+kMaxLength().toString(16)+" bytes");return 0|t}function SlowBuffer(t){return+t!=t&&(t=0),Buffer.alloc(+t)}function byteLength(t,e){if(Buffer.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return utf8ToBytes(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return base64ToBytes(t).length;default:if(n)return utf8ToBytes(t).length;e=(""+e).toLowerCase(),n=!0}}function slowToString(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if(r>>>=0,e>>>=0,r<=e)return"";for(t||(t="utf8");;)switch(t){case"hex":return hexSlice(this,e,r);case"utf8":case"utf-8":return utf8Slice(this,e,r);case"ascii":return asciiSlice(this,e,r);case"latin1":case"binary":return latin1Slice(this,e,r);case"base64":return base64Slice(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function swap(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function bidirectionalIndexOf(t,e,r,n,f){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=f?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(f)return-1;r=t.length-1}else if(r<0){if(!f)return-1;r=0}if("string"==typeof e&&(e=Buffer.from(e,n)),Buffer.isBuffer(e))return 0===e.length?-1:arrayIndexOf(t,e,r,n,f);if("number"==typeof e)return e&=255,Buffer.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?f?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):arrayIndexOf(t,[e],r,n,f);throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(t,e,r,n,f){function i(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}var o=1,u=t.length,s=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;o=2,u/=2,s/=2,r/=2}var a;if(f){var h=-1;for(a=r;au&&(r=u-s),a=r;a>=0;a--){for(var c=!0,l=0;lf&&(n=f):n=f;var i=e.length;if(i%2!=0)throw new TypeError("Invalid hex string");n>i/2&&(n=i/2);for(var o=0;o239?4:i>223?3:i>191?2:1;if(f+u<=r){var s,a,h,c;switch(u){case 1:i<128&&(o=i);break;case 2:s=t[f+1],128==(192&s)&&(c=(31&i)<<6|63&s)>127&&(o=c);break;case 3:s=t[f+1],a=t[f+2],128==(192&s)&&128==(192&a)&&(c=(15&i)<<12|(63&s)<<6|63&a)>2047&&(c<55296||c>57343)&&(o=c);break;case 4:s=t[f+1],a=t[f+2],h=t[f+3],128==(192&s)&&128==(192&a)&&128==(192&h)&&(c=(15&i)<<18|(63&s)<<12|(63&a)<<6|63&h)>65535&&c<1114112&&(o=c)}}null===o?(o=65533,u=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),f+=u}return decodeCodePointsArray(n)}function decodeCodePointsArray(t){var e=t.length;if(e<=MAX_ARGUMENTS_LENGTH)return String.fromCharCode.apply(String,t);for(var r="",n=0;nn)&&(r=n);for(var f="",i=e;ir)throw new RangeError("Trying to access beyond buffer length")}function checkInt(t,e,r,n,f,i){if(!Buffer.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>f||et.length)throw new RangeError("Index out of range")}function objectWriteUInt16(t,e,r,n){e<0&&(e=65535+e+1);for(var f=0,i=Math.min(t.length-r,2);f>>8*(n?f:1-f)}function objectWriteUInt32(t,e,r,n){e<0&&(e=4294967295+e+1);for(var f=0,i=Math.min(t.length-r,4);f>>8*(n?f:3-f)&255}function checkIEEE754(t,e,r,n,f,i){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function writeFloat(t,e,r,n,f){return f||checkIEEE754(t,e,r,4,3.4028234663852886e38,-3.4028234663852886e38),ieee754.write(t,e,r,n,23,4),r+4}function writeDouble(t,e,r,n,f){return f||checkIEEE754(t,e,r,8,1.7976931348623157e308,-1.7976931348623157e308),ieee754.write(t,e,r,n,52,8),r+8}function base64clean(t){if(t=stringtrim(t).replace(INVALID_BASE64_RE,""),t.length<2)return"";for(;t.length%4!=0;)t+="=";return t}function stringtrim(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function toHex(t){return t<16?"0"+t.toString(16):t.toString(16)}function utf8ToBytes(t,e){e=e||1/0;for(var r,n=t.length,f=null,i=[],o=0;o55295&&r<57344){if(!f){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(o+1===n){(e-=3)>-1&&i.push(239,191,189);continue}f=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),f=r;continue}r=65536+(f-55296<<10|r-56320)}else f&&(e-=3)>-1&&i.push(239,191,189);if(f=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function asciiToBytes(t){for(var e=[],r=0;r>8,f=r%256,i.push(f),i.push(n);return i}function base64ToBytes(t){return base64.toByteArray(base64clean(t))}function blitBuffer(t,e,r,n){for(var f=0;f=e.length||f>=t.length);++f)e[f+r]=t[f];return f}function isnan(t){return t!==t}var base64=require("base64-js"),ieee754=require("ieee754"),isArray=require("isarray");exports.Buffer=Buffer,exports.SlowBuffer=SlowBuffer,exports.INSPECT_MAX_BYTES=50,Buffer.TYPED_ARRAY_SUPPORT=void 0!==global.TYPED_ARRAY_SUPPORT?global.TYPED_ARRAY_SUPPORT:typedArraySupport(),exports.kMaxLength=kMaxLength(),Buffer.poolSize=8192,Buffer._augment=function(t){return t.__proto__=Buffer.prototype,t},Buffer.from=function(t,e,r){return from(null,t,e,r)},Buffer.TYPED_ARRAY_SUPPORT&&(Buffer.prototype.__proto__=Uint8Array.prototype,Buffer.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&Buffer[Symbol.species]===Buffer&&Object.defineProperty(Buffer,Symbol.species,{value:null,configurable:!0})),Buffer.alloc=function(t,e,r){return alloc(null,t,e,r)},Buffer.allocUnsafe=function(t){return allocUnsafe(null,t)},Buffer.allocUnsafeSlow=function(t){return allocUnsafe(null,t)},Buffer.isBuffer=function(t){return!(null==t||!t._isBuffer)},Buffer.compare=function(t,e){if(!Buffer.isBuffer(t)||!Buffer.isBuffer(e))throw new TypeError("Arguments must be Buffers");if(t===e)return 0;for(var r=t.length,n=e.length,f=0,i=Math.min(r,n);f0&&(t=this.toString("hex",0,e).match(/.{2}/g).join(" "),this.length>e&&(t+=" ... ")),""},Buffer.prototype.compare=function(t,e,r,n,f){if(!Buffer.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===f&&(f=this.length),e<0||r>t.length||n<0||f>this.length)throw new RangeError("out of range index");if(n>=f&&e>=r)return 0;if(n>=f)return-1;if(e>=r)return 1;if(e>>>=0,r>>>=0,n>>>=0,f>>>=0,this===t)return 0;for(var i=f-n,o=r-e,u=Math.min(i,o),s=this.slice(n,f),a=t.slice(e,r),h=0;hf)&&(r=f),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var i=!1;;)switch(n){case"hex":return hexWrite(this,t,e,r);case"utf8":case"utf-8":return utf8Write(this,t,e,r);case"ascii":return asciiWrite(this,t,e,r);case"latin1":case"binary":return latin1Write(this,t,e,r);case"base64":return base64Write(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,t,e,r);default:if(i)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),i=!0}},Buffer.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var MAX_ARGUMENTS_LENGTH=4096;Buffer.prototype.slice=function(t,e){var r=this.length;t=~~t,e=void 0===e?r:~~e,t<0?(t+=r)<0&&(t=0):t>r&&(t=r),e<0?(e+=r)<0&&(e=0):e>r&&(e=r),e0&&(f*=256);)n+=this[t+--e]*f;return n},Buffer.prototype.readUInt8=function(t,e){return e||checkOffset(t,1,this.length),this[t]},Buffer.prototype.readUInt16LE=function(t,e){return e||checkOffset(t,2,this.length),this[t]|this[t+1]<<8},Buffer.prototype.readUInt16BE=function(t,e){return e||checkOffset(t,2,this.length),this[t]<<8|this[t+1]},Buffer.prototype.readUInt32LE=function(t,e){return e||checkOffset(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},Buffer.prototype.readUInt32BE=function(t,e){return e||checkOffset(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},Buffer.prototype.readIntLE=function(t,e,r){t|=0,e|=0,r||checkOffset(t,e,this.length);for(var n=this[t],f=1,i=0;++i=f&&(n-=Math.pow(2,8*e)),n},Buffer.prototype.readIntBE=function(t,e,r){t|=0,e|=0,r||checkOffset(t,e,this.length);for(var n=e,f=1,i=this[t+--n];n>0&&(f*=256);)i+=this[t+--n]*f;return f*=128,i>=f&&(i-=Math.pow(2,8*e)),i},Buffer.prototype.readInt8=function(t,e){return e||checkOffset(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},Buffer.prototype.readInt16LE=function(t,e){e||checkOffset(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},Buffer.prototype.readInt16BE=function(t,e){e||checkOffset(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},Buffer.prototype.readInt32LE=function(t,e){return e||checkOffset(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},Buffer.prototype.readInt32BE=function(t,e){return e||checkOffset(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},Buffer.prototype.readFloatLE=function(t,e){return e||checkOffset(t,4,this.length),ieee754.read(this,t,!0,23,4)},Buffer.prototype.readFloatBE=function(t,e){return e||checkOffset(t,4,this.length),ieee754.read(this,t,!1,23,4)},Buffer.prototype.readDoubleLE=function(t,e){return e||checkOffset(t,8,this.length),ieee754.read(this,t,!0,52,8)},Buffer.prototype.readDoubleBE=function(t,e){return e||checkOffset(t,8,this.length),ieee754.read(this,t,!1,52,8)},Buffer.prototype.writeUIntLE=function(t,e,r,n){if(t=+t,e|=0,r|=0,!n){checkInt(this,t,e,r,Math.pow(2,8*r)-1,0)}var f=1,i=0;for(this[e]=255&t;++i=0&&(i*=256);)this[e+f]=t/i&255;return e+r},Buffer.prototype.writeUInt8=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,1,255,0),Buffer.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},Buffer.prototype.writeUInt16LE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):objectWriteUInt16(this,t,e,!0),e+2},Buffer.prototype.writeUInt16BE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):objectWriteUInt16(this,t,e,!1),e+2},Buffer.prototype.writeUInt32LE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,4,4294967295,0),Buffer.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):objectWriteUInt32(this,t,e,!0),e+4},Buffer.prototype.writeUInt32BE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,4,4294967295,0),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):objectWriteUInt32(this,t,e,!1),e+4},Buffer.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e|=0,!n){var f=Math.pow(2,8*r-1);checkInt(this,t,e,r,f-1,-f)}var i=0,o=1,u=0;for(this[e]=255&t;++i>0)-u&255;return e+r},Buffer.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e|=0,!n){var f=Math.pow(2,8*r-1);checkInt(this,t,e,r,f-1,-f)}var i=r-1,o=1,u=0;for(this[e+i]=255&t;--i>=0&&(o*=256);)t<0&&0===u&&0!==this[e+i+1]&&(u=1),this[e+i]=(t/o>>0)-u&255;return e+r},Buffer.prototype.writeInt8=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,1,127,-128),Buffer.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},Buffer.prototype.writeInt16LE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):objectWriteUInt16(this,t,e,!0),e+2},Buffer.prototype.writeInt16BE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):objectWriteUInt16(this,t,e,!1),e+2},Buffer.prototype.writeInt32LE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,4,2147483647,-2147483648),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):objectWriteUInt32(this,t,e,!0),e+4},Buffer.prototype.writeInt32BE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):objectWriteUInt32(this,t,e,!1),e+4},Buffer.prototype.writeFloatLE=function(t,e,r){return writeFloat(this,t,e,!0,r)},Buffer.prototype.writeFloatBE=function(t,e,r){return writeFloat(this,t,e,!1,r)},Buffer.prototype.writeDoubleLE=function(t,e,r){return writeDouble(this,t,e,!0,r)},Buffer.prototype.writeDoubleBE=function(t,e,r){return writeDouble(this,t,e,!1,r)},Buffer.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--f)t[f+e]=this[f+r];else if(i<1e3||!Buffer.TYPED_ARRAY_SUPPORT)for(f=0;f>>=0,r=void 0===r?this.length:r>>>0,t||(t=0);var i;if("number"==typeof t)for(i=e;if;)if((n=u[f++])!=n)return!0}else for(;i>f;f++)if((e||f in u)&&u[f]===o)return e||f||0;return!e&&-1}}; -},{"./_to-absolute-index":109,"./_to-iobject":111,"./_to-length":112}],50:[function(require,module,exports){ +},{"./_to-absolute-index":107,"./_to-iobject":109,"./_to-length":110}],48:[function(require,module,exports){ var cof=require("./_cof"),TAG=require("./_wks")("toStringTag"),ARG="Arguments"==cof(function(){return arguments}()),tryGet=function(t,e){try{return t[e]}catch(t){}};module.exports=function(t){var e,r,n;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=tryGet(e=Object(t),TAG))?r:ARG?cof(e):"Object"==(n=cof(e))&&"function"==typeof e.callee?"Arguments":n}; -},{"./_cof":51,"./_wks":118}],51:[function(require,module,exports){ +},{"./_cof":49,"./_wks":116}],49:[function(require,module,exports){ var toString={}.toString;module.exports=function(t){return toString.call(t).slice(8,-1)}; -},{}],52:[function(require,module,exports){ +},{}],50:[function(require,module,exports){ var core=module.exports={version:"2.5.1"};"number"==typeof __e&&(__e=core); -},{}],53:[function(require,module,exports){ +},{}],51:[function(require,module,exports){ var aFunction=require("./_a-function");module.exports=function(n,r,t){if(aFunction(n),void 0===r)return n;switch(t){case 1:return function(t){return n.call(r,t)};case 2:return function(t,u){return n.call(r,t,u)};case 3:return function(t,u,e){return n.call(r,t,u,e)}}return function(){return n.apply(r,arguments)}}; -},{"./_a-function":45}],54:[function(require,module,exports){ +},{"./_a-function":43}],52:[function(require,module,exports){ module.exports=function(o){if(void 0==o)throw TypeError("Can't call method on "+o);return o}; -},{}],55:[function(require,module,exports){ +},{}],53:[function(require,module,exports){ module.exports=!require("./_fails")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}); -},{"./_fails":60}],56:[function(require,module,exports){ +},{"./_fails":58}],54:[function(require,module,exports){ var isObject=require("./_is-object"),document=require("./_global").document,is=isObject(document)&&isObject(document.createElement);module.exports=function(e){return is?document.createElement(e):{}}; -},{"./_global":62,"./_is-object":71}],57:[function(require,module,exports){ +},{"./_global":60,"./_is-object":69}],55:[function(require,module,exports){ module.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","); -},{}],58:[function(require,module,exports){ +},{}],56:[function(require,module,exports){ var getKeys=require("./_object-keys"),gOPS=require("./_object-gops"),pIE=require("./_object-pie");module.exports=function(e){var r=getKeys(e),t=gOPS.f;if(t)for(var o,u=t(e),g=pIE.f,i=0;u.length>i;)g.call(e,o=u[i++])&&r.push(o);return r}; -},{"./_object-gops":89,"./_object-keys":92,"./_object-pie":93}],59:[function(require,module,exports){ +},{"./_object-gops":87,"./_object-keys":90,"./_object-pie":91}],57:[function(require,module,exports){ var global=require("./_global"),core=require("./_core"),ctx=require("./_ctx"),hide=require("./_hide"),PROTOTYPE="prototype",$export=function(e,r,t){var o,n,p,i=e&$export.F,x=e&$export.G,c=e&$export.S,l=e&$export.P,u=e&$export.B,a=e&$export.W,$=x?core:core[r]||(core[r]={}),P=$[PROTOTYPE],f=x?global:c?global[r]:(global[r]||{})[PROTOTYPE];x&&(t=r);for(o in t)(n=!i&&f&&void 0!==f[o])&&o in $||(p=n?f[o]:t[o],$[o]=x&&"function"!=typeof f[o]?t[o]:u&&n?ctx(p,global):a&&f[o]==p?function(e){var r=function(r,t,o){if(this instanceof e){switch(arguments.length){case 0:return new e;case 1:return new e(r);case 2:return new e(r,t)}return new e(r,t,o)}return e.apply(this,arguments)};return r[PROTOTYPE]=e[PROTOTYPE],r}(p):l&&"function"==typeof p?ctx(Function.call,p):p,l&&(($.virtual||($.virtual={}))[o]=p,e&$export.R&&P&&!P[o]&&hide(P,o,p)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,module.exports=$export; -},{"./_core":52,"./_ctx":53,"./_global":62,"./_hide":64}],60:[function(require,module,exports){ +},{"./_core":50,"./_ctx":51,"./_global":60,"./_hide":62}],58:[function(require,module,exports){ module.exports=function(r){try{return!!r()}catch(r){return!0}}; -},{}],61:[function(require,module,exports){ +},{}],59:[function(require,module,exports){ var ctx=require("./_ctx"),call=require("./_iter-call"),isArrayIter=require("./_is-array-iter"),anObject=require("./_an-object"),toLength=require("./_to-length"),getIterFn=require("./core.get-iterator-method"),BREAK={},RETURN={},exports=module.exports=function(e,r,t,o,i){var n,a,R,c,l=i?function(){return e}:getIterFn(e),u=ctx(t,o,r?2:1),E=0;if("function"!=typeof l)throw TypeError(e+" is not iterable!");if(isArrayIter(l)){for(n=toLength(e.length);n>E;E++)if((c=r?u(anObject(a=e[E])[0],a[1]):u(e[E]))===BREAK||c===RETURN)return c}else for(R=l.call(e);!(a=R.next()).done;)if((c=call(R,u,a.value,r))===BREAK||c===RETURN)return c};exports.BREAK=BREAK,exports.RETURN=RETURN; -},{"./_an-object":48,"./_ctx":53,"./_is-array-iter":69,"./_iter-call":72,"./_to-length":112,"./core.get-iterator-method":119}],62:[function(require,module,exports){ +},{"./_an-object":46,"./_ctx":51,"./_is-array-iter":67,"./_iter-call":70,"./_to-length":110,"./core.get-iterator-method":117}],60:[function(require,module,exports){ var global=module.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=global); -},{}],63:[function(require,module,exports){ +},{}],61:[function(require,module,exports){ var hasOwnProperty={}.hasOwnProperty;module.exports=function(r,e){return hasOwnProperty.call(r,e)}; -},{}],64:[function(require,module,exports){ +},{}],62:[function(require,module,exports){ var dP=require("./_object-dp"),createDesc=require("./_property-desc");module.exports=require("./_descriptors")?function(e,r,t){return dP.f(e,r,createDesc(1,t))}:function(e,r,t){return e[r]=t,e}; -},{"./_descriptors":55,"./_object-dp":84,"./_property-desc":98}],65:[function(require,module,exports){ +},{"./_descriptors":53,"./_object-dp":82,"./_property-desc":96}],63:[function(require,module,exports){ var document=require("./_global").document;module.exports=document&&document.documentElement; -},{"./_global":62}],66:[function(require,module,exports){ +},{"./_global":60}],64:[function(require,module,exports){ module.exports=!require("./_descriptors")&&!require("./_fails")(function(){return 7!=Object.defineProperty(require("./_dom-create")("div"),"a",{get:function(){return 7}}).a}); -},{"./_descriptors":55,"./_dom-create":56,"./_fails":60}],67:[function(require,module,exports){ +},{"./_descriptors":53,"./_dom-create":54,"./_fails":58}],65:[function(require,module,exports){ module.exports=function(e,r,l){var a=void 0===l;switch(r.length){case 0:return a?e():e.call(l);case 1:return a?e(r[0]):e.call(l,r[0]);case 2:return a?e(r[0],r[1]):e.call(l,r[0],r[1]);case 3:return a?e(r[0],r[1],r[2]):e.call(l,r[0],r[1],r[2]);case 4:return a?e(r[0],r[1],r[2],r[3]):e.call(l,r[0],r[1],r[2],r[3])}return e.apply(l,r)}; -},{}],68:[function(require,module,exports){ +},{}],66:[function(require,module,exports){ var cof=require("./_cof");module.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==cof(e)?e.split(""):Object(e)}; -},{"./_cof":51}],69:[function(require,module,exports){ +},{"./_cof":49}],67:[function(require,module,exports){ var Iterators=require("./_iterators"),ITERATOR=require("./_wks")("iterator"),ArrayProto=Array.prototype;module.exports=function(r){return void 0!==r&&(Iterators.Array===r||ArrayProto[ITERATOR]===r)}; -},{"./_iterators":77,"./_wks":118}],70:[function(require,module,exports){ +},{"./_iterators":75,"./_wks":116}],68:[function(require,module,exports){ var cof=require("./_cof");module.exports=Array.isArray||function(r){return"Array"==cof(r)}; -},{"./_cof":51}],71:[function(require,module,exports){ +},{"./_cof":49}],69:[function(require,module,exports){ module.exports=function(o){return"object"==typeof o?null!==o:"function"==typeof o}; -},{}],72:[function(require,module,exports){ +},{}],70:[function(require,module,exports){ var anObject=require("./_an-object");module.exports=function(r,t,e,a){try{return a?t(anObject(e)[0],e[1]):t(e)}catch(t){var c=r.return;throw void 0!==c&&anObject(c.call(r)),t}}; -},{"./_an-object":48}],73:[function(require,module,exports){ +},{"./_an-object":46}],71:[function(require,module,exports){ "use strict";var create=require("./_object-create"),descriptor=require("./_property-desc"),setToStringTag=require("./_set-to-string-tag"),IteratorPrototype={};require("./_hide")(IteratorPrototype,require("./_wks")("iterator"),function(){return this}),module.exports=function(r,t,e){r.prototype=create(IteratorPrototype,{next:descriptor(1,e)}),setToStringTag(r,t+" Iterator")}; -},{"./_hide":64,"./_object-create":83,"./_property-desc":98,"./_set-to-string-tag":103,"./_wks":118}],74:[function(require,module,exports){ +},{"./_hide":62,"./_object-create":81,"./_property-desc":96,"./_set-to-string-tag":101,"./_wks":116}],72:[function(require,module,exports){ "use strict";var LIBRARY=require("./_library"),$export=require("./_export"),redefine=require("./_redefine"),hide=require("./_hide"),has=require("./_has"),Iterators=require("./_iterators"),$iterCreate=require("./_iter-create"),setToStringTag=require("./_set-to-string-tag"),getPrototypeOf=require("./_object-gpo"),ITERATOR=require("./_wks")("iterator"),BUGGY=!([].keys&&"next"in[].keys()),FF_ITERATOR="@@iterator",KEYS="keys",VALUES="values",returnThis=function(){return this};module.exports=function(e,r,t,i,n,o,s){$iterCreate(t,r,i);var u,a,T,R=function(e){if(!BUGGY&&e in f)return f[e];switch(e){case KEYS:case VALUES:return function(){return new t(this,e)}}return function(){return new t(this,e)}},A=r+" Iterator",E=n==VALUES,c=!1,f=e.prototype,h=f[ITERATOR]||f[FF_ITERATOR]||n&&f[n],I=h||R(n),p=n?E?R("entries"):I:void 0,_="Array"==r?f.entries||h:h;if(_&&(T=getPrototypeOf(_.call(new e)))!==Object.prototype&&T.next&&(setToStringTag(T,A,!0),LIBRARY||has(T,ITERATOR)||hide(T,ITERATOR,returnThis)),E&&h&&h.name!==VALUES&&(c=!0,I=function(){return h.call(this)}),LIBRARY&&!s||!BUGGY&&!c&&f[ITERATOR]||hide(f,ITERATOR,I),Iterators[r]=I,Iterators[A]=returnThis,n)if(u={values:E?I:R(VALUES),keys:o?I:R(KEYS),entries:p},s)for(a in u)a in f||redefine(f,a,u[a]);else $export($export.P+$export.F*(BUGGY||c),r,u);return u}; -},{"./_export":59,"./_has":63,"./_hide":64,"./_iter-create":73,"./_iterators":77,"./_library":78,"./_object-gpo":90,"./_redefine":100,"./_set-to-string-tag":103,"./_wks":118}],75:[function(require,module,exports){ +},{"./_export":57,"./_has":61,"./_hide":62,"./_iter-create":71,"./_iterators":75,"./_library":76,"./_object-gpo":88,"./_redefine":98,"./_set-to-string-tag":101,"./_wks":116}],73:[function(require,module,exports){ var ITERATOR=require("./_wks")("iterator"),SAFE_CLOSING=!1;try{var riter=[7][ITERATOR]();riter.return=function(){SAFE_CLOSING=!0},Array.from(riter,function(){throw 2})}catch(r){}module.exports=function(r,t){if(!t&&!SAFE_CLOSING)return!1;var n=!1;try{var e=[7],u=e[ITERATOR]();u.next=function(){return{done:n=!0}},e[ITERATOR]=function(){return u},r(e)}catch(r){}return n}; -},{"./_wks":118}],76:[function(require,module,exports){ +},{"./_wks":116}],74:[function(require,module,exports){ module.exports=function(e,n){return{value:n,done:!!e}}; -},{}],77:[function(require,module,exports){ +},{}],75:[function(require,module,exports){ module.exports={}; -},{}],78:[function(require,module,exports){ +},{}],76:[function(require,module,exports){ module.exports=!0; -},{}],79:[function(require,module,exports){ +},{}],77:[function(require,module,exports){ var META=require("./_uid")("meta"),isObject=require("./_is-object"),has=require("./_has"),setDesc=require("./_object-dp").f,id=0,isExtensible=Object.isExtensible||function(){return!0},FREEZE=!require("./_fails")(function(){return isExtensible(Object.preventExtensions({}))}),setMeta=function(e){setDesc(e,META,{value:{i:"O"+ ++id,w:{}}})},fastKey=function(e,t){if(!isObject(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!has(e,META)){if(!isExtensible(e))return"F";if(!t)return"E";setMeta(e)}return e[META].i},getWeak=function(e,t){if(!has(e,META)){if(!isExtensible(e))return!0;if(!t)return!1;setMeta(e)}return e[META].w},onFreeze=function(e){return FREEZE&&meta.NEED&&isExtensible(e)&&!has(e,META)&&setMeta(e),e},meta=module.exports={KEY:META,NEED:!1,fastKey:fastKey,getWeak:getWeak,onFreeze:onFreeze}; -},{"./_fails":60,"./_has":63,"./_is-object":71,"./_object-dp":84,"./_uid":115}],80:[function(require,module,exports){ +},{"./_fails":58,"./_has":61,"./_is-object":69,"./_object-dp":82,"./_uid":113}],78:[function(require,module,exports){ var global=require("./_global"),macrotask=require("./_task").set,Observer=global.MutationObserver||global.WebKitMutationObserver,process=global.process,Promise=global.Promise,isNode="process"==require("./_cof")(process);module.exports=function(){var e,r,o,s=function(){var s,t;for(isNode&&(s=process.domain)&&s.exit();e;){t=e.fn,e=e.next;try{t()}catch(s){throw e?o():r=void 0,s}}r=void 0,s&&s.enter()};if(isNode)o=function(){process.nextTick(s)};else if(Observer){var t=!0,a=document.createTextNode("");new Observer(s).observe(a,{characterData:!0}),o=function(){a.data=t=!t}}else if(Promise&&Promise.resolve){var i=Promise.resolve();o=function(){i.then(s)}}else o=function(){macrotask.call(global,s)};return function(s){var t={fn:s,next:void 0};r&&(r.next=t),e||(e=t,o()),r=t}}; -},{"./_cof":51,"./_global":62,"./_task":108}],81:[function(require,module,exports){ +},{"./_cof":49,"./_global":60,"./_task":106}],79:[function(require,module,exports){ "use strict";function PromiseCapability(i){var o,r;this.promise=new i(function(i,t){if(void 0!==o||void 0!==r)throw TypeError("Bad Promise constructor");o=i,r=t}),this.resolve=aFunction(o),this.reject=aFunction(r)}var aFunction=require("./_a-function");module.exports.f=function(i){return new PromiseCapability(i)}; -},{"./_a-function":45}],82:[function(require,module,exports){ +},{"./_a-function":43}],80:[function(require,module,exports){ "use strict";var getKeys=require("./_object-keys"),gOPS=require("./_object-gops"),pIE=require("./_object-pie"),toObject=require("./_to-object"),IObject=require("./_iobject"),$assign=Object.assign;module.exports=!$assign||require("./_fails")(function(){var e={},t={},r=Symbol(),s="abcdefghijklmnopqrst";return e[r]=7,s.split("").forEach(function(e){t[e]=e}),7!=$assign({},e)[r]||Object.keys($assign({},t)).join("")!=s})?function(e,t){for(var r=toObject(e),s=arguments.length,i=1,o=gOPS.f,c=pIE.f;s>i;)for(var n,a=IObject(arguments[i++]),g=o?getKeys(a).concat(o(a)):getKeys(a),b=g.length,j=0;b>j;)c.call(a,n=g[j++])&&(r[n]=a[n]);return r}:$assign; -},{"./_fails":60,"./_iobject":68,"./_object-gops":89,"./_object-keys":92,"./_object-pie":93,"./_to-object":113}],83:[function(require,module,exports){ +},{"./_fails":58,"./_iobject":66,"./_object-gops":87,"./_object-keys":90,"./_object-pie":91,"./_to-object":111}],81:[function(require,module,exports){ var anObject=require("./_an-object"),dPs=require("./_object-dps"),enumBugKeys=require("./_enum-bug-keys"),IE_PROTO=require("./_shared-key")("IE_PROTO"),Empty=function(){},PROTOTYPE="prototype",createDict=function(){var e,t=require("./_dom-create")("iframe"),r=enumBugKeys.length;for(t.style.display="none",require("./_html").appendChild(t),t.src="javascript:",e=t.contentWindow.document,e.open(),e.write("