Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/cvetdv.ru/bitrix/js/vote/application/dist/ |
Upload File : |
{"version":3,"file":"vote.bundle.js","sources":["../src/vote.js"],"sourcesContent":["import { Runtime } from 'main.core';\nimport { EventEmitter, type BaseEvent } from 'main.core.events';\nimport { createStore, type Store } from 'ui.vue3.vuex';\nimport { ChatType } from 'im.v2.const';\n\nimport { Core } from 'im.v2.application.core';\nimport { VoteModel } from 'vote.store.vote';\nimport { VotePullHandler } from 'vote.provider.pull';\n\nconst VOTES_COUNT_TO_LOAD = 50;\n\nexport class VoteApplication extends EventEmitter\n{\n\tstatic instance: VoteApplication;\n\tstore: Store;\n\t#visibleVotes: Array<number> = [];\n\t#shouldLoadVotes: boolean = true;\n\t#startIndexToLoadVotes: number = 0;\n\n\tstatic init(): VoteApplication\n\t{\n\t\treturn VoteApplication.getInstance();\n\t}\n\n\tstatic getInstance(): VoteApplication\n\t{\n\t\tif (!VoteApplication.instance)\n\t\t{\n\t\t\tVoteApplication.instance = new VoteApplication();\n\t\t}\n\n\t\treturn VoteApplication.instance;\n\t}\n\n\tconstructor()\n\t{\n\t\tsuper();\n\t\tthis.setEventNamespace('BX.VOTE.APPLICATION');\n\t\tthis.createStore();\n\t\tthis.initPull();\n\t\tthis.#subscribeOnEvents();\n\t}\n\n\t#subscribeOnEvents(): void\n\t{\n\t\tEventEmitter.subscribe('vote-message-batch', this.#onMessageIsVisible.bind(this));\n\t}\n\n\t#onMessageIsVisible(event: BaseEvent): void\n\t{\n\t\tconst { messageId } = event.getData();\n\t\tif (this.#visibleVotes.includes(messageId))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.#visibleVotes.push(messageId);\n\t\tif (!this.#shouldLoadVotes)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tRuntime.debounce(() => this.#prepareToLoadVotes())();\n\t\tthis.#shouldLoadVotes = false;\n\t}\n\n\thandleLoadError(entityIds: Array<number>): void\n\t{\n\t\tthis.#visibleVotes = this.#visibleVotes.filter((id) => !entityIds.includes(id));\n\t\tthis.#startIndexToLoadVotes = 0;\n\t}\n\n\t#prepareToLoadVotes(): void\n\t{\n\t\tconst entityIds = this.#visibleVotes.slice(this.#startIndexToLoadVotes, this.#visibleVotes.length);\n\t\tconst requestCount = Math.ceil(entityIds.length / VOTES_COUNT_TO_LOAD);\n\t\tthis.#startIndexToLoadVotes = this.#visibleVotes.length;\n\t\tthis.#shouldLoadVotes = true;\n\t\tfor (let i = 0; i < requestCount; i++)\n\t\t{\n\t\t\tconst startIndex = i * VOTES_COUNT_TO_LOAD;\n\t\t\tconst batchOfEntities = entityIds.slice(startIndex, Math.min(startIndex + VOTES_COUNT_TO_LOAD, entityIds.length));\n\t\t\tconst voteIds = batchOfEntities.map((entityId) => {\n\t\t\t\tconst { componentParams } = Core.getStore().getters['messages/getById'](entityId);\n\n\t\t\t\treturn componentParams.id;\n\t\t\t});\n\t\t\tthis.emit('loadVotes', { entityIds: batchOfEntities, voteIds });\n\t\t}\n\t}\n\n\tcreateStore(): void\n\t{\n\t\tthis.store = createStore({\n\t\t\tmodules: {\n\t\t\t\tvote: {\n\t\t\t\t\tnamespaced: true,\n\t\t\t\t\t...VoteModel,\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tgetStore(): Store\n\t{\n\t\treturn this.store;\n\t}\n\n\tinitPull(): void\n\t{\n\t\tthis.pullClient = BX.PULL;\n\t\tif (!this.pullClient)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.pullClient.subscribe(new VotePullHandler({ store: this.store }));\n\t}\n\n\tstatic canCreateVoteInChat(currentChatType: string): boolean\n\t{\n\t\tconst availableChatTypes = [\n\t\t\tChatType.chat,\n\t\t\tChatType.open,\n\t\t\tChatType.general,\n\t\t\tChatType.call,\n\t\t\tChatType.crm,\n\t\t\tChatType.sonetGroup,\n\t\t\tChatType.calendar,\n\t\t\tChatType.tasks,\n\t\t\tChatType.mail,\n\t\t\tChatType.generalChannel,\n\t\t\tChatType.channel,\n\t\t\tChatType.openChannel,\n\t\t\tChatType.collab,\n\t\t];\n\n\t\treturn availableChatTypes.includes(currentChatType);\n\t}\n}\n"],"names":["VOTES_COUNT_TO_LOAD","VoteApplication","EventEmitter","init","getInstance","instance","constructor","setEventNamespace","createStore","initPull","handleLoadError","entityIds","filter","id","includes","store","modules","vote","namespaced","VoteModel","getStore","pullClient","BX","PULL","subscribe","VotePullHandler","canCreateVoteInChat","currentChatType","availableChatTypes","ChatType","chat","open","general","call","crm","sonetGroup","calendar","tasks","mail","generalChannel","channel","openChannel","collab","bind","event","messageId","getData","push","Runtime","debounce","slice","length","requestCount","Math","ceil","i","startIndex","batchOfEntities","min","voteIds","map","entityId","componentParams","Core","getters","emit"],"mappings":";;;;;CASA,MAAMA,mBAAmB,GAAG,EAAE;CAAC;CAAA;CAAA;CAAA;CAAA;CAAA;AAE/B,CAAO,MAAMC,eAAe,SAASC,6BAAY,CACjD;GAOC,OAAOC,IAAI,GACX;KACC,OAAOF,eAAe,CAACG,WAAW,EAAE;;GAGrC,OAAOA,WAAW,GAClB;KACC,IAAI,CAACH,eAAe,CAACI,QAAQ,EAC7B;OACCJ,eAAe,CAACI,QAAQ,GAAG,IAAIJ,eAAe,EAAE;;KAGjD,OAAOA,eAAe,CAACI,QAAQ;;GAGhCC,WAAW,GACX;KACC,KAAK,EAAE;KAAC;OAAA;;KAAA;OAAA;;KAAA;OAAA;;KAAA;OAAA;OAAA,OArBsB;;KAAE;OAAA;OAAA,OACL;;KAAI;OAAA;OAAA,OACC;;KAoBhC,IAAI,CAACC,iBAAiB,CAAC,qBAAqB,CAAC;KAC7C,IAAI,CAACC,WAAW,EAAE;KAClB,IAAI,CAACC,QAAQ,EAAE;KACf,4CAAI;;GA0BLC,eAAe,CAACC,SAAwB,EACxC;KACC,4CAAI,kCAAiB,4CAAI,gCAAeC,MAAM,CAAEC,EAAE,IAAK,CAACF,SAAS,CAACG,QAAQ,CAACD,EAAE,CAAC,CAAC;KAC/E,4CAAI,oDAA0B,CAAC;;GAsBhCL,WAAW,GACX;KACC,IAAI,CAACO,KAAK,GAAGP,wBAAW,CAAC;OACxBQ,OAAO,EAAE;SACRC,IAAI,EAAE;WACLC,UAAU,EAAE,IAAI;WAChB,GAAGC;;;MAGL,CAAC;;GAGHC,QAAQ,GACR;KACC,OAAO,IAAI,CAACL,KAAK;;GAGlBN,QAAQ,GACR;KACC,IAAI,CAACY,UAAU,GAAGC,EAAE,CAACC,IAAI;KACzB,IAAI,CAAC,IAAI,CAACF,UAAU,EACpB;OACC;;KAGD,IAAI,CAACA,UAAU,CAACG,SAAS,CAAC,IAAIC,kCAAe,CAAC;OAAEV,KAAK,EAAE,IAAI,CAACA;MAAO,CAAC,CAAC;;GAGtE,OAAOW,mBAAmB,CAACC,eAAuB,EAClD;KACC,MAAMC,kBAAkB,GAAG,CAC1BC,oBAAQ,CAACC,IAAI,EACbD,oBAAQ,CAACE,IAAI,EACbF,oBAAQ,CAACG,OAAO,EAChBH,oBAAQ,CAACI,IAAI,EACbJ,oBAAQ,CAACK,GAAG,EACZL,oBAAQ,CAACM,UAAU,EACnBN,oBAAQ,CAACO,QAAQ,EACjBP,oBAAQ,CAACQ,KAAK,EACdR,oBAAQ,CAACS,IAAI,EACbT,oBAAQ,CAACU,cAAc,EACvBV,oBAAQ,CAACW,OAAO,EAChBX,oBAAQ,CAACY,WAAW,EACpBZ,oBAAQ,CAACa,MAAM,CACf;KAED,OAAOd,kBAAkB,CAACd,QAAQ,CAACa,eAAe,CAAC;;CAErD;CAAC,+BA/FA;GACCzB,6BAAY,CAACsB,SAAS,CAAC,oBAAoB,EAAE,4CAAI,4CAAqBmB,IAAI,CAAC,IAAI,CAAC,CAAC;CAClF;CAAC,8BAEmBC,KAAgB,EACpC;GACC,MAAM;KAAEC;IAAW,GAAGD,KAAK,CAACE,OAAO,EAAE;GACrC,IAAI,4CAAI,gCAAehC,QAAQ,CAAC+B,SAAS,CAAC,EAC1C;KACC;;GAGD,4CAAI,gCAAeE,IAAI,CAACF,SAAS,CAAC;GAClC,IAAI,yCAAC,IAAI,qCAAiB,EAC1B;KACC;;GAGDG,iBAAO,CAACC,QAAQ,CAAC,8CAAM,IAAI,6CAAsB,CAAC,EAAE;GACpD,4CAAI,wCAAoB,KAAK;CAC9B;CAAC,gCASD;GACC,MAAMtC,SAAS,GAAG,4CAAI,gCAAeuC,KAAK,yCAAC,IAAI,mDAAyB,4CAAI,gCAAeC,MAAM,CAAC;GAClG,MAAMC,YAAY,GAAGC,IAAI,CAACC,IAAI,CAAC3C,SAAS,CAACwC,MAAM,GAAGnD,mBAAmB,CAAC;GACtE,4CAAI,oDAA0B,4CAAI,gCAAemD,MAAM;GACvD,4CAAI,wCAAoB,IAAI;GAC5B,KAAK,IAAII,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,YAAY,EAAEG,CAAC,EAAE,EACrC;KACC,MAAMC,UAAU,GAAGD,CAAC,GAAGvD,mBAAmB;KAC1C,MAAMyD,eAAe,GAAG9C,SAAS,CAACuC,KAAK,CAACM,UAAU,EAAEH,IAAI,CAACK,GAAG,CAACF,UAAU,GAAGxD,mBAAmB,EAAEW,SAAS,CAACwC,MAAM,CAAC,CAAC;KACjH,MAAMQ,OAAO,GAAGF,eAAe,CAACG,GAAG,CAAEC,QAAQ,IAAK;OACjD,MAAM;SAAEC;QAAiB,GAAGC,2BAAI,CAAC3C,QAAQ,EAAE,CAAC4C,OAAO,CAAC,kBAAkB,CAAC,CAACH,QAAQ,CAAC;OAEjF,OAAOC,eAAe,CAACjD,EAAE;MACzB,CAAC;KACF,IAAI,CAACoD,IAAI,CAAC,WAAW,EAAE;OAAEtD,SAAS,EAAE8C,eAAe;OAAEE;MAAS,CAAC;;CAEjE;;;;;;;;"}