UNPKG

@dubaua/observable

Version:
4 lines (3 loc) 1.48 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e||self).Observable=t()}(this,function(){"use strict";function e(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var i=t.call(e,"string");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}/*#__PURE__*/ return function(){function Observable(e){this.callbacks=[],this.internal=e,this.initialValue=e}var t,i,n=Observable.prototype;return n.subscribe=function(e){var t=this;if("function"!=typeof e)throw new TypeError("[createObservable]: expected callback to be a function.");return this.callbacks.push(e),function(){var i=t.callbacks.indexOf(e);t.callbacks=t.callbacks.slice(0,i).concat(t.callbacks.slice(i+1))}},n.reset=function(){this.callbacks=[],this.internal=this.initialValue},t=Observable,(i=[{key:"value",get:function(){return this.internal},set:function(e){if(e!==this.internal){var t=this.internal;this.internal=e;for(var i=0;i<this.callbacks.length;i++)this.callbacks[i](this.internal,t)}}}])&&function(t,i){for(var n=0;n<i.length;n++){var r=i[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,e(r.key),r)}}(t.prototype,i),Object.defineProperty(t,"prototype",{writable:!1}),t}()}); //# sourceMappingURL=observable.min.umd.js.map