{"version":3,"file":"Channel-g1bV2JGd.js","sources":["../../../app/frontend/entrypoints/utils/eventBus/Channel.ts"],"sourcesContent":["import Events from './Events'\n\nexport default class Channel {\n private readonly events = new Events()\n private isChannelPaused = false\n options: IChannelOptions\n\n constructor(options: IChannelOptions) {\n if (options.isSequence) {\n this.isChannelPaused = options.isSequence\n this.events.isChannelPaused = this.isChannelPaused\n }\n\n if (options.disableFlush) {\n // @ts-ignore\n delete this.flush\n }\n\n this.options = options\n this.events.channelOptions = this.options\n }\n\n subscribe = (eventName: string, callback: (...args: any) => void, context?: any) => {\n this.subscribeHandler(eventName, callback, context, false)\n }\n\n once = (eventName: string, callback: (args?: any) => void, context: any) => {\n this.subscribeHandler(eventName, callback, context, true)\n }\n\n unsubscribe = (eventName: string, callback: (args?: any) => void, context: any) => {\n this.events.removeEventListener(eventName, callback, context)\n }\n\n pause = () => {\n this.isChannelPaused = true\n this.events.isChannelPaused = this.isChannelPaused\n }\n\n resume = () => {\n this.isChannelPaused = false\n this.events.isChannelPaused = this.isChannelPaused\n this.events.proceed()\n }\n\n trigger = (eventName: string, args?: any[]) => {\n this.events.trigger(eventName, args)\n }\n\n execOnEmptyQueue = (cb: any) => {\n this.events.execOnEmptyQueue(cb)\n }\n\n execOnEmptyQueueOnce = (cb: any) => {\n this.events.execOnEmptyQueueOnce(cb)\n }\n\n flush() {\n this.events.flush()\n }\n\n private subscribeHandler(eventName: string, callback: (...args: any) => void, context?: any, once?: boolean) {\n this.events.addEventListener(eventName, callback, context, once)\n }\n}\n"],"names":[],"mappings":";AAEA,MAAqB,QAAQ;AAAA,EAK3B,YAAY,SAA0B;AAJrB,SAAA,SAAS,IAAI;AAC9B,SAAQ,kBAAkB;AAkBd,SAAA,YAAA,CAAC,WAAmB,UAAkC,YAAkB;AAClF,WAAK,iBAAiB,WAAW,UAAU,SAAS,KAAK;AAAA,IAAA;AAGpD,SAAA,OAAA,CAAC,WAAmB,UAAgC,YAAiB;AAC1E,WAAK,iBAAiB,WAAW,UAAU,SAAS,IAAI;AAAA,IAAA;AAG5C,SAAA,cAAA,CAAC,WAAmB,UAAgC,YAAiB;AACjF,WAAK,OAAO,oBAAoB,WAAW,UAAU,OAAO;AAAA,IAAA;AAG9D,SAAA,QAAQ,MAAM;AACZ,WAAK,kBAAkB;AAClB,WAAA,OAAO,kBAAkB,KAAK;AAAA,IAAA;AAGrC,SAAA,SAAS,MAAM;AACb,WAAK,kBAAkB;AAClB,WAAA,OAAO,kBAAkB,KAAK;AACnC,WAAK,OAAO;IAAQ;AAGZ,SAAA,UAAA,CAAC,WAAmB,SAAiB;AACxC,WAAA,OAAO,QAAQ,WAAW,IAAI;AAAA,IAAA;AAGrC,SAAA,mBAAmB,CAAC,OAAY;AACzB,WAAA,OAAO,iBAAiB,EAAE;AAAA,IAAA;AAGjC,SAAA,uBAAuB,CAAC,OAAY;AAC7B,WAAA,OAAO,qBAAqB,EAAE;AAAA,IAAA;AA9CnC,QAAI,QAAQ,YAAY;AACtB,WAAK,kBAAkB,QAAQ;AAC1B,WAAA,OAAO,kBAAkB,KAAK;AAAA,IACrC;AAEA,QAAI,QAAQ,cAAc;AAExB,aAAO,KAAK;AAAA,IACd;AAEA,SAAK,UAAU;AACV,SAAA,OAAO,iBAAiB,KAAK;AAAA,EACpC;AAAA,EAqCA,QAAQ;AACN,SAAK,OAAO;EACd;AAAA,EAEQ,iBAAiB,WAAmB,UAAkC,SAAe,MAAgB;AAC3G,SAAK,OAAO,iBAAiB,WAAW,UAAU,SAAS,IAAI;AAAA,EACjE;AACF;"}