-1)&&this.store.hasLanguageSomeTranslations(n)){this.resolvedLanguage=n;break}}}},{key:"changeLanguage",value:function(t,s){var n=this;this.isLanguageChangingTo=t;var i=Ie();this.emit("languageChanging",t);var a=function(o){n.language=o,n.languages=n.services.languageUtils.toResolveHierarchy(o),n.resolvedLanguage=void 0,n.setResolvedLanguage(o)},u=function(o){t||o||!n.services.languageDetector||(o=[]);var g=typeof o=="string"?o:n.services.languageUtils.getBestMatchFromCodes(o);g&&(n.language||a(g),n.translator.language||n.translator.changeLanguage(g),n.services.languageDetector&&n.services.languageDetector.cacheUserLanguage&&n.services.languageDetector.cacheUserLanguage(g)),n.loadResources(g,function(l){(function(p,h){h?(a(h),n.translator.changeLanguage(h),n.isLanguageChangingTo=void 0,n.emit("languageChanged",h),n.logger.log("languageChanged",h)):n.isLanguageChangingTo=void 0,i.resolve(function(){return n.t.apply(n,arguments)}),s&&s(p,function(){return n.t.apply(n,arguments)})})(l,g)})};return t||!this.services.languageDetector||this.services.languageDetector.async?!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(u):this.services.languageDetector.detect(u):u(t):u(this.services.languageDetector.detect()),i}},{key:"getFixedT",value:function(t,s,n){var i=this,a=function u(o,g){var l;if(R(g)!=="object"){for(var p=arguments.length,h=new Array(p>2?p-2:0),f=2;f1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;var i=n.lng||this.resolvedLanguage||this.languages[0],a=!!this.options&&this.options.fallbackLng,u=this.languages[this.languages.length-1];if(i.toLowerCase()==="cimode")return!0;var o=function(l,p){var h=s.services.backendConnector.state["".concat(l,"|").concat(p)];return h===-1||h===2};if(n.precheck){var g=n.precheck(this,o);if(g!==void 0)return g}return!!this.hasResourceBundle(i,t)||!(this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages))||!(!o(i,t)||a&&!o(u,t))}},{key:"loadNamespaces",value:function(t,s){var n=this,i=Ie();return this.options.ns?(typeof t=="string"&&(t=[t]),t.forEach(function(a){n.options.ns.indexOf(a)<0&&n.options.ns.push(a)}),this.loadResources(function(a){i.resolve(),s&&s(a)}),i):(s&&s(),Promise.resolve())}},{key:"loadLanguages",value:function(t,s){var n=Ie();typeof t=="string"&&(t=[t]);var i=this.options.preload||[],a=t.filter(function(u){return i.indexOf(u)<0});return a.length?(this.options.preload=i.concat(a),this.loadResources(function(u){n.resolve(),s&&s(u)}),n):(s&&s(),Promise.resolve())}},{key:"dir",value:function(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";var s=this.services&&this.services.languageUtils||new mt(bt());return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(s.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}},{key:"cloneInstance",value:function(){var t=this,s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Re,i=N(N(N({},this.options),s),{isClone:!0}),a=new e(i);return s.debug===void 0&&s.prefix===void 0||(a.logger=a.logger.clone(s)),["store","services","language"].forEach(function(u){a[u]=t[u]}),a.services=N({},this.services),a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a.translator=new ft(a.services,a.options),a.translator.on("*",function(u){for(var o=arguments.length,g=new Array(o>1?o-1:0),l=1;l0&&arguments[0]!==void 0?arguments[0]:{},arguments.length>1?arguments[1]:void 0)});var U,Ct,Ot,M=Ge.createInstance();M.createInstance=Ge.createInstance,M.createInstance,M.dir,M.init,M.loadResources,M.reloadResources,M.use,M.changeLanguage,M.getFixedT,M.t,M.exists,M.setDefaultNamespace,M.hasLoadedNamespace,M.loadNamespaces,M.loadLanguages;class ge extends F{constructor(){super(),this.languages=null,this.keyMap={}}static getInstance(){return ge.instance||(ge.instance=new ge),ge.instance}provideLanguages(e){var t;Y||(this.languages=e,!((t=e["zh-CN"])===null||t===void 0)&&t.Chat&&this.setKeyMap(e["zh-CN"]),console.log("TUITranslateService.provideLanguages ok."))}useI18n(e){var t;if(Y)return;if(!this.languages)return void console.warn("TUITranslateService.useI18next not have messages.");const s={};for(const[i,a]of Object.entries(this.languages))s[i==="zh_cn"?"zh":i]={translation:a};M.init({compatibilityJSON:"v3",lng:e||"zh",fallbackLng:"zh",detection:{order:["querystring","navigator"],caches:["localStorage","cookie"]},resources:s});let n=this.normalizeLanguageKey(e||"zh");(t=this.getEngine().TUIReport)===null||t===void 0||t.reportFeature(201,n)}changeLanguage(e){let t=this.normalizeLanguageKey(e);return this.getEngine().TUIReport.reportFeature(201,t),M.changeLanguage(e)}normalizeLanguageKey(e){return e.includes("en")?"en-us":e.includes("tw")?"zh-tw":e.includes("zh")||e.includes("cn")?"zh-cn":e.includes("ko")||e.includes("kr")?"ko-kr":e.includes("ja")||e.includes("jp")?"ja-jp":"other-"+e}t(e){if(!this.languages){let s=e;return!D(e)&&e.indexOf(".")>-1&&(s=e.split(".").pop()||""),s}const t=this.keyMap[e];return t?M.t(t):M.t(e)}setKeyMap(e,t){for(const s in e)if(Object.prototype.hasOwnProperty.call(e,s)){const n=t?`${t}.${s}`:s;if(e[s]&&typeof e[s]=="object"&&!Array.isArray(e[s])&&e[s]!==null)this.setKeyMap(e[s],n);else{let i=t?`${t}.${e[s]}`:e[s];i=this.replaceKey(i),this.keyMap[i]=`${t}.${s}`}}}replaceKey(e){return e.startsWith("Chat")?e.replace("Chat","TUIChat"):e.startsWith("Conversation")?e.replace("Conversation","TUIConversation"):e.startsWith("Message")?e.replace("Message","message.tip"):e.startsWith("Call")?e.replace("Call","message.custom"):e}}class te extends F{constructor(){super(),this.serv="TUIConversationService"}static getInstance(){return te.instance||(te.instance=new te),te.instance}init(){const e=this.getEngine();e.eventCenter.addEvent(e.EVENT.CONVERSATION_LIST_UPDATED,this.onConversationListUpdated.bind(this)),e.eventCenter.addEvent(e.EVENT.TOTAL_UNREAD_MESSAGE_COUNT_UPDATED,this.onTotalUnreadCountUpdated.bind(this)),e.eventCenter.addEvent(e.EVENT.MESSAGE_RECEIVED,this.onMessageReceived.bind(this)),this.getConversationInitData()}onConversationListUpdated(e){const t=this.filterSystemConversation(e);this.getEngine().TUIStore.update(c.CONV,"conversationList",t),this.updateCurrentConversation()}onTotalUnreadCountUpdated(e){this.getEngine().TUIStore.update(c.CONV,"totalUnreadCount",e)}onMessageReceived(e){const t=this.getEngine(),s=this.getEngine().TUIStore.getData(c.CONV,"conversationList");let n=!1;for(let i=0;i0){this.getEngine().TUIStore.update(c.CONV,"operationTypeMap",{conversationID:u,operationType:0}),n=!0;break}}}}if(n){this.getEngine().TUIStore.update(c.CONV,"conversationList",s);const i=this.getEngine().TUIStore.getData(c.CONV,"currentConversationID")||"",a=this.findConversation(i);a&&this.getEngine().TUIStore.update(c.CONV,"currentConversation",a)}}getConversationInitData(){const e=this.getEngine();e.chat.isReady()&&e.chat.getConversationList().then(t=>{const{conversationList:s,isSyncCompleted:n}=t.data;if(console.log(`${this.serv}.init, getConversationList count:${s.length} isSyncCompleted:${n}`),s.length>0){this.onConversationListUpdated(s);const i=e.chat.getTotalUnreadMessageCount();this.onTotalUnreadCountUpdated(i)}})}switchConversation(e){return j(this,void 0,void 0,function*(){const t=`${this.serv}.switchConversation`,s=this.getEngine();if(!e)return s.TUIStore.reset(c.CHAT,["messageList","isCompleted","nextReqMessageID"]),s.TUIStore.update(c.CONV,"currentConversationID",""),s.TUIStore.update(c.CONV,"currentConversation",null),console.log(`${t} conversationID is empty, conversationID:${e}`),Promise.resolve({});if(!e.startsWith(s.TYPES.CONV_C2C)&&!e.startsWith(s.TYPES.CONV_GROUP))return console.warn(`${t} conversationID is invalid, conversationID:${e}`),Promise.reject({code:q.INVALID_CONV_ID,message:z.INVALID_CONV_ID});const n=s.TUIStore.getData(c.APP,"enableAutoMessageRead"),i=s.TUIStore.getData(c.CONV,"currentConversationID");if(i&&i===e)return n&&this.setMessageRead(i),console.warn(`${t} please check conversationID, conversationID:${e}`),Promise.resolve({code:q.CONV_ID_SAME,message:z.CONV_ID_SAME});const a=yield this.getConversationModel(e);return D(a)?(console.warn(`${t} target conversation is not exist, conversationID:${e}`),Promise.reject({code:q.CONV_NOT_EXIST,message:z.CONV_NOT_EXIST})):(n&&(i&&this.setMessageRead(i),e&&this.setMessageRead(e)),s.TUIStore.reset(c.CHAT,["messageList","isCompleted","nextReqMessageID"]),s.TUIStore.update(c.CONV,"currentConversationID",e),s.TUIStore.update(c.CONV,"currentConversation",a),Promise.resolve(a))})}getConversationModel(e){return j(this,void 0,void 0,function*(){let t=this.findConversation(e);if(D(t))try{const s=yield this.getConversationProfile(e);s.data&&s.data.conversation&&(t=new je(s.data.conversation))}catch{t=void 0}return t})}findConversation(e){let t;const s=this.getEngine().TUIStore.getData(c.CONV,"conversationList");for(let n=0;n