mutual-exclusion/main.b2adc02a31bb8bed.js

1 line
301 KiB
JavaScript
Raw Normal View History

2023-01-18 01:53:50 +00:00
(self.webpackChunkngx_retroblog=self.webpackChunkngx_retroblog||[]).push([[179],{11:(Er,bi,Ns)=>{"use strict";function me(e){return"function"==typeof e}function pn(e){const n=e(r=>{Error.call(r),r.stack=(new Error).stack});return n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,n}const Di=pn(e=>function(n){e(this),this.message=n?`${n.length} errors occurred during unsubscription:\n${n.map((r,i)=>`${i+1}) ${r.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=n});function m(e,t){if(e){const n=e.indexOf(t);0<=n&&e.splice(n,1)}}class et{constructor(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let t;if(!this.closed){this.closed=!0;const{_parentage:n}=this;if(n)if(this._parentage=null,Array.isArray(n))for(const s of n)s.remove(this);else n.remove(this);const{initialTeardown:r}=this;if(me(r))try{r()}catch(s){t=s instanceof Di?s.errors:[s]}const{_finalizers:i}=this;if(i){this._finalizers=null;for(const s of i)try{Mr(s)}catch(o){t=null!=t?t:[],o instanceof Di?t=[...t,...o.errors]:t.push(o)}}if(t)throw new Di(t)}}add(t){var n;if(t&&t!==this)if(this.closed)Mr(t);else{if(t instanceof et){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=null!==(n=this._finalizers)&&void 0!==n?n:[]).push(t)}}_hasParent(t){const{_parentage:n}=this;return n===t||Array.isArray(n)&&n.includes(t)}_addParent(t){const{_parentage:n}=this;this._parentage=Array.isArray(n)?(n.push(t),n):n?[n,t]:t}_removeParent(t){const{_parentage:n}=this;n===t?this._parentage=null:Array.isArray(n)&&m(n,t)}remove(t){const{_finalizers:n}=this;n&&m(n,t),t instanceof et&&t._removeParent(this)}}et.EMPTY=(()=>{const e=new et;return e.closed=!0,e})();const Ht=et.EMPTY;function Bt(e){return e instanceof et||e&&"closed"in e&&me(e.remove)&&me(e.add)&&me(e.unsubscribe)}function Mr(e){me(e)?e():e.unsubscribe()}const pt={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},gn={setTimeout(e,t,...n){const{delegate:r}=gn;return(null==r?void 0:r.setTimeout)?r.setTimeout(e,t,...n):setTimeout(e,t,...n)},clearTimeout(e){const{delegate:t}=gn;return((null==t?void 0:t.clearTimeout)||clearTimeout)(e)},delegate:void 0};function Ci(e){gn.setTimeout(()=>{const{onUnhandledError:t}=pt;if(!t)throw e;t(e)})}function Ei(){}const Sa=Mi("C",void 0,void 0);function Mi(e,t,n){return{kind:e,value:t,error:n}}let mn=null;function Fn(e){if(pt.useDeprecatedSynchronousErrorHandling){const t=!mn;if(t&&(mn={errorThrown:!1,error:null}),e(),t){const{errorThrown:n,error:r}=mn;if(mn=null,n)throw r}}else e()}class Fs extends et{constructor(t){super(),this.isStopped=!1,t?(this.destination=t,Bt(t)&&t.add(this)):this.destination=E}static create(t,n,r){return new v(t,n,r)}next(t){this.isStopped?w(function Ta(e){return Mi("N",e,void 0)}(t),this):this._next(t)}error(t){this.isStopped?w(function Ia(e){return Mi("E",void 0,e)}(t),this):(this.isStopped=!0,this._error(t))}complete(){this.isStopped?w(Sa,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(t){this.destination.next(t)}_error(t){try{this.destination.error(t)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const c=Function.prototype.bind;function h(e,t){return c.call(e,t)}class f{constructor(t){this.partialObserver=t}next(t){const{partialObserver:n}=this;if(n.next)try{n.next(t)}catch(r){b(r)}}error(t){const{partialObserver:n}=this;if(n.error)try{n.error(t)}catch(r){b(r)}else b(t)}complete(){const{partialObserver:t}=this;if(t.complete)try{t.complete()}catch(n){b(n)}}}class v extends Fs{constructor(t,n,r){let i;if(super(),me(t)||!t)i={next:null!=t?t:void 0,error:null!=n?n:void 0,complete:null!=r?r:void 0};else{let s;this&&pt.useDeprecatedNextContext?(s=Object.create(t),s.unsubscribe=()=>this.unsubscribe(),i={next:t.next&&h(t.next,s),error:t.error&&h(t.error,s),complete:t.complete&&h(t.complete,s)}):i=t}this.destination=new f(i)}}function