obniz
Version:
obniz sdk for javascript
8 lines • 388 kB
JavaScript
var Obniz=function(e){var t={};function i(r){if(t[r])return t[r].exports;var s=t[r]={i:r,l:!1,exports:{}};return e[r].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=e,i.c=t,i.d=function(e,t,r){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(i.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)i.d(r,s,function(t){return e[t]}.bind(null,s));return r},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s=20)}([function(e,t,i){const r=i(55);let s={};e.exports=class e{constructor(){this._hw={model:void 0,firmware:void 0},this.COMMAND_FUNC_ID_ERROR=255,this.ioNotUsed=255}static get schema(){return r}static get CommandClasses(){return s}static addCommandClass(e,t){s[e]=t}static framed(e,t,i){let r,s=0;if(i&&(s=i.length),s<=63)r=0;else if(s<=16383)r=1;else{if(!(s<=1073741823))throw new Error("too big payload");r=2}let n=0==r?0:1==r?1:3,a=3+n,o=new Uint8Array(a+s),h=0;for(o[h++]=127&e,o[h++]=t,o[h++]=r<<6|s>>8*n;n>0;)n--,o[h++]=s>>8*n;return 0==s?o:(o.set(i,a),o)}static dequeueOne(e){if(!e||0==e.byteLength)return null;if(e.byteLength<3)throw new Error("something wrong. buf less than 3");if(128&e[0])throw new Error("reserved bit 1");let t=127&e[0],i=e[1],r=e[2]>>6&3,s=0==r?0:1==r?1:3;if(4==r)throw new Error("invalid length");let n=(63&e[2])<<8*s,a=3,o=s;for(;o>0;)o--,n+=e[a]<<8*o,a++;return{module:t,func:i,payload:e.slice(3+s,3+s+n),next:e.slice(3+s+n)}}static compress(t,i){let r=null;function s(t,i,s){let n=e.framed(t,i,s);if(r){let e=new Uint8Array(r.length+n.length);e.set(r,0),e.set(n,r.length),r=e}else r=n}for(let e=0;e<t.length;e++){const r=t[e];r.parsed=s,r.parseFromJson(i)}return r}setHw(e){this._hw.model=e.model,this._hw.firmware=e.firmware}sendCommand(e,t){this.parsed&&this.parsed(this.module,e,t)}parseFromJson(e){}notifyFromBinary(e,t,i){if(t===this.COMMAND_FUNC_ID_ERROR){e.debug||(e.debug={});let t={module:this.module,_args:[...i]};3==i.byteLength?(t.err0=i[0],t.err1=i[1],t.function=i[2],t.message=`Error module=${this.module} func=${t.function} err0=${t.err0} returned=${t.err1}`):t.message=`Error module=${this.module} with + ${t._args}`,e.debug.error=t}}envelopWarning(e,t,i){e[t]||(e[t]={}),e[t].warning=i}envelopError(e,t,i){e[t]||(e[t]={}),e[t].error=i}isValidIO(e){return"number"==typeof e&&0<=e&&e<=11}getSchema(e){return r.getSchema(e)}validateCommandSchema(e,t,i,r){let s={valid:0,invalid:0,results:[],invalidButLike:[]};for(let n of e){let e=this.validate(n.uri,t);if(s.results.push(e),e.valid)s.valid++,n.onValid&&n.onValid.bind(this)(this.filter(n.uri,t),r);else{s.invalid++;let t=this.onlyTypeErrorMessage(e,i);t&&s.invalidButLike.push({uri:n.uri,message:t})}}return s}validate(e,t){let i=this.getSchema(e);return r.validateMultiple(t,i)}onlyTypeErrorMessage(e,t){if(e.valid)return!0;if(e.missing&&e.missing.length>0)return!1;let i=[r.errorCodes.ANY_OF_MISSING,r.errorCodes.ONE_OF_MISSING,r.errorCodes.ONE_OF_MULTIPLE,r.errorCodes.NOT_PASSED,r.errorCodes.OBJECT_REQUIRED,r.errorCodes.OBJECT_ADDITIONAL_PROPERTIES,r.errorCodes.CIRCULAR_REFERENCE,r.errorCodes.FORMAT_CUSTOM,r.errorCodes.KEYWORD_CUSTOM,r.errorCodes.UNKNOWN_PROPERTY],s=[];for(let n of e.errors){if(n.code===r.errorCodes.INVALID_TYPE){if("object"===n.params.type||"object"===n.params.expected)return!1}else if(i.includes(n.code))return!1;let e=t+n.dataPath.replace(/\//g,".");s.push(`[${e}]${n.message}`)}return s.join(";")}filter(e,t){let i=this.getSchema(e);return this._filterSchema(i,t)}_filterSchema(e,t){if(e.$ref){let i=r.getSchema(e.$ref);return this._filterSchema(i,t)}if(void 0===t)return e.default;if("string"===e.type||"integer"===e.type||"boolean"===e.type||"number"===e.type||"null"===e.type||"pass_all"===e.filter)return t;if("array"===e.type){let i=[];for(let r in t)i[r]=this._filterSchema(e.items,t[r]);return i}if("object"===e.type){let i={};for(let r in e.properties)i[r]=this._filterSchema(e.properties[r],t[r]);for(let r in e.patternProperties){let s=new RegExp(r);for(let n of Object.keys(t))s.test(n)&&(i[n]=this._filterSchema(e.patternProperties[r],t[n]))}return i}throw Error("unknown json schema type")}get WSCommandNotFoundError(){return n}};class n extends Error{}},function(e,t){e.exports={uuidFilter:function(e){return e.toLowerCase().replace(/[^0-9abcdef]/g,"")}}},function(e,t,i){(function(t){e.exports=class{constructor(e){this.obniz=e}createCanvasContext(e,t){if(!this.obniz.isNode){let i=document.createElement("canvas");return i.width=e,i.height=t,i.style["-webkit-font-smoothing"]="none",document.getElementsByTagName("body")[0].appendChild(i),i.getContext("2d")}try{const{createCanvas:e}=i(10);return e(this.width,this.height)}catch(e){throw new Error("obniz.js require node-canvas to draw rich contents. see more detail on docs")}}static _keyFilter(e,t){let i={};return"object"!=typeof e?i:i=Object.keys(e).filter(e=>t.includes(e)).reduce((t,i)=>(t[i]=e[i],t),{})}static _requiredKeys(e,t){if("object"!=typeof e)return t[0];for(let i in t)if(!(t[i]in e))return t[i];return null}static dataArray2string(e){let r=null;try{const s=i(30).StringDecoder;s&&(r=new s("utf8").write(t.from(e)))}catch(e){}return r}static string2dataArray(e){return[...t.from(e)]}}}).call(this,i(3).Buffer)},function(e,t,i){"use strict";(function(e){
/*!
* The buffer module from node.js, for the browser.
*
* @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
* @license MIT
*/
var r=i(27),s=i(28),n=i(29);function a(){return h.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function o(e,t){if(a()<t)throw new RangeError("Invalid typed array length");return h.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=h.prototype:(null===e&&(e=new h(t)),e.length=t),e}function h(e,t,i){if(!(h.TYPED_ARRAY_SUPPORT||this instanceof h))return new h(e,t,i);if("number"==typeof e){if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return u(this,e)}return c(this,e,t,i)}function c(e,t,i,r){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,i,r){if(t.byteLength,i<0||t.byteLength<i)throw new RangeError("'offset' is out of bounds");if(t.byteLength<i+(r||0))throw new RangeError("'length' is out of bounds");t=void 0===i&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,i):new Uint8Array(t,i,r);h.TYPED_ARRAY_SUPPORT?(e=t).__proto__=h.prototype:e=l(e,t);return e}(e,t,i,r):"string"==typeof t?function(e,t,i){"string"==typeof i&&""!==i||(i="utf8");if(!h.isEncoding(i))throw new TypeError('"encoding" must be a valid string encoding');var r=0|m(t,i),s=(e=o(e,r)).write(t,i);s!==r&&(e=e.slice(0,s));return e}(e,t,i):function(e,t){if(h.isBuffer(t)){var i=0|p(t.length);return 0===(e=o(e,i)).length?e:(t.copy(e,0,0,i),e)}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||function(e){return e!=e}(t.length)?o(e,0):l(e,t);if("Buffer"===t.type&&n(t.data))return l(e,t.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function d(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function u(e,t){if(d(t),e=o(e,t<0?0:0|p(t)),!h.TYPED_ARRAY_SUPPORT)for(var i=0;i<t;++i)e[i]=0;return e}function l(e,t){var i=t.length<0?0:0|p(t.length);e=o(e,i);for(var r=0;r<i;r+=1)e[r]=255&t[r];return e}function p(e){if(e>=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function m(e,t){if(h.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var i=e.length;if(0===i)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return i;case"utf8":case"utf-8":case void 0:return B(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*i;case"hex":return i>>>1;case"base64":return N(e).length;default:if(r)return B(e).length;t=(""+t).toLowerCase(),r=!0}}function f(e,t,i){var r=e[t];e[t]=e[i],e[i]=r}function g(e,t,i,r,s){if(0===e.length)return-1;if("string"==typeof i?(r=i,i=0):i>2147483647?i=2147483647:i<-2147483648&&(i=-2147483648),i=+i,isNaN(i)&&(i=s?0:e.length-1),i<0&&(i=e.length+i),i>=e.length){if(s)return-1;i=e.length-1}else if(i<0){if(!s)return-1;i=0}if("string"==typeof t&&(t=h.from(t,r)),h.isBuffer(t))return 0===t.length?-1:y(e,t,i,r,s);if("number"==typeof t)return t&=255,h.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?s?Uint8Array.prototype.indexOf.call(e,t,i):Uint8Array.prototype.lastIndexOf.call(e,t,i):y(e,[t],i,r,s);throw new TypeError("val must be string, number or Buffer")}function y(e,t,i,r,s){var n,a=1,o=e.length,h=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,o/=2,h/=2,i/=2}function c(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(s){var d=-1;for(n=i;n<o;n++)if(c(e,n)===c(t,-1===d?0:n-d)){if(-1===d&&(d=n),n-d+1===h)return d*a}else-1!==d&&(n-=n-d),d=-1}else for(i+h>o&&(i=o-h),n=i;n>=0;n--){for(var u=!0,l=0;l<h;l++)if(c(e,n+l)!==c(t,l)){u=!1;break}if(u)return n}return-1}function _(e,t,i,r){i=Number(i)||0;var s=e.length-i;r?(r=Number(r))>s&&(r=s):r=s;var n=t.length;if(n%2!=0)throw new TypeError("Invalid hex string");r>n/2&&(r=n/2);for(var a=0;a<r;++a){var o=parseInt(t.substr(2*a,2),16);if(isNaN(o))return a;e[i+a]=o}return a}function v(e,t,i,r){return L(B(t,e.length-i),e,i,r)}function w(e,t,i,r){return L(function(e){for(var t=[],i=0;i<e.length;++i)t.push(255&e.charCodeAt(i));return t}(t),e,i,r)}function b(e,t,i,r){return w(e,t,i,r)}function C(e,t,i,r){return L(N(t),e,i,r)}function x(e,t,i,r){return L(function(e,t){for(var i,r,s,n=[],a=0;a<e.length&&!((t-=2)<0);++a)i=e.charCodeAt(a),r=i>>8,s=i%256,n.push(s),n.push(r);return n}(t,e.length-i),e,i,r)}function S(e,t,i){return 0===t&&i===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,i))}function O(e,t,i){i=Math.min(e.length,i);for(var r=[],s=t;s<i;){var n,a,o,h,c=e[s],d=null,u=c>239?4:c>223?3:c>191?2:1;if(s+u<=i)switch(u){case 1:c<128&&(d=c);break;case 2:128==(192&(n=e[s+1]))&&(h=(31&c)<<6|63&n)>127&&(d=h);break;case 3:n=e[s+1],a=e[s+2],128==(192&n)&&128==(192&a)&&(h=(15&c)<<12|(63&n)<<6|63&a)>2047&&(h<55296||h>57343)&&(d=h);break;case 4:n=e[s+1],a=e[s+2],o=e[s+3],128==(192&n)&&128==(192&a)&&128==(192&o)&&(h=(15&c)<<18|(63&n)<<12|(63&a)<<6|63&o)>65535&&h<1114112&&(d=h)}null===d?(d=65533,u=1):d>65535&&(d-=65536,r.push(d>>>10&1023|55296),d=56320|1023&d),r.push(d),s+=u}return function(e){var t=e.length;if(t<=A)return String.fromCharCode.apply(String,e);var i="",r=0;for(;r<t;)i+=String.fromCharCode.apply(String,e.slice(r,r+=A));return i}(r)}t.Buffer=h,t.SlowBuffer=function(e){+e!=e&&(e=0);return h.alloc(+e)},t.INSPECT_MAX_BYTES=50,h.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(e){return!1}}(),t.kMaxLength=a(),h.poolSize=8192,h._augment=function(e){return e.__proto__=h.prototype,e},h.from=function(e,t,i){return c(null,e,t,i)},h.TYPED_ARRAY_SUPPORT&&(h.prototype.__proto__=Uint8Array.prototype,h.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&h[Symbol.species]===h&&Object.defineProperty(h,Symbol.species,{value:null,configurable:!0})),h.alloc=function(e,t,i){return function(e,t,i,r){return d(t),t<=0?o(e,t):void 0!==i?"string"==typeof r?o(e,t).fill(i,r):o(e,t).fill(i):o(e,t)}(null,e,t,i)},h.allocUnsafe=function(e){return u(null,e)},h.allocUnsafeSlow=function(e){return u(null,e)},h.isBuffer=function(e){return!(null==e||!e._isBuffer)},h.compare=function(e,t){if(!h.isBuffer(e)||!h.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var i=e.length,r=t.length,s=0,n=Math.min(i,r);s<n;++s)if(e[s]!==t[s]){i=e[s],r=t[s];break}return i<r?-1:r<i?1:0},h.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},h.concat=function(e,t){if(!n(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return h.alloc(0);var i;if(void 0===t)for(t=0,i=0;i<e.length;++i)t+=e[i].length;var r=h.allocUnsafe(t),s=0;for(i=0;i<e.length;++i){var a=e[i];if(!h.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(r,s),s+=a.length}return r},h.byteLength=m,h.prototype._isBuffer=!0,h.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)f(this,t,t+1);return this},h.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)f(this,t,t+3),f(this,t+1,t+2);return this},h.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)f(this,t,t+7),f(this,t+1,t+6),f(this,t+2,t+5),f(this,t+3,t+4);return this},h.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?O(this,0,e):function(e,t,i){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===i||i>this.length)&&(i=this.length),i<=0)return"";if((i>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return k(this,t,i);case"utf8":case"utf-8":return O(this,t,i);case"ascii":return q(this,t,i);case"latin1":case"binary":return E(this,t,i);case"base64":return S(this,t,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,t,i);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}.apply(this,arguments)},h.prototype.equals=function(e){if(!h.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===h.compare(this,e)},h.prototype.inspect=function(){var e="",i=t.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,i).match(/.{2}/g).join(" "),this.length>i&&(e+=" ... ")),"<Buffer "+e+">"},h.prototype.compare=function(e,t,i,r,s){if(!h.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===i&&(i=e?e.length:0),void 0===r&&(r=0),void 0===s&&(s=this.length),t<0||i>e.length||r<0||s>this.length)throw new RangeError("out of range index");if(r>=s&&t>=i)return 0;if(r>=s)return-1;if(t>=i)return 1;if(t>>>=0,i>>>=0,r>>>=0,s>>>=0,this===e)return 0;for(var n=s-r,a=i-t,o=Math.min(n,a),c=this.slice(r,s),d=e.slice(t,i),u=0;u<o;++u)if(c[u]!==d[u]){n=c[u],a=d[u];break}return n<a?-1:a<n?1:0},h.prototype.includes=function(e,t,i){return-1!==this.indexOf(e,t,i)},h.prototype.indexOf=function(e,t,i){return g(this,e,t,i,!0)},h.prototype.lastIndexOf=function(e,t,i){return g(this,e,t,i,!1)},h.prototype.write=function(e,t,i,r){if(void 0===t)r="utf8",i=this.length,t=0;else if(void 0===i&&"string"==typeof t)r=t,i=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(i)?(i|=0,void 0===r&&(r="utf8")):(r=i,i=void 0)}var s=this.length-t;if((void 0===i||i>s)&&(i=s),e.length>0&&(i<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var n=!1;;)switch(r){case"hex":return _(this,e,t,i);case"utf8":case"utf-8":return v(this,e,t,i);case"ascii":return w(this,e,t,i);case"latin1":case"binary":return b(this,e,t,i);case"base64":return C(this,e,t,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,e,t,i);default:if(n)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),n=!0}},h.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var A=4096;function q(e,t,i){var r="";i=Math.min(e.length,i);for(var s=t;s<i;++s)r+=String.fromCharCode(127&e[s]);return r}function E(e,t,i){var r="";i=Math.min(e.length,i);for(var s=t;s<i;++s)r+=String.fromCharCode(e[s]);return r}function k(e,t,i){var r=e.length;(!t||t<0)&&(t=0),(!i||i<0||i>r)&&(i=r);for(var s="",n=t;n<i;++n)s+=F(e[n]);return s}function P(e,t,i){for(var r=e.slice(t,i),s="",n=0;n<r.length;n+=2)s+=String.fromCharCode(r[n]+256*r[n+1]);return s}function I(e,t,i){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>i)throw new RangeError("Trying to access beyond buffer length")}function j(e,t,i,r,s,n){if(!h.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>s||t<n)throw new RangeError('"value" argument is out of bounds');if(i+r>e.length)throw new RangeError("Index out of range")}function $(e,t,i,r){t<0&&(t=65535+t+1);for(var s=0,n=Math.min(e.length-i,2);s<n;++s)e[i+s]=(t&255<<8*(r?s:1-s))>>>8*(r?s:1-s)}function R(e,t,i,r){t<0&&(t=4294967295+t+1);for(var s=0,n=Math.min(e.length-i,4);s<n;++s)e[i+s]=t>>>8*(r?s:3-s)&255}function z(e,t,i,r,s,n){if(i+r>e.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("Index out of range")}function T(e,t,i,r,n){return n||z(e,0,i,4),s.write(e,t,i,r,23,4),i+4}function D(e,t,i,r,n){return n||z(e,0,i,8),s.write(e,t,i,r,52,8),i+8}h.prototype.slice=function(e,t){var i,r=this.length;if(e=~~e,t=void 0===t?r:~~t,e<0?(e+=r)<0&&(e=0):e>r&&(e=r),t<0?(t+=r)<0&&(t=0):t>r&&(t=r),t<e&&(t=e),h.TYPED_ARRAY_SUPPORT)(i=this.subarray(e,t)).__proto__=h.prototype;else{var s=t-e;i=new h(s,void 0);for(var n=0;n<s;++n)i[n]=this[n+e]}return i},h.prototype.readUIntLE=function(e,t,i){e|=0,t|=0,i||I(e,t,this.length);for(var r=this[e],s=1,n=0;++n<t&&(s*=256);)r+=this[e+n]*s;return r},h.prototype.readUIntBE=function(e,t,i){e|=0,t|=0,i||I(e,t,this.length);for(var r=this[e+--t],s=1;t>0&&(s*=256);)r+=this[e+--t]*s;return r},h.prototype.readUInt8=function(e,t){return t||I(e,1,this.length),this[e]},h.prototype.readUInt16LE=function(e,t){return t||I(e,2,this.length),this[e]|this[e+1]<<8},h.prototype.readUInt16BE=function(e,t){return t||I(e,2,this.length),this[e]<<8|this[e+1]},h.prototype.readUInt32LE=function(e,t){return t||I(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},h.prototype.readUInt32BE=function(e,t){return t||I(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},h.prototype.readIntLE=function(e,t,i){e|=0,t|=0,i||I(e,t,this.length);for(var r=this[e],s=1,n=0;++n<t&&(s*=256);)r+=this[e+n]*s;return r>=(s*=128)&&(r-=Math.pow(2,8*t)),r},h.prototype.readIntBE=function(e,t,i){e|=0,t|=0,i||I(e,t,this.length);for(var r=t,s=1,n=this[e+--r];r>0&&(s*=256);)n+=this[e+--r]*s;return n>=(s*=128)&&(n-=Math.pow(2,8*t)),n},h.prototype.readInt8=function(e,t){return t||I(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},h.prototype.readInt16LE=function(e,t){t||I(e,2,this.length);var i=this[e]|this[e+1]<<8;return 32768&i?4294901760|i:i},h.prototype.readInt16BE=function(e,t){t||I(e,2,this.length);var i=this[e+1]|this[e]<<8;return 32768&i?4294901760|i:i},h.prototype.readInt32LE=function(e,t){return t||I(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},h.prototype.readInt32BE=function(e,t){return t||I(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},h.prototype.readFloatLE=function(e,t){return t||I(e,4,this.length),s.read(this,e,!0,23,4)},h.prototype.readFloatBE=function(e,t){return t||I(e,4,this.length),s.read(this,e,!1,23,4)},h.prototype.readDoubleLE=function(e,t){return t||I(e,8,this.length),s.read(this,e,!0,52,8)},h.prototype.readDoubleBE=function(e,t){return t||I(e,8,this.length),s.read(this,e,!1,52,8)},h.prototype.writeUIntLE=function(e,t,i,r){(e=+e,t|=0,i|=0,r)||j(this,e,t,i,Math.pow(2,8*i)-1,0);var s=1,n=0;for(this[t]=255&e;++n<i&&(s*=256);)this[t+n]=e/s&255;return t+i},h.prototype.writeUIntBE=function(e,t,i,r){(e=+e,t|=0,i|=0,r)||j(this,e,t,i,Math.pow(2,8*i)-1,0);var s=i-1,n=1;for(this[t+s]=255&e;--s>=0&&(n*=256);)this[t+s]=e/n&255;return t+i},h.prototype.writeUInt8=function(e,t,i){return e=+e,t|=0,i||j(this,e,t,1,255,0),h.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},h.prototype.writeUInt16LE=function(e,t,i){return e=+e,t|=0,i||j(this,e,t,2,65535,0),h.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):$(this,e,t,!0),t+2},h.prototype.writeUInt16BE=function(e,t,i){return e=+e,t|=0,i||j(this,e,t,2,65535,0),h.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):$(this,e,t,!1),t+2},h.prototype.writeUInt32LE=function(e,t,i){return e=+e,t|=0,i||j(this,e,t,4,4294967295,0),h.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):R(this,e,t,!0),t+4},h.prototype.writeUInt32BE=function(e,t,i){return e=+e,t|=0,i||j(this,e,t,4,4294967295,0),h.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):R(this,e,t,!1),t+4},h.prototype.writeIntLE=function(e,t,i,r){if(e=+e,t|=0,!r){var s=Math.pow(2,8*i-1);j(this,e,t,i,s-1,-s)}var n=0,a=1,o=0;for(this[t]=255&e;++n<i&&(a*=256);)e<0&&0===o&&0!==this[t+n-1]&&(o=1),this[t+n]=(e/a>>0)-o&255;return t+i},h.prototype.writeIntBE=function(e,t,i,r){if(e=+e,t|=0,!r){var s=Math.pow(2,8*i-1);j(this,e,t,i,s-1,-s)}var n=i-1,a=1,o=0;for(this[t+n]=255&e;--n>=0&&(a*=256);)e<0&&0===o&&0!==this[t+n+1]&&(o=1),this[t+n]=(e/a>>0)-o&255;return t+i},h.prototype.writeInt8=function(e,t,i){return e=+e,t|=0,i||j(this,e,t,1,127,-128),h.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},h.prototype.writeInt16LE=function(e,t,i){return e=+e,t|=0,i||j(this,e,t,2,32767,-32768),h.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):$(this,e,t,!0),t+2},h.prototype.writeInt16BE=function(e,t,i){return e=+e,t|=0,i||j(this,e,t,2,32767,-32768),h.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):$(this,e,t,!1),t+2},h.prototype.writeInt32LE=function(e,t,i){return e=+e,t|=0,i||j(this,e,t,4,2147483647,-2147483648),h.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):R(this,e,t,!0),t+4},h.prototype.writeInt32BE=function(e,t,i){return e=+e,t|=0,i||j(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),h.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):R(this,e,t,!1),t+4},h.prototype.writeFloatLE=function(e,t,i){return T(this,e,t,!0,i)},h.prototype.writeFloatBE=function(e,t,i){return T(this,e,t,!1,i)},h.prototype.writeDoubleLE=function(e,t,i){return D(this,e,t,!0,i)},h.prototype.writeDoubleBE=function(e,t,i){return D(this,e,t,!1,i)},h.prototype.copy=function(e,t,i,r){if(i||(i=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r<i&&(r=i),r===i)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(i<0||i>=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t<r-i&&(r=e.length-t+i);var s,n=r-i;if(this===e&&i<t&&t<r)for(s=n-1;s>=0;--s)e[s+t]=this[s+i];else if(n<1e3||!h.TYPED_ARRAY_SUPPORT)for(s=0;s<n;++s)e[s+t]=this[s+i];else Uint8Array.prototype.set.call(e,this.subarray(i,i+n),t);return n},h.prototype.fill=function(e,t,i,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,i=this.length):"string"==typeof i&&(r=i,i=this.length),1===e.length){var s=e.charCodeAt(0);s<256&&(e=s)}if(void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!h.isEncoding(r))throw new TypeError("Unknown encoding: "+r)}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<i)throw new RangeError("Out of range index");if(i<=t)return this;var n;if(t>>>=0,i=void 0===i?this.length:i>>>0,e||(e=0),"number"==typeof e)for(n=t;n<i;++n)this[n]=e;else{var a=h.isBuffer(e)?e:B(new h(e,r).toString()),o=a.length;for(n=0;n<i-t;++n)this[n+t]=a[n%o]}return this};var M=/[^+\/0-9A-Za-z-_]/g;function F(e){return e<16?"0"+e.toString(16):e.toString(16)}function B(e,t){var i;t=t||1/0;for(var r=e.length,s=null,n=[],a=0;a<r;++a){if((i=e.charCodeAt(a))>55295&&i<57344){if(!s){if(i>56319){(t-=3)>-1&&n.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&n.push(239,191,189);continue}s=i;continue}if(i<56320){(t-=3)>-1&&n.push(239,191,189),s=i;continue}i=65536+(s-55296<<10|i-56320)}else s&&(t-=3)>-1&&n.push(239,191,189);if(s=null,i<128){if((t-=1)<0)break;n.push(i)}else if(i<2048){if((t-=2)<0)break;n.push(i>>6|192,63&i|128)}else if(i<65536){if((t-=3)<0)break;n.push(i>>12|224,i>>6&63|128,63&i|128)}else{if(!(i<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;n.push(i>>18|240,i>>12&63|128,i>>6&63|128,63&i|128)}}return n}function N(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(M,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function L(e,t,i,r){for(var s=0;s<r&&!(s+i>=t.length||s>=e.length);++s)t[s+i]=e[s];return s}}).call(this,i(26))},function(e,t){e.exports=class{constructor(){this.keys=["vcc","gnd","output"],this.requiredKeys=["output"],this.drive="5v"}wired(e){this.obniz=e,e.setVccGnd(this.params.vcc,this.params.gnd,this.drive),this.ad=e.getAD(this.params.output),this.ad.start(function(e){this.temp=this.calc(e),this.onchange(this.temp)}.bind(this))}async getWait(){let e=await this.ad.getWait();return this.temp=this.calc(e),this.temp}onchange(e){}calc(e){return 0}}},function(e,t,i){"use strict";var r=Object.prototype.hasOwnProperty,s="~";function n(){}function a(e,t,i,r,n){if("function"!=typeof i)throw new TypeError("The listener must be a function");var a=new function(e,t,i){this.fn=e,this.context=t,this.once=i||!1}(i,r||e,n),o=s?s+t:t;return e._events[o]?e._events[o].fn?e._events[o]=[e._events[o],a]:e._events[o].push(a):(e._events[o]=a,e._eventsCount++),e}function o(e,t){0==--e._eventsCount?e._events=new n:delete e._events[t]}function h(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(s=!1)),h.prototype.eventNames=function(){var e,t,i=[];if(0===this._eventsCount)return i;for(t in e=this._events)r.call(e,t)&&i.push(s?t.slice(1):t);return Object.getOwnPropertySymbols?i.concat(Object.getOwnPropertySymbols(e)):i},h.prototype.listeners=function(e){var t=s?s+e:e,i=this._events[t];if(!i)return[];if(i.fn)return[i.fn];for(var r=0,n=i.length,a=new Array(n);r<n;r++)a[r]=i[r].fn;return a},h.prototype.listenerCount=function(e){var t=s?s+e:e,i=this._events[t];return i?i.fn?1:i.length:0},h.prototype.emit=function(e,t,i,r,n,a){var o=s?s+e:e;if(!this._events[o])return!1;var h,c,d=this._events[o],u=arguments.length;if(d.fn){switch(d.once&&this.removeListener(e,d.fn,void 0,!0),u){case 1:return d.fn.call(d.context),!0;case 2:return d.fn.call(d.context,t),!0;case 3:return d.fn.call(d.context,t,i),!0;case 4:return d.fn.call(d.context,t,i,r),!0;case 5:return d.fn.call(d.context,t,i,r,n),!0;case 6:return d.fn.call(d.context,t,i,r,n,a),!0}for(c=1,h=new Array(u-1);c<u;c++)h[c-1]=arguments[c];d.fn.apply(d.context,h)}else{var l,p=d.length;for(c=0;c<p;c++)switch(d[c].once&&this.removeListener(e,d[c].fn,void 0,!0),u){case 1:d[c].fn.call(d[c].context);break;case 2:d[c].fn.call(d[c].context,t);break;case 3:d[c].fn.call(d[c].context,t,i);break;case 4:d[c].fn.call(d[c].context,t,i,r);break;default:if(!h)for(l=1,h=new Array(u-1);l<u;l++)h[l-1]=arguments[l];d[c].fn.apply(d[c].context,h)}}return!0},h.prototype.on=function(e,t,i){return a(this,e,t,i,!1)},h.prototype.once=function(e,t,i){return a(this,e,t,i,!0)},h.prototype.removeListener=function(e,t,i,r){var n=s?s+e:e;if(!this._events[n])return this;if(!t)return o(this,n),this;var a=this._events[n];if(a.fn)a.fn!==t||r&&!a.once||i&&a.context!==i||o(this,n);else{for(var h=0,c=[],d=a.length;h<d;h++)(a[h].fn!==t||r&&!a[h].once||i&&a[h].context!==i)&&c.push(a[h]);c.length?this._events[n]=1===c.length?c[0]:c:o(this,n)}return this},h.prototype.removeAllListeners=function(e){var t;return e?(t=s?s+e:e,this._events[t]&&o(this,t)):(this._events=new n,this._eventsCount=0),this},h.prototype.off=h.prototype.removeListener,h.prototype.addListener=h.prototype.on,h.prefixed=s,h.EventEmitter=h,e.exports=h},function(e,t,i){const r=i(2),s=i(5),n=i(1);e.exports=class{constructor(e){if(this.uuid=n.uuidFilter(e.uuid),this.parent=null,this.children=[],this.isRemote=!1,this.discoverdOnRemote=!1,this.data=e.data||null,!this.data&&e.text&&(this.data=r.string2dataArray(e.text)),!this.data&&e.value&&(this.data=[e.value]),e[this.childrenName])for(let t of e[this.childrenName])this.addChild(t);this.setFunctions(),this.emitter=new s}setFunctions(){let e=this.childrenName;if(e){let t=(e=e.charAt(0).toUpperCase()+e.slice(1)).slice(0,-1),i="add"+t;this[i]=this.addChild,this[i="get"+t]=this.getChild}let t=this.parentName;t&&Object.defineProperty(this,t,{get(){return this.parent},set(e){this.parent=e}})}get childrenClass(){return Object}get childrenName(){return null}get parentName(){return null}addChild(e){return e instanceof this.childrenClass||(e=new(0,this.childrenClass)(e)),e.parent=this,this.children.push(e),e}getChild(e){return e=n.uuidFilter(e),this.children.filter(function(t){return n.uuidFilter(t.uuid)===e}).shift()}toJSON(){let e={uuid:n.uuidFilter(this.uuid)};return this.children.length>0&&(e[this.childrenName]=this.children),this.data&&(e.data=this.data),e}read(){}write(){}writeNumber(e,t){this.write([e],t)}writeText(e,t){this.write(r.string2dataArray(e),t)}readWait(){return new Promise(e=>{this.emitter.once("onread",t=>{"success"===t.result?e(t.data):e(void 0)}),this.read()})}writeWait(e,t){return new Promise(i=>{this.emitter.once("onwrite",e=>{i("success"===e.result)}),this.write(e,t)})}writeTextWait(e){return new Promise(t=>{this.emitter.once("onwrite",e=>{t("success"===e.result)}),this.writeText(e)})}writeNumberWait(e){return new Promise(t=>{this.emitter.once("onwrite",e=>{t("success"===e.result)}),this.writeNumber(e)})}readFromRemoteWait(){return new Promise(e=>{this.emitter.once("onreadfromremote",()=>{e()})})}writeFromRemoteWait(){return new Promise(e=>{this.emitter.once("onreadfromremote",t=>{e(t.data)})})}onwrite(){}onread(){}onwritefromremote(){}onreadfromremote(){}onerror(e){console.error(e.message)}notifyFromServer(e,t){switch(this.emitter.emit(e,t),e){case"onerror":this.onerror(t);break;case"onwrite":this.onwrite(t.result);break;case"onread":this.onread(t.data);break;case"onwritefromremote":this.onwritefromremote(t.address,t.data);break;case"onreadfromremote":this.onreadfromremote(t.address)}}}},function(e,t,i){(function(i){var r;t=e.exports=H,r="object"==typeof i&&i.env&&i.env.NODE_DEBUG&&/\bsemver\b/i.test(i.env.NODE_DEBUG)?function(){var e=Array.prototype.slice.call(arguments,0);e.unshift("SEMVER"),console.log.apply(console,e)}:function(){},t.SEMVER_SPEC_VERSION="2.0.0";var s=256,n=Number.MAX_SAFE_INTEGER||9007199254740991,a=t.re=[],o=t.src=[],h=0,c=h++;o[c]="0|[1-9]\\d*";var d=h++;o[d]="[0-9]+";var u=h++;o[u]="\\d*[a-zA-Z-][a-zA-Z0-9-]*";var l=h++;o[l]="("+o[c]+")\\.("+o[c]+")\\.("+o[c]+")";var p=h++;o[p]="("+o[d]+")\\.("+o[d]+")\\.("+o[d]+")";var m=h++;o[m]="(?:"+o[c]+"|"+o[u]+")";var f=h++;o[f]="(?:"+o[d]+"|"+o[u]+")";var g=h++;o[g]="(?:-("+o[m]+"(?:\\."+o[m]+")*))";var y=h++;o[y]="(?:-?("+o[f]+"(?:\\."+o[f]+")*))";var _=h++;o[_]="[0-9A-Za-z-]+";var v=h++;o[v]="(?:\\+("+o[_]+"(?:\\."+o[_]+")*))";var w=h++,b="v?"+o[l]+o[g]+"?"+o[v]+"?";o[w]="^"+b+"$";var C="[v=\\s]*"+o[p]+o[y]+"?"+o[v]+"?",x=h++;o[x]="^"+C+"$";var S=h++;o[S]="((?:<|>)?=?)";var O=h++;o[O]=o[d]+"|x|X|\\*";var A=h++;o[A]=o[c]+"|x|X|\\*";var q=h++;o[q]="[v=\\s]*("+o[A]+")(?:\\.("+o[A]+")(?:\\.("+o[A]+")(?:"+o[g]+")?"+o[v]+"?)?)?";var E=h++;o[E]="[v=\\s]*("+o[O]+")(?:\\.("+o[O]+")(?:\\.("+o[O]+")(?:"+o[y]+")?"+o[v]+"?)?)?";var k=h++;o[k]="^"+o[S]+"\\s*"+o[q]+"$";var P=h++;o[P]="^"+o[S]+"\\s*"+o[E]+"$";var I=h++;o[I]="(?:^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])";var j=h++;o[j]="(?:~>?)";var $=h++;o[$]="(\\s*)"+o[j]+"\\s+",a[$]=new RegExp(o[$],"g");var R=h++;o[R]="^"+o[j]+o[q]+"$";var z=h++;o[z]="^"+o[j]+o[E]+"$";var T=h++;o[T]="(?:\\^)";var D=h++;o[D]="(\\s*)"+o[T]+"\\s+",a[D]=new RegExp(o[D],"g");var M=h++;o[M]="^"+o[T]+o[q]+"$";var F=h++;o[F]="^"+o[T]+o[E]+"$";var B=h++;o[B]="^"+o[S]+"\\s*("+C+")$|^$";var N=h++;o[N]="^"+o[S]+"\\s*("+b+")$|^$";var L=h++;o[L]="(\\s*)"+o[S]+"\\s*("+C+"|"+o[q]+")",a[L]=new RegExp(o[L],"g");var V=h++;o[V]="^\\s*("+o[q]+")\\s+-\\s+("+o[q]+")\\s*$";var W=h++;o[W]="^\\s*("+o[E]+")\\s+-\\s+("+o[E]+")\\s*$";var U=h++;o[U]="(<|>)?=?\\s*\\*";for(var G=0;G<h;G++)r(G,o[G]),a[G]||(a[G]=new RegExp(o[G]));function K(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof H)return e;if("string"!=typeof e)return null;if(e.length>s)return null;if(!(t.loose?a[x]:a[w]).test(e))return null;try{return new H(e,t)}catch(e){return null}}function H(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof H){if(e.loose===t.loose)return e;e=e.version}else if("string"!=typeof e)throw new TypeError("Invalid Version: "+e);if(e.length>s)throw new TypeError("version is longer than "+s+" characters");if(!(this instanceof H))return new H(e,t);r("SemVer",e,t),this.options=t,this.loose=!!t.loose;var i=e.trim().match(t.loose?a[x]:a[w]);if(!i)throw new TypeError("Invalid Version: "+e);if(this.raw=e,this.major=+i[1],this.minor=+i[2],this.patch=+i[3],this.major>n||this.major<0)throw new TypeError("Invalid major version");if(this.minor>n||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>n||this.patch<0)throw new TypeError("Invalid patch version");i[4]?this.prerelease=i[4].split(".").map(function(e){if(/^[0-9]+$/.test(e)){var t=+e;if(t>=0&&t<n)return t}return e}):this.prerelease=[],this.build=i[5]?i[5].split("."):[],this.format()}t.parse=K,t.valid=function(e,t){var i=K(e,t);return i?i.version:null},t.clean=function(e,t){var i=K(e.trim().replace(/^[=v]+/,""),t);return i?i.version:null},t.SemVer=H,H.prototype.format=function(){return this.version=this.major+"."+this.minor+"."+this.patch,this.prerelease.length&&(this.version+="-"+this.prerelease.join(".")),this.version},H.prototype.toString=function(){return this.version},H.prototype.compare=function(e){return r("SemVer.compare",this.version,this.options,e),e instanceof H||(e=new H(e,this.options)),this.compareMain(e)||this.comparePre(e)},H.prototype.compareMain=function(e){return e instanceof H||(e=new H(e,this.options)),Y(this.major,e.major)||Y(this.minor,e.minor)||Y(this.patch,e.patch)},H.prototype.comparePre=function(e){if(e instanceof H||(e=new H(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;var t=0;do{var i=this.prerelease[t],s=e.prerelease[t];if(r("prerelease compare",t,i,s),void 0===i&&void 0===s)return 0;if(void 0===s)return 1;if(void 0===i)return-1;if(i!==s)return Y(i,s)}while(++t)},H.prototype.inc=function(e,t){switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t),this.inc("pre",t);break;case"prerelease":0===this.prerelease.length&&this.inc("patch",t),this.inc("pre",t);break;case"major":0===this.minor&&0===this.patch&&0!==this.prerelease.length||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":0===this.patch&&0!==this.prerelease.length||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":0===this.prerelease.length&&this.patch++,this.prerelease=[];break;case"pre":if(0===this.prerelease.length)this.prerelease=[0];else{for(var i=this.prerelease.length;--i>=0;)"number"==typeof this.prerelease[i]&&(this.prerelease[i]++,i=-2);-1===i&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error("invalid increment argument: "+e)}return this.format(),this.raw=this.version,this},t.inc=function(e,t,i,r){"string"==typeof i&&(r=i,i=void 0);try{return new H(e,i).inc(t,r).version}catch(e){return null}},t.diff=function(e,t){if(ee(e,t))return null;var i=K(e),r=K(t);if(i.prerelease.length||r.prerelease.length){for(var s in i)if(("major"===s||"minor"===s||"patch"===s)&&i[s]!==r[s])return"pre"+s;return"prerelease"}for(var s in i)if(("major"===s||"minor"===s||"patch"===s)&&i[s]!==r[s])return s},t.compareIdentifiers=Y;var J=/^[0-9]+$/;function Y(e,t){var i=J.test(e),r=J.test(t);return i&&r&&(e=+e,t=+t),i&&!r?-1:r&&!i?1:e<t?-1:e>t?1:0}function Q(e,t,i){return new H(e,i).compare(new H(t,i))}function X(e,t,i){return Q(e,t,i)>0}function Z(e,t,i){return Q(e,t,i)<0}function ee(e,t,i){return 0===Q(e,t,i)}function te(e,t,i){return 0!==Q(e,t,i)}function ie(e,t,i){return Q(e,t,i)>=0}function re(e,t,i){return Q(e,t,i)<=0}function se(e,t,i,r){var s;switch(t){case"===":"object"==typeof e&&(e=e.version),"object"==typeof i&&(i=i.version),s=e===i;break;case"!==":"object"==typeof e&&(e=e.version),"object"==typeof i&&(i=i.version),s=e!==i;break;case"":case"=":case"==":s=ee(e,i,r);break;case"!=":s=te(e,i,r);break;case">":s=X(e,i,r);break;case">=":s=ie(e,i,r);break;case"<":s=Z(e,i,r);break;case"<=":s=re(e,i,r);break;default:throw new TypeError("Invalid operator: "+t)}return s}function ne(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof ne){if(e.loose===!!t.loose)return e;e=e.value}if(!(this instanceof ne))return new ne(e,t);r("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===ae?this.value="":this.value=this.operator+this.semver.version,r("comp",this)}t.rcompareIdentifiers=function(e,t){return Y(t,e)},t.major=function(e,t){return new H(e,t).major},t.minor=function(e,t){return new H(e,t).minor},t.patch=function(e,t){return new H(e,t).patch},t.compare=Q,t.compareLoose=function(e,t){return Q(e,t,!0)},t.rcompare=function(e,t,i){return Q(t,e,i)},t.sort=function(e,i){return e.sort(function(e,r){return t.compare(e,r,i)})},t.rsort=function(e,i){return e.sort(function(e,r){return t.rcompare(e,r,i)})},t.gt=X,t.lt=Z,t.eq=ee,t.neq=te,t.gte=ie,t.lte=re,t.cmp=se,t.Comparator=ne;var ae={};function oe(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof oe)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new oe(e.raw,t);if(e instanceof ne)return new oe(e.value,t);if(!(this instanceof oe))return new oe(e,t);if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map(function(e){return this.parseRange(e.trim())},this).filter(function(e){return e.length}),!this.set.length)throw new TypeError("Invalid SemVer Range: "+e);this.format()}function he(e){return!e||"x"===e.toLowerCase()||"*"===e}function ce(e,t,i,r,s,n,a,o,h,c,d,u,l){return((t=he(i)?"":he(r)?">="+i+".0.0":he(s)?">="+i+"."+r+".0":">="+t)+" "+(o=he(h)?"":he(c)?"<"+(+h+1)+".0.0":he(d)?"<"+h+"."+(+c+1)+".0":u?"<="+h+"."+c+"."+d+"-"+u:"<="+o)).trim()}function de(e,t,i){for(var s=0;s<e.length;s++)if(!e[s].test(t))return!1;if(i||(i={}),t.prerelease.length&&!i.includePrerelease){for(s=0;s<e.length;s++)if(r(e[s].semver),e[s].semver!==ae&&e[s].semver.prerelease.length>0){var n=e[s].semver;if(n.major===t.major&&n.minor===t.minor&&n.patch===t.patch)return!0}return!1}return!0}function ue(e,t,i){try{t=new oe(t,i)}catch(e){return!1}return t.test(e)}function le(e,t,i,r){var s,n,a,o,h;switch(e=new H(e,r),t=new oe(t,r),i){case">":s=X,n=re,a=Z,o=">",h=">=";break;case"<":s=Z,n=ie,a=X,o="<",h="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(ue(e,t,r))return!1;for(var c=0;c<t.set.length;++c){var d=null,u=null;if(t.set[c].forEach(function(e){e.semver===ae&&(e=new ne(">=0.0.0")),d=d||e,u=u||e,s(e.semver,d.semver,r)?d=e:a(e.semver,u.semver,r)&&(u=e)}),d.operator===o||d.operator===h)return!1;if((!u.operator||u.operator===o)&&n(e,u.semver))return!1;if(u.operator===h&&a(e,u.semver))return!1}return!0}ne.prototype.parse=function(e){var t=this.options.loose?a[B]:a[N],i=e.match(t);if(!i)throw new TypeError("Invalid comparator: "+e);this.operator=i[1],"="===this.operator&&(this.operator=""),i[2]?this.semver=new H(i[2],this.options.loose):this.semver=ae},ne.prototype.toString=function(){return this.value},ne.prototype.test=function(e){return r("Comparator.test",e,this.options.loose),this.semver===ae||("string"==typeof e&&(e=new H(e,this.options)),se(e,this.operator,this.semver,this.options))},ne.prototype.intersects=function(e,t){if(!(e instanceof ne))throw new TypeError("a Comparator is required");var i;if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),""===this.operator)return i=new oe(e.value,t),ue(this.value,i,t);if(""===e.operator)return i=new oe(this.value,t),ue(e.semver,i,t);var r=!(">="!==this.operator&&">"!==this.operator||">="!==e.operator&&">"!==e.operator),s=!("<="!==this.operator&&"<"!==this.operator||"<="!==e.operator&&"<"!==e.operator),n=this.semver.version===e.semver.version,a=!(">="!==this.operator&&"<="!==this.operator||">="!==e.operator&&"<="!==e.operator),o=se(this.semver,"<",e.semver,t)&&(">="===this.operator||">"===this.operator)&&("<="===e.operator||"<"===e.operator),h=se(this.semver,">",e.semver,t)&&("<="===this.operator||"<"===this.operator)&&(">="===e.operator||">"===e.operator);return r||s||n&&a||o||h},t.Range=oe,oe.prototype.format=function(){return this.range=this.set.map(function(e){return e.join(" ").trim()}).join("||").trim(),this.range},oe.prototype.toString=function(){return this.range},oe.prototype.parseRange=function(e){var t=this.options.loose;e=e.trim();var i=t?a[W]:a[V];e=e.replace(i,ce),r("hyphen replace",e),e=e.replace(a[L],"$1$2$3"),r("comparator trim",e,a[L]),e=(e=(e=e.replace(a[$],"$1~")).replace(a[D],"$1^")).split(/\s+/).join(" ");var s=t?a[B]:a[N],n=e.split(" ").map(function(e){return function(e,t){return r("comp",e,t),e=function(e,t){return e.trim().split(/\s+/).map(function(e){return function(e,t){r("caret",e,t),t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1});var i=t.loose?a[F]:a[M];return e.replace(i,function(t,i,s,n,a){var o;return r("caret",e,t,i,s,n,a),he(i)?o="":he(s)?o=">="+i+".0.0 <"+(+i+1)+".0.0":he(n)?o="0"===i?">="+i+"."+s+".0 <"+i+"."+(+s+1)+".0":">="+i+"."+s+".0 <"+(+i+1)+".0.0":a?(r("replaceCaret pr",a),"-"!==a.charAt(0)&&(a="-"+a),o="0"===i?"0"===s?">="+i+"."+s+"."+n+a+" <"+i+"."+s+"."+(+n+1):">="+i+"."+s+"."+n+a+" <"+i+"."+(+s+1)+".0":">="+i+"."+s+"."+n+a+" <"+(+i+1)+".0.0"):(r("no pr"),o="0"===i?"0"===s?">="+i+"."+s+"."+n+" <"+i+"."+s+"."+(+n+1):">="+i+"."+s+"."+n+" <"+i+"."+(+s+1)+".0":">="+i+"."+s+"."+n+" <"+(+i+1)+".0.0"),r("caret return",o),o})}(e,t)}).join(" ")}(e,t),r("caret",e),e=function(e,t){return e.trim().split(/\s+/).map(function(e){return function(e,t){t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1});var i=t.loose?a[z]:a[R];return e.replace(i,function(t,i,s,n,a){var o;return r("tilde",e,t,i,s,n,a),he(i)?o="":he(s)?o=">="+i+".0.0 <"+(+i+1)+".0.0":he(n)?o=">="+i+"."+s+".0 <"+i+"."+(+s+1)+".0":a?(r("replaceTilde pr",a),"-"!==a.charAt(0)&&(a="-"+a),o=">="+i+"."+s+"."+n+a+" <"+i+"."+(+s+1)+".0"):o=">="+i+"."+s+"."+n+" <"+i+"."+(+s+1)+".0",r("tilde return",o),o})}(e,t)}).join(" ")}(e,t),r("tildes",e),e=function(e,t){return r("replaceXRanges",e,t),e.split(/\s+/).map(function(e){return function(e,t){e=e.trim(),t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1});var i=t.loose?a[P]:a[k];return e.replace(i,function(t,i,s,n,a,o){r("xRange",e,t,i,s,n,a,o);var h=he(s),c=h||he(n),d=c||he(a),u=d;return"="===i&&u&&(i=""),h?t=">"===i||"<"===i?"<0.0.0":"*":i&&u?(c&&(n=0),d&&(a=0),">"===i?(i=">=",c?(s=+s+1,n=0,a=0):d&&(n=+n+1,a=0)):"<="===i&&(i="<",c?s=+s+1:n=+n+1),t=i+s+"."+n+"."+a):c?t=">="+s+".0.0 <"+(+s+1)+".0.0":d&&(t=">="+s+"."+n+".0 <"+s+"."+(+n+1)+".0"),r("xRange return",t),t})}(e,t)}).join(" ")}(e,t),r("xrange",e),e=function(e,t){return r("replaceStars",e,t),e.trim().replace(a[U],"")}(e,t),r("stars",e),e}(e,this.options)},this).join(" ").split(/\s+/);return this.options.loose&&(n=n.filter(function(e){return!!e.match(s)})),n=n.map(function(e){return new ne(e,this.options)},this)},oe.prototype.intersects=function(e,t){if(!(e instanceof oe))throw new TypeError("a Range is required");return this.set.some(function(i){return i.every(function(i){return e.set.some(function(e){return e.every(function(e){return i.intersects(e,t)})})})})},t.toComparators=function(e,t){return new oe(e,t).set.map(function(e){return e.map(function(e){return e.value}).join(" ").trim().split(" ")})},oe.prototype.test=function(e){if(!e)return!1;"string"==typeof e&&(e=new H(e,this.options));for(var t=0;t<this.set.length;t++)if(de(this.set[t],e,this.options))return!0;return!1},t.satisfies=ue,t.maxSatisfying=function(e,t,i){var r=null,s=null;try{var n=new oe(t,i)}catch(e){return null}return e.forEach(function(e){n.test(e)&&(r&&-1!==s.compare(e)||(s=new H(r=e,i)))}),r},t.minSatisfying=function(e,t,i){var r=null,s=null;try{var n=new oe(t,i)}catch(e){return null}return e.forEach(function(e){n.test(e)&&(r&&1!==s.compare(e)||(s=new H(r=e,i)))}),r},t.validRange=function(e,t){try{return new oe(e,t).range||"*"}catch(e){return null}},t.ltr=function(e,t,i){return le(e,t,"<",i)},t.gtr=function(e,t,i){return le(e,t,">",i)},t.outside=le,t.prerelease=function(e,t){var i=K(e,t);return i&&i.prerelease.length?i.prerelease:null},t.intersects=function(e,t,i){return e=new oe(e,i),t=new oe(t,i),e.intersects(t)},t.coerce=function(e){if(e instanceof H)return e;if("string"!=typeof e)return null;var t=e.match(a[I]);return null==t?null:K((t[1]||"0")+"."+(t[2]||"0")+"."+(t[3]||"0"))}}).call(this,i(40))},function(e,t){function i(e){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}i.keys=function(){return[]},i.resolve=i,e.exports=i,i.id=8},function(e,t){function i(e){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}i.keys=function(){return[]},i.resolve=i,e.exports=i,i.id=9},function(e,t){e.exports=void 0},function(e,t,i){const r=i(6);e.exports=class extends r{constructor(e){super(e),this.isRemote=!1,this.discoverdOnRemote=!1}get wsChildUuidName(){let e=this.childrenName;return e?e.slice(0,-1)+"_uuid":null}getChild(e){let t=super.getChild(e);return t||(t=this.addChild({uuid:e})),t}discoverChildren(){}discoverChildrenWait(){return new Promise(e=>{this.emitter.once("discoverfinished",()=>{let t=this.children.filter(e=>e.discoverdOnRemote);e(t)}),this.discoverChildren()})}ondiscover(){}ondiscoverfinished(){}notifyFromServer(e,t){switch(super.notifyFromServer(e,t),e){case"discover":{let e=this.getChild(t[this.wsChildUuidName]);e.discoverdOnRemote=!0,e.properties=t.properties||[],this.ondiscover(e);break}case"discoverfinished":{let e=this.children.filter(e=>e.discoverdOnRemote);this.ondiscoverfinished(e);break}}}}},function(e,t,i){const r=i(6),s=i(13),n=i(1);e.exports=class extends r{constructor(e){super(e),this.addCharacteristic=this.addChild,this.getCharacteristic=this.getChild}get parentName(){return"peripheral"}get childrenName(){return"characteristics"}get childrenClass(){return s}get advData(){return{flags:["general_discoverable_mode","br_edr_not_supported"],serviceUuids:[this.uuid]}}end(){this.peripheral.Obniz.send({ble:{peripheral:{stop_service:{service_uuid:n.uuidFilter(this.uuid)}}}}),this.peripheral.removeService(this.uuid)}notify(e,t){}}},function(e,t,i){const r=i(14),s=i(6),n=i(1);e.exports=class extends s{constructor(e){super(e),this.addDescriptor=this.addChild,this.getDescriptor=this.getChild,this.properties=e.properties||[],Array.isArray(this.properties)||(this.properties=[this.properties]),this.permissions=e.permissions||[],Array.isArray(this.permissions)||(this.permissions=[this.permissions])}get parentName(){return"service"}get childrenClass(){return r}get childrenName(){return"descriptors"}toJSON(){let e=super.toJSON();return this.properties.length>0&&(e.properties=this.properties),this.permissions.length>0&&(e.permissions=this.permissions),e}addProperty(e){this.properties.includes(e)||this.properties.push(e)}removeProperty(e){this.properties=this.properties.filter(t=>t!==e)}addPermission(e){this.permissions.includes(e)||this.permissions.push(e)}removePermission(e){this.permissions=this.permissions.filter(t=>t!==e)}write(e){this.service.peripheral.Obniz.send({ble:{peripheral:{write_characteristic:{service_uuid:n.uuidFilter(this.service.uuid),characteristic_uuid:n.uuidFilter(this.uuid),data:e}}}})}read(){this.service.peripheral.Obniz.send({ble:{peripheral:{read_characteristic:{service_uuid:n.uuidFilter(this.service.uuid),characteristic_uuid:n.uuidFilter(this.uuid)}}}})}notify(){this.service.peripheral.Obniz.send({ble:{peripheral:{notify_characteristic:{service_uuid:n.uuidFilter(this.service.uuid),characteristic_uuid:n.uuidFilter(this.uuid)}}}})}}},function(e,t,i){const r=i(6),s=i(1);e.exports=class extends r{constructor(e){super(e),this.permissions=e.permissions||[],Array.isArray(this.permissions)||(this.permissions=[this.permissions])}get parentName(){return"characteristic"}addPermission(e){this.permissions.includes(e)||this.permissions.push(e)}removePermission(e){this.permissions=this.permissions.filter(t=>t!==e)}toJSON(){let e=super.toJSON();return this.permissions.length>0&&(e.permissions=this.permissions),e}write(e){this.characteristic.service.peripheral.Obniz.send({ble:{peripheral:{w