@awesome-nodes/mvvm
Version:
Application development framework using the *model* *view* *view-model* design pattern.
2 lines • 5.49 kB
JavaScript
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("mvvm",[],t):"object"==typeof exports?exports.mvvm=t():e.mvvm=t()}(global,(function(){return(()=>{"use strict";var e={d:(t,s)=>{for(var i in s)e.o(s,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:s[i]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{ActionObserver:()=>D,AsyncEventDelegate:()=>A,Disposable:()=>p,EVENT_EMITTER_TOKEN:()=>o,EventDelegate:()=>n,ObjectModel:()=>u,using:()=>S});const s=require("@awesome-nodes/object"),i=require("@awesome-nodes/object/model"),r=require("@awesome-nodes/injection-factory");class n{get eventEmitter(){return this._eventEmitter}constructor(e){this._producer=e,this._subscriptions=new Map,this._eventEmitter=new o.value}subscribe(e,t){let s,i,r;"function"==typeof e?s=e:({next:s,error:i,complete:r}=e),this._subscriptions.get(s)&&this.unsubscribe(s);const n=this._eventEmitter.subscribe((e=>{e(t?s.bind(t):s)}),i&&t?i.bind(t):i,r&&t?r.bind(t):r);return n.add((()=>{this._subscriptions.delete(s)})),this._subscriptions.set(s,n),n}unsubscribe(e){const t=this._subscriptions.get("function"==typeof e?e:e.next);t&&!1===t.closed&&t.unsubscribe()}invoke(e=s.EventArgs.empty){this._eventEmitter.emit(((t,s)=>{(s?t.bind(s):t)(this._producer,e)}))}}const o=r.InjectionScope.get(n,null).addToken("event-emitter");class u extends s.ObjectBase{}function l(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw new TypeError("attempted to use private field on non-instance");return e}var a=0;function c(e){return"__private_"+a+++"_"+e}var h=c("_isDisposed"),d=c("_disposing"),b=c("_disposed");class p extends u{constructor(...e){super(...e),Object.defineProperty(this,h,{writable:!0,value:!1}),Object.defineProperty(this,d,{writable:!0,value:new n(this)}),Object.defineProperty(this,b,{writable:!0,value:new n(this)})}onDisposing(e){l(this,d)[d].invoke(e)}onDisposed(e){l(this,b)[b].invoke(e)}dispose(e){if(void 0===e&&!l(this,h)[h])return this.onDisposing(i.EventArgs.empty),this.dispose(!0),void this.onDisposed(i.EventArgs.empty);l(this,h)[h]=!0}get disposing(){return l(this,d)[d]}get disposed(){return l(this,b)[b]}get isDisposed(){return l(this,h)[h]}}const v=require("rxjs");function f(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw new TypeError("attempted to use private field on non-instance");return e}var y=0;function _(e){return"__private_"+y+++"_"+e}var g=_("_thisArg"),m=_("_actionObservable"),j=_("_actionSubscription"),w=_("_nextResult"),O=_("_nextResult$"),x=_("_actionResult"),E=_("_actionResult$"),P=_("_onProgress"),R=_("_onError"),V=_("_onComplete");class D extends p{get action(){return f(this,m)[m]}get actionResult(){return f(this,E)[E]}get actionResultValue(){return f(this,x)[x].getValue()}get actionResultAvailable(){return!!this.actionResultValue&&this.actionResultValue!==this._defaultResult}get nextResult(){return f(this,O)[O]}get nextValue(){return f(this,w)[w].getValue()}get nextResultAvailable(){return!!this.nextValue&&this.nextValue!==this._defaultResult}set onProgress(e){f(this,P)[P]=f(this,g)[g]?e.bind(f(this,g)[g]):e}set onError(e){f(this,R)[R]=e}set onComplete(e){f(this,V)[V]=f(this,g)[g]?e.bind(f(this,g)[g]):e}constructor(e,t){super(),this._defaultResult=t,Object.defineProperty(this,g,{writable:!0,value:void 0}),Object.defineProperty(this,m,{writable:!0,value:void 0}),Object.defineProperty(this,j,{writable:!0,value:void 0}),Object.defineProperty(this,w,{writable:!0,value:void 0}),Object.defineProperty(this,O,{writable:!0,value:void 0}),Object.defineProperty(this,x,{writable:!0,value:void 0}),Object.defineProperty(this,E,{writable:!0,value:void 0}),Object.defineProperty(this,P,{writable:!0,value:void 0}),Object.defineProperty(this,R,{writable:!0,value:void 0}),Object.defineProperty(this,V,{writable:!0,value:void 0}),f(this,g)[g]=e||this,f(this,w)[w]=new v.BehaviorSubject(t),f(this,O)[O]=f(this,w)[w].asObservable(),f(this,x)[x]=new v.BehaviorSubject(t),f(this,E)[E]=f(this,x)[x].asObservable()}observe(e,t){let i={};t&&("function"==typeof t?i={next:e=>{f(this,w)[w].next(e),t.bind(f(this,g)[g])(f(this,g)[g],s.EventArgs.empty)},complete:()=>{f(this,x)[x].next(f(this,w)[w].getValue())}}:(f(this,P)[P]&&t.init&&f(this,P)[P](f(this,g)[g],t.init()),i.error=e=>{t.error?t.error(e):f(this,R)[R]?f(this,R)[R](e):console.error(e)},i.next=e=>{e instanceof Error?i.error(e):(f(this,w)[w].next(e),f(this,P)[P]&&t.next&&f(this,P)[P](f(this,g)[g],t.next(e)))},i.complete=()=>{f(this,x)[x].next(f(this,w)[w].getValue()),f(this,V)[V]&&t.complete&&f(this,V)[V](f(this,g)[g],t.complete())}));try{f(this,m)[m]=e()}catch(e){(f(this,R)[R]||console.error)(e),f(this,m)[m]=(0,v.throwError)(e)}return t&&(f(this,j)[j]=f(this,m)[m].subscribe(i)),f(this,m)[m]}cancel(){f(this,j)[j]&&!f(this,j)[j].closed&&f(this,j)[j].unsubscribe()}reset(){f(this,w)[w].next(this._defaultResult),f(this,x)[x].next(this._defaultResult)}equals(e){return super.equals(e)&&f(this,x)[x]===f(e,x)[x]}dispose(e){e&&!this.isDisposed&&(this.cancel(),f(this,w)[w].unsubscribe(),f(this,x)[x].unsubscribe()),super.dispose(e)}}class A extends n{constructor(...e){super(...e),this._eventEmitter=new o.value(!0)}}function S(e,t){try{t(e)}finally{e.dispose()}}return t})()}));
//# sourceMappingURL=model.min.js.map