k2-im 0.1.19 → 0.1.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- import {r,ta,ja,v,ia,ha,ga,ea,da,ca,ba,$,G,H,F,Ba,d,pa,sa,ra,la,oa,na,ma as ma$1,A,y,z,x,w,Aa,za,ya,xa,wa,va,c,b,k,h,qa}from'./chunk-CD5SF7WI.js';import'./chunk-NVF5RDHB.js';import'./chunk-ULJD6ZA3.js';import {ma,ja as ja$1}from'./chunk-W2FKET4Z.js';import'./chunk-WOT6VMZA.js';import {defineStore,getActivePinia}from'pinia';import {shallowRef,ref,computed,watch,reactive,nextTick}from'vue';function Wl(e,n,r$1={}){let o=r(n);try{return ii(e,ai({runtime:o,...r$1}))}catch(s){throw o.dispose(),s}}function Ql(e){ta(ve(e).runtime);}var Bn=new WeakMap;function Pe(e){let n=e??getActivePinia();if(n===void 0)throw new Error("\u672A\u627E\u5230\u5F53\u524D Pinia\uFF1B\u8BF7\u5728 Vue setup \u5185\u8C03\u7528\uFF0C\u6216\u663E\u5F0F\u4F20\u5165 Pinia \u5B9E\u4F8B");return n}function ai(e){return Object.freeze({runtime:e.runtime,...e.expressionRecentPersistence===void 0?{}:{expressionRecentPersistence:e.expressionRecentPersistence}})}function ii(e,n){let r=Bn.get(e);if(r!==void 0&&!r.disposed){if(r.context===n)return r.installation;throw new Error("\u5F53\u524D Pinia \u5DF2\u5B89\u88C5\u6D3B\u52A8 ImChatKitContext\uFF0C\u8BF7\u5148 dispose \u518D\u5207\u6362 runtime")}let o={context:n,storeDisposers:new Set,disposed:false},s=Object.freeze({context:n,dispose:()=>{if(!o.disposed){o.disposed=true;for(let c of [...o.storeDisposers])c();o.storeDisposers.clear(),n.runtime.dispose(),Bn.get(e)===o&&Bn.delete(e);}}});return o.installation=s,Bn.set(e,o),s}function ve(e){let n=Bn.get(e);if(n===void 0||n.disposed)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u5B89\u88C5\u6D3B\u52A8 ImChatKitContext");return n.context}function Oe(e,n){let r=Bn.get(e);if(r===void 0||r.disposed)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u5B89\u88C5\u6D3B\u52A8 ImChatKitContext");return r.storeDisposers.add(n),()=>r.storeDisposers.delete(n)}function Jl(e){Bn.get(e)?.installation.dispose();}function Rr(e){return `${e.domain}:${e.applicationId}`}function Yl(e){return e.domain==="contact"?Object.freeze({domain:"contact",applicationId:e.applicationId}):e.domain==="group"?Object.freeze({domain:"group",applicationId:e.applicationId,conversation:Object.freeze({conversationType:"group",conversationId:e.conversation.conversationId})}):Object.freeze({domain:"channel",applicationId:e.applicationId,conversation:Object.freeze({conversationType:"channel",conversationId:e.conversation.conversationId})})}function Zl(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function br(e,n){let r=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:r!==null&&typeof r.code=="string"?r.code:"IM_CHAT_KIT_APPLICATIONS_ACTION_FAILED",category:r!==null&&Zl(r.category)?r.category:"state",operation:r!==null&&typeof r.operation=="string"?r.operation:`applications.${n}`,retryable:r!==null&&typeof r.retryable=="boolean"?r.retryable:n==="reload"})}function ec(e){return e.code==="IM_SDK_APPLICATION_REQUEST_ALREADY_HANDLED"||e.code==="IM_SDK_APPLICATION_ALREADY_HANDLED"}function nc(e){return defineStore("k2-im-applications",()=>{let n=ve(e).runtime,r=ref([]),o=ref(false),s=shallowRef(null),c=ref({}),m=shallowRef({}),I=computed(()=>r.value.length),z=computed(()=>{let y=0,R=0,j=0;for(let J of r.value)J.ref.domain==="contact"?y+=1:J.ref.domain==="group"?R+=1:j+=1;return Object.freeze({contact:y,group:R,channel:j})}),A=false,G=0,q=0,B=0,P=false,g=0,F=new Map;function U(){G+=1,q+=1,B+=1,g+=1,P=false,F.clear(),r.value=[],o.value=false,s.value=null,c.value={},m.value={};}function V(y){return {client:y,generation:n.getGeneration(),stateEpoch:G}}function ie(y){return !A&&y.client===n.getProductClient()&&y.generation===n.getGeneration()&&y.stateEpoch===G}async function S(){if(A)return Object.freeze({ok:false,operation:"reload",reason:"stale"});let y=++q,R;try{R=V(n.ensureProductClient());}catch(j){let J=br(j,"reload");return s.value=J,o.value=false,Object.freeze({ok:false,operation:"reload",reason:"failed",error:J})}o.value=true,s.value=null;try{let j=await R.client.applications.listPending();return y!==q||!ie(R)?Object.freeze({ok:!1,operation:"reload",reason:"stale"}):(r.value=Object.freeze([...j]),Object.freeze({ok:!0,operation:"reload"}))}catch(j){if(y!==q||!ie(R))return Object.freeze({ok:false,operation:"reload",reason:"stale"});let J=br(j,"reload");return s.value=J,Object.freeze({ok:false,operation:"reload",reason:"failed",error:J})}finally{y===q&&ie(R)&&(o.value=false);}}function x(){if(A||P)return;P=true;let y=G,R=++g;queueMicrotask(()=>{R===g&&(P=false,!(A||y!==G)&&S());});}function X(y){(y.type==="contact-application:received"||y.type==="channel-join-application:received"||y.type==="application:updated")&&x();}let N=n.subscribeProductEvents(X);async function se(y,R){let j=Yl(y),J=Rr(j);if(A)return Object.freeze({ok:false,operation:R,reason:"stale",application:j});let le=++B;F.set(J,le),c.value={...c.value,[J]:R};let{[J]:ye,...ge}=m.value;m.value=ge;let K;try{K=V(n.ensureProductClient());}catch(Ie){let ce=br(Ie,R);m.value={...m.value,[J]:ce};let{[J]:Ce,...ke}=c.value;return c.value=ke,F.delete(J),Object.freeze({ok:false,operation:R,reason:"failed",application:j,error:ce})}let Q=()=>ie(K)&&F.get(J)===le;try{return await K.client.applications[R](j),Q()?(q+=1,o.value=!1,r.value=Object.freeze(r.value.filter(Ie=>Rr(Ie.ref)!==J)),Object.freeze({ok:!0,operation:R,application:j})):Object.freeze({ok:!1,operation:R,reason:"stale",application:j})}catch(Ie){if(!Q())return Object.freeze({ok:false,operation:R,reason:"stale",application:j});let ce=br(Ie,R);return ec(ce)?(q+=1,o.value=false,r.value=Object.freeze(r.value.filter(Ce=>Rr(Ce.ref)!==J)),Object.freeze({ok:false,operation:R,reason:"failed",application:j,error:ce})):(m.value={...m.value,[J]:ce},Object.freeze({ok:false,operation:R,reason:"failed",application:j,error:ce}))}finally{if(Q()){F.delete(J);let{[J]:Ie,...ce}=c.value;c.value=ce;}}}function ne(y){return se(y,"accept")}function M(y){return se(y,"ignore")}function T(){A||U();}function C(){A||(A=true,N(),U());}return {items:r,loading:o,error:s,processingKeys:c,itemErrors:m,pendingCount:I,domainCounts:z,reload:S,accept:ne,ignore:M,reset:T,dispose:C}})}var ci=new WeakMap,Cr=new WeakMap;function tc(e=Pe()){ve(e);let n=ci.get(e);n===void 0&&(n=nc(e),ci.set(e,n));let r=n(e);return Cr.get(e)!==r&&(Cr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),Cr.get(e)===r&&Cr.delete(e);})),r}function fi(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function oc(e,n){return e.length===n.length&&e.every((r,o)=>r===n[o])}var ui=Object.freeze({state:"none"});function ac(e,n,r){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"?e:Object.freeze({code:"IM_CHAT_KIT_THREAD_OPERATION_FAILED",category:"state",operation:n,retryable:false,...r===void 0?{}:{conversation:fi(r)}})}function ic(e){return defineStore("k2-im-thread",()=>{let n=ve(e).runtime,r=n.getDiagnostics(),o=shallowRef(null),s=shallowRef([]),c=shallowRef(ui),m=shallowRef(null),I=ref(false),z=ref(false),A=ref(false),G=ref(false),q=ref(false),B=shallowRef(null),P=ref(0),g=false,F=0,U=0,V,ie,S,x,X=[],N=new Map,se=new Set;function ne(){X.length=0,P.value=0;}let M=n.subscribeEvents(h=>{if(g||h.type!=="message:received"||(h.source??"live")!=="live"||h.message.body.system?.timelineVisibility==="hidden")return;let D=o.value;D===null||h.message.conversationId!==D.conversationId||h.message.conversationType!==D.conversationType||h.message.senderId===n.getCredentials().userId||(X.push(h.message.id),P.value+=1);});function T(h=null){ne(),o.value=h,s.value=[],c.value=ui,m.value=null,I.value=h!==null,z.value=false,A.value=false,G.value=false,q.value=false,B.value=null;}function C(h){if((N.get(h)??0)>0){se.add(h);return}h.close();}function y(){x?.(),x=void 0;let h=S;S=void 0,h!==void 0&&C(h);}function R(h,D,ee){let ae=o.value;if(g||S!==h||n.getGeneration()!==ee||ae===null||D.ref.conversationId!==ae.conversationId||D.ref.conversationType!==ae.conversationType)return false;let re=D.messages.filter(Re=>Re.body.system?.timelineVisibility!=="hidden");return oc(s.value,re)||(s.value=Object.freeze(re)),c.value=D.entryUnread,m.value=D.draft,I.value=D.loading,z.value=true,A.value=D.stale,G.value=D.hasOlder,q.value=D.hasNewer,B.value=D.error??null,true}async function j(h){let D=n.ensureProductClient();return h.conversationType==="direct"?D.openConversation({conversationType:"direct",conversationId:h.conversationId},{initialPosition:"first-unread"}):h.conversationType==="group"?D.openConversation({conversationType:"group",conversationId:h.conversationId},{initialPosition:"first-unread"}):D.openConversation({conversationType:"channel",conversationId:h.conversationId},{initialPosition:"first-unread"})}async function J(h){let D=n.ensureProductClient();if(D.conversations.list().find(ae=>ae.ref.conversationType===h.conversationType&&ae.ref.conversationId===h.conversationId)?.manuallyUnread===true)try{await D.conversations.markRead(h);}catch(ae){r.record("warn","pinia","conversation","thread-open-clear-manual-unread-failed",()=>({conversation:h,error:{message:"\u4F1A\u8BDD\u5DF2\u6253\u5F00\uFF0C\u4F46\u624B\u5DE5\u672A\u8BFB\u63D0\u9192\u6E05\u9664\u5931\u8D25",data:ae}}));}}async function le(h){if(g)throw new Error("Thread Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u6253\u5F00\u4F1A\u8BDD");U+=1,V=void 0,ie=void 0;let D=fi(h),ee=++F,ae=n.getGeneration();r.record("debug","pinia","history","thread-open-start",()=>({generation:ae,conversation:D}));let re;try{re=await j(D);}catch(Re){throw !g&&ee===F&&ae===n.getGeneration()&&r.record("warn","pinia","history","thread-open-failed",()=>({generation:ae,conversation:D,error:{message:"\u76EE\u6807\u4F1A\u8BDD\u6253\u5F00\u5931\u8D25\uFF0C\u5DF2\u4FDD\u7559\u5F53\u524D\u7EBF\u7A0B",data:ac(Re,"thread.open",D)}})),Re}if(g||ee!==F||ae!==n.getGeneration()){re.close(),r.record("debug","pinia","history","thread-open-stale-result-dropped",()=>({generation:ae,conversation:D}));return}if(await J(D),g||ee!==F||ae!==n.getGeneration()){re.close(),r.record("debug","pinia","history","thread-open-stale-result-dropped",()=>({generation:ae,conversation:D}));return}return y(),T(D),S=re,x=re.subscribe(Re=>R(re,Re,ae)),R(re,re.getSnapshot(),ae),r.record("debug","pinia","history","thread-open-complete",()=>({generation:ae,conversation:D})),re}function ye(){F+=1;}function ge(h){if(g||S===void 0)throw new Error(`Thread Store \u6CA1\u6709\u6D3B\u52A8 handle\uFF0C\u65E0\u6CD5\u6267\u884C ${h}`);return S}function K(h,D,ee){return !g&&U===h&&S===D&&n.getGeneration()===ee}async function Q(h,D){if(V!==void 0||ie!==void 0)return false;let ee=ge(h),ae=n.getGeneration(),re=++U;V=re;try{return await D(ee),K(re,ee,ae)?(R(ee,ee.getSnapshot(),ae),!0):!1}finally{V===re&&(V=void 0);}}async function Ie(h,D,ee){let ae=ge(h),re=n.getGeneration(),Re=++U;V=void 0,ie=Re;try{if(await D(ae),!K(Re,ae,re))return !1;let oe=ae.getSnapshot();return ee(oe)?(R(ae,oe,re),!0):!1}finally{ie===Re&&(ie=void 0);}}function ce(){return Ie("loadLatest",h=>h.history.loadLatest(),h=>!h.hasNewer)}function Ce(){return Q("loadOlder",h=>h.history.loadOlder())}function ke(){return Q("loadNewer",h=>h.history.loadNewer())}function Se(h){return Ie("loadAround",D=>D.history.loadAround(h),D=>D.messages.some(ee=>ee.id===h)).then(D=>D?s.value.some(ee=>ee.id===h):false)}function je(h){return ge("resolveMessage").resolveMessage(h)}function _(h=ge("retainHandle")){if(g)throw new Error("Thread Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u4FDD\u7559 handle");N.set(h,(N.get(h)??0)+1);let D=false;return ()=>{if(D)return;D=true;let ee=(N.get(h)??1)-1;if(ee>0){N.set(h,ee);return}N.delete(h),se.delete(h)&&h.close();}}function L(){return _()}function de(){F+=1,U+=1,V=void 0,ie=void 0,y(),T();}function fe(h){let D=o.value;return D===null||D.conversationType!==h.conversationType||D.conversationId!==h.conversationId?false:(U+=1,V=void 0,ie=void 0,y(),T(),true)}function ue(){F+=1,U+=1,V=void 0,ie=void 0,x?.(),x=void 0;let h=new Set([...S===void 0?[]:[S],...se,...N.keys()]);S=void 0,se.clear(),N.clear();for(let D of h)D.close();T();}function De(){g||(ue(),g=true,M());}function O(){return X.splice(0,X.length)}return {activeRef:o,messages:s,entryUnread:c,draft:m,loading:I,ready:z,stale:A,hasOlder:G,hasNewer:q,error:B,activeRemoteMessageRevision:P,open:le,invalidatePendingOpen:ye,loadLatest:ce,loadOlder:Ce,loadNewer:ke,loadAround:Se,resolveMessage:je,retainHandle:_,retainCurrentHandle:L,close:de,closeActiveConversation:fe,reset:ue,dispose:De,drainActiveRemoteMessageIds:O,getHandle:()=>S}})}var di=new WeakMap,Pr=new WeakMap;function Ge(e=Pe()){ve(e);let n=di.get(e);n===void 0&&(n=ic(e),di.set(e,n));let r=n(e);return Pr.get(e)!==r&&(Pr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),Pr.get(e)===r&&Pr.delete(e);})),r}var Er=new WeakMap;function Ao(e){let n=Er.get(e);if(n===void 0)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u521B\u5EFA ImComposerStore");return n}function mt(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Sr(e){return {text:e.text,...e.mentions===void 0?{}:{mentions:e.mentions.map(n=>({userId:n.userId,displayName:n.displayName}))},...e.replyToMessageId===void 0?{}:{replyToMessageId:e.replyToMessageId},attachments:[]}}function pi(e){return e===null?null:Sr({text:e.text,mentions:e.mentions,...e.replyToMessageId===void 0?{}:{replyToMessageId:e.replyToMessageId}})}function xo(e){return e.text===""&&(e.mentions?.length??0)===0&&e.replyToMessageId===void 0}function zo(e,n){return e===null||e.text!==n.text||e.replyToMessageId!==n.replyToMessageId||(e.mentions?.length??0)!==(n.mentions?.length??0)?false:(e.mentions??[]).every((r,o)=>{let s=n.mentions?.[o];return s!==void 0&&r.userId===s.userId&&r.displayName===s.displayName})}function cc(e){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"}function Kt(e,n,r){return cc(e)?e:Object.freeze({code:n==="composer.draft"?"IM_CHAT_KIT_DRAFT_SAVE_FAILED":"IM_CHAT_KIT_COMPOSER_OPERATION_FAILED",category:"state",operation:n,retryable:n==="composer.draft",...r===void 0?{}:{conversation:mt(r)},cause:e})}function Or(e,n){return e.conversationId===n.ref.conversationId&&e.conversationType===n.ref.conversationType}function uc(e){return defineStore("k2-im-composer",()=>{let n=ve(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=shallowRef(null),c=shallowRef(null),m=shallowRef(null),I=ref(false),z=ref(0),A=shallowRef(null),G=false,q=0,B=0,P=0,g,F=Promise.resolve(),U=Promise.resolve(),V=new Set,ie=new Map,S,x;function X(){return o.getHandle()}function N(_,L){let de=o.activeRef;return !G&&X()===_&&n.getGeneration()===L&&de!==null&&de.conversationId===_.ref.conversationId&&de.conversationType===_.ref.conversationType}function se(_=X()){if(_===void 0)return false;let L=n.getGeneration();return g?.handle===_&&g.generation===L||[...V].some(de=>de.handle===_&&de.generation===L)}async function ne(_=X()){if(_===void 0)return;let L=n.getGeneration(),de=g?.handle===_&&g.generation===L?g:void 0;if(de===void 0){let O=[...V].filter(h=>h.handle===_&&h.generation===L).map(h=>h.promise);O.length>0?await Promise.all(O):await U;return}g=void 0;let ue=F.then(async()=>{xo(de.input)?await _.draft.clear():await _.draft.save(de.input);}),De={handle:_,generation:L,promise:ue};V.add(De),U=ue,F=ue.catch(()=>{});try{await ue,N(_,L)&&(A.value=null,z.value+=1,r.record("debug","pinia","draft","composer-draft-flush-complete",()=>({generation:L,conversation:mt(_.ref)})));}catch(O){throw N(_,L)&&(g===void 0&&P===de.version&&(g=de),A.value=Kt(O,"composer.draft",_.ref),r.record("error","pinia","draft","composer-draft-flush-failed",()=>({generation:L,conversation:mt(_.ref),error:{message:"Composer \u8349\u7A3F\u6301\u4E45\u5316\u5931\u8D25",data:A.value}}))),O}finally{V.delete(De);}}function M(_){let L=X(),de=n.getGeneration();if(L===void 0||!N(L,de))return A.value=Kt(new Error("\u5F53\u524D\u4F1A\u8BDD\u5C1A\u672A\u5C31\u7EEA"),"composer.draft"),false;let fe=Sr(_);return P+=1,s.value=xo(fe)?null:fe,g={handle:L,generation:de,version:P,input:fe},A.value=null,T(),xo(fe)&&ne(L).catch(()=>{}),true}async function T(){if(m.value!==null)return;let _=s.value?.replyToMessageId;if(_===void 0){B+=1,c.value=null;return}let L=X();if(L===void 0){c.value=null;return}let de=o.messages.find(O=>O.id===_);if(de!==void 0){B+=1,c.value=de;return}let fe=n.getGeneration(),ue=++B,De=await L.resolveMessage(_).catch(()=>null);ue!==B||!N(L,fe)||m.value!==null||s.value?.replyToMessageId!==_||(c.value=De);}function C(_){let L=X();return L===void 0||!Or(_,L)?false:(m.value=null,c.value=_,M({...s.value??{text:"",attachments:[]},replyToMessageId:_.id}))}function y(_){if(_!==void 0&&s.value?.replyToMessageId!==_)return;c.value=null;let L=s.value;if(L===null)return;let{replyToMessageId:de,...fe}=L;M({...fe});}function R(_){let L=X();return L===void 0||!Or(_,L)?false:(c.value=null,m.value=_,true)}function j(){m.value=null,T();}function J(){B+=1,c.value=null,m.value=null;}function le(_,L){return !G&&n.getGeneration()===_&&q===L}function ye(_){return [...ie.values()].some(L=>L.handle===_)}function ge(_,L){return _!==null&&zo(pi(_),L)}function K(_,L,de){!N(_,L)||s.value===null||!zo(s.value,de)||(P+=1,g?.handle===_&&g.generation===L&&zo(g.input,de)&&(g=void 0),s.value=null,B+=1,c.value=null);}async function Q(_){let L=[...V].filter(fe=>fe.handle===_.handle&&fe.generation===_.generation).map(fe=>fe.promise.catch(()=>{}));if(L.length>0&&await Promise.all(L),!N(_.handle,_.generation))return;let de=await _.handle.draft.get();if(!ge(de,_.input)){S?.token===_.token&&(S=void 0);return}S=_;try{await _.handle.draft.clear(),S?.token===_.token&&(S=void 0);}catch(fe){if(N(_.handle,_.generation)){if(s.value===null&&g===void 0){let ue={text:"",attachments:[]};P+=1,g={handle:_.handle,generation:_.generation,version:P,input:ue};}A.value=Kt(fe,"composer.draft",_.handle.ref),r.record("error","pinia","draft","composer-accepted-draft-clear-failed",()=>({generation:_.generation,conversation:mt(_.handle.ref),error:{message:"\u6D88\u606F\u5DF2\u88AB\u53D1\u9001\u6D41\u7A0B\u63A5\u53D7\uFF0C\u4F46\u6E05\u7406\u5BF9\u5E94\u8349\u7A3F\u5931\u8D25",data:A.value}}));}}}function Ie(_){if(!N(_.handle,_.generation)||s.value!==null)return;S=void 0;let L=Sr(_.input);P+=1,s.value=L,g={handle:_.handle,generation:_.generation,version:P,input:L},T();}async function ce(_){let L=m.value,de=L===null?"send":"edit";if(L!==null&&x!==void 0)return Object.freeze({ok:false,operation:"edit",reason:"busy"});let fe=X(),ue=n.getGeneration();if(fe===void 0||!N(fe,ue))return Object.freeze({ok:false,operation:de,reason:"not-ready"});let De=_.text.trim();if(De==="")return Object.freeze({ok:false,operation:de,reason:"empty"});let O=q;if(L!==null&&!Or(L,fe))return Object.freeze({ok:false,operation:"edit",reason:"not-ready"});let h=Symbol(de);L!==null&&(x=h),I.value=x!==void 0,A.value=null;let D=o.retainHandle(fe),ee;if(L===null){let ae=Sr(_);ee={token:h,handle:fe,generation:ue,input:ae},ie.set(h,ee),K(fe,ue,ae);}r.record("debug","pinia","message","composer-submit-start",()=>({generation:ue,operation:de,conversation:mt(fe.ref),...L===null?{}:{messageId:L.id}}));try{if(L===null){if(!le(ue,O)||!N(fe,ue))return Object.freeze({ok:!1,operation:"send",reason:"stale"});let ae=await fe.messages.sendText(De,{..._.mentions===void 0?{}:{mentions:_.mentions},..._.replyToMessageId===void 0?{}:{replyToMessageId:_.replyToMessageId}});if(!le(ue,O)||!N(fe,ue))return Object.freeze({ok:!1,operation:"send",reason:"stale"});if(!ae.ok)return ee!==void 0&&Ie(ee),A.value=ae.error,Object.freeze({ok:!1,operation:"send",reason:"sdk-rejected",error:ae.error});if(ee!==void 0&&(await Q(ee),!le(ue,O)||!N(fe,ue)))return Object.freeze({ok:!1,operation:"send",reason:"stale"})}else {try{await fe.messages.editText(L.id,De,{..._.mentions===void 0?{}:{mentions:_.mentions}});}catch(ae){if(!le(ue,O)||!N(fe,ue))return Object.freeze({ok:!1,operation:"edit",reason:"stale"});let re=Kt(ae,"composer.edit",fe.ref);return A.value=re,Object.freeze({ok:!1,operation:"edit",reason:"sdk-rejected",error:re})}if(!le(ue,O)||!N(fe,ue))return Object.freeze({ok:!1,operation:"edit",reason:"stale"});m.value===L&&j();}return A.value=null,r.record("debug","pinia","message","composer-submit-complete",()=>({generation:ue,operation:de,conversation:mt(fe.ref)})),Object.freeze({ok:!0,operation:de})}catch(ae){if(!le(ue,O)||!N(fe,ue))return Object.freeze({ok:false,operation:de,reason:"stale"});ee!==void 0&&Ie(ee);let re=Kt(ae,`composer.${de}`,fe.ref);return A.value=re,Object.freeze({ok:false,operation:de,reason:"sdk-rejected",error:re})}finally{D(),ie.delete(h),x===h&&(x=void 0),I.value=x!==void 0,N(fe,ue)&&Ce();}}function Ce(){let _=X();if(_===void 0)return;let L=S,de=L!==void 0&&L.handle===_&&L.generation===n.getGeneration()&&ge(o.draft,L.input);L!==void 0&&!de&&(S=void 0),!se(_)&&!ye(_)&&!de&&(s.value=pi(o.draft)),m.value!==null&&!Or(m.value,_)&&(m.value=null),T();}function ke(){q+=1,B+=1,P+=1,g=void 0,ie.clear(),S=void 0,F=Promise.resolve(),U=Promise.resolve(),s.value=null,c.value=null,m.value=null,x=void 0,I.value=false,z.value=0,A.value=null;}let Se=watch(()=>({ref:o.activeRef===null?null:`${o.activeRef.conversationType}:${o.activeRef.conversationId}`,draft:o.draft,messages:o.messages}),(_,L)=>{if(_.ref!==L?.ref){ke(),_.ref!==null&&Ce();return}Ce();},{immediate:true});function je(){G||(G=true,Se(),ke());}return Er.set(e,Object.freeze({suspendInteraction:J,syncReplyTarget:T,dispose:je})),{input:s,replyTo:c,editingMessage:m,submitting:I,draftCommitVersion:z,error:A,updateDraft:M,flush:ne,hasPendingWork:se,submitText:ce,setReplyTo:C,clearReplyTo:y,setEditing:R,clearEditing:j,reset:ke}})}var vi=new WeakMap,Mr=new WeakMap;function Wn(e=Pe()){ve(e);let n=vi.get(e);n===void 0&&(n=uc(e),vi.set(e,n));let r=n(e),o=Ao(e);return Mr.get(e)!==r&&(Mr.set(e,r),Oe(e,()=>{o.dispose(),r.$dispose(),Mr.get(e)===r&&(Mr.delete(e),Er.get(e)===o&&Er.delete(e));})),r}var Tr=new WeakMap;function Nt(e){return e.status==="sent"&&e.contentType!=="system"&&e.recalled===void 0&&e.deletedForEveryone===void 0}function Ii(e){return [...e]}function mc(e){return defineStore("k2-im-message-operations",()=>{let n=ve(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=Wn(e),c=Ao(e),m=shallowRef(null),I=ref(false),z=ref([]),A=ref(null),G=ref(false),q=ref([]),B=shallowRef(null),P=false,g=0,F=0,U=0;function V(){return o.getHandle()}function ie(O,h=V()){let D=o.activeRef;return !P&&h!==void 0&&D!==null&&O.conversationType!=="supergroup"&&D.conversationId===O.conversationId&&D.conversationType===O.conversationType&&h.ref.conversationId===O.conversationId&&h.ref.conversationType===O.conversationType}function S(O){return v(m.value,O)}function x(){G.value=false,q.value=[];}function X(){A.value=null;}function N(){let O=I.value;x(),X(),I.value=false,z.value=[],O&&c.syncReplyTarget();}function se(O){if(O!==void 0){if(!ie(O))return Object.freeze({ok:false,reason:"not-ready"});if(!Nt(O))return Object.freeze({ok:false,reason:"not-selectable"});if(S(O))return Object.freeze({ok:false,reason:"pinned-protected"})}return c.suspendInteraction(),I.value=true,z.value=O===void 0?[]:[O],Object.freeze({ok:true})}function ne(O){return z.value.some(h=>h.id===O)}function M(O){return !I.value||!ie(O)?Object.freeze({ok:false,reason:"not-ready"}):Nt(O)?S(O)?Object.freeze({ok:false,reason:"pinned-protected"}):(ne(O.id)?z.value=z.value.filter(h=>h.id!==O.id):z.value=[...z.value,O],Object.freeze({ok:true})):Object.freeze({ok:false,reason:"not-selectable"})}function T(O){let h=V();return O.length===0||!O.every(D=>ie(D,h))?Object.freeze({ok:false,reason:"not-ready"}):(A.value=Ii(O),Object.freeze({ok:true}))}function C(){let O=z.value;if(O.length===0)return Object.freeze({outcome:"empty"});let h=O.filter(ma);return O.some(ja$1)?(q.value=h,G.value=true,Object.freeze({outcome:"confirmation-required"})):h.length===0?Object.freeze({outcome:"all-skipped"}):(T(h),Object.freeze({outcome:"picker-opened"}))}function y(){let O=Ii(q.value);return x(),O.length===0?Object.freeze({outcome:"all-skipped"}):(T(O),Object.freeze({outcome:"picker-opened"}))}async function R(O){let h=A.value,D=V();if(h===null)return Object.freeze({ok:false,operation:"forward",reason:"empty-input"});let ee=n.getGeneration(),ae=++g,re=await $(n,{handle:D,messages:h,targets:O});return P||ae!==g||n.getGeneration()!==ee||V()!==D?Object.freeze({ok:false,operation:"forward",reason:"stale"}):((re.ok||re.reason!=="stale")&&X(),re.ok&&N(),B.value=re.ok?null:re.error??null,r.record(re.ok?"debug":"error","pinia","message","message-forward-settled",()=>({generation:ee,conversation:D===void 0?void 0:{...D.ref},result:re.ok?{ok:true,sentCount:re.sentCount,skippedCount:re.skippedCount}:{ok:false,reason:re.reason,error:re.error}})),re)}function j(O,h,D){B.value=O.ok?null:O.error??null,r.record(O.ok?"debug":"error","pinia","message",`message-${O.operation}-settled`,()=>({generation:n.getGeneration(),conversation:D===void 0?void 0:{...D.ref},messageId:h,result:O.ok?{ok:true}:{ok:false,reason:O.reason,error:O.error}}));}function J(O,h){return h!==void 0&&(P||V()!==h)?Object.freeze({ok:false,operation:O.operation,reason:"stale"}):O}async function le(O){let h=V(),D=J(await ba(n,{handle:h,message:O}),h);return j(D,O.id,h),D}async function ye(O){let h=V(),D=J(await ca(n,{handle:h,message:O}),h);return j(D,O.id,h),D}async function ge(O){let h=V(),D=J(await da(n,{handle:h,message:O}),h);return j(D,O.id,h),D}async function K(O){let h=V(),D=J(await ea(n,{handle:h,messageId:O}),h);return j(D,O,h),D}function Q(){let O=o.activeRef;if(!(O?.conversationType!=="group"&&O?.conversationType!=="channel"))return Object.freeze({conversationId:O.conversationId,conversationType:O.conversationType})}function Ie(O,h,D){let ee=Q();return !P&&O===F&&h!==void 0&&V()===h&&ee?.conversationId===D.conversationId&&ee.conversationType===D.conversationType}function ce(O,h,D){let ee=Q();return !P&&O===U&&V()===h&&ee?.conversationId===D.conversationId&&ee.conversationType===D.conversationType}function Ce(O){if(z.value=z.value.filter(h=>h.id!==O),q.value=q.value.filter(h=>h.id!==O),A.value!==null){let h=A.value.filter(D=>D.id!==O);A.value=h.length===0?null:h;}s.editingMessage?.id===O&&s.clearEditing();}async function ke(O){let h=Q(),D=V();if(h===void 0||!ie(O,D))return Object.freeze({ok:false,operation:"pin",reason:"not-ready"});let ee=++F;U+=1;let ae=await ga(n,{conversation:h,message:O});return Ie(ee,D,h)?(ae.ok&&ae.operation==="pin"?(m.value=ae.value,Ce(ae.value.messageId),B.value=null):B.value=ae.ok?null:ae.error??null,ae):Object.freeze({ok:false,operation:"pin",reason:"stale"})}async function Se(){let O=Q(),h=V();if(O===void 0||h===void 0)return Object.freeze({ok:false,operation:"unpin",reason:"not-ready"});let D=++F;U+=1;let ee=await ha(n,O);return Ie(D,h,O)?(ee.ok&&ee.operation==="unpin"?(m.value=null,B.value=null):B.value=ee.ok?null:ee.error??null,ee):Object.freeze({ok:false,operation:"unpin",reason:"stale"})}function je(){let O=Q();if(O===void 0){m.value=null;return}try{m.value=ja(n,O);}catch{m.value=null;}}async function _(){let O=Q(),h=V();if(O===void 0||h===void 0)return Object.freeze({ok:false,operation:"sync-pin",reason:"not-ready"});let D=n.getGeneration(),ee=++U;je();let ae=await ia(n,O);return n.getGeneration()!==D||!ce(ee,h,O)?Object.freeze({ok:false,operation:"sync-pin",reason:"stale"}):(ae.ok&&ae.operation==="sync-pin"?(m.value=ae.value,B.value=null):B.value=ae.ok?null:ae.error??null,ae)}function L(O){let h=new Map(O.map(re=>[re.id,re])),D=re=>re.flatMap(Re=>{let oe=h.get(Re.id);return oe!==void 0&&Nt(oe)?[oe]:[]});if(z.value=D(z.value),q.value=D(q.value),A.value!==null){let re=D(A.value);A.value=re.length===0?null:re;}let ee=s.editingMessage;if(ee!==null){let re=h.get(ee.id);(re===void 0||!Nt(re))&&s.clearEditing();}let ae=s.input?.replyToMessageId;if(ae!==void 0){let re=h.get(ae);re!==void 0&&!Nt(re)&&s.clearReplyTo(ae);}}let de=watch(()=>({ref:o.activeRef===null?null:`${o.activeRef.conversationType}:${o.activeRef.conversationId}`,messages:o.messages}),(O,h)=>{O.ref!==h?.ref&&(g+=1,F+=1,U+=1,je(),I.value=false,z.value=[],A.value=null,x(),B.value=null),L(O.messages);},{immediate:true}),fe=n.subscribeEvents(O=>{if(O.type!=="pinned-message:updated")return;let h=Q();if(!(h===void 0||h.conversationId!==O.conversation.conversationId||h.conversationType!==O.conversation.conversationType)){if(U+=1,O.pinnedMessage===null){m.value=null;return}try{m.value=ja(n,h),Ce(O.pinnedMessage.messageId);}catch{}}});function ue(){g+=1,F+=1,U+=1,I.value=false,z.value=[],A.value=null,x(),B.value=null,je();}function De(){P||(P=true,de(),fe(),ue());}return Tr.set(e,Object.freeze({dispose:De})),{activePinnedMessage:m,isMessageMultiSelect:I,selectedMessages:z,forwardPickerMessages:A,forwardTypeConfirmOpen:G,pendingForwardReadyMessages:q,error:B,enterMultiSelect:se,exitMultiSelect:N,isSelected:ne,toggleSelection:M,openForwardPicker:T,closeForwardPicker:X,prepareForwardFromSelection:C,cancelForwardTypeConfirmation:x,confirmForwardTypeConfirmation:y,forward:R,recall:le,deleteLocal:ye,deleteForEveryone:ge,retry:K,pin:ke,unpin:Se,syncPinned:_,isPinnedMessageProtected:S,reset:ue}})}var hi=new WeakMap,jr=new WeakMap;function Lt(e=Pe()){ve(e);let n=hi.get(e);n===void 0&&(n=mc(e),hi.set(e,n));let r=n(e),o=Tr.get(e);if(o===void 0)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u521B\u5EFA ImMessageOperationsStore");return jr.get(e)!==r&&(jr.set(e,r),Oe(e,()=>{o.dispose(),r.$dispose(),jr.get(e)===r&&(jr.delete(e),Tr.get(e)===o&&Tr.delete(e));})),r}var Go=Object.freeze({availability:"unknown",reason:"not-ready"});function Ic(e){return defineStore("k2-im-capabilities",()=>{let n=ve(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=Lt(e),c=shallowRef(null),m=false,I,z,A;function G$1(){z!==void 0&&(clearTimeout(z),z=void 0);}function q(M){G$1();let T=M.nextEvaluationAt;if(T===void 0)return;let C=Math.max(0,T-Date.now());z=setTimeout(()=>{z=void 0,g();},C);}function B(M){m||(c.value=M,q(M));}function P(M){let T=o.activeRef;return T!==null&&T.conversationType===M.conversationType&&T.conversationId===M.conversationId}function g(M=Date.now()){let T=o.activeRef,C=n.getProductClient();T===null||C===null||B(C.capabilities.get(T,{nowMs:M}));}function F$1(){I?.(),I=void 0,G$1(),c.value=null;let M=o.activeRef,T=n.getProductClient();M===null||T===null||(I=T.capabilities.subscribe(M,B));}function U(){F$1();}function V(){I?.(),I=void 0,G$1(),c.value=null;}async function ie(){let M=o.activeRef,T=n.getProductClient();if(M===null||T===null)return;let C=n.getGeneration();try{let y=await T.capabilities.refresh(M);if(m||C!==n.getGeneration()||!P(M))return;B(y);}catch(y){if(m||C!==n.getGeneration()||!P(M))return;r.record("warn","pinia","profile","capability-refresh-failed",()=>({conversation:{...M},error:{message:"\u5237\u65B0\u4F1A\u8BDD\u80FD\u529B\u5931\u8D25\uFF0C\u4FDD\u7559\u5F53\u524D\u672C\u673A\u5FEB\u7167",data:y}})),B(T.capabilities.get(M));}}function S(M){return c.value===null?Go:F(c.value,M)}function x(M){return S(M)}function X(M){return S(M)}function N(M,T){let C=c.value;return C===null?Go:H(M,{snapshot:C,selfId:n.getCredentials().userId,...T})}function se(M,T){let C=c.value;return C===null?Go:G(M,{snapshot:C,message:T,selfId:n.getCredentials().userId,pinnedMessage:s.activePinnedMessage})}function ne(){m||(m=true,A?.(),A=void 0,V());}return A=watch(()=>o.activeRef,F$1,{deep:true,immediate:true}),{activeSnapshot:c,start:U,reset:V,refresh:ie,conversationAction:S,profileAction:x,memberAction:X,memberTargetAction:N,messageAction:se,dispose:ne}})}var yi=new WeakMap,wr=new WeakMap;function hc(e=Pe()){ve(e);let n=yi.get(e);n===void 0&&(n=Ic(e),yi.set(e,n));let r=n(e);return wr.get(e)!==r&&(wr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),wr.get(e)===r&&wr.delete(e);})),r}var Ut=new WeakMap;function Ci(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function yc(e){return e.conversationType==="direct"||e.conversationType==="group"||e.conversationType==="channel"}function bc(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function bi(e,n,r){let o=typeof e=="object"&&e!==null?e:null,s=n==="flush"?"IM_CHAT_KIT_DRAFT_SAVE_FAILED":"IM_CHAT_KIT_THREAD_OPERATION_FAILED";return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:s,category:o!==null&&bc(o.category)?o.category:"state",operation:`conversation.activate.${n}`,retryable:o!==null&&typeof o.retryable=="boolean"?o.retryable:n==="flush",conversation:Ci(r)})}function Ri(e,n){return e?.conversationType===n.conversationType&&e.conversationId===n.conversationId}function Cc(e=Pe()){let n=ve(e),r=Ut.get(e);if(r!==void 0&&!r.disposed)return r.coordinator;let o=n.runtime,s=o.getDiagnostics(),c=Wn(e),m=Ge(e),I={conversation:null,epoch:0,disposed:false,invalidatePendingOpen:m.invalidatePendingOpen};async function z(A){let G=Ci(A);I.conversation=G;let q=++I.epoch,B=o.getGeneration(),P=()=>!I.disposed&&I.epoch===q&&o.getGeneration()===B;if(m.invalidatePendingOpen(),s.record("debug","pinia","conversation","conversation-activation-start",()=>({generation:B,conversation:G})),!yc(G))return s.record("warn","pinia","conversation","conversation-activation-unsupported",()=>({generation:B,conversation:G})),Object.freeze({ok:false,reason:"unsupported",conversation:G});let g=m.getHandle();if(g!==void 0&&c.hasPendingWork(g))try{await c.flush(g);}catch(F){if(!P())return Object.freeze({ok:false,reason:"stale",conversation:G});let U=bi(F,"flush",G);return s.record("warn","pinia","conversation","conversation-activation-draft-save-failed",()=>({generation:B,conversation:G,error:{message:"\u4F1A\u8BDD\u6FC0\u6D3B\u524D\u4FDD\u5B58\u8349\u7A3F\u5931\u8D25",data:U}})),Object.freeze({ok:false,reason:"draft-save-failed",conversation:G,error:U})}if(!P())return Object.freeze({ok:false,reason:"stale",conversation:G});if(m.getHandle()!==void 0&&Ri(m.activeRef,G))return s.record("debug","pinia","conversation","conversation-activation-complete",()=>({generation:B,conversation:G,data:{reused:true}})),Object.freeze({ok:true,status:"opened",conversation:G});try{if(await m.open(G)===void 0||!P())return Object.freeze({ok:!1,reason:"stale",conversation:G})}catch(F){if(!P())return Object.freeze({ok:false,reason:"stale",conversation:G});let U=bi(F,"open",G);return s.record("warn","pinia","conversation","conversation-activation-open-failed",()=>({generation:B,conversation:G,error:{message:"\u76EE\u6807\u4F1A\u8BDD\u6253\u5F00\u5931\u8D25\uFF0C\u4FDD\u7559\u5F53\u524D\u7EBF\u7A0B",data:U}})),Object.freeze({ok:false,reason:"open-failed",conversation:G,error:U})}return s.record("debug","pinia","conversation","conversation-activation-complete",()=>({generation:B,conversation:G})),Object.freeze({ok:true,status:"opened",conversation:G})}return I.coordinator=Object.freeze({activate:z}),Ut.set(e,I),Oe(e,()=>{I.disposed=true,I.conversation=null,I.epoch+=1,Ut.get(e)===I&&Ut.delete(e);}),I.coordinator}function Pi(e,n){let r=Ut.get(e);r===void 0||r.disposed||!Ri(r.conversation,n)||(r.epoch+=1,r.invalidatePendingOpen());}function ki(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function kc(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function pt(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_CONVERSATION_LIST_ACTION_FAILED",category:o!==null&&kc(o.category)?o.category:"state",operation:o!==null&&typeof o.operation=="string"?o.operation:`conversation-list.${n}`,retryable:o!==null&&typeof o.retryable=="boolean"?o.retryable:n==="refresh"||n==="set-muted"||n==="mark-read",...r===void 0?{}:{conversation:r}})}function Oc(e){return defineStore("k2-im-conversation-list",()=>{let n=ve(e).runtime,r=n.getDiagnostics(),o=ref([]),s=ref("idle"),c=ref(0),m=shallowRef(null),I=false,z=null,A,G=0;function q(C="idle"){o.value=[],s.value=C,c.value=0,m.value=null;}function B(C,y,R){I||z!==y||n.getGeneration()!==R||(o.value=C.items,s.value=C.state,c.value=C.totalUnread,m.value=C.error??null);}function P(C){if(I)throw new Error("Conversation List Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u91CD\u65B0\u7ED1\u5B9A");if(z===C||(A?.(),A=void 0,z=C,G+=1,q(),C===null))return;let y=n.getGeneration();A=C.conversations.subscribe(R=>B(R,C,y)),r.record("debug","pinia","conversation","conversation-list-subscribed",()=>({generation:y}));}function g(){P(n.getProductClient());}function F(){P(null);}function U(C){return !I&&z===C.client&&n.getProductClient()===C.client&&n.getGeneration()===C.generation&&G===C.bindingEpoch}function V(){let C=n.ensureProductClient();return P(C),{client:C,generation:n.getGeneration(),bindingEpoch:G}}async function ie(){if(I)return Object.freeze({ok:false,operation:"refresh",reason:"stale"});let C;try{C=V();}catch(y){return Object.freeze({ok:false,operation:"refresh",reason:"failed",error:pt(y,"refresh")})}try{return await C.client.conversations.refresh(),U(C)?Object.freeze({ok:!0,operation:"refresh"}):Object.freeze({ok:!1,operation:"refresh",reason:"stale"})}catch(y){return U(C)?Object.freeze({ok:false,operation:"refresh",reason:"failed",error:pt(y,"refresh")}):Object.freeze({ok:false,operation:"refresh",reason:"stale"})}}function S(C,y,R){let j=ki(y);if(I)return Object.freeze({ok:false,operation:C,reason:"stale",conversation:j});let J;try{J=V();}catch(le){return Object.freeze({ok:false,operation:C,reason:"failed",conversation:j,error:pt(le,C,j)})}try{R(J.client,j);}catch(le){return U(J)?Object.freeze({ok:false,operation:C,reason:"failed",conversation:j,error:pt(le,C,j)}):Object.freeze({ok:false,operation:C,reason:"stale",conversation:j})}return U(J)?Object.freeze({ok:true,operation:C,conversation:j}):Object.freeze({ok:false,operation:C,reason:"stale",conversation:j})}async function x(C,y,R){let j=ki(y);if(I)return Object.freeze({ok:false,operation:C,reason:"stale",conversation:j});let J;try{J=V();}catch(le){return Object.freeze({ok:false,operation:C,reason:"failed",conversation:j,error:pt(le,C,j)})}try{return await R(J.client,j),U(J)?Object.freeze({ok:!0,operation:C,conversation:j}):Object.freeze({ok:!1,operation:C,reason:"stale",conversation:j})}catch(le){return U(J)?Object.freeze({ok:false,operation:C,reason:"failed",conversation:j,error:pt(le,C,j)}):Object.freeze({ok:false,operation:C,reason:"stale",conversation:j})}}function X(C,y){return S("set-pinned",C,(R,j)=>R.conversations.setPinned(j,y))}function N(C,y){return x("set-muted",C,(R,j)=>R.conversations.setMuted(j,y))}function se(C){return x("mark-read",C,(y,R)=>y.conversations.markRead(R))}function ne(C){return S("mark-unread",C,(y,R)=>y.conversations.markUnread(R))}function M(C){return S("delete-local",C,(y,R)=>y.conversations.deleteLocal(R))}function T(){I||(A?.(),A=void 0,z=null,q(),I=true);}return {items:o,state:s,totalUnread:c,error:m,start:g,reset:F,refresh:ie,setPinned:X,setMuted:N,markRead:se,markUnread:ne,deleteLocal:M,dispose:T}})}var Oi=new WeakMap,xr=new WeakMap;function _o(e=Pe()){ve(e);let n=Oi.get(e);n===void 0&&(n=Oc(e),Oi.set(e,n));let r=n(e);return xr.get(e)!==r&&(xr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),xr.get(e)===r&&xr.delete(e);})),r}var Tc=250,wc=2e3;function Si(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Fo(e,n){return e!==null&&e.conversationId===n.conversationId&&e.conversationType===n.conversationType}function Ko(e,n,r){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"?e:Object.freeze({code:"IM_CHAT_KIT_SEARCH_OPERATION_FAILED",category:"state",operation:n,retryable:false,...r===void 0?{}:{conversation:Si(r)}})}function xc(e){return defineStore("k2-im-search",()=>{let n=ve(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=ref(""),c=ref([]),m=ref(false),I=ref(false),z=ref("all"),A=ref(""),G=ref(""),q=shallowRef(null),B=false,P=0,g=0,F,U,V,ie;function S(){let K=o.activeRef,Q=o.getHandle();if(!(B||K===null||Q===void 0||!Fo(K,Q.ref)))return {ref:Si(K),handle:Q,generation:n.getGeneration()}}function x(K){return !B&&n.getGeneration()===K.generation&&o.getHandle()===K.handle&&Fo(o.activeRef,K.ref)}function X(){let K=U;K!==void 0&&(clearTimeout(K.timer),U=void 0,K.resolve(Object.freeze({ok:false,operation:"search",reason:"stale"})));}function N(){V!==void 0&&(clearTimeout(V),V=void 0);}function se(K,Q){return Q===P&&(m.value=false),Object.freeze({ok:false,operation:K,reason:"stale"})}function ne(K,Q){return K===g&&A.value===Q&&(A.value=""),Object.freeze({ok:false,operation:"locate",reason:"stale"})}function M(K,Q,Ie){switch(Ie){case "all":return va(n,{conversation:K.ref,keyword:Q});case "text":return wa(n,{conversation:K.ref,keyword:Q});case "file":return xa(n,{conversation:K.ref,keyword:Q});case "image":return ya(n,{conversation:K.ref});case "video":return za(n,{conversation:K.ref});case "voice":return Aa(n,{conversation:K.ref})}}function T(K,Q){return K!==""?true:Q!=="all"&&Q!=="text"}function C(K){s.value=K,X();let Q=++P,Ie=K.trim(),ce=z.value,Ce=T(Ie,ce);if(F=void 0,c.value=[],I.value=false,q.value=null,!Ce)return m.value=false,Promise.resolve(Object.freeze({ok:false,operation:"search",reason:"no-condition"}));let ke=S();return ke===void 0?(m.value=false,Promise.resolve(Object.freeze({ok:false,operation:"search",reason:"not-ready"}))):(m.value=true,new Promise(Se=>{let je=setTimeout(()=>{if(U?.timer===je&&(U=void 0),Q!==P||!x(ke)){Se(se("search",Q));return}r.record("debug","pinia","history","search-start",()=>({generation:ke.generation,conversation:ke.ref,category:ce})),M(ke,Ie,ce).then(_=>{if(Q!==P||!x(ke)){Se(se("search",Q));return}c.value=[..._.results],F=_.nextPageToken,I.value=!_.exhausted,m.value=false,Se(Object.freeze({ok:true,operation:"search"}));}).catch(_=>{if(Q!==P||!x(ke)){Se(se("search",Q));return}let L=Ko(_,"search.first-page",ke.ref);q.value=L,m.value=false,Se(Object.freeze({ok:false,operation:"search",reason:"failed",error:L}));});},Tc);U={timer:je,resolve:Se};}))}function y(K){return z.value=K,(K==="image"||K==="video"||K==="voice")&&(s.value=""),C(s.value)}async function R(){if(m.value)return Object.freeze({ok:false,operation:"load-more",reason:"busy"});if(!I.value||F===void 0)return Object.freeze({ok:false,operation:"load-more",reason:"exhausted"});let K=S();if(K===void 0)return Object.freeze({ok:false,operation:"load-more",reason:"not-ready"});let Q=F,Ie=++P;m.value=true,q.value=null;try{let ce=await Ba(n,Q);return Ie!==P||!x(K)?se("load-more",Ie):(c.value=[...c.value,...ce.results],F=ce.nextPageToken,I.value=!ce.exhausted,m.value=!1,Object.freeze({ok:!0,operation:"load-more"}))}catch(ce){if(Ie!==P||!x(K))return se("load-more",Ie);let Ce=Ko(ce,"search.next-page",K.ref);return q.value=Ce,m.value=false,Object.freeze({ok:false,operation:"load-more",reason:"failed",error:Ce})}}async function j(K,Q){let Ie=S();if(Ie===void 0||!Fo(Ie.ref,K))return Object.freeze({ok:false,operation:"locate",reason:"not-ready"});let ce=++g;N(),G.value="",A.value=Q,q.value=null;try{return !o.messages.some(ke=>ke.id===Q)&&!await o.loadAround(Q)||(await nextTick(),ce!==g||!x(Ie))?ne(ce,Q):(G.value=Q,Object.freeze({ok:!0,operation:"locate"}))}catch(Ce){if(ce!==g||!x(Ie))return ne(ce,Q);let ke=Ko(Ce,"search.locate",Ie.ref);return A.value="",q.value=ke,Object.freeze({ok:false,operation:"locate",reason:"failed",error:ke})}}function J(K){if(A.value!==K)return false;A.value="";let Q=g,Ie=S();return N(),Ie===void 0||G.value!==K||(V=setTimeout(()=>{V=void 0,Q===g&&x(Ie)&&G.value===K&&(G.value="");},wc)),true}function le(){g+=1,N(),A.value="",G.value="";}function ye(K){P+=1,X(),s.value="",c.value=[],m.value=false,I.value=false,z.value="all",F=void 0,q.value=null,K?.preserveLocation!==true&&le();}function ge(){B||(ye(),B=true,ie?.(),ie=void 0);}return ie=watch(()=>o.activeRef===null?"":`${o.activeRef.conversationType}\0${o.activeRef.conversationId}`,()=>ye(),{flush:"sync"}),{keyword:s,results:c,searching:m,hasMore:I,category:z,locatingMessageId:A,highlightMessageId:G,error:q,search:C,setCategory:y,loadMore:R,locate:j,completeLocation:J,clearLocation:le,reset:ye,dispose:ge}})}var Mi=new WeakMap,zr=new WeakMap;function Mn(e=Pe()){ve(e);let n=Mi.get(e);n===void 0&&(n=xc(e),Mi.set(e,n));let r=n(e);return zr.get(e)!==r&&(zr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),zr.get(e)===r&&zr.delete(e);})),r}var Ar=new WeakMap;function Ei(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function zc(e){return e.conversationType==="direct"||e.conversationType==="group"||e.conversationType==="channel"}function Ac(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function Gc(e,n){let r=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:r!==null&&typeof r.code=="string"?r.code:"IM_CHAT_KIT_CONVERSATION_DELETE_FAILED",category:r!==null&&Ac(r.category)?r.category:"state",operation:"conversation.deleteLocal",retryable:r!==null&&typeof r.retryable=="boolean"?r.retryable:false,conversation:Ei(n)})}function Dc(e=Pe()){let n=ve(e),r=Ar.get(e);if(r!==void 0&&!r.disposed)return r.coordinator;let o=n.runtime,s=o.getDiagnostics(),c=_o(e),m=Ge(e),I=Wn(e),z=Lt(e),A=Mn(e),G={disposed:false};function q(B){let P=Ei(B);if(G.disposed)return Object.freeze({ok:false,reason:"stale",conversation:P});let g=o.getGeneration(),F=m.activeRef!==null&&m.activeRef.conversationType===P.conversationType&&m.activeRef.conversationId===P.conversationId;if(s.record("debug","pinia","conversation","conversation-delete-start",()=>({generation:g,conversation:P})),!zc(P))return Object.freeze({ok:false,reason:"unsupported",conversation:P});let U=c.deleteLocal(P);if(!U.ok){if(U.reason==="stale")return Object.freeze({ok:false,reason:"stale",conversation:P});let S=Gc(U.error,P);return s.record("warn","pinia","conversation","conversation-delete-failed",()=>({generation:g,conversation:P,error:{message:"\u672C\u673A\u4F1A\u8BDD\u5220\u9664\u5931\u8D25\uFF0C\u4FDD\u7559\u5F53\u524D\u7EBF\u7A0B",data:S}})),Object.freeze({ok:false,reason:"delete-failed",conversation:P,error:S})}if(G.disposed||o.getGeneration()!==g)return Object.freeze({ok:false,reason:"stale",conversation:P});Pi(e,P);let V=m.closeActiveConversation(P),ie=F||V;return ie&&(I.reset(),z.reset(),A.reset()),s.record("debug","pinia","conversation","conversation-delete-complete",()=>({generation:g,conversation:P,data:{activeConversationCleared:ie}})),Object.freeze({ok:true,status:"deleted",conversation:P,activeConversationCleared:ie})}return G.coordinator=Object.freeze({deleteLocal:q}),Ar.set(e,G),Oe(e,()=>{G.disposed=true,Ar.get(e)===G&&Ar.delete(e);}),G.coordinator}var ji=30,Fc=15,Kc=20,Hc=4294967295,Ti=new WeakMap;function Dr(e){return typeof e=="object"&&e!==null}function yt(e,n){if(typeof e!="string"||e.trim()==="")throw new TypeError(`expression recent persistence ${n} \u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32`);return e.trim()}function wi(e,n){if(!Number.isSafeInteger(e)||Number(e)<=0||Number(e)>Hc)throw new TypeError(`expression recent persistence ${n} \u5FC5\u987B\u662F\u6B63 uint32`);return Number(e)}function Nc(e,n){if(!Dr(e)||e.kind!==n)throw new TypeError("expression recent persistence asset kind \u65E0\u6548");let r=yt(e.url,"asset.url"),o;try{o=new URL(r);}catch{throw new TypeError("expression recent persistence asset.url \u5FC5\u987B\u662F\u5408\u6CD5 URL")}if(o.protocol!=="http:"&&o.protocol!=="https:"||o.username!==""||o.password!=="")throw new TypeError("expression recent persistence asset.url \u53EA\u5141\u8BB8\u65E0\u51ED\u636E HTTP(S)");let s=wi(e.width,"asset.width"),c=wi(e.height,"asset.height");if(n==="sticker")return Object.freeze({kind:"sticker",packageId:yt(e.packageId,"asset.packageId"),resourceId:yt(e.resourceId,"asset.resourceId"),url:r,width:s,height:c});if(Object.prototype.hasOwnProperty.call(e,"packageId"))throw new TypeError("expression recent persistence GIF \u4E0D\u5141\u8BB8 packageId");let m=e.resourceId===void 0?void 0:yt(e.resourceId,"asset.resourceId");return Object.freeze({kind:"gif",...m===void 0?{}:{resourceId:m},url:r,width:s,height:c})}function Vt(e,n){let r=Ti.get(e);r===void 0&&(r=new Map,Ti.set(e,r));let o=r.get(n);return o===void 0&&(o={revision:0,kindRevisions:{sticker:0,gif:0,emoji:0},status:"idle",tail:Promise.resolve(),latestSnapshot:null,error:null},r.set(n,o)),o}function xi(e,n,r,o){let s=Vt(e,n),c=++s.revision;for(let I of o)s.kindRevisions[I]+=1;s.status="pending",s.latestSnapshot=r,s.error=null;let m=s.tail.catch(()=>{}).then(()=>e.save(n,r));return s.tail=m,m.then(()=>{s.revision===c&&(s.status="saved",s.error=null);},I=>{s.revision===c&&(s.status="failed",s.error=I);}),{coordinator:s,revision:c,promise:m}}var _r=new WeakMap;function qt(){return reactive({loading:false,loaded:false,error:null})}function gt(e){return {sticker:e(),gif:e()}}function zi(e){return {sticker:e(),gif:e(),emoji:e()}}function Fn(e,n){return Object.freeze({loading:e.loading,loaded:e.loaded,empty:e.loaded&&!e.loading&&e.error===null&&n===0,error:e.error})}function Lc(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function It(e,n){let r=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:r!==null&&typeof r.code=="string"?r.code:"IM_CHAT_KIT_EXPRESSION_OPERATION_FAILED",category:r!==null&&Lc(r.category)?r.category:"state",operation:r!==null&&typeof r.operation=="string"?r.operation:`expressions.${n}`,retryable:r!==null&&typeof r.retryable=="boolean"?r.retryable:n==="hydrate-recent"||n.startsWith("load-")})}function Ho(e){return Object.freeze({code:e.code,category:e.category??"state",operation:e.operation,retryable:e.retryable??false})}function Ai(e){let n=e.trim();if(n==="")throw new TypeError("expression recordId \u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32");return n}function ht(e){return "recordId"in e?e.recordId:void 0}function Uc(e){let n=[];for(let r=0;r<e.length;r+=ji)n.push(e.slice(r,r+ji));return n}function Fr(e){return e==="gif"?Kc:Fc}function Ne(e){return e.kind==="sticker"?["sticker",e.packageId.trim(),e.resourceId.trim()].join("\0"):["gif",e.resourceId?.trim()||e.url].join("\0")}function No(e,n){let r=Ne(n);return Object.freeze([Object.freeze({...n}),...e.filter(o=>o.kind==="emoji"?true:Ne(o)!==r)].slice(0,Fr(n.kind)))}function qc(e,n){let r=Ne(n);return Object.freeze([Object.freeze({...n}),...e.filter(o=>Ne(o)!==r)])}function Gi(e,n,r){let o=[],s=new Set;for(let c of [...r.values(),...n]){if(c.kind==="emoji")continue;let m=Ne(c);if(!(c.kind!==e||s.has(m))&&(s.add(m),o.push(Object.freeze({...c})),o.length===Fr(e)))break}return Object.freeze(o)}function Di(e){let n=new Set;return Object.freeze(e.filter(r=>n.has(r.resourceId)?false:(n.add(r.resourceId),true)))}function qo(e){let n=k(e.token);return n!==void 0?`token:${n.code}`:h(e.resourceId)?.stableKey??h(e.token)?.stableKey??`server:${e.resourceId}`}function Lo(e,n,r){let o=e.filter(I=>I.kind==="emoji").slice(0,14).map(I=>Object.freeze({kind:"emoji",stableKey:qo(I),token:I.token,resourceId:I.resourceId})),s=n.filter(I=>I.kind==="game"||r.has(I.stableKey)),c=[],m=new Set;for(let I of [...s,...o])if(!m.has(I.stableKey)&&(m.add(I.stableKey),c.push(I),c.length===14))break;return Object.freeze(c)}function Uo(e){return Object.freeze({kind:"game",gameType:e,stableKey:e==="dice"?c:b})}function Vc(e){return defineStore("k2-im-expression",()=>{let n=ve(e),r=n.runtime,o=n.expressionRecentPersistence,s=r.getDiagnostics(),c=ref(""),m=ref([]),I=ref({}),z=qt(),A=reactive({}),G=ref({sticker:[],gif:[]}),q=gt(qt),B=ref({sticker:[],gif:[]}),P=ref({sticker:[],gif:[],emoji:[]}),g=zi(qt),F=ref({sticker:[],gif:[],emoji:[]}),U=ref([]),V=ref("idle"),ie=ref(""),S=ref([]),x=ref(0),X=qt(),N=ref(void 0),se=computed(()=>Fn(z,m.value.length)),ne=computed(()=>{let d=new Set([...Object.keys(A),...Object.keys(I.value)]);return Object.fromEntries([...d].map(p=>{let v=A[p]??{loading:false,loaded:true,error:null};return [p,Fn(v,I.value[p]?.length??0)]}))}),M=computed(()=>({sticker:Fn(q.sticker,G.value.sticker.length),gif:Fn(q.gif,G.value.gif.length)})),T=computed(()=>({sticker:Fn(g.sticker,P.value.sticker.length),gif:Fn(g.gif,P.value.gif.length),emoji:Fn(g.emoji,U.value.length)})),C=computed(()=>Fn(X,S.value.length)),y=computed(()=>N.value!==void 0),R=false,j=0,J=0,le={},ye=gt(()=>0),ge=zi(()=>0),K=0,Q=0,Ie=0,ce=0,Ce=0,ke=null,Se=null,je=null,_="emoji",L=new Set,de=[],fe=null,ue=null,De=null,O=null,h=gt(()=>new Map),D=gt(()=>new Map),ee=new Map,ae=new Map,re=gt(()=>Promise.resolve());function Re(){let d=r.getCredentials();return {client:r.ensureProductClient(),generation:r.getGeneration(),stateEpoch:j,accountId:d.userId}}function oe(d){return !R&&d.client===r.getProductClient()&&d.generation===r.getGeneration()&&d.stateEpoch===j&&d.accountId===r.getCredentials().userId}function he(d){return Object.freeze({ok:false,operation:d,reason:"stale"})}function we(d,p,v){let b=It(p,d);return v.error=b,Object.freeze({ok:false,operation:d,reason:"failed",error:b})}function Ke(){return Object.freeze({ok:false,reason:"stale"})}function io(d){return d.kind==="emoji"?null:d.kind==="sticker"?Object.freeze({kind:"sticker",packageId:d.packageId,resourceId:d.resourceId,url:d.url,width:d.width,height:d.height}):Object.freeze({kind:"gif",...d.resourceId===void 0||d.resourceId===""?{}:{resourceId:d.resourceId},url:d.url,width:d.width,height:d.height})}function yn(){let d=p=>Object.freeze(P.value[p].flatMap(v=>{let b=io(v);return b===null?[]:[Object.freeze({asset:b,pendingSync:h[p].has(Ne(b))})]}).slice(0,Fr(p)));return Object.freeze({version:1,sticker:d("sticker"),gif:d("gif"),emoji:Object.freeze(U.value.map(p=>p.kind==="game"?Object.freeze({...p}):Object.freeze({...p,pendingSync:ee.has(p.stableKey)})))})}function bn(){for(let d of ["sticker","gif","emoji"])g[d].error?.code==="IM_CHAT_KIT_EXPRESSION_RECENT_PERSIST_FAILED"&&(g[d].error=null);}function ln(d,p){let v=Ho({code:"IM_CHAT_KIT_EXPRESSION_RECENT_PERSIST_FAILED",operation:"expressions.recent.persist",retryable:true});return p.error=v,Object.freeze({ok:false,operation:d,reason:"failed",error:v})}function Yt(d,p,v,b=[p]){let k=o,w=++Ie,Z=xi(k,d.accountId,v,b);Ce=Z.revision;let te=Z.promise.then(()=>(oe(d)&&w===Ie&&bn(),true),Y=>{if(!oe(d)||w!==Ie)return false;let me=Ho({code:"IM_CHAT_KIT_EXPRESSION_RECENT_PERSIST_FAILED",operation:"expressions.recent.persist",retryable:true});return g[p].error=me,s.record("warn","pinia","storage","expression-recent-persist-failed",()=>({generation:d.generation,error:{message:me.code,data:Y}})),false});return {...Z,settled:te}}function Sn(d){return ke!==null&&$e(ke,d)}function Cn(d){if(De!==null)return De;let v=(async()=>{for(;oe(d)&&!Sn(d);){let k=O!==null&&$e(O.context,d)?O:null;if(k!==null){let Z=await k.promise;if(Z.ok||!oe(d)||Z.reason!=="stale")return;continue}let w=await qe();if(w.ok||!oe(d)||w.reason!=="stale")return}})();De=v;let b=()=>{De===v&&(De=null);};return v.then(b,b),v}function cn(d,p,v){if(!oe(d))return Promise.resolve();if(ce+=1,o===void 0||d.accountId==="")return ke=d,Promise.resolve();let b=yn();return Sn(d)?Yt(d,p,b).settled.then(()=>{}):(je=b,_=p,L.add(p),de.push(v),Cn(d))}function Zt(){return {sticker:Object.freeze([]),gif:Object.freeze([]),emoji:Object.freeze([]),pendingSticker:new Map,pendingGif:new Map,pendingEmoji:new Map}}function un(d$1,p){let v=[...d$1.sticker],b=[...d$1.gif],k=[...d$1.emoji],w=new Map(d$1.pendingSticker),Z=new Map(d$1.pendingGif),te=new Map(d$1.pendingEmoji);for(let Y of p){if(Y.type==="prepend-asset"){(Y.kind==="sticker"?w:Z).set(Ne(Y.asset),Y.asset),Y.kind==="sticker"?v=[...No(v,Y.asset)]:b=[...No(b,Y.asset)];continue}if(Y.type==="prepend-emoji"||Y.type==="prepend-emojis"){let pe=Y.type==="prepend-emoji"?[Y.entry]:Y.entries;for(let ze of pe)ze.kind==="emoji"&&te.set(ze.stableKey,ze),k=[...d(k,ze)];continue}if(Y.type==="authoritative"){if(Y.kind==="emoji"){for(let pe of Y.items)if(pe.kind==="emoji")for(let[ze,_e]of te)_e.resourceId===pe.resourceId&&te.delete(ze);k=[...Lo(Y.items,k,new Set(te.keys()))];}else {let pe=Y.kind==="sticker"?w:Z;for(let _e of Y.items)_e.kind===Y.kind&&pe.delete(Ne(_e));let ze=Gi(Y.kind,Y.items,pe);Y.kind==="sticker"?v=[...ze]:b=[...ze];}continue}if(Y.type==="delete-assets"){let pe=new Set(Y.identities),ze=Y.kind==="sticker"?w:Z,_e=Ee=>Ee.kind==="emoji"||!pe.has(Ne(Ee))||ze.has(Ne(Ee));Y.kind==="sticker"?v=v.filter(_e):b=b.filter(_e);continue}let me=new Set(Y.resourceIds);k=k.filter(pe=>pe.kind==="game"||!me.has(pe.resourceId)||te.has(pe.stableKey));}return {sticker:Object.freeze(v),gif:Object.freeze(b),emoji:Object.freeze(k),pendingSticker:w,pendingGif:Z,pendingEmoji:te}}function tt(d){if(!Dr(d)||d.version!==1||!Array.isArray(d.sticker)||!Array.isArray(d.gif)||!Array.isArray(d.emoji))throw new TypeError("expression recent persistence snapshot \u683C\u5F0F\u6216\u7248\u672C\u65E0\u6548");let p=(te,Y)=>{let me=[],pe=new Map,ze=new Set;for(let _e of Y){if(!Dr(_e)||typeof _e.pendingSync!="boolean")throw new TypeError("expression recent persistence asset entry \u683C\u5F0F\u65E0\u6548");let Ee=Nc(_e.asset,te),He=Ne(Ee);ze.has(He)||(ze.add(He),me.length<Fr(te)&&(me.push(Ee),_e.pendingSync&&pe.set(He,Ee)));}return {items:Object.freeze(me),pending:pe}},v=p("sticker",d.sticker),b=p("gif",d.gif),k=[],w=new Map,Z=new Set;for(let te of d.emoji){if(!Dr(te)||typeof te.stableKey!="string"||te.stableKey.trim()===""||te.kind!=="emoji"&&te.kind!=="game")throw new TypeError("expression recent persistence emoji entry \u683C\u5F0F\u65E0\u6548");let Y=te.stableKey.trim(),me,pe=false;if(te.kind==="game"){if(te.gameType!=="dice"&&te.gameType!=="rock-paper-scissors")throw new TypeError("expression recent persistence gameType \u65E0\u6548");if(me=Uo(te.gameType),me.stableKey!==Y)throw new TypeError("expression recent persistence game stableKey \u65E0\u6548")}else {let ze=yt(te.token,"emoji.token"),_e=yt(te.resourceId,"emoji.resourceId");if(typeof te.pendingSync!="boolean")throw new TypeError("expression recent persistence emoji.pendingSync \u65E0\u6548");pe=te.pendingSync,me=Object.freeze({kind:"emoji",stableKey:Y,token:ze,resourceId:_e});}Z.has(Y)||(Z.add(Y),k.length<14&&(k.push(me),me.kind==="emoji"&&pe&&w.set(Y,me)));}return {sticker:v.items,gif:b.items,emoji:Object.freeze(k),pendingSticker:v.pending,pendingGif:b.pending,pendingEmoji:w}}function Rn(d){P.value={sticker:d.sticker,gif:d.gif,emoji:[]},F.value={sticker:[],gif:[],emoji:[]},U.value=d.emoji,h.sticker.clear(),h.gif.clear(),ee.clear();for(let[p,v]of d.pendingSticker)h.sticker.set(p,v);for(let[p,v]of d.pendingGif)h.gif.set(p,v);for(let[p,v]of d.pendingEmoji)ee.set(p,v);for(let p of ["sticker","gif","emoji"])Object.assign(g[p],{loading:false,loaded:true,error:null});}function Ue(d,p){if(o===void 0||d.accountId==="")return 0;let v=Vt(o,d.accountId);return p===void 0?v.revision:v.kindRevisions[p]}function Ae(d){if(o===void 0||d.accountId===""||!Sn(d))return;let p=Vt(o,d.accountId);if(p.revision===Ce)return;let v=p.latestSnapshot===null?Zt():tt(p.latestSnapshot),b=(k,w)=>{let Z=k==="sticker"?v.pendingSticker:v.pendingGif,te=new Map(P.value[k].flatMap(Y=>Y.kind==="emoji"||Y.kind!==k?[]:[[Ne(Y),Y]]));return Object.freeze(w.map(Y=>{if(Y.kind==="emoji"||Y.kind!==k)return Y;let me=Ne(Y);if(Z.has(me))return Y;let pe=ht(te.get(me)??Y);return Object.freeze({...Y,...pe===void 0?{}:{recordId:pe}})}))};P.value={sticker:b("sticker",v.sticker),gif:b("gif",v.gif),emoji:P.value.emoji},U.value=v.emoji,h.sticker.clear(),h.gif.clear(),ee.clear();for(let[k,w]of v.pendingSticker)h.sticker.set(k,w);for(let[k,w]of v.pendingGif)h.gif.set(k,w);for(let[k,w]of v.pendingEmoji)ee.set(k,w);for(let k of ["sticker","gif"]){let w=new Set(P.value[k].flatMap(Z=>ht(Z)===void 0?[]:[ht(Z)]));F.value={...F.value,[k]:Object.freeze(F.value[k].filter(Z=>w.has(Z)))};}Ce=p.revision;}async function dn(d,p,v,b){let k="hydrate-recent";g.emoji.error=null;try{let w=null,Z=0;if(o!==void 0&&d.accountId!==""){w=Vt(o,d.accountId);let Ee=w.latestSnapshot;if(!b&&w.status==="failed"&&Ee!==null&&xi(o,d.accountId,Ee,[]),Z=w.revision,await w.tail.catch(()=>{}),p!==Q||!oe(d)||ce!==v||w.revision!==Z)return he(k);if(!b&&w.status==="failed")return ln(k,g.emoji);w.status==="saved"&&fe!==null&&w.latestSnapshot===fe&&je===ue&&(je=null,L.clear(),de.length=0,fe=null,ue=null);}let te=o===void 0||d.accountId===""?null:await o.load(d.accountId);if(p!==Q||!oe(d)||ce!==v||w!==null&&w.revision!==Z)return he(k);let Y;try{Y=te===null?Zt():tt(te);}catch(Ee){let He=o?.clearInvalid;if(te!==null&&d.accountId!==""&&He!==void 0)try{await He(d.accountId,te);}catch(Xe){throw new Error("expression recent persistence \u635F\u574F\u5FEB\u7167\u6E05\u7406\u5931\u8D25",{cause:Xe})}throw Ee}let me=b?null:je,pe=new Set(L),ze=[...de],_e=me===null?Y:un(Y,ze);if(Rn(_e),Ce=Z,b){if(je=null,L.clear(),de.length=0,fe=null,ue=null,w!==null){w.revision+=1;for(let Ee of ["sticker","gif","emoji"])w.kindRevisions[Ee]+=1;w.status="saved",w.latestSnapshot=te,w.error=null,Ce=w.revision;}return ke=d,bn(),Object.freeze({ok:!0,operation:k})}if(me!==null&&o!==void 0&&d.accountId!==""){let Ee=yn();fe=Ee,ue=me;let He=Yt(d,_,Ee,[...pe]),Xe=await He.settled;if(p!==Q||!oe(d)||ce!==v||He.coordinator.revision!==He.revision)return he(k);if(!Xe)return ln(k,g.emoji);je===me&&(je=null,L.clear(),de.length=0,fe=null,ue=null);}return ke=d,Object.freeze({ok:!0,operation:k})}catch(w){return p!==Q||!oe(d)?he(k):we(k,w,g.emoji)}}function $e(d,p){return d.client===p.client&&d.generation===p.generation&&d.stateEpoch===p.stateEpoch&&d.accountId===p.accountId}function qe(d={}){let p="hydrate-recent";if(R)return Promise.resolve(he(p));let v;try{v=Re();}catch(me){let pe=we(p,me,g.emoji);return !pe.ok&&pe.reason==="failed"&&(Se=pe.error??g.emoji.error),Promise.resolve(pe)}let b=o===void 0||v.accountId===""?null:Vt(o,v.accountId);if(!d.force&&Sn(v)&&je===null&&(b===null||(b.status==="idle"||b.status==="saved")&&b.revision===Ce))return Se=null,Promise.resolve(Object.freeze({ok:true,operation:p}));if(!d.force&&O!==null&&!O.force&&O.stateRevision===ce&&$e(O.context,v))return O.promise;let k=++Q,w=ce,Z=dn(v,k,w,d.force===true).then(me=>(me.ok?Se=null:me.reason==="failed"&&(Se=me.error??g.emoji.error),me)),te={context:v,stateRevision:w,force:d.force===true,promise:Z};O=te;let Y=()=>{O===te&&(O=null);};return Z.then(Y,Y),Z}async function fn(d){let p="load-packs";if(R)return he(p);let v=++J,b;try{b=Re();}catch(k){return we(p,k,z)}z.loading=true,z.error=null;try{let k=await b.client.expressions.packs.list(d);return v!==J||!oe(b)?he(p):(c.value=k.version,m.value=Object.freeze([...k.items]),z.loaded=!0,Object.freeze({ok:!0,operation:p}))}catch(k){return v!==J||!oe(b)?he(p):we(p,k,z)}finally{v===J&&oe(b)&&(z.loading=false);}}async function En(d){let p="load-pack-items";if(R)return he(p);let v=d.trim();if(v===""){let Z=It(new TypeError("packageId \u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32"),p);return Object.freeze({ok:false,operation:p,reason:"failed",error:Z})}let b=A[v]??=qt(),k=(le[v]??0)+1;le[v]=k;let w;try{w=Re();}catch(Z){return we(p,Z,b)}b.loading=true,b.error=null;try{let Z=await w.client.expressions.packs.listItems(v);return le[v]!==k||!oe(w)?he(p):(I.value={...I.value,[v]:Object.freeze([...Z])},b.loaded=!0,Object.freeze({ok:!0,operation:p}))}catch(Z){return le[v]!==k||!oe(w)?he(p):we(p,Z,b)}finally{le[v]===k&&oe(w)&&(b.loading=false);}}async function rt(d){let p="load-favorites";if(R)return he(p);let v=++ye[d],b=q[d],k;try{k=Re();}catch(w){return we(p,w,b)}b.loading=true,b.error=null;try{let w=await k.client.expressions.favorites.list(d);return ye[d]!==v||!oe(k)?he(p):(Nn(d,w),b.loaded=!0,Object.freeze({ok:!0,operation:p}))}catch(w){return ye[d]!==v||!oe(k)?he(p):we(p,w,b)}finally{ye[d]===v&&oe(k)&&(b.loading=false);}}function Nn(d,p){for(let w of p)D[d].delete(Ne(w));let v=[],b=new Set;for(let w of [...D[d].values(),...p]){let Z=Ne(w);b.has(Z)||(b.add(Z),v.push(Object.freeze({...w})));}G.value={...G.value,[d]:Object.freeze(v)};let k=new Set(p.flatMap(w=>w.recordId===void 0?[]:[w.recordId]));B.value={...B.value,[d]:Object.freeze(B.value[d].filter(w=>k.has(w)))};}async function Ln(d,p,v){let b=q[p];try{let k=await d.client.expressions.favorites.list(p);if(ye[p]!==v||!oe(d))return;Nn(p,k),b.loaded=!0;}catch(k){ye[p]===v&&oe(d)&&(b.error=It(k,"load-favorites"));}}function Pn(d,p){let v="set-favorite";if(R)return Promise.resolve(he(v));let b=Ne(d),k=ae.get(b);if(k?.desired===p)return k.promise;let w;try{w=Re();}catch(me){return Promise.resolve(we(v,me,q[d.kind]))}let Z=k?.promise.catch(()=>{})??Promise.resolve(),te=re[d.kind].catch(()=>{}),Y=Promise.all([Z,te]).then(async()=>{if(!oe(w))return he(v);let me=d.kind,pe=q[me];pe.error=null;let ze=G.value[me].find(Ee=>Ne(Ee)===b);if(p&&ze!==void 0)return Object.freeze({ok:true,operation:v});if(!p&&ze?.recordId===void 0){let Ee=Ho({code:"IM_CHAT_KIT_EXPRESSION_FAVORITE_RECORD_REQUIRED",operation:"expressions.favorites.unset",retryable:true});return pe.error=Ee,Object.freeze({ok:false,operation:v,reason:"failed",error:Ee})}let _e=++ye[me];try{if(p?await w.client.expressions.favorites.add(d):await w.client.expressions.favorites.delete([ze.recordId]),!oe(w))return he(v);p?(D[me].set(b,Object.freeze({...d})),G.value={...G.value,[me]:qc(G.value[me],d)}):(D[me].delete(b),G.value={...G.value,[me]:Object.freeze(G.value[me].filter(He=>He.recordId!==ze.recordId))});let Ee=++ye[me];return _e=Ee,await Ln(w,me,Ee),!oe(w)||ye[me]!==Ee?he(v):Object.freeze({ok:!0,operation:v})}catch(Ee){return !oe(w)||ye[me]!==_e?he(v):we(v,Ee,pe)}finally{ye[me]===_e&&oe(w)&&(pe.loading=false);}});return ae.set(b,{desired:p,promise:Y}),re[d.kind]=Y.then(()=>{},()=>{}),Y.finally(()=>{ae.get(b)?.promise===Y&&ae.delete(b);}),Y}async function jn(d){let p=await Pn(d,true);return Object.freeze({...p,operation:"add-favorite"})}function Tn(d){return Pn(d,false)}function kn(d,p,v){if(R)return;let b=Ai(p),k=new Set(B.value[d]);v??!k.has(b)?k.add(b):k.delete(b),B.value={...B.value,[d]:Object.freeze([...k])};}function nn(d,p,v){if(Ae(v),d==="emoji"){for(let k of p)if(k.kind==="emoji")for(let[w,Z]of ee)Z.resourceId===k.resourceId&&ee.delete(w);P.value={...P.value,emoji:Object.freeze([...p])},U.value=Lo(p,U.value,new Set(ee.keys()));}else {for(let k of p)k.kind===d&&h[d].delete(Ne(k));P.value={...P.value,[d]:Gi(d,p,h[d])};}let b=new Set(p.flatMap(k=>k.recordId===void 0?[]:[k.recordId]));F.value={...F.value,[d]:Object.freeze(F.value[d].filter(k=>b.has(k)))},g[d].loaded=true,cn(v,d,Object.freeze({type:"authoritative",kind:d,items:Object.freeze([...p])}));}async function tn(d){let p="load-recent";if(R)return he(p);let v=g[d],b=await qe();if(!b.ok)return b.reason==="stale"?he(p):(v.error=b.error??g.emoji.error,Object.freeze({...b,operation:p}));let k=++ge[d],w;try{w=Re();}catch(Z){return we(p,Z,v)}v.loading=true,v.error=null;try{let Z=Ue(w,d),te=await w.client.expressions.recent.list(d);return ge[d]!==k||!oe(w)?he(p):Ue(w,d)!==Z?(Ae(w),he(p)):(nn(d,te,w),Object.freeze({ok:!0,operation:p}))}catch(Z){return ge[d]!==k||!oe(w)?he(p):we(p,Z,v)}finally{ge[d]===k&&oe(w)&&(v.loading=false);}}async function gn(d,p){if(!oe(d))return;let v=++ge[p],b=g[p];b.loading=true,b.error=null;try{Ae(d);let k=Ue(d,p),w=await d.client.expressions.recent.list(p);if(ge[p]!==v||!oe(d))return;if(Ue(d,p)!==k){Ae(d);return}nn(p,w,d);}catch(k){ge[p]===v&&oe(d)&&(b.error=It(k,"load-recent"));}finally{ge[p]===v&&oe(d)&&(b.loading=false);}}function mn(d,p){if(!oe(d))return false;Ae(d),Q+=1;let v=p.kind,b=Object.freeze({...p});return h[v].set(Ne(b),b),P.value={...P.value,[v]:No(P.value[v],b)},g[v].loaded=true,cn(d,v,Object.freeze({type:"prepend-asset",kind:v,asset:b})),true}function pn(d$1,p){if(!oe(d$1))return false;Ae(d$1),Q+=1;let v=Object.freeze(p.map(k=>Object.freeze({...k}))),b=U.value;for(let k of v)ee.set(k.stableKey,k),b=d(b,k);return U.value=b,g.emoji.loaded=true,cn(d$1,"emoji",Object.freeze({type:"prepend-emojis",entries:v})),true}function Be(d,p){return pn(d,[p])}async function We(d,p,v=true){let b="report-recent";if(!oe(d))return he(b);let k=p.kind,w=++ge[k],Z=g[k];Z.error=null;try{if(await d.client.expressions.recent.report(p),ge[k]!==w||!oe(d))return he(b);if(!v)return Object.freeze({ok:!0,operation:b});try{Ae(d);let te=Ue(d,k),Y=await d.client.expressions.recent.list(k);if(ge[k]!==w||!oe(d))return he(b);if(Ue(d,k)!==te)return Ae(d),he(b);nn(k,Y,d);}catch(te){ge[k]===w&&oe(d)&&(Z.error=It(te,"load-recent"));}return Object.freeze({ok:!0,operation:b})}catch(te){return ge[k]!==w||!oe(d)?he(b):we(b,te,Z)}}async function so(d){let p="report-recent";if(R)return he(p);let v;try{v=Re();}catch(b){return we(p,b,g[d.kind])}return d.kind==="emoji"?Be(v,Object.freeze({...d,stableKey:qo(d)})):mn(v,d),We(v,d)}function lo(d,p,v){if(R)return;let b=Ai(p),k=new Set(F.value[d]);v??!k.has(b)?k.add(b):k.delete(b),F.value={...F.value,[d]:Object.freeze([...k])};}async function er(d,p,v){let b=d==="favorites"?"delete-favorites":"delete-recent";if(R)return he(b);let k=d==="favorites"?B:F,w=d==="favorites"?ye:ge,Z=d==="favorites"?q:g,te=v?.selected??k.value[p];if(te.length===0)return Object.freeze({ok:false,operation:b,reason:"empty"});let Y=Z[p];if(Y.loading)return Object.freeze({ok:false,operation:b,reason:"busy"});let me=++w[p],pe;try{pe=v?.context??Re();}catch(Te){return we(b,Te,Y)}d==="recent"&&Ae(pe);let ze=d==="recent"?Ue(pe,p):0,_e=new Set(te),Ee=d==="recent"?P.value[p].filter(Te=>{let Ye=ht(Te);return Ye!==void 0&&_e.has(Ye)}):[];Y.loading=true,Y.error=null;let He=[],Xe=new Set,xn,zn,rn=false;for(let Te of Uc(te)){if(!oe(pe))return he(b);if(d==="recent"&&w[p]!==me){rn=true;break}try{d==="favorites"?await pe.client.expressions.favorites.delete(Te):await pe.client.expressions.recent.delete(Te);for(let Ye of Te)Xe.add(Ye);}catch(Ye){let An=It(Ye,b);xn??=An,He.push(...Te);}}if(!oe(pe))return he(b);if(d==="recent"&&w[p]!==me&&(rn=true),d==="recent"&&Ue(pe,p)!==ze&&(rn=true),d==="favorites"){let Te=p;G.value={...G.value,[Te]:Object.freeze(G.value[Te].filter(Gn=>Gn.recordId===void 0||!Xe.has(Gn.recordId)))};let Ye=new Set(te),An=B.value[Te].filter(Gn=>!Ye.has(Gn));if(B.value={...B.value,[Te]:Object.freeze([...new Set([...An,...He])])},zn=++ye[Te],await Ln(pe,Te,zn),!oe(pe))return he(b)}else {let Te=p;Ae(pe);let Ye=Ee.filter(xe=>{let on=ht(xe);return on!==void 0&&Xe.has(on)}),An=new Set(Ye.filter(xe=>xe.kind==="emoji").map(xe=>xe.resourceId)),Gn=new Set(Ye.filter(xe=>xe.kind!=="emoji").map(Ne));Te==="emoji"&&(U.value=Object.freeze(U.value.filter(xe=>xe.kind==="game"||!An.has(xe.resourceId)||ee.has(xe.stableKey)))),P.value={...P.value,[Te]:Object.freeze(P.value[Te].filter(xe=>{let on=ht(xe);return on===void 0||!Xe.has(on)}))};let uo=new Set(te),vn=rn?F.value[Te].filter(xe=>!Xe.has(xe)):F.value[Te].filter(xe=>!uo.has(xe));if(F.value={...F.value,[Te]:Object.freeze(rn?vn:[...new Set([...vn,...He])])},Te==="emoji"){let xe=P.value.emoji.filter(on=>on.kind==="emoji");U.value=Lo(xe,U.value,new Set(ee.keys()));}let In=Object.freeze(Te==="emoji"?{type:"delete-emojis",resourceIds:Object.freeze([...An])}:{type:"delete-assets",kind:Te,identities:Object.freeze([...Gn])});if(cn(pe,Te,In),rn&&Xe.size>0&&await gn(pe,Te),!oe(pe))return he(b)}return (d==="recent"?ge[p]===me:ye[p]===zn)&&(Y.loaded=true,(xn!==void 0||d==="recent")&&(Y.error=xn??null),Y.loading=false),rn?he(b):He.length===0?Object.freeze({ok:true,operation:b}):Object.freeze({ok:false,operation:b,reason:Xe.size===0?"failed":"partial",error:xn,failedRecordIds:Object.freeze(He)})}function co(d){let p="delete-favorites";if(R)return Promise.resolve(he(p));let v=Object.freeze([...B.value[d]]);if(v.length===0)return Promise.resolve(Object.freeze({ok:false,operation:p,reason:"empty"}));let b;try{b=Re();}catch(Z){return Promise.resolve(we(p,Z,q[d]))}let w=re[d].catch(()=>{}).then(()=>oe(b)?er("favorites",d,{context:b,selected:v}):he(p));return re[d]=w.then(()=>{},()=>{}),w}function nr(d){return er("recent",d)}function ot(d,p){let v=++K;return V.value=d,ie.value=p,S.value=[],x.value=0,N.value=void 0,X.loading=true,X.loaded=false,X.error=null,v}async function at(d,p){let v="load-giphy";if(R)return he(v);let b={mode:V.value,query:ie.value,items:S.value,totalCount:x.value,nextOffset:N.value,loaded:X.loaded},k=ot(d,p),w=()=>{V.value=b.mode,ie.value=b.query,S.value=b.items,x.value=b.totalCount,N.value=b.nextOffset,X.loaded=b.loaded;},Z;try{Z=Re();}catch(te){return w(),X.loading=false,we(v,te,X)}try{let te=d==="trending"?await Z.client.expressions.giphy.trending():await Z.client.expressions.giphy.search(p);return k!==K||!oe(Z)?he(v):(S.value=Di(te.items),x.value=te.totalCount,N.value=te.nextOffset,X.loaded=!0,Object.freeze({ok:!0,operation:v}))}catch(te){return k!==K||!oe(Z)?he(v):(w(),we(v,te,X))}finally{k===K&&oe(Z)&&(X.loading=false);}}function it(){return at("trending","")}function wn(d){if(R)return Promise.resolve(he("load-giphy"));let p=d.trim();return p===""?(ot("search",""),X.loading=false,X.loaded=true,Promise.resolve(Object.freeze({ok:false,operation:"load-giphy",reason:"empty"}))):at("search",p)}async function tr(){let d="load-more-giphy";if(R)return he(d);if(X.loading)return Object.freeze({ok:false,operation:d,reason:"busy"});if(V.value==="idle"||N.value===void 0)return Object.freeze({ok:false,operation:d,reason:"exhausted"});let p=++K,v=V.value,b=ie.value,k=N.value,w;try{w=Re();}catch(Z){return we(d,Z,X)}X.loading=true,X.error=null;try{let Z=v==="trending"?await w.client.expressions.giphy.trending({offset:k}):await w.client.expressions.giphy.search(b,{offset:k});return p!==K||!oe(w)?he(d):(S.value=Di([...S.value,...Z.items]),x.value=Z.totalCount,N.value=Z.nextOffset,X.loaded=!0,Object.freeze({ok:!0,operation:d}))}catch(Z){return p!==K||!oe(w)?he(d):we(d,Z,X)}finally{p===K&&oe(w)&&(X.loading=false);}}async function rr(d){return jt([d])}async function jt(d){let p="report-recent";if(R)return he(p);if(d.length===0)return Object.freeze({ok:true,operation:p});let v;try{v=Re();}catch(w){return we(p,w,g.emoji)}let b=Object.freeze(d.map(w=>Object.freeze({...w,stableKey:qo(w)})));if(!pn(v,b))return he(p);let k=Object.freeze({ok:true,operation:p});for(let[w,Z]of b.entries())if(k=await We(v,{kind:"emoji",token:Z.token,resourceId:Z.resourceId},w===b.length-1),!k.ok&&k.reason==="stale")return k;return k}function Qe(d,p){We(d,p).then(v=>{s.record(v.ok?"debug":"warn","pinia","message","expression-recent-report-settled",()=>({generation:d.generation,data:{kind:p.kind,ok:v.ok}}));});}async function or(d,p){if(R)return Ke();let v;try{v=Re();}catch{return Ke()}let b;try{b=await d.messages.sendSticker(p);}catch(k){if(!oe(v))return Ke();throw k}return oe(v)?(b.ok&&mn(v,p)&&Qe(v,p),b):Ke()}async function Tt(d,p){if(R)return Ke();let v;try{v=Re();}catch{return Ke()}let b;try{b=await d.messages.sendGifAsset(p);}catch(k){if(!oe(v))return Ke();throw k}return oe(v)?(b.ok&&mn(v,p)&&Qe(v,p),b):Ke()}async function st(d$1,p){if(R)return Ke();let v;try{v=Re();}catch{return Ke()}let b;try{b=await d$1.messages.sendGame(p);}catch(k){if(!oe(v))return Ke();throw k}return oe(v)?(b.ok&&(Ae(v),Q+=1,U.value=d(U.value,Uo(p)),g.emoji.loaded=true,cn(v,"emoji",Object.freeze({type:"prepend-emoji",entry:Uo(p)}))),b):Ke()}function Je(d={}){if(R)return;let p=d.preserveRecentHydrationFailure===true?Se:null;j+=1,J+=1,K+=1,Q+=1,Ie+=1,ce=0,Ce=0,ke=null,je=null,L.clear(),de.length=0,fe=null,ue=null,De=null,O=null,Se=p,ae.clear(),re=gt(()=>Promise.resolve()),c.value="",m.value=[],I.value={},Object.assign(z,{loading:false,loaded:false,error:null});for(let v of Object.keys(A))delete A[v];for(let v of Object.keys(le))le[v]=(le[v]??0)+1;G.value={sticker:[],gif:[]},B.value={sticker:[],gif:[]};for(let v of ["sticker","gif"])ye[v]+=1,Object.assign(q[v],{loading:false,loaded:false,error:null});P.value={sticker:[],gif:[],emoji:[]},F.value={sticker:[],gif:[],emoji:[]},U.value=[],h.sticker.clear(),h.gif.clear(),D.sticker.clear(),D.gif.clear(),ee.clear();for(let v of ["sticker","gif","emoji"])ge[v]+=1,Object.assign(g[v],{loading:false,loaded:false,error:null});p!==null&&(g.emoji.error=p),V.value="idle",ie.value="",S.value=[],x.value=0,N.value=void 0,Object.assign(X,{loading:false,loaded:false,error:null});}function ar(){R||(Je(),R=true);}return _r.set(e,Object.freeze({dispose:ar})),{packVersion:c,packs:m,packItemsByPackage:I,packStatus:se,packItemStatus:ne,favorites:G,favoriteStatus:M,favoriteSelection:B,recent:P,recentStatus:T,recentSelection:F,emojiRecent:U,giphyMode:V,giphyQuery:ie,giphyItems:S,giphyTotalCount:x,giphyHasMore:y,giphyStatus:C,hydrateRecent:qe,loadPacks:fn,loadPackItems:En,loadFavorites:rt,addFavorite:jn,setFavorite:Pn,unsetFavorite:Tn,toggleFavoriteSelection:kn,deleteSelectedFavorites:co,loadRecent:tn,reportRecent:so,rememberEmoji:rr,rememberEmojis:jt,toggleRecentSelection:lo,deleteSelectedRecent:nr,loadGiphyTrending:it,searchGiphy:wn,loadMoreGiphy:tr,sendSticker:or,sendGif:Tt,sendGame:st,reset:Je}})}var _i=new WeakMap,Gr=new WeakMap;function $c(e=Pe()){ve(e);let n=_i.get(e);n===void 0&&(n=Vc(e),_i.set(e,n));let r=n(e),o=_r.get(e);if(o===void 0)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u521B\u5EFA ImExpressionStore");return Gr.get(e)!==r&&(Gr.set(e,r),Oe(e,()=>{o.dispose(),r.$dispose(),Gr.get(e)===r&&(Gr.delete(e),_r.get(e)===o&&_r.delete(e));})),r}var Kr=new WeakMap;function Ki(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Hr(e,n){return e!==null&&e.conversationType===n.conversationType&&e.conversationId===n.conversationId}function Bc(e){return e?.conversationType==="direct"||e?.conversationType==="group"||e?.conversationType==="channel"}function Wc(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function Qc(e,n){let r=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:r!==null&&typeof r.code=="string"?r.code:"IM_CHAT_KIT_HISTORY_RETURN_FAILED",category:r!==null&&Wc(r.category)?r.category:"state",operation:"history.returnAfterSend",retryable:r!==null&&typeof r.retryable=="boolean"?r.retryable:false,conversation:Ki(n)})}function Jc(e=Pe()){let n=ve(e),r=Kr.get(e);if(r!==void 0&&!r.disposed)return r.coordinator;let o=n.runtime,s=o.getDiagnostics(),c=Ge(e),m=Mn(e),I={disposed:false};function z(g){return !I.disposed&&o.getGeneration()===g.generation&&c.getHandle()===g.handle&&Hr(c.activeRef,g.conversation)}function A(){let g=I.activeIntent;g!==void 0&&(I.activeIntent=void 0,g.complete(Object.freeze({status:"stale",conversation:g.conversation})));}async function G(g){if(!z(g)){g.complete(Object.freeze({status:"stale",conversation:g.conversation}));return}m.clearLocation(),s.record("debug","pinia","history","history-return-after-send-start",()=>({generation:g.generation,conversation:g.conversation}));try{if(!await c.loadLatest()||!z(g)){g.complete(Object.freeze({status:"stale",conversation:g.conversation}));return}s.record("debug","pinia","history","history-return-after-send-complete",()=>({generation:g.generation,conversation:g.conversation})),g.complete(Object.freeze({status:"applied",conversation:g.conversation}));}catch(F){if(!z(g)){g.complete(Object.freeze({status:"stale",conversation:g.conversation}));return}let U=Qc(F,g.conversation);s.record("warn","pinia","history","history-return-after-send-failed",()=>({generation:g.generation,conversation:g.conversation,error:{message:"\u53D1\u9001\u540E\u8FD4\u56DE\u6700\u65B0\u6D88\u606F\u5931\u8D25",data:U}})),g.complete(Object.freeze({status:"failed",conversation:g.conversation,error:U}));}}function q(g){let F=I.activeIntent;F===void 0||g.type!=="message:received"||g.source!=="live"||g.message.senderId!==F.selfId||g.message.status==="sent"||!Hr(g.ref,F.conversation)||(I.activeIntent=void 0,G(F));}async function B(g,F){let U=c.getHandle();if(!Bc(g)||I.disposed||!c.hasNewer||U===void 0||!Hr(U.ref,g)||!Hr(c.activeRef,g))return Object.freeze({value:await F(),history:Object.freeze({status:"not-needed"})});A();let V=Ki(g),ie,S=new Promise(X=>{let N=false;ie=se=>{N||(N=true,X(se));};}),x={token:Symbol("history-return-after-send"),conversation:V,handle:U,generation:o.getGeneration(),selfId:o.getCredentials().userId,complete:ie};I.activeIntent=x;try{let X=await F();return I.activeIntent?.token===x.token&&(I.activeIntent=void 0,x.complete(z(x)?Object.freeze({status:"not-needed"}):Object.freeze({status:"stale",conversation:V}))),Object.freeze({value:X,history:await S})}catch(X){throw I.activeIntent?.token===x.token&&(I.activeIntent=void 0,x.complete(z(x)?Object.freeze({status:"not-needed"}):Object.freeze({status:"stale",conversation:V}))),await S,X}}let P=o.subscribeProductEvents(q);return I.coordinator=Object.freeze({run:B}),Kr.set(e,I),Oe(e,()=>{I.disposed=true,A(),P(),Kr.get(e)===I&&Kr.delete(e);}),I.coordinator}function Li(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Ui(e){return Object.freeze({code:e.code,category:e.category,operation:e.operation,retryable:e.retryable,...e.conversation===void 0?{}:{conversation:Li(e.conversation)}})}function Zc(e){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"&&typeof e.operation=="string"&&typeof e.retryable=="boolean"}function eu(e,n){return Zc(e)?Ui(e):Object.freeze({code:"IM_CHAT_KIT_MEDIA_OPERATION_FAILED",category:"state",operation:`media.${n}`,retryable:n==="retry"})}function nu(e){return Object.freeze({id:e.id,messageId:e.messageId,ref:Li(e.ref),direction:e.direction,state:e.state,percent:e.percent,...e.phase===void 0?{}:{phase:e.phase},...e.error===void 0?{}:{error:Ui(e.error)}})}function $t(e,n){return e!==null&&e.conversationType===n.conversationType&&e.conversationId===n.conversationId}function tu(e){return defineStore("k2-im-media",()=>{let n=ve(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=ref([]),c=shallowRef(null),m=shallowRef(null),I=false,z=0,A=null,G=-1,q,B=computed(()=>{let y=o.activeRef,R={};for(let j of s.value)j.direction!=="upload"||j.state!=="queued"&&j.state!=="running"||!$t(y,j.ref)||(R[j.messageId]=j.state==="queued"?0:j.percent);return R}),P=computed(()=>{let y={};for(let R of s.value)R.direction==="download"&&$t(o.activeRef,R.ref)&&(y[R.messageId]=R);return y}),g=computed(()=>{let y={};for(let R of Object.values(P.value))(R.state==="queued"||R.state==="running")&&(y[R.messageId]=R.percent);return y}),F=computed(()=>{let y=o.activeRef,R={};for(let j of s.value)j.direction==="upload"&&j.state==="running"&&j.phase==="finalizing"&&$t(y,j.ref)&&(R[j.messageId]=true);return R});function U(y,R,j){I||A!==R||G!==j||n.getGeneration()!==j||(s.value=y.map(nu));}function V(y){let R=n.getGeneration();if(I)throw new Error("Media Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u91CD\u65B0\u7ED1\u5B9A");if(A===y&&G===R||(z+=1,q?.(),q=void 0,A=y,G=y===null?-1:R,s.value=[],c.value=null,y===null))return;let j=false;q=y.media.subscribe(J=>{j=true,U(J,y,R);}),j||U(y.media.getSnapshot(),y,R),r.record("debug","pinia","media","media-tasks-subscribed",()=>({generation:R}));}function ie(){V(n.getProductClient());}function S(){V(null),m.value=null;}async function x(y,R){let j=n.getProductClient();if(j===null)return Object.freeze({ok:false,operation:y,reason:"not-ready"});if(V(j),!s.value.some(ye=>ye.id===R))return Object.freeze({ok:false,operation:y,reason:"not-found"});let J=n.getGeneration(),le=z;c.value=null;try{return await j.media[y](R),I||le!==z||n.getGeneration()!==J||A!==j?Object.freeze({ok:!1,operation:y,reason:"stale"}):Object.freeze({ok:!0,operation:y})}catch(ye){if(I||le!==z||n.getGeneration()!==J||A!==j)return Object.freeze({ok:false,operation:y,reason:"stale"});let ge=eu(ye,y);return c.value=ge,r.record("error","pinia","media",`media-task-${y}-failed`,()=>({generation:J,data:{taskId:R},error:{message:ge.code,data:ge}})),Object.freeze({ok:false,operation:y,reason:"failed",error:ge})}}function X(y){return x("cancel",y)}function N(y){return x("retry",y)}async function se(y){let R=o.activeRef,j=s.value.find(le=>le.direction==="upload"&&(le.state==="queued"||le.state==="running")&&le.messageId===y&&$t(R,le.ref));if(j===void 0)return Object.freeze({ok:false,operation:"cancel",reason:"not-found"});let J=await X(j.id);return $t(o.activeRef,j.ref)?J:Object.freeze({ok:false,operation:"cancel",reason:"stale"})}function ne(y){let R=o.activeRef;return y.status!=="failed"||y.failure?.displayCode!=="media.uploadInterrupted"||y.contentType!=="video"&&y.contentType!=="file"||R===null||y.conversationId!==R.conversationId||y.conversationType!==R.conversationType?false:(m.value=Object.freeze({messageId:y.id,conversationId:y.conversationId,conversationType:y.conversationType,kind:y.contentType}),true)}function M(){let y=m.value;return m.value=null,y}function T(){m.value=null;}function C(){I||(z+=1,q?.(),q=void 0,A=null,G=-1,s.value=[],c.value=null,m.value=null,I=true);}return {tasks:s,error:c,uploadProgress:B,downloadTasks:P,downloadProgress:g,uploadFinalizing:F,replacementRequest:m,start:ie,reset:S,cancel:X,retry:N,cancelUpload:se,requestReplacement:ne,takeReplacementRequest:M,clearReplacementRequest:T,dispose:C}})}var Ni=new WeakMap,Lr=new WeakMap;function ru(e=Pe()){ve(e);let n=Ni.get(e);n===void 0&&(n=tu(e),Ni.set(e,n));let r=n(e);return Lr.get(e)!==r&&(Lr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),Lr.get(e)===r&&Lr.delete(e);})),r}function Jn(e){return Object.freeze({conversationType:"channel",conversationId:e.conversationId.trim()})}function Ur(e){return Object.freeze({userId:e.userId.trim(),role:e.role})}function ou(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function au(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_CHANNEL_MEMBER_MANAGEMENT_FAILED",category:o!==null&&ou(o.category)?o.category:"state",operation:`channel-member-management.${n}`,retryable:o?.retryable===true,conversation:r})}function bt(e,n,r,o){return Object.freeze({ok:false,operation:e,conversation:n,outcome:r,stale:r==="stale",projectionUpdated:false,refreshRequired:false,...o===void 0?{}:{error:o}})}function Ct(e,n){return bt(e,n,"failed",Object.freeze({code:"IM_CHAT_KIT_CHANNEL_MEMBER_MANAGEMENT_INVALID_INPUT",category:"validation",operation:`channel-member-management.${e}`,retryable:false,conversation:n}))}function iu(e,n,r){return Object.freeze({code:"IM_CHAT_KIT_CHANNEL_MEMBER_MANAGEMENT_UNAVAILABLE",category:r.availability==="unavailable"?"permission":"state",operation:`channel-member-management.${e}`,retryable:r.availability==="unknown",conversation:n})}function qi(e,n){return n!==void 0&&n.userId!==""&&n.userId!==e.getCredentials().userId&&(n.role==="member"||n.role==="admin")}function su(e,n,r,o,s){let c=n.capabilities.get(r);if(c.conversationType!=="channel"||c.ref.conversationId!==r.conversationId)return Object.freeze({availability:"unknown",reason:"not-ready"});if(o==="invite-members")return c.value.canInviteMembers;if(o==="remove-member")return s===void 0?Object.freeze({availability:"unknown",reason:"not-ready"}):H("members.removeTarget",{snapshot:c,selfId:e.getCredentials().userId,targetUserId:s.userId,targetRole:s.role});if(o==="add-admin"||o==="remove-admin")return s===void 0?Object.freeze({availability:"unknown",reason:"not-ready"}):H(o==="add-admin"?"members.setAdminTarget":"members.unsetAdminTarget",{snapshot:c,selfId:e.getCredentials().userId,targetUserId:s.userId,targetRole:s.role});if(o==="transfer-ownership")return qi(e,s)?c.value.canTransferOwnership:Object.freeze({availability:"unavailable",reason:"role-insufficient"});if(o==="leave"){if(s===void 0)return c.value.canLeave;let m=c.value.canLeave;return m.availability!=="available"?m:qi(e,s)?c.value.canTransferOwnership:Object.freeze({availability:"unavailable",reason:"role-insufficient"})}return c.value.canDismiss}function lu(e,n,r,o){let s=Jn(r);if(s.conversationId==="")return {ok:false,result:Ct(n,s)};let c=e.getProductClient();if(c===null)return {ok:false,result:bt(n,s,"not-ready")};let m=e.getGeneration(),I=su(e,c,s,n,o);return I.availability!=="available"?{ok:false,result:bt(n,s,"not-allowed",iu(n,s,I))}:{ok:true,captured:Object.freeze({client:c,conversation:s,isCurrent:()=>e.getGeneration()===m&&e.getProductClient()===c})}}async function Rt(e,n,r,o,s){let c=lu(e,n,r,s);if(!c.ok)return c.result;try{let m=await o(c.captured);return c.captured.isCurrent()?m:bt(n,c.captured.conversation,"stale")}catch(m){if(!c.captured.isCurrent())return bt(n,c.captured.conversation,"stale");let I=au(m,n,c.captured.conversation),z=n==="leave"&&I.code==="IM_SDK_CHANNEL_OWNER_TRANSFER_REQUIRED"?"transfer-required":"failed";return bt(n,c.captured.conversation,z,I)}}function cu(e){return Object.freeze([...new Set(e.map(n=>n.trim()).filter(Boolean))])}function Vi(e,n,r){let o=Jn(n),s=cu(r);return s.length===0?Promise.resolve(Ct("invite-members",o)):Rt(e,"invite-members",o,async({client:c})=>(await c.channels.inviteMembers(o,s),Object.freeze({ok:!0,operation:"invite-members",conversation:o,outcome:"invited",memberIds:s,stale:!1,projectionUpdated:!1,refreshRequired:!0})))}function $i(e,n,r){let o=Jn(n),s=Ur(r);return s.userId===""?Promise.resolve(Ct("remove-member",o)):Rt(e,"remove-member",o,async({client:c})=>(await c.channels.removeMember(o,s.userId),Object.freeze({ok:!0,operation:"remove-member",conversation:o,outcome:"removed",memberId:s.userId,stale:!1,projectionUpdated:!1,refreshRequired:!0})),s)}function Bi(e,n,r,o){let s=Jn(n),c=Ur(r),m=o?"add-admin":"remove-admin";return c.userId===""?Promise.resolve(Ct(m,s)):Rt(e,m,s,async({client:I})=>(o?await I.channels.addAdmin(s,c.userId):await I.channels.removeAdmin(s,c.userId),Object.freeze({ok:!0,operation:m,conversation:s,outcome:o?"admin-added":"admin-removed",memberId:c.userId,stale:!1,projectionUpdated:!1,refreshRequired:!0})),c)}function Wi(e,n,r){return Bi(e,n,r,true)}function Qi(e,n,r){return Bi(e,n,r,false)}function Ji(e,n,r){let o=Jn(n),s=Ur(r);return s.userId===""?Promise.resolve(Ct("transfer-ownership",o)):Rt(e,"transfer-ownership",o,async({client:c})=>(await c.channels.transferOwnership(o,s.userId),Object.freeze({ok:!0,operation:"transfer-ownership",conversation:o,outcome:"transferred",ownerId:s.userId,stale:!1,projectionUpdated:!1,refreshRequired:!0})),s)}function Xi(e,n,r){let o=Jn(n),s=r===void 0?void 0:Ur(r);return s!==void 0&&s.userId===""?Promise.resolve(Ct("leave",o)):Rt(e,"leave",o,async({client:c})=>(await c.channels.leave(o,s===void 0?void 0:{newOwnerId:s.userId}),Object.freeze({ok:!0,operation:"leave",conversation:o,outcome:"left",...s===void 0?{}:{newOwnerId:s.userId},stale:!1,projectionUpdated:!1,refreshRequired:!1})),s)}function Yi(e,n){let r=Jn(n);return Rt(e,"dismiss",r,async({client:o})=>(await o.channels.dismiss(r),Object.freeze({ok:!0,operation:"dismiss",conversation:r,outcome:"dismissed",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function Bt(e){return Object.freeze({conversationType:"channel",conversationId:e.conversationId.trim()})}function uu(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function du(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_CHANNEL_PROFILE_OPERATION_FAILED",category:o!==null&&uu(o.category)?o.category:"state",operation:`channel-profile.${n}`,retryable:o?.retryable===true,conversation:r})}function Pt(e,n,r,o){return Object.freeze({ok:false,operation:e,conversation:n,outcome:r,stale:r==="stale",projectionUpdated:false,refreshRequired:false,...o===void 0?{}:{error:o}})}function kt(e,n){return Pt(e,n,"failed",Object.freeze({code:"IM_CHAT_KIT_CHANNEL_PROFILE_INVALID_INPUT",category:"validation",operation:`channel-profile.${e}`,retryable:false,conversation:n}))}function fu(e,n,r){return Object.freeze({code:"IM_CHAT_KIT_CHANNEL_PROFILE_ACTION_UNAVAILABLE",category:r.availability==="unavailable"?"permission":"state",operation:`channel-profile.${e}`,retryable:r.availability==="unknown",conversation:n})}function mu(e,n,r,o,s){let c=n.capabilities.get(r);return c.conversationType!=="channel"||c.ref.conversationId!==r.conversationId?Object.freeze({availability:"unknown",reason:"not-ready"}):o==="set-my-nickname"?c.value.canLeave:o==="set-member-nickname"?s===void 0?Object.freeze({availability:"unknown",reason:"not-ready"}):H("members.editNicknameTarget",{snapshot:c,selfId:e.getCredentials().userId,targetUserId:s.userId,targetRole:s.role}):o==="set-all-muted"?c.value.canManageMute:o==="set-member-private-chat-disabled"?c.value.canSetMemberPrivateChat:c.value.canEditProfile}function pu(e,n,r,o){let s=Bt(r);if(s.conversationId==="")return {ok:false,result:kt(n,s)};let c=e.getProductClient();if(c===null)return {ok:false,result:Pt(n,s,"not-ready")};let m=e.getGeneration(),I=mu(e,c,s,n,o);return I.availability!=="available"?{ok:false,result:Pt(n,s,"not-allowed",fu(n,s,I))}:{ok:true,captured:Object.freeze({client:c,conversation:s,isCurrent:()=>e.getGeneration()===m&&e.getProductClient()===c})}}async function Kn(e,n,r,o,s){let c=pu(e,n,r,s);if(!c.ok)return c.result;try{let m=await o(c.captured);return c.captured.isCurrent()?m:Pt(n,c.captured.conversation,"stale")}catch(m){return c.captured.isCurrent()?Pt(n,c.captured.conversation,"failed",du(m,n,c.captured.conversation)):Pt(n,c.captured.conversation,"stale")}}function Zi(e,n,r){let o=Bt(n),s=r.trim();return s===""||[...s].length>15?{ok:false,result:kt(e,o)}:{ok:true,value:s}}function es(e,n,r){let o=r.trim();return o===""?Promise.resolve(kt("update-name",Bt(n))):Kn(e,"update-name",n,async({client:s,conversation:c})=>(await s.channels.updateName(c,o),Object.freeze({ok:!0,operation:"update-name",conversation:c,outcome:"updated",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}var vu=100;function ns(e,n,r){let o=r.trim();return o===""||[...o].length>vu?Promise.resolve(kt("update-description",Bt(n))):Kn(e,"update-description",n,async({client:s,conversation:c})=>(await s.channels.updateDescription(c,o),Object.freeze({ok:!0,operation:"update-description",conversation:c,outcome:"updated",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function ts(e,n,r){return Kn(e,"update-avatar",n,async({client:o,conversation:s})=>{let c=(await o.channels.updateAvatar(s,r)).trim();return c===""?kt("update-avatar",s):Object.freeze({ok:!0,operation:"update-avatar",conversation:s,outcome:"updated",avatar:c,stale:!1,projectionUpdated:!1,refreshRequired:!1})})}function rs(e,n,r){let o=Zi("set-my-nickname",n,r);return o.ok?Kn(e,"set-my-nickname",n,async({client:s,conversation:c})=>(await s.channels.setMyNickname(c,o.value),Object.freeze({ok:!0,operation:"set-my-nickname",conversation:c,outcome:"updated",memberId:e.getCredentials().userId,stale:!1,projectionUpdated:!1,refreshRequired:!1}))):Promise.resolve(o.result)}function os(e,n,r,o,s){let c=r.trim(),m=Zi("set-member-nickname",n,s);if(c===""||!m.ok)return Promise.resolve(m.ok?kt("set-member-nickname",Bt(n)):m.result);let I=Object.freeze({userId:c,role:o});return Kn(e,"set-member-nickname",n,async({client:z,conversation:A})=>(await z.channels.setMemberNickname(A,c,m.value),Object.freeze({ok:!0,operation:"set-member-nickname",conversation:A,outcome:"updated",memberId:c,stale:!1,projectionUpdated:!1,refreshRequired:!1})),I)}function as(e,n,r,o){return Kn(e,"update-verification",n,async({client:s,conversation:c})=>(await s.channels.updateVerification(c,r,o),Object.freeze({ok:!0,operation:"update-verification",conversation:c,outcome:"updated",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function is(e,n,r){return Kn(e,"set-all-muted",n,async({client:o,conversation:s})=>(await o.channels.setAllMuted(s,r),Object.freeze({ok:!0,operation:"set-all-muted",conversation:s,outcome:"updated",muted:r,stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function ss(e,n,r){return Kn(e,"set-member-private-chat-disabled",n,async({client:o,conversation:s})=>(await o.channels.setMemberPrivateChatDisabled(s,r),Object.freeze({ok:!0,operation:"set-member-private-chat-disabled",conversation:s,outcome:"updated",disabled:r,stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function gu(e){return Object.freeze({conversationType:"direct",conversationId:e.conversationId.trim()})}function Iu(e){return Object.freeze({conversationType:"direct",conversationId:e.trim()})}function hu(e){let n=e.getProductClient();if(n===null)return null;let r=e.getGeneration();return Object.freeze({client:n,isCurrent:()=>e.getGeneration()===r&&e.getProductClient()===n})}function yu(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function bu(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_DIRECT_CONTACT_OPERATION_FAILED",category:o!==null&&yu(o.category)?o.category:"state",operation:`direct-contact.${n}`,retryable:o?.retryable===true,...r===null?{}:{conversation:r}})}function Xn(e,n,r,o){return Object.freeze({ok:false,operation:e,conversation:n,outcome:r,stale:r==="stale",projectionUpdated:false,refreshRequired:false,...o===void 0?{}:{error:o}})}function qr(e,n){return Object.freeze({code:"IM_CHAT_KIT_DIRECT_CONTACT_INVALID_INPUT",category:"validation",operation:`direct-contact.${e}`,retryable:false,...n===null?{}:{conversation:n}})}async function Yn(e,n,r,o){let s=hu(e);if(s===null)return {ok:false,result:Xn(n,r,"not-ready")};try{let c=await o(s.client);return s.isCurrent()?{ok:!0,value:c}:{ok:!1,result:Xn(n,r,"stale")}}catch(c){return s.isCurrent()?{ok:false,result:Xn(n,r,"failed",bu(c,n,r))}:{ok:false,result:Xn(n,r,"stale")}}}function Ot(e,n){let r=gu(n);return r.conversationId===""?{ok:false,result:Xn(e,r,"failed",qr(e,r))}:{ok:true,conversation:r}}async function ls(e,n,r){let o=Ot("set-remark",n);if(!o.ok)return o.result;let{conversation:s}=o,c=await Yn(e,"set-remark",s,m=>m.contacts.setRemark(s.conversationId,Object.freeze({...r.name===void 0?{}:{name:r.name},...r.emails===void 0?{}:{emails:Object.freeze([...r.emails])},...r.phones===void 0?{}:{phones:Object.freeze(r.phones.map(I=>Object.freeze({countryCode:I.countryCode,mobile:I.mobile})))}})));return c.ok?Object.freeze({ok:true,operation:"set-remark",conversation:s,outcome:"updated",stale:false,projectionUpdated:false,refreshRequired:false}):c.result}async function cs(e,n){let r=Ot("block",n);if(!r.ok)return r.result;let{conversation:o}=r,s=await Yn(e,"block",o,c=>c.contacts.blockUser(o.conversationId));return s.ok?Object.freeze({ok:true,operation:"block",conversation:o,outcome:"blocked",stale:false,projectionUpdated:false,refreshRequired:false}):s.result}async function us(e,n,r){let o=Ot("report",n);if(!o.ok)return o.result;let{conversation:s}=o,c=r.trim();if(c==="")return Xn("report",s,"failed",qr("report",s));let m=await Yn(e,"report",s,I=>I.contacts.reportUser(s.conversationId,c));return m.ok?Object.freeze({ok:true,operation:"report",conversation:s,outcome:"reported",stale:false,projectionUpdated:false,refreshRequired:false}):m.result}async function ds(e,n){let r=Ot("delete-friendship",n);if(!r.ok)return r.result;let{conversation:o}=r,s=await Yn(e,"delete-friendship",o,c=>c.contacts.deleteFriendship(o.conversationId));return s.ok?Object.freeze({ok:true,operation:"delete-friendship",conversation:o,outcome:"deleted",stale:false,projectionUpdated:false,refreshRequired:false}):s.result}async function fs(e,n){let r=n.trim();if(r==="")return Xn("search-user",null,"failed",qr("search-user",null));let o=await Yn(e,"search-user",null,m=>m.contacts.searchUser(r));if(!o.ok)return !o.result.ok&&!o.result.stale&&o.result.error?.code==="IM_SDK_CONTACT_SEARCH_NO_MATCH"?Object.freeze({ok:true,operation:"search-user",conversation:null,outcome:"not-found",target:null,stale:false,projectionUpdated:false,refreshRequired:false}):o.result;let s=o.value,c=s===null?null:Iu(s.userId);return Object.freeze({ok:true,operation:"search-user",conversation:c,outcome:s===null?"not-found":"found",target:s,stale:false,projectionUpdated:false,refreshRequired:false})}async function ms(e,n){let r=Ot("resolve-application-target",n);if(!r.ok)return r.result;let{conversation:o}=r,s=await Yn(e,"resolve-application-target",o,async c=>{let[m,I]=await Promise.all([c.contacts.getProfile(o.conversationId),c.contacts.getRelationship(o.conversationId)]);if(m===null)return null;if(m.userId!==o.conversationId)throw qr("resolve-application-target",o);return Object.freeze({userId:m.userId,displayName:m.displayName,nickname:m.nickname,relationship:I,...m.avatar===void 0?{}:{avatarUrl:m.avatar},...m.miCallId===void 0?{}:{miCallId:m.miCallId},...m.signature===void 0?{}:{signature:m.signature},...m.age===void 0?{}:{age:m.age}})});return s.ok?Object.freeze({ok:true,operation:"resolve-application-target",conversation:o,outcome:s.value===null?"not-found":"found",target:s.value,stale:false,projectionUpdated:false,refreshRequired:false}):s.result}async function ps(e,n,r){let o=Ot("request-friendship",n);if(!o.ok)return o.result;let{conversation:s}=o,c=await Yn(e,"request-friendship",s,m=>m.contacts.requestFriendship(s.conversationId,Object.freeze({message:r.message,...r.remark===void 0?{}:{remark:r.remark}})));return c.ok?Object.freeze({ok:true,operation:"request-friendship",conversation:s,outcome:c.value.status,stale:false,projectionUpdated:false,refreshRequired:false}):c.result}function Wt(e){return Object.freeze({conversationType:"group",conversationId:e.conversationId.trim()})}function Cu(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function Ru(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_GROUP_MEMBER_MANAGEMENT_FAILED",category:o!==null&&Cu(o.category)?o.category:"state",operation:`group-member-management.${n}`,retryable:o?.retryable===true,conversation:r})}function Mt(e,n,r,o){return Object.freeze({ok:false,operation:e,conversation:n,outcome:r,stale:r==="stale",projectionUpdated:false,refreshRequired:false,...o===void 0?{}:{error:o}})}function Qt(e,n){return Mt(e,n,"failed",Object.freeze({code:"IM_CHAT_KIT_GROUP_MEMBER_MANAGEMENT_INVALID_INPUT",category:"validation",operation:`group-member-management.${e}`,retryable:false,conversation:n}))}function Pu(e,n,r){return Object.freeze({code:"IM_CHAT_KIT_GROUP_MEMBER_MANAGEMENT_UNAVAILABLE",category:r.availability==="unavailable"?"permission":"state",operation:`group-member-management.${e}`,retryable:r.availability==="unknown",conversation:n})}function ku(e,n,r,o){let s=e.capabilities.get(n);if(s.conversationType!=="group"||s.ref.conversationId!==n.conversationId)return Object.freeze({availability:"unknown",reason:"not-ready"});if(r==="invite-members")return s.value.canInviteMembers;if(r==="remove-member")return s.value.canManageMembers;if(r==="transfer-ownership")return s.value.canTransferOwnership;let c=s.value.canLeave;return c.availability!=="available"||!o?c:s.value.canTransferOwnership}function Ou(e,n,r,o=false){let s=Wt(r);if(s.conversationId==="")return {ok:false,result:Qt(n,s)};let c=e.getProductClient();if(c===null)return {ok:false,result:Mt(n,s,"not-ready")};let m=e.getGeneration(),I=ku(c,s,n,o);return I.availability!=="available"?{ok:false,result:Mt(n,s,"not-allowed",Pu(n,s,I))}:{ok:true,captured:Object.freeze({client:c,conversation:s,isCurrent:()=>e.getGeneration()===m&&e.getProductClient()===c})}}async function Vr(e,n,r,o,s=false){let c=Ou(e,n,r,s);if(!c.ok)return c.result;try{let m=await o(c.captured);return c.captured.isCurrent()?m:Mt(n,c.captured.conversation,"stale")}catch(m){if(!c.captured.isCurrent())return Mt(n,c.captured.conversation,"stale");let I=Ru(m,n,c.captured.conversation),z=n==="leave"&&I.code==="IM_SDK_GROUP_OWNER_TRANSFER_REQUIRED"?"transfer-required":"failed";return Mt(n,c.captured.conversation,z,I)}}function Mu(e){return Object.freeze([...new Set(e.map(n=>n.trim()).filter(Boolean))])}function vs(e,n,r){let o=Wt(n),s=Mu(r);return s.length===0?Promise.resolve(Qt("invite-members",o)):Vr(e,"invite-members",o,async({client:c})=>(await c.groups.inviteMembers(o,s),Object.freeze({ok:!0,operation:"invite-members",conversation:o,outcome:"invited",memberIds:s,stale:!1,projectionUpdated:!1,refreshRequired:!0})))}function gs(e,n,r){let o=Wt(n),s=r.trim();return s===""?Promise.resolve(Qt("remove-member",o)):Vr(e,"remove-member",o,async({client:c})=>(await c.groups.removeMember(o,s),Object.freeze({ok:!0,operation:"remove-member",conversation:o,outcome:"removed",memberId:s,stale:!1,projectionUpdated:!1,refreshRequired:!0})))}function Is(e,n,r){let o=Wt(n),s=r.trim();return s===""?Promise.resolve(Qt("transfer-ownership",o)):Vr(e,"transfer-ownership",o,async({client:c})=>(await c.groups.transferOwnership(o,s),Object.freeze({ok:!0,operation:"transfer-ownership",conversation:o,outcome:"transferred",ownerId:s,stale:!1,projectionUpdated:!1,refreshRequired:!0})))}function hs(e,n,r={}){let o=Wt(n),s=r.newOwnerId?.trim();return r.newOwnerId!==void 0&&s===""?Promise.resolve(Qt("leave",o)):Vr(e,"leave",o,async({client:c})=>(await c.groups.leave(o,s===void 0?void 0:{newOwnerId:s}),Object.freeze({ok:!0,operation:"leave",conversation:o,outcome:"left",...s===void 0?{}:{newOwnerId:s},stale:!1,projectionUpdated:!1,refreshRequired:!1})),s!==void 0)}function Vo(e){return Object.freeze({conversationType:"group",conversationId:e.conversationId.trim()})}function Su(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function ys(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_GROUP_PROFILE_OPERATION_FAILED",category:o!==null&&Su(o.category)?o.category:"state",operation:`group-profile.${n}`,retryable:o?.retryable===true,conversation:r})}function en(e,n,r,o){return Object.freeze({ok:false,operation:e,conversation:n,outcome:r,stale:r==="stale",projectionUpdated:false,refreshRequired:false,...o===void 0?{}:{error:o}})}function Eu(e,n,r){return Object.freeze({code:"IM_CHAT_KIT_GROUP_PROFILE_ACTION_UNAVAILABLE",category:r.availability==="unavailable"?"permission":"state",operation:`group-profile.${e}`,retryable:r.availability==="unknown",conversation:n})}function ju(e,n,r){let o=e.capabilities.get(n);return o.conversationType!=="group"||o.ref.conversationId!==n.conversationId?Object.freeze({availability:"unknown",reason:"not-ready"}):r==="update-verification"?o.value.canUpdateVerification:r==="set-my-nickname"?o.value.membership==="active"?Object.freeze({availability:"available",reason:"ok"}):Object.freeze({availability:o.value.membership==="unknown"?"unknown":"unavailable",reason:o.value.membership==="unknown_restricted"?"unknown-restricted":o.value.membership}):o.value.canEditProfile}function bs(e,n,r){let o=Vo(r);if(o.conversationId==="")return {ok:false,result:en(n,o,"failed",Object.freeze({code:"IM_CHAT_KIT_GROUP_PROFILE_INVALID_INPUT",category:"validation",operation:`group-profile.${n}`,retryable:false,conversation:o}))};let s=e.getProductClient();if(s===null)return {ok:false,result:en(n,o,"not-ready")};let c=e.getGeneration(),m=ju(s,o,n);return m.availability!=="available"?{ok:false,result:en(n,o,"not-allowed",Eu(n,o,m))}:{ok:true,captured:Object.freeze({client:s,conversation:o,isCurrent:()=>e.getGeneration()===c&&e.getProductClient()===s})}}async function $o(e,n,r,o){let s=bs(e,n,r);if(!s.ok)return s.result;try{let c=await o(s.captured);return s.captured.isCurrent()?c:en(n,s.captured.conversation,"stale")}catch(c){return s.captured.isCurrent()?en(n,s.captured.conversation,"failed",ys(c,n,s.captured.conversation)):en(n,s.captured.conversation,"stale")}}function Cs(e,n,r){let o=r.trim();if(o===""){let s=Vo(n);return Promise.resolve(en("update-name",s,"failed",Object.freeze({code:"IM_CHAT_KIT_GROUP_PROFILE_INVALID_INPUT",category:"validation",operation:"group-profile.update-name",retryable:false,conversation:s})))}return $o(e,"update-name",n,async({client:s,conversation:c})=>(await s.groups.updateName(c,o),Object.freeze({ok:!0,operation:"update-name",conversation:c,outcome:"updated",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function Rs(e,n,r){let o=r.trim();if(o===""){let s=Vo(n);return Promise.resolve(en("set-my-nickname",s,"failed",Object.freeze({code:"IM_CHAT_KIT_GROUP_PROFILE_INVALID_INPUT",category:"validation",operation:"group-profile.set-my-nickname",retryable:false,conversation:s})))}return $o(e,"set-my-nickname",n,async({client:s,conversation:c})=>(await s.groups.setMyNickname(c,o),Object.freeze({ok:!0,operation:"set-my-nickname",conversation:c,outcome:"updated",memberId:e.getCredentials().userId,stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function Ps(e,n,r,o){return $o(e,"update-verification",n,async({client:s,conversation:c})=>(await s.groups.updateVerification(c,r,o),Object.freeze({ok:!0,operation:"update-verification",conversation:c,outcome:"updated",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}async function ks(e,n,r){let o=bs(e,"update-avatar",n);if(!o.ok)return o.result;let{captured:s}=o;try{await s.client.groups.updateAvatar(s.conversation,r);}catch(c){return s.isCurrent()?en("update-avatar",s.conversation,"failed",ys(c,"update-avatar",s.conversation)):en("update-avatar",s.conversation,"stale")}if(!s.isCurrent())return en("update-avatar",s.conversation,"stale");try{let c=await s.client.groups.getProfile(s.conversation,{forceRefresh:!0});if(!s.isCurrent())return en("update-avatar",s.conversation,"stale");let m=c?.avatar?.trim();return Object.freeze({ok:!0,operation:"update-avatar",conversation:s.conversation,outcome:"updated",...m===void 0||m===""?{}:{avatar:m},stale:!1,projectionUpdated:!1,refreshRequired:m===void 0||m===""})}catch{return s.isCurrent()?Object.freeze({ok:true,operation:"update-avatar",conversation:s.conversation,outcome:"updated",stale:false,projectionUpdated:false,refreshRequired:true}):en("update-avatar",s.conversation,"stale")}}function Tu(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function wu(e,n){if(n.id!==e.conversationId)throw new Error("GROUP \u8D44\u6599\u54CD\u5E94\u8EAB\u4EFD\u4E0D\u5339\u914D");return Object.freeze({ref:Tu(e),name:n.name,...n.avatar===void 0?{}:{avatar:n.avatar},...n.memberCount===void 0?{}:{memberCount:n.memberCount},...n.ownerId===void 0?{}:{ownerId:n.ownerId},...n.verifyWay===void 0?{}:{verifyWay:n.verifyWay},...n.inviteCode===void 0?{}:{inviteCode:n.inviteCode},...n.isInGroup===void 0?{}:{isInGroup:n.isInGroup}})}function Os(e){return Object.freeze(e.map(n=>Object.freeze({userId:n.userId,nickname:n.nickName,...n.joinType===void 0?{}:{joinType:n.joinType}})))}async function Ms(e,n,r={}){let o=e.ensureProductClient(),[s,c]=await Promise.all([r.forceRefresh===true?o.contacts.getProfile(n.conversationId,r):o.contacts.getProfile(n.conversationId),o.contacts.getRelationship(n.conversationId)]);return Object.freeze({profile:s,relationship:c})}async function Ss(e,n){let r=await e.getClient()?.group.peekProfile(n.conversationId)??null;return r===null?null:wu(n,r.value)}function Es(e,n,r){return e.ensureProductClient().groups.getProfile(n,r)}async function js(e,n){let r=n.trim();if(r==="")return Object.freeze([]);let o=e.ensureProductClient(),s=e.getClient();if(s===null)throw new Error("\u5171\u540C\u7FA4\u7EC4\u80FD\u529B\u672A\u8FDE\u63A5");let c=[],m=await o.groups.listFirstPage({pageSize:100});for(c.push(...m.items);!m.exhausted&&m.nextPageToken!==void 0;)m=await o.groups.listNextPage(m.nextPageToken),c.push(...m.items);let I=[];for(let z of c){let A=await s.group.listMembers(z.id,{forceRefresh:false});A!==null&&A.some(G=>G.userId===r)&&I.push(Object.freeze({ref:Object.freeze({conversationType:"group",conversationId:z.id}),name:z.displayName||z.cardDisplayName||z.id,...z.avatarUrl===void 0?{}:{avatar:z.avatarUrl}}));}return Object.freeze(I)}async function Ts(e,n){let r=await e.getClient()?.group.peekMembers(n.conversationId)??null;return r===null?null:Object.freeze({items:Os(r.value),stale:r.stale})}async function ws(e,n){let r=await e.getClient()?.group.listMembers(n.conversationId,{forceRefresh:true})??null;return r===null?null:Os(r)}async function xs(e,n,r){let o=await e.ensureProductClient().channels.getProfile(n,r);if(o===null)return null;if(o.ref.conversationId!==n.conversationId)throw new Error("CHANNEL \u8D44\u6599\u54CD\u5E94\u8EAB\u4EFD\u4E0D\u5339\u914D");return Object.freeze({...o,canViewMembers:o.permissions.manageMembers===true||o.memberPrivateChatDisabled===false})}function zs(e,n,r){let o=e.ensureProductClient(),s=n==="individual"?o.contacts:n==="group"?o.groups:o.channels;return r===void 0?s.listFirstPage():s.listNextPage(r)}function As(e,n){return e.ensureProductClient().directory.search(n)}async function Gs(e,n,r){let o=e.getClient();if(o===null)throw new Error("CHANNEL \u6210\u5458\u80FD\u529B\u672A\u8FDE\u63A5");let s=r.query?.trim()??"",c=s===""?await o.channel.listMembers({channelId:n.conversationId,cursor:r.cursor,limit:18}):await o.channel.searchMembers({channelId:n.conversationId,query:s,cursor:r.cursor,limit:18});return Bo(c)}function Bo(e){return Object.freeze({items:Object.freeze(e.items.map(n=>Object.freeze({userId:n.userId,...n.nickname===void 0?{}:{nickname:n.nickname},displayName:n.displayName,...n.avatar===void 0?{}:{avatar:n.avatar},role:n.role}))),...e.nextCursor===void 0?{}:{nextCursor:e.nextCursor},exhausted:e.exhausted})}async function Ds(e,n,r,o={}){let s=e.getClient();if(s===null)throw new Error("CHANNEL \u6210\u5458\u80FD\u529B\u672A\u8FDE\u63A5");let c=r.trim();if(c==="")return null;let I=(await s.channel.getMembersByIds(n.conversationId,[c],o.forceRefresh===true?{forceRefresh:true}:void 0)).find(z=>z.userId===c);return I===void 0?null:Object.freeze({userId:I.userId,...I.nickname===void 0?{}:{nickname:I.nickname},displayName:I.displayName,...I.avatar===void 0?{}:{avatar:I.avatar},role:I.role})}async function Wo(e,n,r){let o=e.getClient();if(o===null)throw new Error("CHANNEL \u6210\u5458\u80FD\u529B\u672A\u8FDE\u63A5");let s=r?.trim()??"",c=await o.channel.getCachedMembers({channelId:n.conversationId,...s===""?{}:{query:s}});return c===null?null:Bo(c)}async function _s(e,n,r){let o=e.getClient();if(o===null)throw new Error("CHANNEL \u6210\u5458\u80FD\u529B\u672A\u8FDE\u63A5");let s=r?.trim()??"";return Bo(await o.channel.refreshMembers({channelId:n.conversationId,...s===""?{}:{query:s}}))}function Qo(e){return Object.freeze({items:Object.freeze(e.items.map(n=>Object.freeze({userId:n.userId,displayName:n.displayName,...n.avatar===void 0?{}:{avatar:n.avatar}}))),...e.nextPageToken===void 0?{}:{nextPageToken:e.nextPageToken},exhausted:e.exhausted})}async function Jo(e,n,r){let o=await e.ensureProductClient().channels.mentions.getCachedPage(n,r);return o===null?null:Qo(o)}async function Fs(e,n,r){let o=e.ensureProductClient().channels.mentions,s=r?.trim()??"",c=s===""?await o.refreshFirstPage(n):await o.refreshSearchFirstPage(n,s);return Qo(c)}async function Ks(e,n,r){let o=e.ensureProductClient().channels.mentions,s=n.trim()===""?await o.listNextPage(r):await o.searchNextPage(r);return Qo(s)}function Hs(e,n){let r=e.map(s=>`${s.kind}:${s.id}`),o=new Map(e.map(s=>[`${s.kind}:${s.id}`,s]));for(let s of n){let c=`${s.kind}:${s.id}`;o.has(c)||r.push(c),o.set(c,s);}return Object.freeze(r.map(s=>o.get(s)))}var Au=new Set(["group_member_joined","group_member_invited","group_member_left","group_member_removed","group_member_renamed"]),Gu=new Set(["channel_member_joined","channel_member_invited","channel_member_left","channel_member_removed","channel_owner_transferred","channel_admin_added","channel_admin_removed","channel_member_renamed"]),Ns=new Set(["channel_member_joined","channel_member_invited","channel_member_left","channel_member_removed","channel_member_renamed"]);function be(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function W(e,n){return e!==null&&e.conversationType===n.conversationType&&e.conversationId===n.conversationId}function Zn(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"stale",stale:true,projectionUpdated:false,refreshRequired:false})}function $r(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"stale",stale:true,projectionUpdated:false,refreshRequired:false})}function Hn(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"stale",stale:true,projectionUpdated:false,refreshRequired:false})}function et(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"not-allowed",stale:false,projectionUpdated:false,refreshRequired:false})}function hn(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"stale",stale:true,projectionUpdated:false,refreshRequired:false})}function Jt(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"not-allowed",stale:false,projectionUpdated:false,refreshRequired:false})}function nt(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"stale",stale:true,projectionUpdated:false,refreshRequired:false})}function Du(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function Ve(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return o!==null&&typeof o.code=="string"&&Du(o.category)?Object.freeze({code:o.code,category:o.category,operation:n,retryable:o.retryable===true,...r===void 0?{}:{conversation:be(r)}}):Object.freeze({code:"IM_CHAT_KIT_PROFILE_DIRECTORY_OPERATION_FAILED",category:"state",operation:n,retryable:false,...r===void 0?{}:{conversation:be(r)}})}function Br(){return {items:[],loading:false,loaded:false,exhausted:false,error:null}}function _u(e){return defineStore("k2-im-profile-directory",()=>{let n=ve(e).runtime,r=n.getDiagnostics(),o=ref(0),s=ref({}),c=shallowRef(null),m=shallowRef(null),I=ref("unknown"),z$1=ref(false),A$1=shallowRef(null),G=shallowRef([]),q=ref(false),B=shallowRef(null),P=shallowRef(null),g=shallowRef(null),F=shallowRef([]),U=ref(false),V=ref(false),ie=shallowRef(null),S=shallowRef(null),x$1=shallowRef(null),X=ref(false),N=shallowRef(null),se=reactive({individual:Br(),group:Br(),channel:Br()}),ne=ref(""),M=shallowRef(null),T=ref(false),C=shallowRef(null),y$1=shallowRef(null),R=shallowRef([]),j=ref(""),J=ref(false),le=ref(false),ye=shallowRef(null),ge=shallowRef(null),K=shallowRef(null),Q=ref(false),Ie=shallowRef(null),ce=shallowRef(null),Ce=shallowRef([]),ke=ref(""),Se=ref(false),je=ref(false),_=shallowRef(null),L=false,de=new Map,fe=0,ue={direct:0,group:0,channel:0},De=0,O={"set-remark":0,block:0,report:0,"delete-friendship":0,"search-user":0,"resolve-application-target":0,"request-friendship":0},h={"update-name":0,"update-avatar":0,"set-my-nickname":0,"update-verification":0},D={"invite-members":0,"remove-member":0,"transfer-ownership":0,leave:0},ee=new Map,ae=0,re=new Map,Re=new Map,oe=new Set,he=new Set,we=new Map,Ke=new Map,io=0,yn={"invite-members":0,"remove-member":0,"add-admin":0,"remove-admin":0,"transfer-ownership":0,leave:0,dismiss:0},bn=new Map,ln=new Map,Yt=0,Sn=new Set,Cn=new Map,cn=new Map,Zt=0,un=0,tt=0,Rn=new Map,Ue=new Map,Ae=new Map,dn=new Map,$e=new Map,qe=new Map,fn=new Map,En=ref(0),rt={individual:0,group:0,channel:0},Nn=new Map,Ln=0,Pn,jn,Tn,kn=0,nn,tn,gn,mn=0,pn,Be,We;function so(a){return s.value[a.conversationId]??0}function lo(a,i,t){o.value;let l=n.getSenderProfileCache();if(a.conversationType==="channel"){let u=x(l,n.getChannelMemberProfiles(),a.conversationId,i),f=(t??"").trim();return u===i&&f!==""?f:u}return a.conversationType==="group"?w(l,n.getGroupMemberNames(),a.conversationId,i,t):a.conversationType==="direct"?w(l,n.getGroupMemberNames(),"",i,t):(t??"").trim()||i}function er(a,i){o.value;let t=n.getSenderProfileCache();return a.conversationType==="channel"?y(t,n.getChannelMemberProfiles(),a.conversationId,i):z(t,i)}function co(a){return o.value,A(n.getSenderProfileCache(),a)}function nr(a,i){return ma$1(n,a,i)}function ot(a,i){return na(n,a.conversationId,i)}function at(a,i,t){let l=n.getGeneration(),u=de.get(a.conversationId)??0;return oa(n,a.conversationId,i,{...t?.forceRefresh===true?{forceRefresh:true}:{},isCurrent:()=>!L&&n.getGeneration()===l&&(de.get(a.conversationId)??0)===u&&t?.isCurrent?.()!==false})}function it(a,i){let t=a.conversationId.trim();if(t==="")return;de.set(t,(de.get(t)??0)+1);let l={...n.getChannelMemberProfiles()},u=[...new Set((i??[]).map(f=>f.trim()).filter(Boolean))];if(u.length===0)delete l[t];else {let f={...l[t]??{}};for(let E of u)delete f[E];Object.keys(f).length===0?delete l[t]:l[t]=f;}n.setChannelMemberProfiles(l);}function wn(a,i){let t=a.conversationId.trim();t!==""&&(it(a,i),s.value={...s.value,[t]:(s.value[t]??0)+1});}function tr(a,i,t){let l=t.trim();if(l==="")return;let u=a.get(i)??new Set;u.add(l),a.set(i,u);}function rr(a,i,t){let l=a.get(i);l!==void 0&&(l.delete(t.trim()),l.size===0&&a.delete(i));}function jt(a,i,t){let l=t.trim();return l!==""&&a.get(i)?.has(l)===true}function Qe(a,i,t){let l=a.get(i);return l===void 0||l.size===0?t:t.filter(u=>!l.has(u.userId))}function or(a,i,t={}){let l=$e.get(a);if(l===void 0||l.size===0)return i;let u=new Set(i.map(H=>H.userId)),f=new Map(l),E=i.map(H=>{let $=l.get(H.userId);return $===void 0?H:(t.reconcile===true&&$===H.nickname&&f.delete(H.userId),Object.freeze({...H,nickname:$}))});if(t.reconcile===true)for(let H of f.keys())u.has(H)||f.delete(H);return f.size===0?$e.delete(a):$e.set(a,f),Object.freeze(E)}function Tt(a,i){let t=$e.get(a);t!==void 0&&(t.delete(i.trim()),t.size===0&&$e.delete(a));}function st(a,i){let t=qe.get(a);return t===void 0||t.size===0?i:Object.freeze(i.map(l=>{let u=t.get(l.userId);return u===void 0?l:Object.freeze({...l,displayName:u.displayName})}))}function Je(a,i){let t=qe.get(a),l=fn.get(a),u=S.value?.conversationId===a?x$1.value?.ownerId:dn.get(a)?.ownerId;return (t===void 0||t.size===0)&&(l===void 0||l.size===0)&&u===void 0?i:Object.freeze(i.map(f=>{let E=t?.get(f.userId),H=l?.get(f.userId),$=u!==void 0&&f.userId===u;if(E===void 0&&H===void 0&&!$)return f;let{nickname:Me,...sn}=f;return Object.freeze({...sn,...E===void 0?f.nickname===void 0?{}:{nickname:f.nickname}:E.nickname===""?{}:{nickname:E.nickname},displayName:E?.displayName??f.displayName,role:$?"owner":H??f.role})}))}function ar(a,i){let t=qe.get(a);if(t===void 0)return;let l=false;for(let u of i)t.get(u.userId)?.nickname===(u.nickname??"")&&(t.delete(u.userId),l=true);t.size===0&&qe.delete(a),l&&(En.value+=1);}function d(a,i){let t=qe.get(a);t!==void 0&&t.delete(i.trim())&&(t.size===0&&qe.delete(a),En.value+=1);}function p(a,i){let t=fn.get(a);if(t!==void 0){for(let l of i)t.get(l.userId)===l.role&&t.delete(l.userId);t.size===0&&fn.delete(a);}}function v(a,i){let t=fn.get(a);t!==void 0&&(t.delete(i.trim()),t.size===0&&fn.delete(a));}function b(a,i,t,l){let u=a.conversationType==="direct"?c.value:a.conversationType==="group"?P.value:S.value;return !L&&n.getGeneration()===i&&fe===t&&ue[a.conversationType]===l&&W(u,a)}async function k(a,i={}){let t=be(a),l=++fe,u=ue.direct,f=n.getGeneration(),E=!W(c.value,t);c.value=t,E&&(m.value=null,I.value="unknown"),z$1.value=true,A$1.value=null;try{let H=await Ms(n,t,i);return b(t,f,l,u)?(m.value=H.profile,I.value=H.relationship,z$1.value=!1,H.profile===null?Object.freeze({ok:!1,operation:"direct-profile",reason:"not-found"}):Object.freeze({ok:!0,operation:"direct-profile"})):Object.freeze({ok:!1,operation:"direct-profile",reason:"stale"})}catch(H){if(!b(t,f,l,u))return Object.freeze({ok:false,operation:"direct-profile",reason:"stale"});let $=Ve(H,"profile.direct",t);return A$1.value=$,z$1.value=false,Object.freeze({ok:false,operation:"direct-profile",reason:"failed",error:$})}}async function w$1(a,i,t={}){let l=i.trim();if(l==="")return Object.freeze({ok:false,reason:"direct-profile",result:Object.freeze({ok:false,operation:"direct-profile",reason:"not-found"})});let u=t.forceRefresh===true,f;if(a.conversationType==="channel"){let H=await Dt({conversationType:"channel",conversationId:a.conversationId},{forceRefresh:u});if(!H.ok)return Object.freeze({ok:false,reason:"channel-profile",result:H});if(f=W(S.value,a)?x$1.value:null,la({conversation:a,relationship:"unknown",channelProfile:f})==="blocked")return Object.freeze({ok:true,destination:"blocked"})}let E=await k({conversationType:"direct",conversationId:l},{forceRefresh:u});return E.ok?Object.freeze({ok:true,destination:la({conversation:a,relationship:I.value,channelProfile:f})}):Object.freeze({ok:false,reason:"direct-profile",result:E})}async function Z(a){let i=be(a),t=++De,l=n.getGeneration();c.value=i,q.value=true,B.value=null;try{let u=await js(n,i.conversationId);return !W(c.value,i)||l!==n.getGeneration()||t!==De?Object.freeze({ok:!1,operation:"direct-mutual-groups",reason:"stale"}):(G.value=u,q.value=!1,Object.freeze({ok:!0,operation:"direct-mutual-groups"}))}catch(u){if(!W(c.value,i)||l!==n.getGeneration()||t!==De)return Object.freeze({ok:false,operation:"direct-mutual-groups",reason:"stale"});let f=Ve(u,"profile.direct-mutual-groups",i);return B.value=f,q.value=false,Object.freeze({ok:false,operation:"direct-mutual-groups",reason:"failed",error:f})}}function te(a){return O[a]+=1,O[a]}function Y(a,i){return !L&&O[a]===i}async function me(a,i){let t=be(a),l=te("set-remark"),u=await ls(n,t,i);if(!Y("set-remark",l)||!W(c.value,t))return Zn("set-remark",t);if(!u.ok)return u;let f=m.value,E=f!==null&&f.userId===t.conversationId;return E&&(m.value=Object.freeze({...f,...i.name===void 0?{}:{remark:i.name},...i.emails===void 0?{}:{remarkEmails:Object.freeze([...i.emails])},...i.phones===void 0?{}:{remarkPhones:Object.freeze(i.phones.map(H=>Object.freeze({countryCode:H.countryCode,mobile:H.mobile})))}})),Object.freeze({...u,projectionUpdated:E})}async function pe(a){let i=be(a),t=te("block"),l=await cs(n,i);return !Y("block",t)||!W(c.value,i)?Zn("block",i):l.ok?(I.value="blocked",Object.freeze({...l,projectionUpdated:true})):l}async function ze(a,i){let t=be(a),l=te("report"),u=await us(n,t,i);return !Y("report",l)||!W(c.value,t)?Zn("report",t):u}async function _e(a){let i=be(a),t=te("delete-friendship"),l=await ds(n,i);return !Y("delete-friendship",t)||!W(c.value,i)?Zn("delete-friendship",i):l.ok?(I.value="none",Object.freeze({...l,projectionUpdated:true})):l}async function Ee(a){let i=te("search-user"),t=await fs(n,a);return Y("search-user",i)?t:Zn("search-user",t.conversation)}async function He(a){let i=be(a),t=te("resolve-application-target"),l=await ms(n,i);return Y("resolve-application-target",t)?l:Zn("resolve-application-target",i)}async function Xe(a,i){let t=be(a),l=te("request-friendship"),u=await ps(n,t,i);return Y("request-friendship",l)?u:Zn("request-friendship",t)}function xn(a,i,t,l){return `${t}:${l}:${a.conversationType}:${a.conversationId}:${i}`}function zn(a,i){h[a]+=1;let t=n.getGeneration(),l=ue.group,u=xn(i,a,t,l);return re.set(u,(re.get(u)??0)+1),Object.freeze({epoch:h[a],generation:t,key:u,resetEpoch:l})}function rn(a,i){let t=re.get(i.key)??0;t<=1?re.delete(i.key):re.set(i.key,t-1),ea(a);}function wt(a,i){return !L&&n.getGeneration()===i.generation&&ue.group===i.resetEpoch&&h[a]===i.epoch}function xt(a,i){let t=n.getGeneration(),l=ue.group;return i!==void 0?(re.get(xn(a,i,t,l))??0)>0:Object.keys(h).some(u=>(re.get(xn(a,u,t,l))??0)>0)}async function Te(a,i){let t=be(a),l=i.trim(),u=zn("update-name",t);try{let f=await Cs(n,t,l);if(!wt("update-name",u)||!W(P.value,t))return $r("update-name",t);if(!f.ok)return f;let E=g.value!==null;return E&&Tl(t,l),Object.freeze({...f,projectionUpdated:E})}finally{rn(t,u);}}async function Ye(a,i){let t=be(a),l=zn("update-avatar",t);try{let u=await ks(n,t,i);if(!wt("update-avatar",l)||!W(P.value,t))return $r("update-avatar",t);if(!u.ok)return u;let f=g.value!==null&&u.avatar!==void 0;return f&&wl(t,u.avatar),Object.freeze({...u,projectionUpdated:f})}finally{rn(t,l);}}async function An(a,i){let t=be(a),l=i.trim(),u=zn("set-my-nickname",t);try{let f=await Rs(n,t,l);if(!wt("set-my-nickname",u)||!W(P.value,t))return $r("set-my-nickname",t);if(!f.ok)return f;let E=F.value.some(H=>H.userId===f.memberId);return ca(t,f.memberId,l),ra(n,t.conversationId,f.memberId,l),Object.freeze({...f,projectionUpdated:E})}finally{rn(t,u);}}async function Gn(a,i,t){let l=be(a),u=i===4?t?.trim():void 0,f=zn("update-verification",l);try{let E=await Ps(n,l,i,u);if(!wt("update-verification",f)||!W(P.value,l))return $r("update-verification",l);if(!E.ok)return E;let H=g.value!==null;return H&&xl(l,i,u),Object.freeze({...E,projectionUpdated:H})}finally{rn(l,f);}}function uo(a,i,t,l,u){return `${l}:${u}:${a.conversationType}:${a.conversationId}:${i}:${t}`}function vn(a,i,t="profile"){let l=n.getGeneration(),u=ue.channel,f=uo(i,a,t,l,u),E=++io;return we.set(f,E),Ke.set(f,(Ke.get(f)??0)+1),Object.freeze({conversation:be(i),epoch:E,generation:l,resetEpoch:u,key:f})}function In(a){let i=Ke.get(a.key)??0;i<=1?Ke.delete(a.key):Ke.set(a.key,i-1),we.get(a.key)===a.epoch&&we.delete(a.key),oa$1(a.conversation);}function xe(a){return !L&&n.getGeneration()===a.generation&&ue.channel===a.resetEpoch&&we.get(a.key)===a.epoch}function on(a,i,t){let l=`${n.getGeneration()}:${ue.channel}:${a.conversationType}:${a.conversationId}:`;for(let[u,f]of Ke){let E=i===void 0?l:`${l}${i}:`;if(f>0&&u.startsWith(E)&&(t===void 0||u===`${E}${t.trim()}`))return true}return false}function Yo(a,i,t){let l=n.getChannelMemberProfiles(),u=l[a.conversationId],f=u?.[i];u===void 0||f===void 0||n.setChannelMemberProfiles({...l,[a.conversationId]:{...u,[i]:{...f,displayName:t}}});}async function Ys(a,i){let t=be(a);if(an(t))return et("update-name",t);let l=i.trim(),u=vn("update-name",t);try{let f=await es(n,t,l);if(!xe(u)||!W(S.value,t))return Hn("update-name",t);if(!f.ok)return f;let E=x$1.value!==null;return E&&fa(t,l),Object.freeze({...f,projectionUpdated:E})}finally{In(u);}}async function Zs(a,i){let t=be(a);if(an(t))return et("update-description",t);let l=i.trim(),u=vn("update-description",t);try{let f=await ns(n,t,l);if(!xe(u)||!W(S.value,t))return Hn("update-description",t);if(!f.ok)return f;let E=x$1.value!==null;return E&&ma(t,l),Object.freeze({...f,projectionUpdated:E})}finally{In(u);}}async function el(a,i){let t=be(a);if(an(t))return et("update-avatar",t);let l=vn("update-avatar",t);try{let u=await ts(n,t,i);if(!xe(l)||!W(S.value,t))return Hn("update-avatar",t);if(!u.ok)return u;let f=x$1.value!==null;return f&&pa$1(t,u.avatar),Object.freeze({...u,projectionUpdated:f})}finally{In(l);}}async function nl(a,i){let t=be(a),l=i.trim(),u=vn("set-my-nickname",t,n.getCredentials().userId);try{let f=await rs(n,t,l);return !xe(u)||!W(S.value,t)?Hn("set-my-nickname",t):f.ok?(ho(t,f.memberId,l,l),Yo(t,f.memberId,l),Object.freeze({...f,projectionUpdated:!0})):f}finally{In(u);}}async function tl(a,i,t){let l=be(a);if(an(l))return et("set-member-nickname",l);let u=i.trim(),f=t.trim(),E=Ro(l,u),H=vn("set-member-nickname",l,u);try{let $=await os(n,l,u,E?.role??"unknown",f);return !xe(H)||!W(S.value,l)?Hn("set-member-nickname",l):$.ok?(ho(l,$.memberId,f,f),Yo(l,$.memberId,f),Object.freeze({...$,projectionUpdated:!0})):$}finally{In(H);}}async function rl(a,i,t){let l=be(a);if(an(l))return et("update-verification",l);let u=i===4?t?.trim():void 0,f=vn("update-verification",l);try{let E=await as(n,l,i,u);if(!xe(f)||!W(S.value,l))return Hn("update-verification",l);if(!E.ok)return E;let H=x$1.value!==null;return H&&va(l,i,u),Object.freeze({...E,projectionUpdated:H})}finally{In(f);}}async function ol(a,i){let t=be(a);if(an(t))return et("set-all-muted",t);let l=vn("set-all-muted",t);try{let u=await is(n,t,i);if(!xe(l)||!W(S.value,t))return Hn("set-all-muted",t);if(!u.ok)return u;let f=x$1.value!==null;return f&&Io(t,{allMembersMuted:i}),Object.freeze({...u,projectionUpdated:f})}finally{In(l);}}async function al(a,i){let t=be(a);if(an(t))return et("set-member-private-chat-disabled",t);let l=vn("set-member-private-chat-disabled",t);try{let u=await ss(n,t,i);if(!xe(l)||!W(S.value,t))return Hn("set-member-private-chat-disabled",t);if(!u.ok)return u;let f=x$1.value!==null;return f&&Io(t,{memberPrivateChatDisabled:i}),Object.freeze({...u,projectionUpdated:f})}finally{In(l);}}function il(a,i,t,l,u){return `${l}:${u}:${a.conversationType}:${a.conversationId}:${i}:${t}`}function fo(a,i,t,l){return `${t}:${l}:${a.conversationType}:${a.conversationId}:${i}`}function ir(a,i,t){let l=n.getGeneration(),u=D[a],f=fo(i,a,l,u),E=il(i,a,t,l,u),H=++ae;return ee.set(E,H),Re.set(f,(Re.get(f)??0)+1),Object.freeze({actionEpoch:H,actionKey:E,generation:l,resetEpoch:u,writeKey:f})}function sr(a,i){let t=Re.get(i.writeKey)??0;t<=1?Re.delete(i.writeKey):Re.set(i.writeKey,t-1),ee.get(i.actionKey)===i.actionEpoch&&ee.delete(i.actionKey),ea(a);}function lr(a,i){return !L&&n.getGeneration()===i.generation&&D[a]===i.resetEpoch&&ee.get(i.actionKey)===i.actionEpoch}function cr(a,i){let t=n.getGeneration();return i!==void 0?(Re.get(fo(a,i,t,D[i]))??0)>0:Object.keys(D).some(l=>(Re.get(fo(a,l,t,D[l]))??0)>0)}function sl(a,i){let t=i.trim();t!==""&&Ue.set(a.conversationId,{ownerId:t,expiresAt:Date.now()+3e4});}function ll(a,i){if(i===null||i.isInGroup===false)return Ue.delete(a.conversationId),i;let t=Ue.get(a.conversationId);return t===void 0?i:t.expiresAt<=Date.now()||i.ownerId===t.ownerId?(Ue.delete(a.conversationId),i):Object.freeze({...i,ownerId:t.ownerId})}function Zo(a){W(P.value,a)&&dt(a,{forceRefresh:true,preserveExisting:true}).then(i=>{!i.ok||!W(P.value,a)||ur(a);});}function zt(a){W(P.value,a)&&Gt(a,{forceRefresh:true});}function ea(a){xt(a)||cr(a)||(oe.delete(a.conversationId)&&zt(a),he.delete(a.conversationId)&&Oo(a));}function ur(a){W(P.value,a)&&qa(n,a.conversationId,F.value.map(i=>({userId:i.userId,nickName:i.nickname,...i.joinType===void 0?{}:{joinType:i.joinType}})));}async function cl(a,i){let t=be(a),l=JSON.stringify([...new Set(i.map(f=>f.trim()).filter(Boolean))].sort()),u=ir("invite-members",t,l);try{let f=await vs(n,t,i);if(!lr("invite-members",u))return nt("invite-members",t);if(!f.ok)return f.outcome!=="stale"&&W(P.value,t)&&zt(t),f;if(!W(P.value,t))return nt("invite-members",t);let E=f.memberIds.some(H=>da(t,H));for(let H of f.memberIds)vo(t,H);return Zo(t),Object.freeze({...f,projectionUpdated:E,refreshRequired:!1})}finally{sr(t,u);}}async function ul(a,i){let t=be(a),l=ir("remove-member",t,i.trim());try{let u=await gs(n,t,i);if(!lr("remove-member",l))return nt("remove-member",t);if(!u.ok)return u.outcome!=="stale"&&W(P.value,t)&&zt(t),u;if(!W(P.value,t))return nt("remove-member",t);let f=F.value.some(E=>E.userId===u.memberId);return po(t,u.memberId),Zo(t),Object.freeze({...u,projectionUpdated:f,refreshRequired:!1})}finally{sr(t,l);}}async function dl(a,i){let t=be(a),l=ir("transfer-ownership",t,"group-owner");try{let u=await Is(n,t,i);if(!lr("transfer-ownership",l))return nt("transfer-ownership",t);if(!u.ok)return u.outcome!=="stale"&&W(P.value,t)&&zt(t),u;if(!W(P.value,t))return nt("transfer-ownership",t);sl(t,u.ownerId);let f=g.value,E=f!==null;return f!==null&&(g.value=Object.freeze({...f,ownerId:u.ownerId})),zt(t),Object.freeze({...u,projectionUpdated:E,refreshRequired:!1})}finally{sr(t,l);}}async function fl(a,i={}){let t=be(a),l=ir("leave",t,"membership");try{let u=await hs(n,t,i);if(!u.ok&&!lr("leave",l))return nt("leave",t);if(!u.ok)return u.outcome==="transfer-required"&&W(P.value,t)&&await Gt(t,{forceRefresh:!0}),u;go(t),sa(n,t.conversationId,{clearCachedNames:!0}),Ue.delete(t.conversationId);let f=W(P.value,t)&&(g.value!==null||F.value.length>0);return W(P.value,t)&&(P.value=null,g.value=null,F.value=[],U.value=!1,V.value=!1,ie.value=null),Object.freeze({...u,projectionUpdated:f})}finally{sr(t,l);}}function ml(a,i,t,l,u){return `${l}:${u}:${a.conversationType}:${a.conversationId}:${i}:${t}`}function na$1(a,i,t,l){return `${t}:${l}:${a.conversationType}:${a.conversationId}:${i}`}function lt(a,i,t){let l=n.getGeneration(),u=yn[a],f=ml(i,a,t,l,u),E=na$1(i,a,l,u),H=++Yt;return bn.set(f,H),ln.set(E,(ln.get(E)??0)+1),Object.freeze({actionEpoch:H,actionKey:f,conversation:be(i),writeKey:E,generation:l,resetEpoch:u})}function ct(a){let i=ln.get(a.writeKey)??0;i<=1?ln.delete(a.writeKey):ln.set(a.writeKey,i-1),bn.get(a.actionKey)===a.actionEpoch&&bn.delete(a.actionKey),oa$1(a.conversation);}function ut(a,i){return !L&&n.getGeneration()===i.generation&&yn[a]===i.resetEpoch&&bn.get(i.actionKey)===i.actionEpoch}function dr(a,i){let t=n.getGeneration();return (i===void 0?Object.keys(yn):[i]).some(u=>(ln.get(na$1(a,u,t,yn[u]))??0)>0)}function fr(a,i){let t=i.trim();if(t==="")return;let l=Ro(a,t);return l===void 0?void 0:Object.freeze({userId:t,role:l.role})}function pl(a,i){let t=i.trim();t!==""&&dn.set(a.conversationId,{ownerId:t});}function an(a){let i=dn.get(a.conversationId);return i===void 0?false:i.ownerId!==n.getCredentials().userId}function ta(a,i){if(i===null)return dn.delete(a.conversationId),null;let t=dn.get(a.conversationId);return t===void 0?i:i.ownerId===t.ownerId&&i.role!=="owner"||i.ownerId!==n.getCredentials().userId&&i.role!=="owner"?(dn.delete(a.conversationId),i):Object.freeze({...i,ownerId:t.ownerId,role:"member",permissions:Object.freeze({sendMessages:i.permissions.sendMessages}),canViewMembers:i.memberPrivateChatDisabled===false})}function vl(a){return !W(S.value,a)||x$1.value===null?false:(x$1.value=ta(a,x$1.value),true)}function gl(a){W(y$1.value,a)&&ko(a,{preserveExisting:true});}function At(a){W(S.value,a)&&Dt(a,{forceRefresh:true});}function mr(a){At(a),gl(a);}function Il(a,i,t,l){let u=Cn.get(a.conversationId)??{allTargets:false,affectsMentions:false,resolvesProfiles:false,userIds:new Set},f=l.map(E=>E.trim()).filter(Boolean);f.length===0&&(u.allTargets=true);for(let E of f)u.userIds.add(E);u.affectsMentions||=i,u.resolvesProfiles||=t,Cn.set(a.conversationId,u);}function ra$1(a,i){let t=Cn.get(a.conversationId);if(!(t===void 0||t.allTargets)){for(let l of i)t.userIds.delete(l.trim());t.userIds.size===0&&Cn.delete(a.conversationId);}}function oa$1(a){if(on(a)||dr(a))return;Sn.delete(a.conversationId)&&ba(a);let i=Cn.get(a.conversationId);if(i===void 0)return;Cn.delete(a.conversationId);let t=i.allTargets?void 0:[...i.userIds];i.affectsMentions?wn(a,t):it(a,t),i.resolvesProfiles&&t!==void 0&&t.length>0&&at(a,t,{forceRefresh:true}),gr(a);}function hl(a,i){let t=n.getChannelMemberProfiles(),l=t[a.conversationId];if(l===void 0||l[i]===void 0)return false;let u={...l};return delete u[i],n.setChannelMemberProfiles({...t,[a.conversationId]:u}),true}function aa(a){let i=n.getChannelMemberProfiles();if(i[a.conversationId]===void 0)return false;let t={...i};return delete t[a.conversationId],n.setChannelMemberProfiles(t),true}async function yl(a,i){let t=be(a);if(an(t))return Jt("invite-members",t);let l=JSON.stringify([...new Set(i.map(f=>f.trim()).filter(Boolean))].sort()),u=lt("invite-members",t,l);try{let f=await Vi(n,t,i);if(!ut("invite-members",u))return hn("invite-members",t);if(!f.ok)return f.outcome!=="stale"&&At(t),f;if(!W(S.value,t))return hn("invite-members",t);let E=f.memberIds.some(H=>Co(t,H));for(let H of f.memberIds)bo(t,H);return wn(t,f.memberIds),ra$1(t,f.memberIds),mr(t),Object.freeze({...f,projectionUpdated:E,refreshRequired:!1})}finally{ct(u);}}async function bl(a,i){let t=be(a);if(an(t))return Jt("remove-member",t);let l=fr(t,i),u=lt("remove-member",t,i.trim());try{let f=await $i(n,t,l??{userId:i,role:"unknown"});if(!ut("remove-member",u))return hn("remove-member",t);if(!f.ok)return f.outcome!=="stale"&&At(t),f;if(!W(S.value,t))return hn("remove-member",t);let E=hl(t,f.memberId),H=R.value.some($=>$.userId===f.memberId)||Ce.value.some($=>$.userId===f.memberId)||E;return yo(t,f.memberId),wn(t,[f.memberId]),ra$1(t,[f.memberId]),mr(t),Object.freeze({...f,projectionUpdated:H,refreshRequired:!1})}finally{ct(u);}}async function Cl(a,i,t){let l=be(a),u=fr(l,i),f=t?"add-admin":"remove-admin";if(an(l))return Jt(f,l);let E=lt(f,l,i.trim());try{let H=t?await Wi(n,l,u??{userId:i,role:"unknown"}):await Qi(n,l,u??{userId:i,role:"unknown"});if(!ut(f,E))return hn(f,l);if(!H.ok)return H.outcome!=="stale"&&At(l),H;if(!W(S.value,l))return hn(f,l);let $=t?"admin":"member",Me=u?.role!==$;return Un(l,H.memberId,$),mr(l),Object.freeze({...H,projectionUpdated:Me,refreshRequired:!1})}finally{ct(E);}}async function Rl(a,i){let t=be(a);if(an(t))return Jt("transfer-ownership",t);let l=fr(t,i),u=lt("transfer-ownership",t,"channel-owner");try{let f=await Ji(n,t,l??{userId:i,role:"unknown"});if(!ut("transfer-ownership",u))return hn("transfer-ownership",t);if(!f.ok)return f.outcome!=="stale"&&At(t),f;if(!W(S.value,t))return hn("transfer-ownership",t);pl(t,f.ownerId);let E=vl(t);return Un(t,f.ownerId,"owner"),Un(t,n.getCredentials().userId,"member"),mr(t),Object.freeze({...f,projectionUpdated:E,refreshRequired:!1})}finally{ct(u);}}async function Pl(a,i={}){let t=be(a),l=i.newOwnerId===void 0?void 0:fr(t,i.newOwnerId)??{userId:i.newOwnerId,role:"unknown"},u=lt("leave",t,"membership");try{let f=await Xi(n,t,l);if(!f.ok&&!ut("leave",u))return hn("leave",t);if(!f.ok)return f;let E=W(S.value,t)&&(x$1.value!==null||R.value.length>0||Ce.value.length>0);return pr(t),dn.delete(t.conversationId),aa(t),W(S.value,t)&&Ir(),Object.freeze({...f,projectionUpdated:E})}finally{ct(u);}}async function kl(a){let i=be(a);if(an(i))return Jt("dismiss",i);let t=lt("dismiss",i,"membership");try{let l=await Yi(n,i);if(!l.ok&&!ut("dismiss",t))return hn("dismiss",i);if(!l.ok)return l;let u=W(S.value,i)&&(x$1.value!==null||R.value.length>0||Ce.value.length>0);return pr(i),dn.delete(i.conversationId),aa(i),W(S.value,i)&&Ir(),Object.freeze({...l,projectionUpdated:u})}finally{ct(t);}}async function Gt(a,i={}){let t=be(a),l=++fe,u=ue.group,f=n.getGeneration(),E=!W(P.value,t);P.value=t,E&&(g.value=null,un+=1,F.value=[],V.value=false),U.value=true,ie.value=null;try{let H=i.forceRefresh===!0?null:await Ss(n,t);if(!b(t,f,l,u))return Object.freeze({ok:!1,operation:"group-profile",reason:"stale"});if(H!==null&&(g.value=H),i.restricted===!0)return i.includeMembers===!0&&await dt(t,{restricted:!0,forceRefresh:!0}),b(t,f,l,u)?(U.value=!1,g.value===null?Object.freeze({ok:!1,operation:"group-profile",reason:"not-found"}):Object.freeze({ok:!0,operation:"group-profile"})):Object.freeze({ok:!1,operation:"group-profile",reason:"stale"});let $=await Es(n,t,i.forceRefresh===!0?{forceRefresh:!0}:void 0);if(!b(t,f,l,u))return Object.freeze({ok:!1,operation:"group-profile",reason:"stale"});let Me=ll(t,$);return r.record("debug","pinia","profile","group-profile-membership-resolved",()=>({conversation:t,data:{profileId:Me?.ref.conversationId??null,name:Me?.name??null,isInGroup:Me?.isInGroup??null,verifyWay:Me?.verifyWay??null,memberCount:Me?.memberCount??null,membershipDecision:Me?.isInGroup===!0?"joined":Me?.isInGroup===!1?"not-joined":"unknown"}})),Me===null||Me.isInGroup===!1?(un+=1,F.value=[],V.value=!1,go(t),sa(n,t.conversationId,{clearCachedNames:!0})):i.includeMembers===!0&&await dt(t,{restricted:!1,forceRefresh:!0}),b(t,f,l,u)?(g.value=Me,U.value=!1,Object.freeze(Me===null?{ok:!1,operation:"group-profile",reason:"not-found"}:{ok:!0,operation:"group-profile"})):Object.freeze({ok:!1,operation:"group-profile",reason:"stale"})}catch(H){if(!b(t,f,l,u))return Object.freeze({ok:false,operation:"group-profile",reason:"stale"});let $=Ve(H,"profile.group",t);return i.forceRefresh===true&&(g.value=null,un+=1,F.value=[],V.value=false),ie.value=$,U.value=false,Object.freeze({ok:false,operation:"group-profile",reason:"failed",error:$})}}async function dt(a,i={}){let t=be(a);if(W(P.value,t)||(P.value=t,F.value=[]),W(P.value,t)&&g.value?.ref.conversationId===t.conversationId&&g.value.isInGroup===false)return un+=1,F.value=[],V.value=false,Object.freeze({ok:true,operation:"group-members"});if(F.value.length>0&&i.forceRefresh!==true)return Object.freeze({ok:true,operation:"group-members"});let l=++un,u=n.getGeneration();V.value=true;try{let f=i.preserveExisting===!0?null:await Ts(n,t);if(L||n.getGeneration()!==u||l!==un||!W(P.value,t))return Object.freeze({ok:!1,operation:"group-members",reason:"stale"});let E=f===null?null:Qe(Rn,t.conversationId,f.items);if(E!==null&&(F.value=or(t.conversationId,E),ur(t)),i.restricted===!0||i.forceRefresh!==!0&&E!==null&&E.length>0)return V.value=!1,Object.freeze({ok:!0,operation:"group-members"});let H=await ws(n,t);return L||n.getGeneration()!==u||l!==un||!W(P.value,t)?Object.freeze({ok:!1,operation:"group-members",reason:"stale"}):(H!==null&&(F.value=or(t.conversationId,Qe(Rn,t.conversationId,H),{reconcile:!0}),ur(t)),V.value=!1,Object.freeze({ok:!0,operation:"group-members"}))}catch(f){if(L||n.getGeneration()!==u||l!==un||!W(P.value,t))return Object.freeze({ok:false,operation:"group-members",reason:"stale"});let E=Ve(f,"profile.group-members",t);return ie.value=E,V.value=false,Object.freeze({ok:false,operation:"group-members",reason:"failed",error:E})}}async function Dt(a,i){let t=be(a),l=++fe,u=ue.channel,f=n.getGeneration(),E=!W(S.value,t);S.value=t,E&&(x$1.value=null,Vn(t)),X.value=true,N.value=null;try{let H=await xs(n,t,i);if(!b(t,f,l,u))return Object.freeze({ok:!1,operation:"channel-profile",reason:"stale"});let $=ta(t,H);return x$1.value=$,$!==null&&W(y$1.value,t)&&(R.value=Je(t.conversationId,R.value)),$===null?(pr(t),Vn()):$.canViewMembers!==!0&&Vn(),X.value=!1,Object.freeze($===null?{ok:!1,operation:"channel-profile",reason:"not-found"}:{ok:!0,operation:"channel-profile"})}catch(H){if(!b(t,f,l,u))return Object.freeze({ok:false,operation:"channel-profile",reason:"stale"});let $=Ve(H,"profile.channel",t);return i?.forceRefresh===true&&(x$1.value=null,Vn()),N.value=$,X.value=false,Object.freeze({ok:false,operation:"channel-profile",reason:"failed",error:$})}}async function Ol(a,i={}){let t=a.conversationType==="group"?Object.freeze({conversationType:"group",conversationId:a.conversationId}):Object.freeze({conversationType:"channel",conversationId:a.conversationId}),l=t.conversationType==="group"?"request-group-join":"request-channel-join",u=n.getProductClient();if(u===null)return Object.freeze({ok:false,operation:l,reason:"not-ready"});let f=`${t.conversationType}:${t.conversationId}`,E=++Zt,H=n.getGeneration(),$=ue[t.conversationType];cn.set(f,E);let Me=()=>!L&&n.getGeneration()===H&&ue[t.conversationType]===$&&cn.get(f)===E&&(t.conversationType==="group"?W(P.value,t):W(S.value,t));try{let sn=t.conversationType==="group"?i.inviteCode===void 0?await u.groups.requestJoin(t):await u.groups.joinByInviteCode(t,i.inviteCode):i.inviteCode===void 0?await u.channels.requestJoin(t):await u.channels.joinByInviteCode(t,i.inviteCode);return Me()?(sn.outcome==="joined"&&(t.conversationType==="group"?await Gt(t,{forceRefresh:!0}):await Dt(t,{forceRefresh:!0})),Me()?Object.freeze({ok:!0,operation:l,outcome:sn.outcome}):Object.freeze({ok:!1,operation:l,reason:"stale"})):Object.freeze({ok:!1,operation:l,reason:"stale"})}catch(sn){return Me()?Object.freeze({ok:false,operation:l,reason:"failed",error:Ve(sn,l,t)}):Object.freeze({ok:false,operation:l,reason:"stale"})}finally{cn.get(f)===E&&cn.delete(f);}}async function ia(a,i,t){let l=se[a];if(l.loading&&!t)return Object.freeze({ok:false,operation:"directory",reason:"busy"});if(i&&l.exhausted)return Object.freeze({ok:false,operation:"directory",reason:"exhausted"});if(!i&&l.loaded&&!t)return Object.freeze({ok:true,operation:"directory"});let u=i?Nn.get(a):void 0;if(i&&u===void 0)return Object.freeze({ok:false,operation:"directory",reason:"exhausted"});let f=++rt[a],E=n.getGeneration();l.loading=true,l.error=null;try{let H=await zs(n,a,u);return L||E!==n.getGeneration()||f!==rt[a]?Object.freeze({ok:!1,operation:"directory",reason:"stale"}):(l.items=Hs(i?l.items:[],H.items),l.loaded=!0,l.exhausted=H.exhausted,l.loading=!1,H.nextPageToken===void 0?Nn.delete(a):Nn.set(a,H.nextPageToken),Object.freeze({ok:!0,operation:"directory"}))}catch(H){if(L||E!==n.getGeneration()||f!==rt[a])return Object.freeze({ok:false,operation:"directory",reason:"stale"});let $=Ve(H,`directory.${a}`);return l.error=$,l.loading=false,Object.freeze({ok:false,operation:"directory",reason:"failed",error:$})}}function Ml(a,i=false){return ia(a,i,false)}function Sl(a){return ia(a,false,true)}function sa$1(){Pn!==void 0&&(clearTimeout(Pn),Pn=void 0),jn?.resolve(Object.freeze({ok:false,operation:"directory-search",reason:"stale"})),jn=void 0;}async function El(a,i){let t=n.getGeneration();try{let l=await As(n,a);return L||t!==n.getGeneration()||i!==Ln?Object.freeze({ok:!1,operation:"directory-search",reason:"stale"}):(M.value=l,T.value=!1,Object.freeze({ok:!0,operation:"directory-search"}))}catch(l){if(L||t!==n.getGeneration()||i!==Ln)return Object.freeze({ok:false,operation:"directory-search",reason:"stale"});let u=Ve(l,"directory.search");return C.value=u,T.value=false,Object.freeze({ok:false,operation:"directory-search",reason:"failed",error:u})}}function mo(){Ln+=1,sa$1(),ne.value="",M.value=null,T.value=false,C.value=null,Tn=void 0;}function jl(a,i={}){let t=a.trim();if(t==="")return mo(),Promise.resolve(Object.freeze({ok:false,operation:"directory-search",reason:"not-ready"}));if(!i.immediate&&jn?.keyword===t)return jn.promise;if(Tn?.keyword===t)return Tn.promise;if(!i.immediate&&ne.value===t&&M.value?.keyword===t.toLocaleLowerCase()&&C.value===null)return Promise.resolve(Object.freeze({ok:true,operation:"directory-search"}));let l=++Ln;sa$1(),ne.value=t,M.value=null,T.value=true,C.value=null;let u=()=>{let H=El(t,l);return Tn={keyword:t,promise:H},H.finally(()=>{Tn?.promise===H&&(Tn=void 0);}),H};if(i.immediate)return u();let f,E=new Promise(H=>{f=H;});return jn={keyword:t,promise:E,resolve:f},Pn=setTimeout(()=>{Pn=void 0,jn=void 0,u().then(f);},300),E}function la$1(a,i){let t=a.map(u=>u.userId),l=new Map(a.map(u=>[u.userId,u]));for(let u of i)l.has(u.userId)||t.push(u.userId),l.set(u.userId,u);return Object.freeze(t.map(u=>l.get(u)))}function Tl(a,i){!W(P.value,a)||g.value===null||(g.value=Object.freeze({...g.value,name:i}));}function wl(a,i){!W(P.value,a)||g.value===null||(g.value=Object.freeze({...g.value,avatar:i}));}function xl(a,i,t){if(!W(P.value,a)||g.value===null)return;let{inviteCode:l,...u}=g.value;g.value=Object.freeze({...u,verifyWay:i,...t===void 0?{}:{inviteCode:t}});}function ca(a,i,t){let l=i.trim();if(l==="")return;let u=t.trim(),f=$e.get(a.conversationId)??new Map;f.set(l,u),$e.set(a.conversationId,f),W(P.value,a)&&(F.value=Object.freeze(F.value.map(E=>E.userId===l?Object.freeze({...E,nickname:u}):E)));}function ua(a,i){Tt(a.conversationId,i);}function po(a,i){let t=i.trim();if(t===""||(Tt(a.conversationId,t),tr(Rn,a.conversationId,t),!W(P.value,a)))return;let l=F.value.filter(f=>f.userId!==t),u=l.length!==F.value.length;u&&(F.value=Object.freeze(l),ur(a)),u&&g.value!==null&&g.value.memberCount!==void 0&&(g.value=Object.freeze({...g.value,memberCount:Math.max(0,g.value.memberCount-1)}));}function vo(a,i){Tt(a.conversationId,i),rr(Rn,a.conversationId,i);}function da(a,i){return jt(Rn,a.conversationId,i)}function go(a){Rn.delete(a.conversationId),$e.delete(a.conversationId);}function fa(a,i){!W(S.value,a)||x$1.value===null||(x$1.value=Object.freeze({...x$1.value,name:i}));}function ma(a,i){!W(S.value,a)||x$1.value===null||(x$1.value=Object.freeze({...x$1.value,description:i}));}function pa$1(a,i){!W(S.value,a)||x$1.value===null||(x$1.value=Object.freeze({...x$1.value,avatar:i}));}function va(a,i,t){if(!W(S.value,a)||x$1.value===null)return;let{inviteCode:l,...u}=x$1.value;x$1.value=Object.freeze({...u,verifyType:i,...t===void 0?{}:{inviteCode:t}});}function Io(a,i){if(!W(S.value,a)||x$1.value===null)return;let t={...x$1.value,...i.allMembersMuted===void 0?{}:{allMembersMuted:i.allMembersMuted},...i.memberPrivateChatDisabled===void 0?{}:{memberPrivateChatDisabled:i.memberPrivateChatDisabled}};x$1.value=Object.freeze({...t,canViewMembers:t.permissions.manageMembers===true||t.memberPrivateChatDisabled===false});}function ho(a,i,t,l){let u=i.trim();if(u==="")return;let f=t.trim(),E=f||l?.trim()||u,H=qe.get(a.conversationId)??new Map;H.set(u,{nickname:f,displayName:E}),qe.set(a.conversationId,H),En.value+=1,W(y$1.value,a)&&(R.value=Je(a.conversationId,R.value)),qn(a,u)&&(K.value=Je(a.conversationId,K.value===null?[]:[K.value])[0]??null),W(ce.value,a)&&(Ce.value=Object.freeze(Ce.value.map($=>$.userId===u?Object.freeze({...$,displayName:E}):$)));}function Un(a,i,t){let l=i.trim();if(l==="")return;let u=fn.get(a.conversationId)??new Map;u.set(l,t),fn.set(a.conversationId,u),W(y$1.value,a)&&(R.value=Je(a.conversationId,R.value)),qn(a,l)&&(K.value=Je(a.conversationId,K.value===null?[]:[K.value])[0]??null);}function ga(a,i){d(a.conversationId,i);}function zl(a,i){return En.value,qe.get(a.conversationId)?.get(i.trim())?.nickname}function yo(a,i){let t=i.trim();if(t==="")return;let l=W(y$1.value,a),u=W(ce.value,a);if(d(a.conversationId,t),v(a.conversationId,t),tr(Ae,a.conversationId,t),!l&&!u)return;let f=l&&R.value.some(H=>H.userId===t),E=u&&Ce.value.some(H=>H.userId===t);l&&(R.value=Object.freeze(R.value.filter(H=>H.userId!==t))),u&&(Ce.value=Object.freeze(Ce.value.filter(H=>H.userId!==t))),qn(a,t)&&(K.value=null),(f||E)&&W(S.value,a)&&x$1.value?.memberCount!==void 0&&(x$1.value=Object.freeze({...x$1.value,memberCount:Math.max(0,x$1.value.memberCount-1)}));}function bo(a,i){d(a.conversationId,i),v(a.conversationId,i),rr(Ae,a.conversationId,i);}function Co(a,i){return jt(Ae,a.conversationId,i)}function pr(a){Ae.delete(a.conversationId),fn.delete(a.conversationId),qe.delete(a.conversationId)&&(En.value+=1);}function On(a,i,t){return !L&&n.getGeneration()===i&&kn===t&&W(y$1.value,a)}function qn(a,i,t,l){let u=ge.value;return !L&&(t===void 0||n.getGeneration()===t)&&(l===void 0||tt===l)&&u!==null&&W(u,a)&&u.userId===i}function Ro(a,i){let t=i.trim();if(t!==""){if(W(y$1.value,a)){let l=R.value.find(u=>u.userId===t);if(l!==void 0)return l}return qn(a,t)?K.value??void 0:void 0}}async function Al(a,i,t={forceRefresh:true}){let l=be(a),u=i.trim();if(u==="")return Object.freeze({ok:false,operation:"channel-member",reason:"not-found"});let f=++tt,E=n.getGeneration();ge.value=Object.freeze({...l,userId:u}),K.value=null,Q.value=true,Ie.value=null;try{let H=await Ds(n,l,u,{forceRefresh:t.forceRefresh!==!1});return qn(l,u,E,f)?H===null||Co(l,u)?Object.freeze({ok:!1,operation:"channel-member",reason:"not-found"}):(K.value=Je(l.conversationId,[H])[0]??null,Object.freeze({ok:!0,operation:"channel-member"})):Object.freeze({ok:!1,operation:"channel-member",reason:"stale"})}catch(H){if(!qn(l,u,E,f))return Object.freeze({ok:false,operation:"channel-member",reason:"stale"});let $=Ve(H,"profile.channel-member",l);return Ie.value=$,Object.freeze({ok:false,operation:"channel-member",reason:"failed",error:$})}finally{qn(l,u,E,f)&&(Q.value=false);}}async function Po(a,i,t){J.value=true,ye.value=null;try{let l=await _s(n,a,j.value);return On(a,i,t)?(ar(a.conversationId,l.items),p(a.conversationId,l.items),R.value=Je(a.conversationId,Qe(Ae,a.conversationId,l.items)),nn=l.nextCursor,le.value=l.exhausted||l.nextCursor===void 0,gn=void 0,J.value=!1,Object.freeze({ok:!0,operation:"channel-members"})):Object.freeze({ok:!1,operation:"channel-members",reason:"stale"})}catch(l){if(!On(a,i,t))return Object.freeze({ok:false,operation:"channel-members",reason:"stale"});let u=Ve(l,"profile.channel-members.refresh",a);return gn="initial",ye.value=u,J.value=false,Object.freeze({ok:false,operation:"channel-members",reason:"failed",error:u})}}async function Ia(a){if(J.value)return Object.freeze({ok:false,operation:"channel-members",reason:"busy"});let i=be(a),t=kn,l=n.getGeneration();J.value=true,ye.value=null;try{let u=await Wo(n,i,j.value);return On(i,l,t)?(u!==null&&(R.value=Je(i.conversationId,Qe(Ae,i.conversationId,u.items)),nn=u.nextCursor,le.value=u.exhausted||u.nextCursor===void 0),await Po(i,l,t)):Object.freeze({ok:!1,operation:"channel-members",reason:"stale"})}catch(u){if(!On(i,l,t))return Object.freeze({ok:false,operation:"channel-members",reason:"stale"});let f=Ve(u,"profile.channel-members.cache",i);return gn="initial",ye.value=f,J.value=false,Object.freeze({ok:false,operation:"channel-members",reason:"failed",error:f})}}async function ha(a){if(J.value)return Object.freeze({ok:false,operation:"channel-members",reason:"busy"});if(le.value||nn===void 0)return Object.freeze({ok:false,operation:"channel-members",reason:"exhausted"});let i=be(a),t=kn,l=n.getGeneration();J.value=true,ye.value=null;try{let u=await Gs(n,i,{query:j.value,cursor:nn});return On(i,l,t)?(ar(i.conversationId,u.items),p(i.conversationId,u.items),R.value=Je(i.conversationId,Qe(Ae,i.conversationId,la$1(R.value,u.items))),nn=u.nextCursor,le.value=u.exhausted||u.nextCursor===void 0,gn=void 0,J.value=!1,Object.freeze({ok:!0,operation:"channel-members"})):Object.freeze({ok:!1,operation:"channel-members",reason:"stale"})}catch(u){if(!On(i,l,t))return Object.freeze({ok:false,operation:"channel-members",reason:"stale"});let f=Ve(u,"profile.channel-members.page",i);return gn="more",ye.value=f,J.value=false,Object.freeze({ok:false,operation:"channel-members",reason:"failed",error:f})}}function Vn(a=null){tn!==void 0&&(clearTimeout(tn),tn=void 0),kn+=1,y$1.value=a===null?null:be(a),R.value=[],j.value="",J.value=false,le.value=false,ye.value=null,nn=void 0,gn=void 0;}function ko(a,i={}){let t=be(a);if(i.preserveExisting===true&&W(y$1.value,t)){tn!==void 0&&(clearTimeout(tn),tn=void 0);let l=++kn,u=n.getGeneration();return ye.value=null,Po(t,u,l)}return Vn(t),Ia(t)}function Gl(a){let i=y$1.value;if(i===null)return;j.value=a,kn+=1,R.value=[],le.value=false,ye.value=null,nn=void 0,J.value=false,tn!==void 0&&clearTimeout(tn);let t=kn,l=n.getGeneration();(async()=>{try{let u=await Wo(n,i,j.value);if(!On(i,l,t))return;u!==null&&(R.value=Je(i.conversationId,Qe(Ae,i.conversationId,u.items)),nn=u.nextCursor,le.value=u.exhausted||u.nextCursor===void 0);}catch(u){if(!On(i,l,t))return;ye.value=Ve(u,"profile.channel-members.cache",i);}On(i,l,t)&&(tn=setTimeout(()=>{tn=void 0,Po(i,l,t);},300));})();}function Dl(){let a=y$1.value;return a===null?Promise.resolve(Object.freeze({ok:false,operation:"channel-members",reason:"not-ready"})):ha(a)}function _l(){let a=y$1.value;return a===null||gn===void 0?Promise.resolve(Object.freeze({ok:false,operation:"channel-members",reason:"not-ready"})):gn==="more"?ha(a):Ia(a)}function Dn(a,i,t){return !L&&n.getGeneration()===i&&mn===t&&W(ce.value,a)}async function _t(a,i={}){if(Se.value)return Object.freeze({ok:false,operation:"channel-mentions",reason:"busy"});let t=be(a),l=mn,u=n.getGeneration();Se.value=true,_.value=null;try{let f=i.useCache===!1?null:await Jo(n,t,ke.value||void 0);if(!Dn(t,u,l))return Object.freeze({ok:!1,operation:"channel-mentions",reason:"stale"});f!==null&&(Ce.value=st(t.conversationId,Qe(Ae,t.conversationId,f.items)),pn=f.nextPageToken,je.value=f.exhausted||f.nextPageToken===void 0);let E=await Fs(n,t,ke.value||void 0);return Dn(t,u,l)?(Ce.value=st(t.conversationId,Qe(Ae,t.conversationId,E.items)),pn=E.nextPageToken,je.value=E.exhausted||E.nextPageToken===void 0,We=void 0,Se.value=!1,Object.freeze({ok:!0,operation:"channel-mentions"})):Object.freeze({ok:!1,operation:"channel-mentions",reason:"stale"})}catch(f){if(!Dn(t,u,l))return Object.freeze({ok:false,operation:"channel-mentions",reason:"stale"});let E=Ve(f,"profile.channel-mentions",t);return We="initial",_.value=E,Se.value=false,Object.freeze({ok:false,operation:"channel-mentions",reason:"failed",error:E})}}async function ya(){let a=ce.value,i=pn;if(a===null)return Object.freeze({ok:false,operation:"channel-mentions",reason:"not-ready"});if(Se.value)return Object.freeze({ok:false,operation:"channel-mentions",reason:"busy"});if(je.value||i===void 0)return Object.freeze({ok:false,operation:"channel-mentions",reason:"exhausted"});let t=mn,l=n.getGeneration();Se.value=true,_.value=null;try{let u=await Ks(n,ke.value,i);return Dn(a,l,t)?(Ce.value=st(a.conversationId,Qe(Ae,a.conversationId,la$1(Ce.value,u.items))),pn=u.nextPageToken,je.value=u.exhausted||u.nextPageToken===void 0,We=void 0,Se.value=!1,Object.freeze({ok:!0,operation:"channel-mentions"})):Object.freeze({ok:!1,operation:"channel-mentions",reason:"stale"})}catch(u){if(!Dn(a,l,t))return Object.freeze({ok:false,operation:"channel-mentions",reason:"stale"});let f=Ve(u,"profile.channel-mentions.page",a);return We="more",_.value=f,Se.value=false,Object.freeze({ok:false,operation:"channel-mentions",reason:"failed",error:f})}}function vr(a=null,i=""){Be!==void 0&&(clearTimeout(Be),Be=void 0),mn+=1,ce.value=a===null?null:be(a),Ce.value=[],ke.value=i,Se.value=false,je.value=false,_.value=null,pn=void 0,We=void 0;}function Fl(a,i=""){return W(ce.value,a)&&ke.value===i?(Be!==void 0&&(clearTimeout(Be),Be=void 0),mn+=1,Se.value=false,_.value=null,pn=void 0,We=void 0,_t(a,{useCache:false})):(vr(a,i),_t(a))}function Kl(a){let i=ce.value;if(i===null)return;vr(i,a);let t=mn,l=n.getGeneration();(async()=>{try{let u=await Jo(n,i,a||void 0);if(!Dn(i,l,t))return;u!==null&&(Ce.value=st(i.conversationId,Qe(Ae,i.conversationId,u.items)),pn=u.nextPageToken,je.value=u.exhausted||u.nextPageToken===void 0);}catch(u){if(!Dn(i,l,t))return;_.value=Ve(u,"profile.channel-mentions.cache",i);}Dn(i,l,t)&&(Be=setTimeout(()=>{Be=void 0,_t(i);},300));})();}function Hl(){let a=ce.value;return a===null?Promise.resolve(Object.freeze({ok:false,operation:"channel-mentions",reason:"not-ready"})):(Be!==void 0&&(clearTimeout(Be),Be=void 0),mn+=1,Se.value=false,_.value=null,pn=void 0,je.value=false,We=void 0,_t(a,{useCache:false}))}function Nl(){let a=ce.value;return a===null||We===void 0?Promise.resolve(Object.freeze({ok:false,operation:"channel-mentions",reason:"not-ready"})):We==="more"?ya():_t(a)}function Oo(a){W(P.value,a)&&(ot(a,{forceRefresh:true}),dt(a,{forceRefresh:true,preserveExisting:true}));}function gr(a){W(y$1.value,a)&&ko(a,{preserveExisting:true});}async function ba(a){if(!W(S.value,a))return;(await Dt(a,{forceRefresh:true})).ok&&x$1.value?.canViewMembers===true&&gr(a);}function Ll(a){if(a.type==="profile:updated"){if(a.profileType==="user")nr(a.id,{forceRefresh:true}),c.value?.conversationId===a.id&&k({conversationType:"direct",conversationId:a.id},{forceRefresh:true});else {let $={conversationType:"group",conversationId:a.id};if(xt($)||cr($)){oe.add($.conversationId);return}W(P.value,$)?Gt($,{includeMembers:true,forceRefresh:true}):ot($,{forceRefresh:true});}return}if(a.type==="channel-profile:updated"){let $={conversationType:"channel",conversationId:a.channelId};on($)||dr($)?Sn.add($.conversationId):ba($);return}if(a.type==="sync:complete"){for(let $ of a.conversations)if($.conversationType==="group"){let Me={conversationType:"group",conversationId:$.conversationId};W(P.value,Me)&&Oo(Me);}else if($.conversationType==="channel"){let Me={conversationType:"channel",conversationId:$.conversationId};(W(S.value,Me)||W(y$1.value,Me)||W(ce.value,Me))&&(wn(Me),gr(Me));}return}if(a.type!=="message:received"&&a.type!=="message:updated")return;let i=a.message,t=i.body.system?.eventType;if(t===void 0)return;let l=i.body.system?.targetUserIds??[],u=n.getCredentials().userId;if(i.conversationType==="group"&&Au.has(t)){let $={conversationType:"group",conversationId:i.conversationId},Me=(a.source??"live")==="live",sn=t==="group_member_renamed"&&l.some(_n=>_n.trim()===u)&&xt($,"set-my-nickname"),$l=t==="group_member_renamed"&&!sn;if(t==="group_member_renamed"){sn||pa(n,i);for(let _n of l)sn&&_n.trim()===u||ua($,_n);}if(t==="group_member_joined"||t==="group_member_invited")for(let _n of l)vo($,_n);if(Me&&(t==="group_member_left"||t==="group_member_removed"))for(let _n of l)po($,_n);if(cr($)){he.add($.conversationId);return}Me&&!sn&&($l?W(P.value,$)&&dt($,{forceRefresh:true,preserveExisting:true}):Oo($));return}let f=(a.source??"live")==="live"||a.channelLifecycleEffects===true;if(i.conversationType!=="channel"||!Gu.has(t)||!f)return;let E={conversationType:"channel",conversationId:i.conversationId};if(!(t==="channel_member_renamed"&&l.some($=>on(E,$.trim()===u?"set-my-nickname":"set-member-nickname",$)))){if(t==="channel_member_renamed")for(let $ of l)ga(E,$);if(t==="channel_admin_added"||t==="channel_admin_removed"){let $=t==="channel_admin_added"?"admin":"member";for(let Me of l)Un(E,Me,$);}if(t==="channel_owner_transferred"){for(let Me of l)Un(E,Me,"owner");let $=i.body.system?.operatorId;$!==void 0&&!l.includes($)&&Un(E,$,"member");}if(t==="channel_member_joined"||t==="channel_member_invited")for(let $ of l)bo(E,$);if(t==="channel_member_left"||t==="channel_member_removed")for(let $ of l)yo(E,$);if(dr(E)){Il(E,Ns.has(t),t!=="channel_member_left"&&t!=="channel_member_removed"&&l.length>0,l);return}Ns.has(t)?wn(E,l):it(E,l),t!=="channel_member_left"&&t!=="channel_member_removed"&&l.length>0&&at(E,l,{forceRefresh:true}),gr(E);}}let Ul=n.subscribeProfileChange(()=>{o.value+=1;}),ql=n.subscribeEvents(Ll);function Ca(){O["set-remark"]+=1,O.block+=1,O.report+=1,O["delete-friendship"]+=1,ue.direct+=1,c.value=null,m.value=null,I.value="unknown",z$1.value=false,A$1.value=null,De+=1,G.value=[],q.value=false,B.value=null;}function Ra(){for(let a of Object.keys(h))h[a]+=1;for(let a of Object.keys(D))D[a]+=1;re.clear(),Re.clear(),ee.clear(),oe.clear(),he.clear(),ue.group+=1,un+=1,P.value=null,g.value=null,F.value=[],U.value=false,V.value=false,ie.value=null;}function Ir(){for(let a of Object.keys(yn))yn[a]+=1;ln.clear(),bn.clear(),Ke.clear(),we.clear(),Sn.clear(),Cn.clear(),ue.channel+=1,S.value=null,x$1.value=null,X.value=false,N.value=null,tt+=1,ge.value=null,K.value=null,Q.value=false,Ie.value=null,Vn(),vr();}function Pa(){Ca(),O["search-user"]+=1,O["resolve-application-target"]+=1,O["request-friendship"]+=1,Ra(),Ir(),cn.clear();for(let a of ["individual","group","channel"])rt[a]+=1,Object.assign(se[a],Br());Nn.clear(),mo(),Rn.clear(),Ue.clear(),Ae.clear(),dn.clear(),$e.clear(),fn.clear(),de.clear(),s.value={},qe.size>0&&(qe.clear(),En.value+=1);}function Vl(){L||(Pa(),L=true,re.clear(),Re.clear(),ee.clear(),Ke.clear(),we.clear(),ln.clear(),bn.clear(),Ul(),ql(),r.record("debug","pinia","profile","profile-directory-disposed"));}return {profileRevision:o,directRef:c,directProfile:m,directRelationship:I,directLoading:z$1,directError:A$1,directMutualGroups:G,directMutualGroupsLoading:q,directMutualGroupsError:B,groupRef:P,groupProfile:g,groupMembers:F,groupLoading:U,groupMembersLoading:V,groupError:ie,channelRef:S,channelProfile:x$1,channelLoading:X,channelError:N,directories:se,directorySearchKeyword:ne,directorySearchResult:M,directorySearchLoading:T,directorySearchError:C,channelMembersRef:y$1,channelMembers:R,channelMemberQuery:j,channelMembersLoading:J,channelMembersExhausted:le,channelMembersError:ye,channelMemberDetailRef:ge,channelMemberDetail:K,channelMemberDetailLoading:Q,channelMemberDetailError:Ie,channelMentionsRef:ce,channelMentions:Ce,channelMentionQuery:ke,channelMentionsLoading:Se,channelMentionsExhausted:je,channelMentionsError:_,resolveDisplayName:lo,resolveAvatarUrl:er,resolvePublicNickname:co,resolveSenderProfile:nr,resolveGroupMemberProfiles:ot,resolveChannelMemberProfiles:at,invalidateChannelMemberProfiles:it,invalidateChannelMemberSet:wn,channelMentionRevision:so,loadDirect:k,resolveProfileAccess:w$1,loadDirectMutualGroups:Z,setDirectContactRemark:me,blockDirectContact:pe,reportDirectContact:ze,deleteDirectFriendship:_e,searchDirectContact:Ee,resolveDirectContactTarget:He,requestDirectFriendship:Xe,loadGroup:Gt,updateGroupName:Te,updateGroupAvatar:Ye,setMyGroupNickname:An,updateGroupVerification:Gn,isGroupProfileWritePending:xt,inviteGroupMembers:cl,removeGroupMember:ul,transferGroupOwnership:dl,leaveGroup:fl,isGroupMemberManagementPending:cr,ensureGroupMembers:dt,loadChannel:Dt,requestMembershipJoin:Ol,updateChannelName:Ys,updateChannelDescription:Zs,updateChannelAvatar:el,setMyChannelNickname:nl,setChannelMemberNickname:tl,updateChannelVerification:rl,setChannelAllMuted:ol,setChannelMemberPrivateChatDisabled:al,isChannelProfileWritePending:on,inviteChannelMembers:yl,removeChannelMember:bl,setChannelMemberAdmin:Cl,transferChannelOwnership:Rl,leaveChannel:Pl,dismissChannel:kl,isChannelMemberManagementPending:dr,loadDirectory:Ml,refreshDirectory:Sl,searchDirectory:jl,clearDirectorySearch:mo,openChannelMembers:ko,getChannelMember:Ro,loadChannelMember:Al,setChannelMemberQuery:Gl,loadMoreChannelMembers:Dl,retryChannelMembers:_l,resetChannelMembers:Vn,updateGroupMemberNicknameProjection:ca,clearGroupMemberNicknameProjection:ua,removeGroupMemberProjection:po,restoreGroupMemberProjection:vo,isGroupMemberRemovedProjection:da,clearGroupMemberProjections:go,updateChannelNameProjection:fa,updateChannelDescriptionProjection:ma,updateChannelAvatarProjection:pa$1,updateChannelVerificationProjection:va,updateChannelManagementProjection:Io,updateChannelMemberDisplayNameProjection:ho,updateChannelMemberRoleProjection:Un,clearChannelMemberDisplayNameProjection:ga,channelMemberNicknameProjection:zl,removeChannelMemberProjection:yo,restoreChannelMemberProjection:bo,isChannelMemberRemovedProjection:Co,clearChannelMemberProjections:pr,openChannelMentions:Fl,setChannelMentionQuery:Kl,loadMoreChannelMentions:ya,refreshChannelMentions:Hl,retryChannelMentions:Nl,resetChannelMentions:vr,resetDirect:Ca,resetGroup:Ra,resetChannel:Ir,reset:Pa,dispose:Vl}})}var Ls=new WeakMap,Wr=new WeakMap;function Fu(e=Pe()){ve(e);let n=Ls.get(e);n===void 0&&(n=_u(e),Ls.set(e,n));let r=n(e);return Wr.get(e)!==r&&(Wr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),Wr.get(e)===r&&Wr.delete(e);})),r}var Xr=new WeakMap,Uu=Object.freeze({status:"loading",message:null}),Us=Object.freeze({status:"missing",message:null});function Qr(e){return e===null?"":`${e.conversationType}\0${e.conversationId}`}function Xo(e){let n=new Set;for(let r of e){let o=r.trim();o!==""&&n.add(o);}return [...n]}function qu(e){return defineStore("k2-im-quoted-message",()=>{let n=ve(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=shallowRef({}),c=new Set,m=new Set,I=0,z=new Map,A=false,G=false,q=false,B=computed(()=>{let T=new Map;for(let C of o.messages)T.set(C.id,C);return T});function P(){I+=1,c.clear(),z.clear(),m=new Set,q=false,s.value={};}let g=watch(()=>Qr(o.activeRef),(T,C)=>{T!==C&&P();},{flush:"sync"}),F=n.subscribeEvents(T=>{A||T.type!=="connection:changed"||T.state!=="authenticated"||se();});function U(T){let C=T.trim();if(C==="")return Us;let y=B.value.get(C);return y!==void 0?Object.freeze({status:"ready",message:y}):s.value[C]??Uu}function V(T,C){if(T.length===0)return;let y={...s.value},R=false;for(let[j,J]of T)C.get(j)===(z.get(j)??0)&&(y[j]=J,R=true);R&&(s.value=y);}async function ie(T){let C=I,y=new Map(T.map(K=>[K,z.get(K)??0])),R=n.getGeneration(),j=o.getHandle(),J=Qr(o.activeRef);if(j===void 0||Qr(j.ref)!==J)return;let le=()=>!A&&I===C&&n.getGeneration()===R&&o.getHandle()===j&&Qr(o.activeRef)===J,ye=[],ge=[];try{let K=await Promise.all(T.map(async Q=>({messageId:Q,message:await j.resolveMessage(Q)})));if(!le())return;for(let{messageId:Q,message:Ie}of K)Ie===null?ge.push(Q):ye.push([Q,Object.freeze({status:"ready",message:Ie})]);}catch(K){if(!le())return;V(T.map(Q=>[Q,Object.freeze({status:"failed",message:null,retryable:true})]),y),r.record("error","pinia","message","quoted-message-local-lookup-failed",()=>({generation:R,conversation:{...j.ref},data:{requestedCount:T.length},error:{message:"\u8BFB\u53D6\u672C\u673A\u5386\u53F2\u89E3\u6790\u5F15\u7528\u539F\u6587\u5931\u8D25",data:K}}));return}if(V(ye,y),ge.length!==0)try{let K=await j.messages.fetchByIds(ge);if(!le())return;let Q=[];for(let ce of K.messages)Q.push([ce.id,Object.freeze({status:"ready",message:ce})]);for(let ce of K.missingMessageIds)Q.push([ce,Us]);let Ie=K.failure?.retryable??!0;for(let ce of K.unresolvedMessageIds)Q.push([ce,Object.freeze({status:"failed",message:null,retryable:Ie})]);V(Q,y),r.record("debug","pinia","message","quoted-message-remote-lookup-settled",()=>({generation:R,conversation:{...j.ref},data:{requestedCount:ge.length,resolvedCount:K.messages.length,missingCount:K.missingMessageIds.length,unresolvedCount:K.unresolvedMessageIds.length,retryable:K.failure?.retryable}}));}catch(K){if(!le())return;V(ge.map(Q=>[Q,Object.freeze({status:"failed",message:null,retryable:false})]),y),r.record("error","pinia","message","quoted-message-remote-lookup-failed",()=>({generation:R,conversation:{...j.ref},data:{requestedCount:ge.length},error:{message:"\u6309\u6D88\u606F ID \u56DE\u6E90\u5F15\u7528\u539F\u6587\u5931\u8D25",data:K}}));}}function S(){let T=[];for(let C of m)B.value.has(C)||c.has(C)||s.value[C]===void 0&&T.push(C);return T}function x(){if(A)return;if(G){q=true;return}let T=S();if(T.length!==0){G=true;for(let C of T)c.add(C);ie(T).catch(C=>{r.record("error","pinia","message","quoted-message-resolve-crashed",()=>({data:{requestedCount:T.length},error:{message:"\u5F15\u7528\u539F\u6587\u89E3\u6790\u6279\u6B21\u5F02\u5E38\u7EC8\u6B62",data:C}}));}).finally(()=>{for(let C of T)c.delete(C);G=false,q&&(q=false,x());});}}function X(T){if(A)return;m=new Set(Xo(T));let C=Object.fromEntries(Object.entries(s.value).filter(([y])=>m.has(y)&&!B.value.has(y)));Object.keys(C).length!==Object.keys(s.value).length&&(s.value=C),x();}function N(T){if(A)return;let C=Xo(T).filter(R=>s.value[R]!==void 0);if(C.length===0)return;let y={...s.value};for(let R of C)delete y[R],c.delete(R),z.set(R,(z.get(R)??0)+1);s.value=y,x();}function se(T){if(A)return;let y=(T===void 0?[...m]:Xo(T)).filter(j=>{let J=s.value[j];return J?.status==="failed"&&J.retryable});if(y.length===0)return;let R={...s.value};for(let j of y)delete R[j],c.delete(j),z.set(j,(z.get(j)??0)+1);s.value=R,x();}function ne(){P();}function M(){A||(A=true,g(),F(),P());}return Xr.set(e,Object.freeze({dispose:M})),{lookup:U,prefetch:X,retry:se,invalidate:N,reset:ne}})}var qs=new WeakMap,Jr=new WeakMap;function Vu(e=Pe()){ve(e);let n=qs.get(e);n===void 0&&(n=qu(e),qs.set(e,n));let r=n(e),o=Xr.get(e);if(o===void 0)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u521B\u5EFA ImQuotedMessageStore");return Jr.get(e)!==r&&(Jr.set(e,r),Oe(e,()=>{o.dispose(),r.$dispose(),Jr.get(e)===r&&(Jr.delete(e),Xr.get(e)===o&&Xr.delete(e));})),r}var eo=new WeakMap;function Yr(e){return e===null?"":`${e.conversationType}\0${e.conversationId}`}function Ju(e){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"&&typeof e.operation=="string"&&typeof e.retryable=="boolean"}function Xu(e,n){return Ju(e)?Object.freeze({code:e.code,category:e.category,operation:e.operation,retryable:e.retryable,...e.conversation===void 0?{}:{conversation:Object.freeze({...e.conversation})}}):Object.freeze({code:"IM_CHAT_KIT_REACTION_OPERATION_FAILED",category:"state",operation:`reaction.${n}`,retryable:false})}function Yu(e){return defineStore("k2-im-reaction",()=>{let n=ve(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=ref([]),c=shallowRef(null),m=false,I=0,z=new Map;function A(){I+=1,z.clear(),s.value=[],c.value=null;}let G=watch(()=>Yr(o.activeRef),(S,x)=>{S!==x&&A();},{flush:"sync"});function q(S,x){let X=o.activeRef,N=o.getHandle(),se=Yr(X);if(m||X===null||N===void 0||Yr(N.ref)!==se||!o.messages.some(M=>M.id===S))return Object.freeze({ok:false,operation:x,reason:"not-ready"});if(z.has(S))return Object.freeze({ok:false,operation:x,reason:"busy"});let ne=Symbol(S);return z.set(S,ne),s.value=Object.freeze([...z.keys()]),{generation:n.getGeneration(),contextEpoch:I,handle:N,conversationKey:se,token:ne}}function B(S){return !m&&S.contextEpoch===I&&S.generation===n.getGeneration()&&o.getHandle()===S.handle&&Yr(o.activeRef)===S.conversationKey}function P(S,x){z.get(S)===x&&(z.delete(S),s.value=Object.freeze([...z.keys()]));}async function g(S,x,X){let N=q(S,x);if(!("handle"in N))return N;try{let se=await X(N.handle);return B(N)?(c.value=null,r.record("debug","pinia","message",`reaction-${x}-settled`,()=>({generation:N.generation,conversation:{...N.handle.ref},messageId:S,result:{ok:!0,action:se.action}})),Object.freeze({ok:!0,operation:x,change:se})):Object.freeze({ok:!1,operation:x,reason:"stale"})}catch(se){if(!B(N))return Object.freeze({ok:false,operation:x,reason:"stale"});let ne=Xu(se,x);return c.value=ne,r.record("error","pinia","message",`reaction-${x}-settled`,()=>({generation:N.generation,conversation:{...N.handle.ref},messageId:S,result:{ok:false,reason:"sdk-rejected",error:ne}})),Object.freeze({ok:false,operation:x,reason:"sdk-rejected",error:ne})}finally{P(S,N.token);}}function F(S,x){return g(S,"toggle",X=>X.messages.toggleReaction(S,x))}function U(S,x,X){return g(S,"set",N=>N.messages.setReaction(S,x,X))}function V(){A();}function ie(){m||(m=true,G(),A());}return eo.set(e,Object.freeze({dispose:ie})),{operatingMessageIds:s,error:c,toggle:F,set:U,reset:V}})}var Vs=new WeakMap,Zr=new WeakMap;function Zu(e=Pe()){ve(e);let n=Vs.get(e);n===void 0&&(n=Yu(e),Vs.set(e,n));let r=n(e),o=eo.get(e);if(o===void 0)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u521B\u5EFA ImReactionStore");return Zr.get(e)!==r&&(Zr.set(e,r),Oe(e,()=>{o.dispose(),r.$dispose(),Zr.get(e)===r&&(Zr.delete(e),eo.get(e)===o&&eo.delete(e));})),r}function no(e,n){let r=e;return Object.freeze({code:typeof r.code=="string"?r.code:"IM_SDK_SESSION_FAVORITE_REQUEST_FAILED",category:r.category??"network",operation:r.operation??n,retryable:r.retryable===true})}function rd(e){let n=Pe(e),r=ve(n).runtime;return defineStore("im-session-favorites",()=>{let o=shallowRef([]),s=ref(false),c=shallowRef(null),m=computed(()=>{let ne=new Map;for(let M of o.value)M.msgId!==""&&M.collectId!==""&&ne.set(M.msgId,M.collectId);return ne}),I=false,z=0,A=0,G,q;function B(){z+=1,A+=1,o.value=[],s.value=false,c.value=null;}function P(ne){return {client:ne,generation:r.getGeneration(),stateEpoch:z}}function g(ne){return !I&&ne.client===r.getProductClient()&&ne.generation===r.getGeneration()&&ne.stateEpoch===z}function F(ne){return m.value.get(ne.trim())??""}function U(ne){return F(ne)!==""}async function V(){if(I)return Object.freeze({ok:false,operation:"reload",reason:"stale"});let ne=++A,M;try{M=P(r.ensureProductClient()),se(M.client);}catch(T){let C=no(T,"reload");return c.value=C,s.value=false,Object.freeze({ok:false,operation:"reload",reason:"failed",error:C})}s.value=true,c.value=null;try{let T=await M.client.sessionFavorites.list();return ne!==A||!g(M)?Object.freeze({ok:!1,operation:"reload",reason:"stale"}):(o.value=T,Object.freeze({ok:!0,operation:"reload"}))}catch(T){if(ne!==A||!g(M))return Object.freeze({ok:false,operation:"reload",reason:"stale"});let C=no(T,"reload");return c.value=C,Object.freeze({ok:false,operation:"reload",reason:"failed",error:C})}finally{ne===A&&g(M)&&(s.value=false);}}function ie(){A+=1,s.value=false;}async function S(ne){if(I)return Object.freeze({ok:false,operation:"add",reason:"stale"});let M;try{M=P(r.ensureProductClient()),se(M.client);let T=await M.client.sessionFavorites.addFromMessage(ne);return g(M)?(ie(),o.value=Object.freeze([T,...o.value.filter(C=>C.collectId!==T.collectId)]),Object.freeze({ok:!0,operation:"add",collectId:T.collectId})):Object.freeze({ok:!1,operation:"add",reason:"stale"})}catch(T){return Object.freeze({ok:false,operation:"add",reason:"failed",error:no(T,"add")})}}async function x(ne){if(I)return Object.freeze({ok:false,operation:"delete",reason:"stale"});let M=[...new Set(ne.map(T=>T.trim()).filter(T=>T!==""))];if(M.length===0)return Object.freeze({ok:false,operation:"delete",reason:"failed",error:Object.freeze({code:"IM_SDK_SESSION_FAVORITE_INPUT_INVALID",category:"validation",operation:"delete",retryable:false})});try{let T=P(r.ensureProductClient());if(await T.client.sessionFavorites.delete(M),!g(T))return Object.freeze({ok:!1,operation:"delete",reason:"stale"});ie();let C=new Set(M);return o.value=Object.freeze(o.value.filter(y=>!C.has(y.collectId))),Object.freeze({ok:!0,operation:"delete",collectId:M[0]??""})}catch(T){return Object.freeze({ok:false,operation:"delete",reason:"failed",error:no(T,"delete")})}}async function X(ne){let M=F(ne);return M===""?Object.freeze({ok:false,operation:"delete",reason:"failed",error:Object.freeze({code:"IM_SDK_SESSION_FAVORITE_INPUT_INVALID",category:"validation",operation:"delete",retryable:false})}):x([M])}function N(){G?.(),G=void 0,q=void 0,B();}function se(ne){if(q===ne)return;G?.(),q=ne;let M=P(ne);G=ne.events.subscribe(T=>{q===ne&&g(M)&&T.type==="session-favorites:changed"&&V();});}return Oe(n,()=>{I=true,G?.(),G=void 0,q=void 0,B();}),{items:o,loading:s,error:c,collectIdOf:F,isFavorited:U,reload:V,addFromMessage:S,removeByCollectIds:x,removeByMessageId:X,reset:N}})(n)}function ad(e){return defineStore("k2-im-session",()=>{let n=ve(e).runtime,r=ref(""),o=ref(n.getConnectionState()),s=ref(n.getGeneration()),c=ref("idle"),m=ref(""),I=ref({}),z=false,A=0,G="",q=n.getDiagnostics(),B=n.subscribeEvents(N=>{z||N.type==="connection:changed"&&(o.value=N.state,N.state==="authenticated"&&(c.value="ready"));});function P(N,se){return !z&&N===A&&n.getGeneration()===se}function g(N){if(z)throw new Error("Session Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u91CD\u65B0\u914D\u7F6E\u5BBF\u4E3B");n.configureHost(N);}function F(N){if(z)throw new Error("Session Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u5E94\u7528\u8D26\u53F7");let se=N.session===null?"":`${N.session.userId}\0${N.session.token}`;se!==G&&(A+=1,G=se);let ne=n.applySession(N.session,N.endpoints,N.deviceToken);return r.value=N.session?.userId??"",s.value=n.getGeneration(),o.value=n.getConnectionState(),c.value=o.value==="authenticated"?"ready":"idle",m.value="",I.value={},q.record("info","pinia","session","session-applied",()=>({generation:s.value,...r.value===""?{}:{accountId:r.value},data:{hasToken:ne.hasToken,didReset:ne.didReset}})),ne}async function U(N,se,ne){if(z)return {ok:false,errorKey:"lifecycle.disposed"};let M=++A,T=n.getGeneration(),C=Date.now();c.value=N,m.value="",I.value={},q.record("info","pinia",se==="prepare"?"session":"connection",`${se}-start`,()=>({generation:T}));let y=await ne();return P(M,T)?(s.value=n.getGeneration(),o.value=n.getConnectionState(),c.value=y.ok?o.value==="authenticated"?"ready":"idle":"error",m.value=y.errorKey??"",I.value=y.errorParams??{},q.record(y.ok?"info":"error","pinia",se==="prepare"?"session":"connection",`${se}-${y.ok?"complete":"failed"}`,()=>({generation:s.value,durationMs:Date.now()-C,...y.ok?{}:{error:{message:y.errorKey??`${se}-failed`,data:y.errorParams}}})),y):(q.record("debug","pinia","session",`${se}-stale-result-dropped`,()=>({generation:T,durationMs:Date.now()-C})),y)}function V(){return U("preparing","prepare",()=>n.prepare())}function ie(){return U("connecting","connect",()=>n.connect())}function S(){z||(A+=1,n.disconnect(),o.value=n.getConnectionState(),c.value="idle");}async function x(N){if(z)throw new Error("Session Store \u5DF2 dispose\uFF0C\u4E0D\u80FD logout");A+=1;try{await n.logout(N);}finally{r.value="",G="",s.value=n.getGeneration(),o.value=n.getConnectionState(),c.value="idle",m.value="",I.value={};}}function X(){z||(z=true,A+=1,B(),r.value="",o.value="idle",s.value=n.getGeneration(),c.value="disposed",m.value="",I.value={});}return {accountId:r,connectionState:o,generation:s,phase:c,errorKey:m,errorParams:I,configureHost:g,applySession:F,prepare:V,connect:ie,disconnect:S,logout:x,dispose:X,getRuntime:()=>n}})}var Bs=new WeakMap,to=new WeakMap;function id(e=Pe()){ve(e);let n=Bs.get(e);n===void 0&&(n=ad(e),Bs.set(e,n));let r=n(e);return to.get(e)!==r&&(to.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),to.get(e)===r&&to.delete(e);})),r}function oo(e,n){return e!==null&&n!==null&&e.conversationType===n.conversationType&&e.conversationId===n.conversationId}function Xs(e){return e===null?"":`${e.conversationType}\0${e.conversationId}`}function Xt(e,n){return `${Xs(e)}\0${n}`}function Et(e,n){return n==="older"?e[0]?.id??"":e[e.length-1]?.id??""}function Qs(e){return e instanceof Error?{message:e.message,name:e.name}:typeof e=="string"?{message:e}:{message:"Unknown paging error"}}function ld(e){return defineStore("k2-im-thread-paging",()=>{let n=ve(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=Mn(e),c=ref(false),m=ref(false),I=ref(null),z=ref(null),A=false,G="",q="",B=0,P=()=>({ref:o.activeRef,generation:n.getGeneration(),olderBoundary:Et(o.messages,"older"),newerBoundary:Et(o.messages,"newer")}),g=(M,T)=>{let C=P();return !A&&T===B&&M.generation===C.generation&&oo(M.ref,C.ref)&&M.ref!==null},F=M=>{(M===void 0||M==="older")&&(G="",I.value=null),(M===void 0||M==="newer")&&(q="",z.value=null);},U=()=>{B+=1,c.value=false,m.value=false,F();},V=async(M,T)=>{let C=P(),y=M==="older"?G:q,R=M==="older"?o.hasOlder:o.hasNewer;if(C.ref===null||!R||(M==="older"?c.value:m.value))return 0;let j=C.ref,J=M==="older"?C.olderBoundary:C.newerBoundary,le=Xt(j,J);if(M==="older"?m.value:c.value)return 0;if(!T&&y!==""&&y===le)return r.record("debug","pinia","history",`thread-paging-${M}-circuit-open`,()=>({conversation:j,data:{boundary:J}})),0;T&&(F(M),r.record("debug","pinia","history",`thread-paging-${M}-retry`,()=>({conversation:j})));let ye=new Set(o.messages.map(K=>K.id)),ge=++B;M==="older"?c.value=true:m.value=true,r.record("debug","pinia","history",`thread-paging-${M}-start`,()=>({conversation:j,generation:C.generation,data:{boundary:J,force:T}}));try{let K=M==="older"?await o.loadOlder():await o.loadNewer();if(!g(C,ge))return r.record("debug","pinia","history","thread-paging-stale-result-dropped",()=>({conversation:j,generation:C.generation,data:{side:M}})),0;if(!K)return 0;F(M);let Q=o.messages.reduce((Ie,ce)=>Ie+ +!ye.has(ce.id),0);return r.record("debug","pinia","history",`thread-paging-${M}-success`,()=>({conversation:j,generation:C.generation,data:{added:Q}})),Q}catch(K){if(!g(C,ge))return r.record("debug","pinia","history","thread-paging-stale-result-dropped",()=>({conversation:j,generation:C.generation,data:{side:M,outcome:"failed"}})),0;throw Et(o.messages,M)===J&&(M==="older"?(G=le,I.value=K):(q=le,z.value=K),r.record("warn","pinia","history",`thread-paging-${M}-failed`,()=>({conversation:j,generation:C.generation,error:{message:`\u6D88\u606F\u7EBF\u7A0B ${M} \u5206\u9875\u5931\u8D25`,data:Qs(K)}}))),K}finally{ge===B&&(M==="older"?c.value=false:m.value=false);}},ie=(M={})=>V("older",M.force===true),S=(M={})=>V("newer",M.force===true),x=async M=>{if(M!==void 0&&!oo(o.activeRef,M))return false;s.clearLocation(),U();let T=P();if(T.ref===null)return false;let C=T.ref;if(r.record("debug","pinia","history","thread-paging-jump-latest-start",()=>({conversation:C})),!o.hasNewer)return true;let y;try{y=await o.loadLatest();}catch(R){if(oo(o.activeRef,C)&&n.getGeneration()===T.generation){let j=Et(o.messages,"newer");q=Xt(C,j),z.value=R,r.record("warn","pinia","history","thread-paging-jump-latest-failed",()=>({conversation:C,generation:T.generation,error:{message:"\u8DF3\u8F6C\u6700\u65B0\u6D88\u606F\u5931\u8D25",data:Qs(R)}}));}throw R}return !oo(o.activeRef,C)||n.getGeneration()!==T.generation?(r.record("debug","pinia","history","thread-paging-jump-latest-stale-result-dropped",()=>({conversation:C})),false):(F("newer"),y)},X=watch(()=>Xs(o.activeRef),()=>U(),{flush:"sync"}),N=watch(()=>`${Xt(o.activeRef,Et(o.messages,"older"))}\0${Et(o.messages,"newer")}`,()=>{let M=P(),T=Xt(M.ref,M.olderBoundary),C=Xt(M.ref,M.newerBoundary);G!==""&&G!==T&&F("older"),q!==""&&q!==C&&F("newer");},{flush:"sync"}),se=o.$onAction(({name:M})=>{(M==="loadLatest"||M==="loadAround"||M==="open"||M==="close"||M==="reset")&&U();});return {loadingOlder:c,loadingNewer:m,olderError:I,newerError:z,loadOlder:ie,loadNewer:S,retryOlder:()=>ie({force:true}),retryNewer:()=>S({force:true}),jumpToLatest:x,reset:U,dispose:()=>{A||(A=true,X(),N(),se(),U());}}})}var Js=new WeakMap,ao=new WeakMap;function cd(e=Pe()){ve(e);let n=Js.get(e);n===void 0&&(n=ld(e),Js.set(e,n));let r=n(e);return ao.get(e)!==r&&(ao.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),ao.get(e)===r&&ao.delete(e);})),r}function ud(e,n){return e!==null&&e.conversationType===n.conversationType&&e.conversationId===n.conversationId}function dd(e=Pe()){let n=Ge(e),r=Mn(e);return Object.freeze({async returnToLatest(o){return ud(n.activeRef,o)?(r.clearLocation(),n.hasNewer?n.loadLatest():true):false}})}export{Rr as applicationKey,Wl as createAndInstallImChatKit,ai as createImChatKitContext,Jl as disposeImChatKit,Ql as ensureImChatKitSelfProfile,ve as getImChatKitContext,ii as installImChatKit,tc as useImApplicationsStore,hc as useImCapabilitiesStore,Wn as useImComposerStore,Cc as useImConversationActivationCoordinator,Dc as useImConversationDeletionCoordinator,_o as useImConversationListStore,$c as useImExpressionStore,Jc as useImHistoryReturnAfterSendCoordinator,ru as useImMediaStore,Lt as useImMessageOperationsStore,Fu as useImProfileDirectoryStore,Vu as useImQuotedMessageStore,Zu as useImReactionStore,Mn as useImSearchStore,rd as useImSessionFavoritesStore,id as useImSessionStore,cd as useImThreadPagingStore,dd as useImThreadReturnToLatestCoordinator,Ge as useImThreadStore};
1
+ import {s,wa,ma,w,la,ka,ja,ha,ga,fa,ea,ca,H,I,G,Ea,d,sa,va,ua,oa,ra,qa,pa as pa$1,B,z,A,y,x,Da,Ca,Ba,Aa,za,ya,c,b,k,h,ta}from'./chunk-BKZ3VNAT.js';export{r as resolveMessageNotificationDecision}from'./chunk-BKZ3VNAT.js';import'./chunk-67E52PC5.js';import'./chunk-4RG5NHIL.js';import {pa,ma as ma$1}from'./chunk-ZDD7A2BS.js';import'./chunk-WOT6VMZA.js';import {defineStore,getActivePinia}from'pinia';import {shallowRef,ref,computed,watch,reactive,nextTick}from'vue';function Jl(e,n,r={}){let o=s(n);try{return ii(e,ai({runtime:o,...r}))}catch(s){throw o.dispose(),s}}function Xl(e){wa(ge(e).runtime);}var Bn=new WeakMap;function Pe(e){let n=e??getActivePinia();if(n===void 0)throw new Error("\u672A\u627E\u5230\u5F53\u524D Pinia\uFF1B\u8BF7\u5728 Vue setup \u5185\u8C03\u7528\uFF0C\u6216\u663E\u5F0F\u4F20\u5165 Pinia \u5B9E\u4F8B");return n}function ai(e){return Object.freeze({runtime:e.runtime,...e.expressionRecentPersistence===void 0?{}:{expressionRecentPersistence:e.expressionRecentPersistence}})}function ii(e,n){let r=Bn.get(e);if(r!==void 0&&!r.disposed){if(r.context===n)return r.installation;throw new Error("\u5F53\u524D Pinia \u5DF2\u5B89\u88C5\u6D3B\u52A8 ImChatKitContext\uFF0C\u8BF7\u5148 dispose \u518D\u5207\u6362 runtime")}let o={context:n,storeDisposers:new Set,disposed:false},s=Object.freeze({context:n,dispose:()=>{if(!o.disposed){o.disposed=true;for(let c of [...o.storeDisposers])c();o.storeDisposers.clear(),n.runtime.dispose(),Bn.get(e)===o&&Bn.delete(e);}}});return o.installation=s,Bn.set(e,o),s}function ge(e){let n=Bn.get(e);if(n===void 0||n.disposed)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u5B89\u88C5\u6D3B\u52A8 ImChatKitContext");return n.context}function Oe(e,n){let r=Bn.get(e);if(r===void 0||r.disposed)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u5B89\u88C5\u6D3B\u52A8 ImChatKitContext");return r.storeDisposers.add(n),()=>r.storeDisposers.delete(n)}function Yl(e){Bn.get(e)?.installation.dispose();}function Pr(e){return `${e.domain}:${e.applicationId}`}function ec(e){return e.domain==="contact"?Object.freeze({domain:"contact",applicationId:e.applicationId}):e.domain==="group"?Object.freeze({domain:"group",applicationId:e.applicationId,conversation:Object.freeze({conversationType:"group",conversationId:e.conversation.conversationId})}):Object.freeze({domain:"channel",applicationId:e.applicationId,conversation:Object.freeze({conversationType:"channel",conversationId:e.conversation.conversationId})})}function nc(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function Cr(e,n){let r=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:r!==null&&typeof r.code=="string"?r.code:"IM_CHAT_KIT_APPLICATIONS_ACTION_FAILED",category:r!==null&&nc(r.category)?r.category:"state",operation:r!==null&&typeof r.operation=="string"?r.operation:`applications.${n}`,retryable:r!==null&&typeof r.retryable=="boolean"?r.retryable:n==="reload"})}function tc(e){return e.code==="IM_SDK_APPLICATION_REQUEST_ALREADY_HANDLED"||e.code==="IM_SDK_APPLICATION_ALREADY_HANDLED"}function rc(e){return defineStore("k2-im-applications",()=>{let n=ge(e).runtime,r=ref([]),o=ref(false),s=shallowRef(null),c=ref({}),m=shallowRef({}),I=computed(()=>r.value.length),w=computed(()=>{let A=0,h=0,M=0;for(let D of r.value)D.ref.domain==="contact"?A+=1:D.ref.domain==="group"?h+=1:M+=1;return Object.freeze({contact:A,group:h,channel:M})}),z=false,G=0,V=0,W=0,R=false,g=0,K=new Map;function q(){G+=1,V+=1,W+=1,g+=1,R=false,K.clear(),r.value=[],o.value=false,s.value=null,c.value={},m.value={};}function $(A){return {client:A,generation:n.getGeneration(),stateEpoch:G}}function re(A){return !z&&A.client===n.getProductClient()&&A.generation===n.getGeneration()&&A.stateEpoch===G}async function S(){if(z)return Object.freeze({ok:false,operation:"reload",reason:"stale"});let A=++V,h;try{h=$(n.ensureProductClient());}catch(M){let D=Cr(M,"reload");return s.value=D,o.value=false,Object.freeze({ok:false,operation:"reload",reason:"failed",error:D})}o.value=true,s.value=null;try{let M=await h.client.applications.listPending();return A!==V||!re(h)?Object.freeze({ok:!1,operation:"reload",reason:"stale"}):(r.value=Object.freeze([...M]),Object.freeze({ok:!0,operation:"reload"}))}catch(M){if(A!==V||!re(h))return Object.freeze({ok:false,operation:"reload",reason:"stale"});let D=Cr(M,"reload");return s.value=D,Object.freeze({ok:false,operation:"reload",reason:"failed",error:D})}finally{A===V&&re(h)&&(o.value=false);}}function x(){if(z||R)return;R=true;let A=G,h=++g;queueMicrotask(()=>{h===g&&(R=false,!(z||A!==G)&&S());});}function X(A){(A.type==="contact-application:received"||A.type==="channel-join-application:received"||A.type==="application:updated")&&x();}let L=n.subscribeProductEvents(X);async function se(A,h){let M=ec(A),D=Pr(M);if(z)return Object.freeze({ok:false,operation:h,reason:"stale",application:M});let ce=++W;K.set(D,ce),c.value={...c.value,[D]:h};let{[D]:pe,...ye}=m.value;m.value=ye;let H;try{H=$(n.ensureProductClient());}catch(Ie){let le=Cr(Ie,h);m.value={...m.value,[D]:le};let{[D]:Ce,...ke}=c.value;return c.value=ke,K.delete(D),Object.freeze({ok:false,operation:h,reason:"failed",application:M,error:le})}let J=()=>re(H)&&K.get(D)===ce;try{return await H.client.applications[h](M),J()?(V+=1,o.value=!1,r.value=Object.freeze(r.value.filter(Ie=>Pr(Ie.ref)!==D)),Object.freeze({ok:!0,operation:h,application:M})):Object.freeze({ok:!1,operation:h,reason:"stale",application:M})}catch(Ie){if(!J())return Object.freeze({ok:false,operation:h,reason:"stale",application:M});let le=Cr(Ie,h);return tc(le)?(V+=1,o.value=false,r.value=Object.freeze(r.value.filter(Ce=>Pr(Ce.ref)!==D)),Object.freeze({ok:false,operation:h,reason:"failed",application:M,error:le})):(m.value={...m.value,[D]:le},Object.freeze({ok:false,operation:h,reason:"failed",application:M,error:le}))}finally{if(J()){K.delete(D);let{[D]:Ie,...le}=c.value;c.value=le;}}}function ne(A){return se(A,"accept")}function O(A){return se(A,"ignore")}function j(){z||q();}function C(){z||(z=true,L(),q());}return {items:r,loading:o,error:s,processingKeys:c,itemErrors:m,pendingCount:I,domainCounts:w,reload:S,accept:ne,ignore:O,reset:j,dispose:C}})}var ci=new WeakMap,Rr=new WeakMap;function oc(e=Pe()){ge(e);let n=ci.get(e);n===void 0&&(n=rc(e),ci.set(e,n));let r=n(e);return Rr.get(e)!==r&&(Rr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),Rr.get(e)===r&&Rr.delete(e);})),r}function fi(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function ic(e,n){return e.length===n.length&&e.every((r,o)=>r===n[o])}var ui=Object.freeze({state:"none"});function sc(e,n,r){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"?e:Object.freeze({code:"IM_CHAT_KIT_THREAD_OPERATION_FAILED",category:"state",operation:n,retryable:false,...r===void 0?{}:{conversation:fi(r)}})}function lc(e){return defineStore("k2-im-thread",()=>{let n=ge(e).runtime,r=n.getDiagnostics(),o=shallowRef(null),s=shallowRef([]),c=shallowRef(ui),m=shallowRef(null),I=ref(false),w=ref(false),z=ref(false),G=ref(false),V=ref(false),W=shallowRef(null),R=ref(0),g=false,K=0,q=0,$,re,S,x,X=[],L=new Map,se=new Set;function ne(){X.length=0,R.value=0;}let O=n.subscribeEvents(y=>{if(g||y.type!=="message:received"||(y.source??"live")!=="live"||y.message.body.system?.timelineVisibility==="hidden")return;let _=o.value;_===null||y.message.conversationId!==_.conversationId||y.message.conversationType!==_.conversationType||y.message.senderId===n.getCredentials().userId||(X.push(y.message.id),R.value+=1);});function j(y=null){ne(),o.value=y,s.value=[],c.value=ui,m.value=null,I.value=y!==null,w.value=false,z.value=false,G.value=false,V.value=false,W.value=null;}function C(y){if((L.get(y)??0)>0){se.add(y);return}y.close();}function A(){x?.(),x=void 0;let y=S;S=void 0,y!==void 0&&C(y);}function h(y,_,ee){let ie=o.value;if(g||S!==y||n.getGeneration()!==ee||ie===null||_.ref.conversationId!==ie.conversationId||_.ref.conversationType!==ie.conversationType)return false;let oe=_.messages.filter(Re=>Re.body.system?.timelineVisibility!=="hidden");return ic(s.value,oe)||(s.value=Object.freeze(oe)),c.value=_.entryUnread,m.value=_.draft,I.value=_.loading,w.value=true,z.value=_.stale,G.value=_.hasOlder,V.value=_.hasNewer,W.value=_.error??null,true}async function M(y){let _=n.ensureProductClient();return y.conversationType==="direct"?_.openConversation({conversationType:"direct",conversationId:y.conversationId},{initialPosition:"first-unread"}):y.conversationType==="group"?_.openConversation({conversationType:"group",conversationId:y.conversationId},{initialPosition:"first-unread"}):_.openConversation({conversationType:"channel",conversationId:y.conversationId},{initialPosition:"first-unread"})}async function D(y){let _=n.ensureProductClient();if(_.conversations.list().find(ie=>ie.ref.conversationType===y.conversationType&&ie.ref.conversationId===y.conversationId)?.manuallyUnread===true)try{await _.conversations.markRead(y);}catch(ie){r.record("warn","pinia","conversation","thread-open-clear-manual-unread-failed",()=>({conversation:y,error:{message:"\u4F1A\u8BDD\u5DF2\u6253\u5F00\uFF0C\u4F46\u624B\u5DE5\u672A\u8BFB\u63D0\u9192\u6E05\u9664\u5931\u8D25",data:ie}}));}}async function ce(y){if(g)throw new Error("Thread Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u6253\u5F00\u4F1A\u8BDD");q+=1,$=void 0,re=void 0;let _=fi(y),ee=++K,ie=n.getGeneration();r.record("debug","pinia","history","thread-open-start",()=>({generation:ie,conversation:_}));let oe;try{oe=await M(_);}catch(Re){throw !g&&ee===K&&ie===n.getGeneration()&&r.record("warn","pinia","history","thread-open-failed",()=>({generation:ie,conversation:_,error:{message:"\u76EE\u6807\u4F1A\u8BDD\u6253\u5F00\u5931\u8D25\uFF0C\u5DF2\u4FDD\u7559\u5F53\u524D\u7EBF\u7A0B",data:sc(Re,"thread.open",_)}})),Re}if(g||ee!==K||ie!==n.getGeneration()){oe.close(),r.record("debug","pinia","history","thread-open-stale-result-dropped",()=>({generation:ie,conversation:_}));return}if(await D(_),g||ee!==K||ie!==n.getGeneration()){oe.close(),r.record("debug","pinia","history","thread-open-stale-result-dropped",()=>({generation:ie,conversation:_}));return}return A(),j(_),S=oe,x=oe.subscribe(Re=>h(oe,Re,ie)),h(oe,oe.getSnapshot(),ie),r.record("debug","pinia","history","thread-open-complete",()=>({generation:ie,conversation:_})),oe}function pe(){K+=1;}function ye(y){if(g||S===void 0)throw new Error(`Thread Store \u6CA1\u6709\u6D3B\u52A8 handle\uFF0C\u65E0\u6CD5\u6267\u884C ${y}`);return S}function H(y,_,ee){return !g&&q===y&&S===_&&n.getGeneration()===ee}async function J(y,_){if($!==void 0||re!==void 0)return false;let ee=ye(y),ie=n.getGeneration(),oe=++q;$=oe;try{return await _(ee),H(oe,ee,ie)?(h(ee,ee.getSnapshot(),ie),!0):!1}finally{$===oe&&($=void 0);}}async function Ie(y,_,ee){let ie=ye(y),oe=n.getGeneration(),Re=++q;$=void 0,re=Re;try{if(await _(ie),!H(Re,ie,oe))return !1;let ae=ie.getSnapshot();return ee(ae)?(h(ie,ae,oe),!0):!1}finally{re===Re&&(re=void 0);}}function le(){return Ie("loadLatest",y=>y.history.loadLatest(),y=>!y.hasNewer)}function Ce(){return J("loadOlder",y=>y.history.loadOlder())}function ke(){return J("loadNewer",y=>y.history.loadNewer())}function Se(y){return Ie("loadAround",_=>_.history.loadAround(y),_=>_.messages.some(ee=>ee.id===y)).then(_=>_?s.value.some(ee=>ee.id===y):false)}function je(y){return ye("resolveMessage").resolveMessage(y)}function F(y=ye("retainHandle")){if(g)throw new Error("Thread Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u4FDD\u7559 handle");L.set(y,(L.get(y)??0)+1);let _=false;return ()=>{if(_)return;_=true;let ee=(L.get(y)??1)-1;if(ee>0){L.set(y,ee);return}L.delete(y),se.delete(y)&&y.close();}}function U(){return F()}function de(){K+=1,q+=1,$=void 0,re=void 0,A(),j();}function fe(y){let _=o.value;return _===null||_.conversationType!==y.conversationType||_.conversationId!==y.conversationId?false:(q+=1,$=void 0,re=void 0,A(),j(),true)}function ue(){K+=1,q+=1,$=void 0,re=void 0,x?.(),x=void 0;let y=new Set([...S===void 0?[]:[S],...se,...L.keys()]);S=void 0,se.clear(),L.clear();for(let _ of y)_.close();j();}function De(){g||(ue(),g=true,O());}function k(){return X.splice(0,X.length)}return {activeRef:o,messages:s,entryUnread:c,draft:m,loading:I,ready:w,stale:z,hasOlder:G,hasNewer:V,error:W,activeRemoteMessageRevision:R,open:ce,invalidatePendingOpen:pe,loadLatest:le,loadOlder:Ce,loadNewer:ke,loadAround:Se,resolveMessage:je,retainHandle:F,retainCurrentHandle:U,close:de,closeActiveConversation:fe,reset:ue,dispose:De,drainActiveRemoteMessageIds:k,getHandle:()=>S}})}var di=new WeakMap,kr=new WeakMap;function Ge(e=Pe()){ge(e);let n=di.get(e);n===void 0&&(n=lc(e),di.set(e,n));let r=n(e);return kr.get(e)!==r&&(kr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),kr.get(e)===r&&kr.delete(e);})),r}var jr=new WeakMap;function Ao(e){let n=jr.get(e);if(n===void 0)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u521B\u5EFA ImComposerStore");return n}function mt(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Er(e){return {text:e.text,...e.mentions===void 0?{}:{mentions:e.mentions.map(n=>({userId:n.userId,displayName:n.displayName}))},...e.replyToMessageId===void 0?{}:{replyToMessageId:e.replyToMessageId},attachments:[]}}function pi(e){return e===null?null:Er({text:e.text,mentions:e.mentions,...e.replyToMessageId===void 0?{}:{replyToMessageId:e.replyToMessageId}})}function xo(e){return e.text===""&&(e.mentions?.length??0)===0&&e.replyToMessageId===void 0}function zo(e,n){return e===null||e.text!==n.text||e.replyToMessageId!==n.replyToMessageId||(e.mentions?.length??0)!==(n.mentions?.length??0)?false:(e.mentions??[]).every((r,o)=>{let s=n.mentions?.[o];return s!==void 0&&r.userId===s.userId&&r.displayName===s.displayName})}function dc(e){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"}function Ht(e,n,r){return dc(e)?e:Object.freeze({code:n==="composer.draft"?"IM_CHAT_KIT_DRAFT_SAVE_FAILED":"IM_CHAT_KIT_COMPOSER_OPERATION_FAILED",category:"state",operation:n,retryable:n==="composer.draft",...r===void 0?{}:{conversation:mt(r)},cause:e})}function Mr(e,n){return e.conversationId===n.ref.conversationId&&e.conversationType===n.ref.conversationType}function fc(e){return defineStore("k2-im-composer",()=>{let n=ge(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=shallowRef(null),c=shallowRef(null),m=shallowRef(null),I=ref(false),w=ref(0),z=shallowRef(null),G=false,V=0,W=0,R=0,g,K=Promise.resolve(),q=Promise.resolve(),$=new Set,re=new Map,S,x;function X(){return o.getHandle()}function L(F,U){let de=o.activeRef;return !G&&X()===F&&n.getGeneration()===U&&de!==null&&de.conversationId===F.ref.conversationId&&de.conversationType===F.ref.conversationType}function se(F=X()){if(F===void 0)return false;let U=n.getGeneration();return g?.handle===F&&g.generation===U||[...$].some(de=>de.handle===F&&de.generation===U)}async function ne(F=X()){if(F===void 0)return;let U=n.getGeneration(),de=g?.handle===F&&g.generation===U?g:void 0;if(de===void 0){let k=[...$].filter(y=>y.handle===F&&y.generation===U).map(y=>y.promise);k.length>0?await Promise.all(k):await q;return}g=void 0;let ue=K.then(async()=>{xo(de.input)?await F.draft.clear():await F.draft.save(de.input);}),De={handle:F,generation:U,promise:ue};$.add(De),q=ue,K=ue.catch(()=>{});try{await ue,L(F,U)&&(z.value=null,w.value+=1,r.record("debug","pinia","draft","composer-draft-flush-complete",()=>({generation:U,conversation:mt(F.ref)})));}catch(k){throw L(F,U)&&(g===void 0&&R===de.version&&(g=de),z.value=Ht(k,"composer.draft",F.ref),r.record("error","pinia","draft","composer-draft-flush-failed",()=>({generation:U,conversation:mt(F.ref),error:{message:"Composer \u8349\u7A3F\u6301\u4E45\u5316\u5931\u8D25",data:z.value}}))),k}finally{$.delete(De);}}function O(F){let U=X(),de=n.getGeneration();if(U===void 0||!L(U,de))return z.value=Ht(new Error("\u5F53\u524D\u4F1A\u8BDD\u5C1A\u672A\u5C31\u7EEA"),"composer.draft"),false;let fe=Er(F);return R+=1,s.value=xo(fe)?null:fe,g={handle:U,generation:de,version:R,input:fe},z.value=null,j(),xo(fe)&&ne(U).catch(()=>{}),true}async function j(){if(m.value!==null)return;let F=s.value?.replyToMessageId;if(F===void 0){W+=1,c.value=null;return}let U=X();if(U===void 0){c.value=null;return}let de=o.messages.find(k=>k.id===F);if(de!==void 0){W+=1,c.value=de;return}let fe=n.getGeneration(),ue=++W,De=await U.resolveMessage(F).catch(()=>null);ue!==W||!L(U,fe)||m.value!==null||s.value?.replyToMessageId!==F||(c.value=De);}function C(F){let U=X();return U===void 0||!Mr(F,U)?false:(m.value=null,c.value=F,O({...s.value??{text:"",attachments:[]},replyToMessageId:F.id}))}function A(F){if(F!==void 0&&s.value?.replyToMessageId!==F)return;c.value=null;let U=s.value;if(U===null)return;let{replyToMessageId:de,...fe}=U;O({...fe});}function h(F){let U=X();return U===void 0||!Mr(F,U)?false:(c.value=null,m.value=F,true)}function M(){m.value=null,j();}function D(){W+=1,c.value=null,m.value=null;}function ce(F,U){return !G&&n.getGeneration()===F&&V===U}function pe(F){return [...re.values()].some(U=>U.handle===F)}function ye(F,U){return F!==null&&zo(pi(F),U)}function H(F,U,de){!L(F,U)||s.value===null||!zo(s.value,de)||(R+=1,g?.handle===F&&g.generation===U&&zo(g.input,de)&&(g=void 0),s.value=null,W+=1,c.value=null);}async function J(F){let U=[...$].filter(fe=>fe.handle===F.handle&&fe.generation===F.generation).map(fe=>fe.promise.catch(()=>{}));if(U.length>0&&await Promise.all(U),!L(F.handle,F.generation))return;let de=await F.handle.draft.get();if(!ye(de,F.input)){S?.token===F.token&&(S=void 0);return}S=F;try{await F.handle.draft.clear(),S?.token===F.token&&(S=void 0);}catch(fe){if(L(F.handle,F.generation)){if(s.value===null&&g===void 0){let ue={text:"",attachments:[]};R+=1,g={handle:F.handle,generation:F.generation,version:R,input:ue};}z.value=Ht(fe,"composer.draft",F.handle.ref),r.record("error","pinia","draft","composer-accepted-draft-clear-failed",()=>({generation:F.generation,conversation:mt(F.handle.ref),error:{message:"\u6D88\u606F\u5DF2\u88AB\u53D1\u9001\u6D41\u7A0B\u63A5\u53D7\uFF0C\u4F46\u6E05\u7406\u5BF9\u5E94\u8349\u7A3F\u5931\u8D25",data:z.value}}));}}}function Ie(F){if(!L(F.handle,F.generation)||s.value!==null)return;S=void 0;let U=Er(F.input);R+=1,s.value=U,g={handle:F.handle,generation:F.generation,version:R,input:U},j();}async function le(F){let U=m.value,de=U===null?"send":"edit";if(U!==null&&x!==void 0)return Object.freeze({ok:false,operation:"edit",reason:"busy"});let fe=X(),ue=n.getGeneration();if(fe===void 0||!L(fe,ue))return Object.freeze({ok:false,operation:de,reason:"not-ready"});let De=F.text.trim();if(De==="")return Object.freeze({ok:false,operation:de,reason:"empty"});let k=V;if(U!==null&&!Mr(U,fe))return Object.freeze({ok:false,operation:"edit",reason:"not-ready"});let y=Symbol(de);U!==null&&(x=y),I.value=x!==void 0,z.value=null;let _=o.retainHandle(fe),ee;if(U===null){let ie=Er(F);ee={token:y,handle:fe,generation:ue,input:ie},re.set(y,ee),H(fe,ue,ie);}r.record("debug","pinia","message","composer-submit-start",()=>({generation:ue,operation:de,conversation:mt(fe.ref),...U===null?{}:{messageId:U.id}}));try{if(U===null){if(!ce(ue,k)||!L(fe,ue))return Object.freeze({ok:!1,operation:"send",reason:"stale"});let ie=await fe.messages.sendText(De,{...F.mentions===void 0?{}:{mentions:F.mentions},...F.replyToMessageId===void 0?{}:{replyToMessageId:F.replyToMessageId}});if(!ce(ue,k)||!L(fe,ue))return Object.freeze({ok:!1,operation:"send",reason:"stale"});if(!ie.ok)return ee!==void 0&&Ie(ee),z.value=ie.error,Object.freeze({ok:!1,operation:"send",reason:"sdk-rejected",error:ie.error});if(ee!==void 0&&(await J(ee),!ce(ue,k)||!L(fe,ue)))return Object.freeze({ok:!1,operation:"send",reason:"stale"})}else {try{await fe.messages.editText(U.id,De,{...F.mentions===void 0?{}:{mentions:F.mentions}});}catch(ie){if(!ce(ue,k)||!L(fe,ue))return Object.freeze({ok:!1,operation:"edit",reason:"stale"});let oe=Ht(ie,"composer.edit",fe.ref);return z.value=oe,Object.freeze({ok:!1,operation:"edit",reason:"sdk-rejected",error:oe})}if(!ce(ue,k)||!L(fe,ue))return Object.freeze({ok:!1,operation:"edit",reason:"stale"});m.value===U&&M();}return z.value=null,r.record("debug","pinia","message","composer-submit-complete",()=>({generation:ue,operation:de,conversation:mt(fe.ref)})),Object.freeze({ok:!0,operation:de})}catch(ie){if(!ce(ue,k)||!L(fe,ue))return Object.freeze({ok:false,operation:de,reason:"stale"});ee!==void 0&&Ie(ee);let oe=Ht(ie,`composer.${de}`,fe.ref);return z.value=oe,Object.freeze({ok:false,operation:de,reason:"sdk-rejected",error:oe})}finally{_(),re.delete(y),x===y&&(x=void 0),I.value=x!==void 0,L(fe,ue)&&Ce();}}function Ce(){let F=X();if(F===void 0)return;let U=S,de=U!==void 0&&U.handle===F&&U.generation===n.getGeneration()&&ye(o.draft,U.input);U!==void 0&&!de&&(S=void 0),!se(F)&&!pe(F)&&!de&&(s.value=pi(o.draft)),m.value!==null&&!Mr(m.value,F)&&(m.value=null),j();}function ke(){V+=1,W+=1,R+=1,g=void 0,re.clear(),S=void 0,K=Promise.resolve(),q=Promise.resolve(),s.value=null,c.value=null,m.value=null,x=void 0,I.value=false,w.value=0,z.value=null;}let Se=watch(()=>({ref:o.activeRef===null?null:`${o.activeRef.conversationType}:${o.activeRef.conversationId}`,draft:o.draft,messages:o.messages}),(F,U)=>{if(F.ref!==U?.ref){ke(),F.ref!==null&&Ce();return}Ce();},{immediate:true});function je(){G||(G=true,Se(),ke());}return jr.set(e,Object.freeze({suspendInteraction:D,syncReplyTarget:j,dispose:je})),{input:s,replyTo:c,editingMessage:m,submitting:I,draftCommitVersion:w,error:z,updateDraft:O,flush:ne,hasPendingWork:se,submitText:le,setReplyTo:C,clearReplyTo:A,setEditing:h,clearEditing:M,reset:ke}})}var vi=new WeakMap,Sr=new WeakMap;function Wn(e=Pe()){ge(e);let n=vi.get(e);n===void 0&&(n=fc(e),vi.set(e,n));let r=n(e),o=Ao(e);return Sr.get(e)!==r&&(Sr.set(e,r),Oe(e,()=>{o.dispose(),r.$dispose(),Sr.get(e)===r&&(Sr.delete(e),jr.get(e)===o&&jr.delete(e));})),r}var wr=new WeakMap;function Lt(e){return e.status==="sent"&&e.contentType!=="system"&&e.recalled===void 0&&e.deletedForEveryone===void 0}function Ii(e){return [...e]}function vc(e){return defineStore("k2-im-message-operations",()=>{let n=ge(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=Wn(e),c=Ao(e),m=shallowRef(null),I=ref(false),w$1=ref([]),z=ref(null),G=ref(false),V=ref([]),W=shallowRef(null),R=false,g=0,K=0,q=0;function $(){return o.getHandle()}function re(k,y=$()){let _=o.activeRef;return !R&&y!==void 0&&_!==null&&k.conversationType!=="supergroup"&&_.conversationId===k.conversationId&&_.conversationType===k.conversationType&&y.ref.conversationId===k.conversationId&&y.ref.conversationType===k.conversationType}function S(k){return w(m.value,k)}function x(){G.value=false,V.value=[];}function X(){z.value=null;}function L(){let k=I.value;x(),X(),I.value=false,w$1.value=[],k&&c.syncReplyTarget();}function se(k){if(k!==void 0){if(!re(k))return Object.freeze({ok:false,reason:"not-ready"});if(!Lt(k))return Object.freeze({ok:false,reason:"not-selectable"});if(S(k))return Object.freeze({ok:false,reason:"pinned-protected"})}return c.suspendInteraction(),I.value=true,w$1.value=k===void 0?[]:[k],Object.freeze({ok:true})}function ne(k){return w$1.value.some(y=>y.id===k)}function O(k){return !I.value||!re(k)?Object.freeze({ok:false,reason:"not-ready"}):Lt(k)?S(k)?Object.freeze({ok:false,reason:"pinned-protected"}):(ne(k.id)?w$1.value=w$1.value.filter(y=>y.id!==k.id):w$1.value=[...w$1.value,k],Object.freeze({ok:true})):Object.freeze({ok:false,reason:"not-selectable"})}function j(k){let y=$();return k.length===0||!k.every(_=>re(_,y))?Object.freeze({ok:false,reason:"not-ready"}):(z.value=Ii(k),Object.freeze({ok:true}))}function C(){let k=w$1.value;if(k.length===0)return Object.freeze({outcome:"empty"});let y=k.filter(pa);return k.some(ma$1)?(V.value=y,G.value=true,Object.freeze({outcome:"confirmation-required"})):y.length===0?Object.freeze({outcome:"all-skipped"}):(j(y),Object.freeze({outcome:"picker-opened"}))}function A(){let k=Ii(V.value);return x(),k.length===0?Object.freeze({outcome:"all-skipped"}):(j(k),Object.freeze({outcome:"picker-opened"}))}async function h(k){let y=z.value,_=$();if(y===null)return Object.freeze({ok:false,operation:"forward",reason:"empty-input"});let ee=n.getGeneration(),ie=++g,oe=await ca(n,{handle:_,messages:y,targets:k});return R||ie!==g||n.getGeneration()!==ee||$()!==_?Object.freeze({ok:false,operation:"forward",reason:"stale"}):((oe.ok||oe.reason!=="stale")&&X(),oe.ok&&L(),W.value=oe.ok?null:oe.error??null,r.record(oe.ok?"debug":"error","pinia","message","message-forward-settled",()=>({generation:ee,conversation:_===void 0?void 0:{..._.ref},result:oe.ok?{ok:true,sentCount:oe.sentCount,skippedCount:oe.skippedCount}:{ok:false,reason:oe.reason,error:oe.error}})),oe)}function M(k,y,_){W.value=k.ok?null:k.error??null,r.record(k.ok?"debug":"error","pinia","message",`message-${k.operation}-settled`,()=>({generation:n.getGeneration(),conversation:_===void 0?void 0:{..._.ref},messageId:y,result:k.ok?{ok:true}:{ok:false,reason:k.reason,error:k.error}}));}function D(k,y){return y!==void 0&&(R||$()!==y)?Object.freeze({ok:false,operation:k.operation,reason:"stale"}):k}async function ce(k){let y=$(),_=D(await ea(n,{handle:y,message:k}),y);return M(_,k.id,y),_}async function pe(k){let y=$(),_=D(await fa(n,{handle:y,message:k}),y);return M(_,k.id,y),_}async function ye(k){let y=$(),_=D(await ga(n,{handle:y,message:k}),y);return M(_,k.id,y),_}async function H(k){let y=$(),_=D(await ha(n,{handle:y,messageId:k}),y);return M(_,k,y),_}function J(){let k=o.activeRef;if(!(k?.conversationType!=="group"&&k?.conversationType!=="channel"))return Object.freeze({conversationId:k.conversationId,conversationType:k.conversationType})}function Ie(k,y,_){let ee=J();return !R&&k===K&&y!==void 0&&$()===y&&ee?.conversationId===_.conversationId&&ee.conversationType===_.conversationType}function le(k,y,_){let ee=J();return !R&&k===q&&$()===y&&ee?.conversationId===_.conversationId&&ee.conversationType===_.conversationType}function Ce(k){if(w$1.value=w$1.value.filter(y=>y.id!==k),V.value=V.value.filter(y=>y.id!==k),z.value!==null){let y=z.value.filter(_=>_.id!==k);z.value=y.length===0?null:y;}s.editingMessage?.id===k&&s.clearEditing();}async function ke(k){let y=J(),_=$();if(y===void 0||!re(k,_))return Object.freeze({ok:false,operation:"pin",reason:"not-ready"});let ee=++K;q+=1;let ie=await ja(n,{conversation:y,message:k});return Ie(ee,_,y)?(ie.ok&&ie.operation==="pin"?(m.value=ie.value,Ce(ie.value.messageId),W.value=null):W.value=ie.ok?null:ie.error??null,ie):Object.freeze({ok:false,operation:"pin",reason:"stale"})}async function Se(){let k=J(),y=$();if(k===void 0||y===void 0)return Object.freeze({ok:false,operation:"unpin",reason:"not-ready"});let _=++K;q+=1;let ee=await ka(n,k);return Ie(_,y,k)?(ee.ok&&ee.operation==="unpin"?(m.value=null,W.value=null):W.value=ee.ok?null:ee.error??null,ee):Object.freeze({ok:false,operation:"unpin",reason:"stale"})}function je(){let k=J();if(k===void 0){m.value=null;return}try{m.value=ma(n,k);}catch{m.value=null;}}async function F(){let k=J(),y=$();if(k===void 0||y===void 0)return Object.freeze({ok:false,operation:"sync-pin",reason:"not-ready"});let _=n.getGeneration(),ee=++q;je();let ie=await la(n,k);return n.getGeneration()!==_||!le(ee,y,k)?Object.freeze({ok:false,operation:"sync-pin",reason:"stale"}):(ie.ok&&ie.operation==="sync-pin"?(m.value=ie.value,W.value=null):W.value=ie.ok?null:ie.error??null,ie)}function U(k){let y=new Map(k.map(oe=>[oe.id,oe])),_=oe=>oe.flatMap(Re=>{let ae=y.get(Re.id);return ae!==void 0&&Lt(ae)?[ae]:[]});if(w$1.value=_(w$1.value),V.value=_(V.value),z.value!==null){let oe=_(z.value);z.value=oe.length===0?null:oe;}let ee=s.editingMessage;if(ee!==null){let oe=y.get(ee.id);(oe===void 0||!Lt(oe))&&s.clearEditing();}let ie=s.input?.replyToMessageId;if(ie!==void 0){let oe=y.get(ie);oe!==void 0&&!Lt(oe)&&s.clearReplyTo(ie);}}let de=watch(()=>({ref:o.activeRef===null?null:`${o.activeRef.conversationType}:${o.activeRef.conversationId}`,messages:o.messages}),(k,y)=>{k.ref!==y?.ref&&(g+=1,K+=1,q+=1,je(),I.value=false,w$1.value=[],z.value=null,x(),W.value=null),U(k.messages);},{immediate:true}),fe=n.subscribeEvents(k=>{if(k.type!=="pinned-message:updated")return;let y=J();if(!(y===void 0||y.conversationId!==k.conversation.conversationId||y.conversationType!==k.conversation.conversationType)){if(q+=1,k.pinnedMessage===null){m.value=null;return}try{m.value=ma(n,y),Ce(k.pinnedMessage.messageId);}catch{}}});function ue(){g+=1,K+=1,q+=1,I.value=false,w$1.value=[],z.value=null,x(),W.value=null,je();}function De(){R||(R=true,de(),fe(),ue());}return wr.set(e,Object.freeze({dispose:De})),{activePinnedMessage:m,isMessageMultiSelect:I,selectedMessages:w$1,forwardPickerMessages:z,forwardTypeConfirmOpen:G,pendingForwardReadyMessages:V,error:W,enterMultiSelect:se,exitMultiSelect:L,isSelected:ne,toggleSelection:O,openForwardPicker:j,closeForwardPicker:X,prepareForwardFromSelection:C,cancelForwardTypeConfirmation:x,confirmForwardTypeConfirmation:A,forward:h,recall:ce,deleteLocal:pe,deleteForEveryone:ye,retry:H,pin:ke,unpin:Se,syncPinned:F,isPinnedMessageProtected:S,reset:ue}})}var hi=new WeakMap,Tr=new WeakMap;function Ut(e=Pe()){ge(e);let n=hi.get(e);n===void 0&&(n=vc(e),hi.set(e,n));let r=n(e),o=wr.get(e);if(o===void 0)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u521B\u5EFA ImMessageOperationsStore");return Tr.get(e)!==r&&(Tr.set(e,r),Oe(e,()=>{o.dispose(),r.$dispose(),Tr.get(e)===r&&(Tr.delete(e),wr.get(e)===o&&wr.delete(e));})),r}var Go=Object.freeze({availability:"unknown",reason:"not-ready"});function yc(e){return defineStore("k2-im-capabilities",()=>{let n=ge(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=Ut(e),c=shallowRef(null),m=false,I$1,w,z;function G$1(){w!==void 0&&(clearTimeout(w),w=void 0);}function V(O){G$1();let j=O.nextEvaluationAt;if(j===void 0)return;let C=Math.max(0,j-Date.now());w=setTimeout(()=>{w=void 0,g();},C);}function W(O){m||(c.value=O,V(O));}function R(O){let j=o.activeRef;return j!==null&&j.conversationType===O.conversationType&&j.conversationId===O.conversationId}function g(O=Date.now()){let j=o.activeRef,C=n.getProductClient();j===null||C===null||W(C.capabilities.get(j,{nowMs:O}));}function K(){I$1?.(),I$1=void 0,G$1(),c.value=null;let O=o.activeRef,j=n.getProductClient();O===null||j===null||(I$1=j.capabilities.subscribe(O,W));}function q(){K();}function $(){I$1?.(),I$1=void 0,G$1(),c.value=null;}async function re(){let O=o.activeRef,j=n.getProductClient();if(O===null||j===null)return;let C=n.getGeneration();try{let A=await j.capabilities.refresh(O);if(m||C!==n.getGeneration()||!R(O))return;W(A);}catch(A){if(m||C!==n.getGeneration()||!R(O))return;r.record("warn","pinia","profile","capability-refresh-failed",()=>({conversation:{...O},error:{message:"\u5237\u65B0\u4F1A\u8BDD\u80FD\u529B\u5931\u8D25\uFF0C\u4FDD\u7559\u5F53\u524D\u672C\u673A\u5FEB\u7167",data:A}})),W(j.capabilities.get(O));}}function S(O){return c.value===null?Go:G(c.value,O)}function x(O){return S(O)}function X(O){return S(O)}function L(O,j){let C=c.value;return C===null?Go:I(O,{snapshot:C,selfId:n.getCredentials().userId,...j})}function se(O,j){let C=c.value;return C===null?Go:H(O,{snapshot:C,message:j,selfId:n.getCredentials().userId,pinnedMessage:s.activePinnedMessage})}function ne(){m||(m=true,z?.(),z=void 0,$());}return z=watch(()=>o.activeRef,K,{deep:true,immediate:true}),{activeSnapshot:c,start:q,reset:$,refresh:re,conversationAction:S,profileAction:x,memberAction:X,memberTargetAction:L,messageAction:se,dispose:ne}})}var yi=new WeakMap,xr=new WeakMap;function bc(e=Pe()){ge(e);let n=yi.get(e);n===void 0&&(n=yc(e),yi.set(e,n));let r=n(e);return xr.get(e)!==r&&(xr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),xr.get(e)===r&&xr.delete(e);})),r}var qt=new WeakMap;function Ci(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Cc(e){return e.conversationType==="direct"||e.conversationType==="group"||e.conversationType==="channel"}function Rc(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function bi(e,n,r){let o=typeof e=="object"&&e!==null?e:null,s=n==="flush"?"IM_CHAT_KIT_DRAFT_SAVE_FAILED":"IM_CHAT_KIT_THREAD_OPERATION_FAILED";return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:s,category:o!==null&&Rc(o.category)?o.category:"state",operation:`conversation.activate.${n}`,retryable:o!==null&&typeof o.retryable=="boolean"?o.retryable:n==="flush",conversation:Ci(r)})}function Ri(e,n){return e?.conversationType===n.conversationType&&e.conversationId===n.conversationId}function Pc(e=Pe()){let n=ge(e),r=qt.get(e);if(r!==void 0&&!r.disposed)return r.coordinator;let o=n.runtime,s=o.getDiagnostics(),c=Wn(e),m=Ge(e),I={conversation:null,epoch:0,disposed:false,invalidatePendingOpen:m.invalidatePendingOpen};async function w(z){let G=Ci(z);I.conversation=G;let V=++I.epoch,W=o.getGeneration(),R=()=>!I.disposed&&I.epoch===V&&o.getGeneration()===W;if(m.invalidatePendingOpen(),s.record("debug","pinia","conversation","conversation-activation-start",()=>({generation:W,conversation:G})),!Cc(G))return s.record("warn","pinia","conversation","conversation-activation-unsupported",()=>({generation:W,conversation:G})),Object.freeze({ok:false,reason:"unsupported",conversation:G});let g=m.getHandle();if(g!==void 0&&c.hasPendingWork(g))try{await c.flush(g);}catch(K){if(!R())return Object.freeze({ok:false,reason:"stale",conversation:G});let q=bi(K,"flush",G);return s.record("warn","pinia","conversation","conversation-activation-draft-save-failed",()=>({generation:W,conversation:G,error:{message:"\u4F1A\u8BDD\u6FC0\u6D3B\u524D\u4FDD\u5B58\u8349\u7A3F\u5931\u8D25",data:q}})),Object.freeze({ok:false,reason:"draft-save-failed",conversation:G,error:q})}if(!R())return Object.freeze({ok:false,reason:"stale",conversation:G});if(m.getHandle()!==void 0&&Ri(m.activeRef,G))return s.record("debug","pinia","conversation","conversation-activation-complete",()=>({generation:W,conversation:G,data:{reused:true}})),Object.freeze({ok:true,status:"opened",conversation:G});try{if(await m.open(G)===void 0||!R())return Object.freeze({ok:!1,reason:"stale",conversation:G})}catch(K){if(!R())return Object.freeze({ok:false,reason:"stale",conversation:G});let q=bi(K,"open",G);return s.record("warn","pinia","conversation","conversation-activation-open-failed",()=>({generation:W,conversation:G,error:{message:"\u76EE\u6807\u4F1A\u8BDD\u6253\u5F00\u5931\u8D25\uFF0C\u4FDD\u7559\u5F53\u524D\u7EBF\u7A0B",data:q}})),Object.freeze({ok:false,reason:"open-failed",conversation:G,error:q})}return s.record("debug","pinia","conversation","conversation-activation-complete",()=>({generation:W,conversation:G})),Object.freeze({ok:true,status:"opened",conversation:G})}return I.coordinator=Object.freeze({activate:w}),qt.set(e,I),Oe(e,()=>{I.disposed=true,I.conversation=null,I.epoch+=1,qt.get(e)===I&&qt.delete(e);}),I.coordinator}function Pi(e,n){let r=qt.get(e);r===void 0||r.disposed||!Ri(r.conversation,n)||(r.epoch+=1,r.invalidatePendingOpen());}function ki(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Mc(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function pt(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_CONVERSATION_LIST_ACTION_FAILED",category:o!==null&&Mc(o.category)?o.category:"state",operation:o!==null&&typeof o.operation=="string"?o.operation:`conversation-list.${n}`,retryable:o!==null&&typeof o.retryable=="boolean"?o.retryable:n==="refresh"||n==="set-muted"||n==="mark-read",...r===void 0?{}:{conversation:r}})}function Sc(e){return defineStore("k2-im-conversation-list",()=>{let n=ge(e).runtime,r=n.getDiagnostics(),o=ref([]),s=ref("idle"),c=ref(0),m=shallowRef(null),I=false,w=null,z,G=0;function V(C="idle"){o.value=[],s.value=C,c.value=0,m.value=null;}function W(C,A,h){I||w!==A||n.getGeneration()!==h||(o.value=C.items,s.value=C.state,c.value=C.totalUnread,m.value=C.error??null);}function R(C){if(I)throw new Error("Conversation List Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u91CD\u65B0\u7ED1\u5B9A");if(w===C||(z?.(),z=void 0,w=C,G+=1,V(),C===null))return;let A=n.getGeneration();z=C.conversations.subscribe(h=>W(h,C,A)),r.record("debug","pinia","conversation","conversation-list-subscribed",()=>({generation:A}));}function g(){R(n.getProductClient());}function K(){R(null);}function q(C){return !I&&w===C.client&&n.getProductClient()===C.client&&n.getGeneration()===C.generation&&G===C.bindingEpoch}function $(){let C=n.ensureProductClient();return R(C),{client:C,generation:n.getGeneration(),bindingEpoch:G}}async function re(){if(I)return Object.freeze({ok:false,operation:"refresh",reason:"stale"});let C;try{C=$();}catch(A){return Object.freeze({ok:false,operation:"refresh",reason:"failed",error:pt(A,"refresh")})}try{return await C.client.conversations.refresh(),q(C)?Object.freeze({ok:!0,operation:"refresh"}):Object.freeze({ok:!1,operation:"refresh",reason:"stale"})}catch(A){return q(C)?Object.freeze({ok:false,operation:"refresh",reason:"failed",error:pt(A,"refresh")}):Object.freeze({ok:false,operation:"refresh",reason:"stale"})}}function S(C,A,h){let M=ki(A);if(I)return Object.freeze({ok:false,operation:C,reason:"stale",conversation:M});let D;try{D=$();}catch(ce){return Object.freeze({ok:false,operation:C,reason:"failed",conversation:M,error:pt(ce,C,M)})}try{h(D.client,M);}catch(ce){return q(D)?Object.freeze({ok:false,operation:C,reason:"failed",conversation:M,error:pt(ce,C,M)}):Object.freeze({ok:false,operation:C,reason:"stale",conversation:M})}return q(D)?Object.freeze({ok:true,operation:C,conversation:M}):Object.freeze({ok:false,operation:C,reason:"stale",conversation:M})}async function x(C,A,h){let M=ki(A);if(I)return Object.freeze({ok:false,operation:C,reason:"stale",conversation:M});let D;try{D=$();}catch(ce){return Object.freeze({ok:false,operation:C,reason:"failed",conversation:M,error:pt(ce,C,M)})}try{return await h(D.client,M),q(D)?Object.freeze({ok:!0,operation:C,conversation:M}):Object.freeze({ok:!1,operation:C,reason:"stale",conversation:M})}catch(ce){return q(D)?Object.freeze({ok:false,operation:C,reason:"failed",conversation:M,error:pt(ce,C,M)}):Object.freeze({ok:false,operation:C,reason:"stale",conversation:M})}}function X(C,A){return S("set-pinned",C,(h,M)=>h.conversations.setPinned(M,A))}function L(C,A){return x("set-muted",C,(h,M)=>h.conversations.setMuted(M,A))}function se(C){return x("mark-read",C,(A,h)=>A.conversations.markRead(h))}function ne(C){return S("mark-unread",C,(A,h)=>A.conversations.markUnread(h))}function O(C){return S("delete-local",C,(A,h)=>A.conversations.deleteLocal(h))}function j(){I||(z?.(),z=void 0,w=null,V(),I=true);}return {items:o,state:s,totalUnread:c,error:m,start:g,reset:K,refresh:re,setPinned:X,setMuted:L,markRead:se,markUnread:ne,deleteLocal:O,dispose:j}})}var Oi=new WeakMap,zr=new WeakMap;function _o(e=Pe()){ge(e);let n=Oi.get(e);n===void 0&&(n=Sc(e),Oi.set(e,n));let r=n(e);return zr.get(e)!==r&&(zr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),zr.get(e)===r&&zr.delete(e);})),r}var xc=250,zc=2e3;function Si(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Fo(e,n){return e!==null&&e.conversationId===n.conversationId&&e.conversationType===n.conversationType}function Ko(e,n,r){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"?e:Object.freeze({code:"IM_CHAT_KIT_SEARCH_OPERATION_FAILED",category:"state",operation:n,retryable:false,...r===void 0?{}:{conversation:Si(r)}})}function Ac(e){return defineStore("k2-im-search",()=>{let n=ge(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=ref(""),c=ref([]),m=ref(false),I=ref(false),w=ref("all"),z=ref(""),G=ref(""),V=shallowRef(null),W=false,R=0,g=0,K,q,$,re;function S(){let H=o.activeRef,J=o.getHandle();if(!(W||H===null||J===void 0||!Fo(H,J.ref)))return {ref:Si(H),handle:J,generation:n.getGeneration()}}function x(H){return !W&&n.getGeneration()===H.generation&&o.getHandle()===H.handle&&Fo(o.activeRef,H.ref)}function X(){let H=q;H!==void 0&&(clearTimeout(H.timer),q=void 0,H.resolve(Object.freeze({ok:false,operation:"search",reason:"stale"})));}function L(){$!==void 0&&(clearTimeout($),$=void 0);}function se(H,J){return J===R&&(m.value=false),Object.freeze({ok:false,operation:H,reason:"stale"})}function ne(H,J){return H===g&&z.value===J&&(z.value=""),Object.freeze({ok:false,operation:"locate",reason:"stale"})}function O(H,J,Ie){switch(Ie){case "all":return ya(n,{conversation:H.ref,keyword:J});case "text":return za(n,{conversation:H.ref,keyword:J});case "file":return Aa(n,{conversation:H.ref,keyword:J});case "image":return Ba(n,{conversation:H.ref});case "video":return Ca(n,{conversation:H.ref});case "voice":return Da(n,{conversation:H.ref})}}function j(H,J){return H!==""?true:J!=="all"&&J!=="text"}function C(H){s.value=H,X();let J=++R,Ie=H.trim(),le=w.value,Ce=j(Ie,le);if(K=void 0,c.value=[],I.value=false,V.value=null,!Ce)return m.value=false,Promise.resolve(Object.freeze({ok:false,operation:"search",reason:"no-condition"}));let ke=S();return ke===void 0?(m.value=false,Promise.resolve(Object.freeze({ok:false,operation:"search",reason:"not-ready"}))):(m.value=true,new Promise(Se=>{let je=setTimeout(()=>{if(q?.timer===je&&(q=void 0),J!==R||!x(ke)){Se(se("search",J));return}r.record("debug","pinia","history","search-start",()=>({generation:ke.generation,conversation:ke.ref,category:le})),O(ke,Ie,le).then(F=>{if(J!==R||!x(ke)){Se(se("search",J));return}c.value=[...F.results],K=F.nextPageToken,I.value=!F.exhausted,m.value=false,Se(Object.freeze({ok:true,operation:"search"}));}).catch(F=>{if(J!==R||!x(ke)){Se(se("search",J));return}let U=Ko(F,"search.first-page",ke.ref);V.value=U,m.value=false,Se(Object.freeze({ok:false,operation:"search",reason:"failed",error:U}));});},xc);q={timer:je,resolve:Se};}))}function A(H){return w.value=H,(H==="image"||H==="video"||H==="voice")&&(s.value=""),C(s.value)}async function h(){if(m.value)return Object.freeze({ok:false,operation:"load-more",reason:"busy"});if(!I.value||K===void 0)return Object.freeze({ok:false,operation:"load-more",reason:"exhausted"});let H=S();if(H===void 0)return Object.freeze({ok:false,operation:"load-more",reason:"not-ready"});let J=K,Ie=++R;m.value=true,V.value=null;try{let le=await Ea(n,J);return Ie!==R||!x(H)?se("load-more",Ie):(c.value=[...c.value,...le.results],K=le.nextPageToken,I.value=!le.exhausted,m.value=!1,Object.freeze({ok:!0,operation:"load-more"}))}catch(le){if(Ie!==R||!x(H))return se("load-more",Ie);let Ce=Ko(le,"search.next-page",H.ref);return V.value=Ce,m.value=false,Object.freeze({ok:false,operation:"load-more",reason:"failed",error:Ce})}}async function M(H,J){let Ie=S();if(Ie===void 0||!Fo(Ie.ref,H))return Object.freeze({ok:false,operation:"locate",reason:"not-ready"});let le=++g;L(),G.value="",z.value=J,V.value=null;try{return !o.messages.some(ke=>ke.id===J)&&!await o.loadAround(J)||(await nextTick(),le!==g||!x(Ie))?ne(le,J):(G.value=J,Object.freeze({ok:!0,operation:"locate"}))}catch(Ce){if(le!==g||!x(Ie))return ne(le,J);let ke=Ko(Ce,"search.locate",Ie.ref);return z.value="",V.value=ke,Object.freeze({ok:false,operation:"locate",reason:"failed",error:ke})}}function D(H){if(z.value!==H)return false;z.value="";let J=g,Ie=S();return L(),Ie===void 0||G.value!==H||($=setTimeout(()=>{$=void 0,J===g&&x(Ie)&&G.value===H&&(G.value="");},zc)),true}function ce(){g+=1,L(),z.value="",G.value="";}function pe(H){R+=1,X(),s.value="",c.value=[],m.value=false,I.value=false,w.value="all",K=void 0,V.value=null,H?.preserveLocation!==true&&ce();}function ye(){W||(pe(),W=true,re?.(),re=void 0);}return re=watch(()=>o.activeRef===null?"":`${o.activeRef.conversationType}\0${o.activeRef.conversationId}`,()=>pe(),{flush:"sync"}),{keyword:s,results:c,searching:m,hasMore:I,category:w,locatingMessageId:z,highlightMessageId:G,error:V,search:C,setCategory:A,loadMore:h,locate:M,completeLocation:D,clearLocation:ce,reset:pe,dispose:ye}})}var Mi=new WeakMap,Ar=new WeakMap;function Mn(e=Pe()){ge(e);let n=Mi.get(e);n===void 0&&(n=Ac(e),Mi.set(e,n));let r=n(e);return Ar.get(e)!==r&&(Ar.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),Ar.get(e)===r&&Ar.delete(e);})),r}var Gr=new WeakMap;function Ei(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Gc(e){return e.conversationType==="direct"||e.conversationType==="group"||e.conversationType==="channel"}function Dc(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function _c(e,n){let r=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:r!==null&&typeof r.code=="string"?r.code:"IM_CHAT_KIT_CONVERSATION_DELETE_FAILED",category:r!==null&&Dc(r.category)?r.category:"state",operation:"conversation.deleteLocal",retryable:r!==null&&typeof r.retryable=="boolean"?r.retryable:false,conversation:Ei(n)})}function Fc(e=Pe()){let n=ge(e),r=Gr.get(e);if(r!==void 0&&!r.disposed)return r.coordinator;let o=n.runtime,s=o.getDiagnostics(),c=_o(e),m=Ge(e),I=Wn(e),w=Ut(e),z=Mn(e),G={disposed:false};function V(W){let R=Ei(W);if(G.disposed)return Object.freeze({ok:false,reason:"stale",conversation:R});let g=o.getGeneration(),K=m.activeRef!==null&&m.activeRef.conversationType===R.conversationType&&m.activeRef.conversationId===R.conversationId;if(s.record("debug","pinia","conversation","conversation-delete-start",()=>({generation:g,conversation:R})),!Gc(R))return Object.freeze({ok:false,reason:"unsupported",conversation:R});let q=c.deleteLocal(R);if(!q.ok){if(q.reason==="stale")return Object.freeze({ok:false,reason:"stale",conversation:R});let S=_c(q.error,R);return s.record("warn","pinia","conversation","conversation-delete-failed",()=>({generation:g,conversation:R,error:{message:"\u672C\u673A\u4F1A\u8BDD\u5220\u9664\u5931\u8D25\uFF0C\u4FDD\u7559\u5F53\u524D\u7EBF\u7A0B",data:S}})),Object.freeze({ok:false,reason:"delete-failed",conversation:R,error:S})}if(G.disposed||o.getGeneration()!==g)return Object.freeze({ok:false,reason:"stale",conversation:R});Pi(e,R);let $=m.closeActiveConversation(R),re=K||$;return re&&(I.reset(),w.reset(),z.reset()),s.record("debug","pinia","conversation","conversation-delete-complete",()=>({generation:g,conversation:R,data:{activeConversationCleared:re}})),Object.freeze({ok:true,status:"deleted",conversation:R,activeConversationCleared:re})}return G.coordinator=Object.freeze({deleteLocal:V}),Gr.set(e,G),Oe(e,()=>{G.disposed=true,Gr.get(e)===G&&Gr.delete(e);}),G.coordinator}var ji=30,Hc=15,Nc=20,Lc=4294967295,Ti=new WeakMap;function _r(e){return typeof e=="object"&&e!==null}function yt(e,n){if(typeof e!="string"||e.trim()==="")throw new TypeError(`expression recent persistence ${n} \u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32`);return e.trim()}function wi(e,n){if(!Number.isSafeInteger(e)||Number(e)<=0||Number(e)>Lc)throw new TypeError(`expression recent persistence ${n} \u5FC5\u987B\u662F\u6B63 uint32`);return Number(e)}function Uc(e,n){if(!_r(e)||e.kind!==n)throw new TypeError("expression recent persistence asset kind \u65E0\u6548");let r=yt(e.url,"asset.url"),o;try{o=new URL(r);}catch{throw new TypeError("expression recent persistence asset.url \u5FC5\u987B\u662F\u5408\u6CD5 URL")}if(o.protocol!=="http:"&&o.protocol!=="https:"||o.username!==""||o.password!=="")throw new TypeError("expression recent persistence asset.url \u53EA\u5141\u8BB8\u65E0\u51ED\u636E HTTP(S)");let s=wi(e.width,"asset.width"),c=wi(e.height,"asset.height");if(n==="sticker")return Object.freeze({kind:"sticker",packageId:yt(e.packageId,"asset.packageId"),resourceId:yt(e.resourceId,"asset.resourceId"),url:r,width:s,height:c});if(Object.prototype.hasOwnProperty.call(e,"packageId"))throw new TypeError("expression recent persistence GIF \u4E0D\u5141\u8BB8 packageId");let m=e.resourceId===void 0?void 0:yt(e.resourceId,"asset.resourceId");return Object.freeze({kind:"gif",...m===void 0?{}:{resourceId:m},url:r,width:s,height:c})}function $t(e,n){let r=Ti.get(e);r===void 0&&(r=new Map,Ti.set(e,r));let o=r.get(n);return o===void 0&&(o={revision:0,kindRevisions:{sticker:0,gif:0,emoji:0},status:"idle",tail:Promise.resolve(),latestSnapshot:null,error:null},r.set(n,o)),o}function xi(e,n,r,o){let s=$t(e,n),c=++s.revision;for(let I of o)s.kindRevisions[I]+=1;s.status="pending",s.latestSnapshot=r,s.error=null;let m=s.tail.catch(()=>{}).then(()=>e.save(n,r));return s.tail=m,m.then(()=>{s.revision===c&&(s.status="saved",s.error=null);},I=>{s.revision===c&&(s.status="failed",s.error=I);}),{coordinator:s,revision:c,promise:m}}var Fr=new WeakMap;function Vt(){return reactive({loading:false,loaded:false,error:null})}function gt(e){return {sticker:e(),gif:e()}}function zi(e){return {sticker:e(),gif:e(),emoji:e()}}function Fn(e,n){return Object.freeze({loading:e.loading,loaded:e.loaded,empty:e.loaded&&!e.loading&&e.error===null&&n===0,error:e.error})}function qc(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function It(e,n){let r=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:r!==null&&typeof r.code=="string"?r.code:"IM_CHAT_KIT_EXPRESSION_OPERATION_FAILED",category:r!==null&&qc(r.category)?r.category:"state",operation:r!==null&&typeof r.operation=="string"?r.operation:`expressions.${n}`,retryable:r!==null&&typeof r.retryable=="boolean"?r.retryable:n==="hydrate-recent"||n.startsWith("load-")})}function Ho(e){return Object.freeze({code:e.code,category:e.category??"state",operation:e.operation,retryable:e.retryable??false})}function Ai(e){let n=e.trim();if(n==="")throw new TypeError("expression recordId \u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32");return n}function ht(e){return "recordId"in e?e.recordId:void 0}function Vc(e){let n=[];for(let r=0;r<e.length;r+=ji)n.push(e.slice(r,r+ji));return n}function Kr(e){return e==="gif"?Nc:Hc}function Ne(e){return e.kind==="sticker"?["sticker",e.packageId.trim(),e.resourceId.trim()].join("\0"):["gif",e.resourceId?.trim()||e.url].join("\0")}function No(e,n){let r=Ne(n);return Object.freeze([Object.freeze({...n}),...e.filter(o=>o.kind==="emoji"?true:Ne(o)!==r)].slice(0,Kr(n.kind)))}function $c(e,n){let r=Ne(n);return Object.freeze([Object.freeze({...n}),...e.filter(o=>Ne(o)!==r)])}function Gi(e,n,r){let o=[],s=new Set;for(let c of [...r.values(),...n]){if(c.kind==="emoji")continue;let m=Ne(c);if(!(c.kind!==e||s.has(m))&&(s.add(m),o.push(Object.freeze({...c})),o.length===Kr(e)))break}return Object.freeze(o)}function Di(e){let n=new Set;return Object.freeze(e.filter(r=>n.has(r.resourceId)?false:(n.add(r.resourceId),true)))}function qo(e){let n=k(e.token);return n!==void 0?`token:${n.code}`:h(e.resourceId)?.stableKey??h(e.token)?.stableKey??`server:${e.resourceId}`}function Lo(e,n,r){let o=e.filter(I=>I.kind==="emoji").slice(0,14).map(I=>Object.freeze({kind:"emoji",stableKey:qo(I),token:I.token,resourceId:I.resourceId})),s=n.filter(I=>I.kind==="game"||r.has(I.stableKey)),c=[],m=new Set;for(let I of [...s,...o])if(!m.has(I.stableKey)&&(m.add(I.stableKey),c.push(I),c.length===14))break;return Object.freeze(c)}function Uo(e){return Object.freeze({kind:"game",gameType:e,stableKey:e==="dice"?c:b})}function Bc(e){return defineStore("k2-im-expression",()=>{let n=ge(e),r=n.runtime,o=n.expressionRecentPersistence,s=r.getDiagnostics(),c=ref(""),m=ref([]),I=ref({}),w=Vt(),z=reactive({}),G=ref({sticker:[],gif:[]}),V=gt(Vt),W=ref({sticker:[],gif:[]}),R=ref({sticker:[],gif:[],emoji:[]}),g=zi(Vt),K=ref({sticker:[],gif:[],emoji:[]}),q=ref([]),$=ref("idle"),re=ref(""),S=ref([]),x=ref(0),X=Vt(),L=ref(void 0),se=computed(()=>Fn(w,m.value.length)),ne=computed(()=>{let d=new Set([...Object.keys(z),...Object.keys(I.value)]);return Object.fromEntries([...d].map(p=>{let v=z[p]??{loading:false,loaded:true,error:null};return [p,Fn(v,I.value[p]?.length??0)]}))}),O=computed(()=>({sticker:Fn(V.sticker,G.value.sticker.length),gif:Fn(V.gif,G.value.gif.length)})),j=computed(()=>({sticker:Fn(g.sticker,R.value.sticker.length),gif:Fn(g.gif,R.value.gif.length),emoji:Fn(g.emoji,q.value.length)})),C=computed(()=>Fn(X,S.value.length)),A=computed(()=>L.value!==void 0),h=false,M=0,D=0,ce={},pe=gt(()=>0),ye=zi(()=>0),H=0,J=0,Ie=0,le=0,Ce=0,ke=null,Se=null,je=null,F="emoji",U=new Set,de=[],fe=null,ue=null,De=null,k=null,y=gt(()=>new Map),_=gt(()=>new Map),ee=new Map,ie=new Map,oe=gt(()=>Promise.resolve());function Re(){let d=r.getCredentials();return {client:r.ensureProductClient(),generation:r.getGeneration(),stateEpoch:M,accountId:d.userId}}function ae(d){return !h&&d.client===r.getProductClient()&&d.generation===r.getGeneration()&&d.stateEpoch===M&&d.accountId===r.getCredentials().userId}function he(d){return Object.freeze({ok:false,operation:d,reason:"stale"})}function we(d,p,v){let b=It(p,d);return v.error=b,Object.freeze({ok:false,operation:d,reason:"failed",error:b})}function Ke(){return Object.freeze({ok:false,reason:"stale"})}function io(d){return d.kind==="emoji"?null:d.kind==="sticker"?Object.freeze({kind:"sticker",packageId:d.packageId,resourceId:d.resourceId,url:d.url,width:d.width,height:d.height}):Object.freeze({kind:"gif",...d.resourceId===void 0||d.resourceId===""?{}:{resourceId:d.resourceId},url:d.url,width:d.width,height:d.height})}function yn(){let d=p=>Object.freeze(R.value[p].flatMap(v=>{let b=io(v);return b===null?[]:[Object.freeze({asset:b,pendingSync:y[p].has(Ne(b))})]}).slice(0,Kr(p)));return Object.freeze({version:1,sticker:d("sticker"),gif:d("gif"),emoji:Object.freeze(q.value.map(p=>p.kind==="game"?Object.freeze({...p}):Object.freeze({...p,pendingSync:ee.has(p.stableKey)})))})}function bn(){for(let d of ["sticker","gif","emoji"])g[d].error?.code==="IM_CHAT_KIT_EXPRESSION_RECENT_PERSIST_FAILED"&&(g[d].error=null);}function ln(d,p){let v=Ho({code:"IM_CHAT_KIT_EXPRESSION_RECENT_PERSIST_FAILED",operation:"expressions.recent.persist",retryable:true});return p.error=v,Object.freeze({ok:false,operation:d,reason:"failed",error:v})}function Zt(d,p,v,b=[p]){let P=o,T=++Ie,Z=xi(P,d.accountId,v,b);Ce=Z.revision;let te=Z.promise.then(()=>(ae(d)&&T===Ie&&bn(),true),Y=>{if(!ae(d)||T!==Ie)return false;let me=Ho({code:"IM_CHAT_KIT_EXPRESSION_RECENT_PERSIST_FAILED",operation:"expressions.recent.persist",retryable:true});return g[p].error=me,s.record("warn","pinia","storage","expression-recent-persist-failed",()=>({generation:d.generation,error:{message:me.code,data:Y}})),false});return {...Z,settled:te}}function Sn(d){return ke!==null&&$e(ke,d)}function Cn(d){if(De!==null)return De;let v=(async()=>{for(;ae(d)&&!Sn(d);){let P=k!==null&&$e(k.context,d)?k:null;if(P!==null){let Z=await P.promise;if(Z.ok||!ae(d)||Z.reason!=="stale")return;continue}let T=await qe();if(T.ok||!ae(d)||T.reason!=="stale")return}})();De=v;let b=()=>{De===v&&(De=null);};return v.then(b,b),v}function cn(d,p,v){if(!ae(d))return Promise.resolve();if(le+=1,o===void 0||d.accountId==="")return ke=d,Promise.resolve();let b=yn();return Sn(d)?Zt(d,p,b).settled.then(()=>{}):(je=b,F=p,U.add(p),de.push(v),Cn(d))}function er(){return {sticker:Object.freeze([]),gif:Object.freeze([]),emoji:Object.freeze([]),pendingSticker:new Map,pendingGif:new Map,pendingEmoji:new Map}}function un(d$1,p){let v=[...d$1.sticker],b=[...d$1.gif],P=[...d$1.emoji],T=new Map(d$1.pendingSticker),Z=new Map(d$1.pendingGif),te=new Map(d$1.pendingEmoji);for(let Y of p){if(Y.type==="prepend-asset"){(Y.kind==="sticker"?T:Z).set(Ne(Y.asset),Y.asset),Y.kind==="sticker"?v=[...No(v,Y.asset)]:b=[...No(b,Y.asset)];continue}if(Y.type==="prepend-emoji"||Y.type==="prepend-emojis"){let ve=Y.type==="prepend-emoji"?[Y.entry]:Y.entries;for(let ze of ve)ze.kind==="emoji"&&te.set(ze.stableKey,ze),P=[...d(P,ze)];continue}if(Y.type==="authoritative"){if(Y.kind==="emoji"){for(let ve of Y.items)if(ve.kind==="emoji")for(let[ze,_e]of te)_e.resourceId===ve.resourceId&&te.delete(ze);P=[...Lo(Y.items,P,new Set(te.keys()))];}else {let ve=Y.kind==="sticker"?T:Z;for(let _e of Y.items)_e.kind===Y.kind&&ve.delete(Ne(_e));let ze=Gi(Y.kind,Y.items,ve);Y.kind==="sticker"?v=[...ze]:b=[...ze];}continue}if(Y.type==="delete-assets"){let ve=new Set(Y.identities),ze=Y.kind==="sticker"?T:Z,_e=Ee=>Ee.kind==="emoji"||!ve.has(Ne(Ee))||ze.has(Ne(Ee));Y.kind==="sticker"?v=v.filter(_e):b=b.filter(_e);continue}let me=new Set(Y.resourceIds);P=P.filter(ve=>ve.kind==="game"||!me.has(ve.resourceId)||te.has(ve.stableKey));}return {sticker:Object.freeze(v),gif:Object.freeze(b),emoji:Object.freeze(P),pendingSticker:T,pendingGif:Z,pendingEmoji:te}}function tt(d){if(!_r(d)||d.version!==1||!Array.isArray(d.sticker)||!Array.isArray(d.gif)||!Array.isArray(d.emoji))throw new TypeError("expression recent persistence snapshot \u683C\u5F0F\u6216\u7248\u672C\u65E0\u6548");let p=(te,Y)=>{let me=[],ve=new Map,ze=new Set;for(let _e of Y){if(!_r(_e)||typeof _e.pendingSync!="boolean")throw new TypeError("expression recent persistence asset entry \u683C\u5F0F\u65E0\u6548");let Ee=Uc(_e.asset,te),He=Ne(Ee);ze.has(He)||(ze.add(He),me.length<Kr(te)&&(me.push(Ee),_e.pendingSync&&ve.set(He,Ee)));}return {items:Object.freeze(me),pending:ve}},v=p("sticker",d.sticker),b=p("gif",d.gif),P=[],T=new Map,Z=new Set;for(let te of d.emoji){if(!_r(te)||typeof te.stableKey!="string"||te.stableKey.trim()===""||te.kind!=="emoji"&&te.kind!=="game")throw new TypeError("expression recent persistence emoji entry \u683C\u5F0F\u65E0\u6548");let Y=te.stableKey.trim(),me,ve=false;if(te.kind==="game"){if(te.gameType!=="dice"&&te.gameType!=="rock-paper-scissors")throw new TypeError("expression recent persistence gameType \u65E0\u6548");if(me=Uo(te.gameType),me.stableKey!==Y)throw new TypeError("expression recent persistence game stableKey \u65E0\u6548")}else {let ze=yt(te.token,"emoji.token"),_e=yt(te.resourceId,"emoji.resourceId");if(typeof te.pendingSync!="boolean")throw new TypeError("expression recent persistence emoji.pendingSync \u65E0\u6548");ve=te.pendingSync,me=Object.freeze({kind:"emoji",stableKey:Y,token:ze,resourceId:_e});}Z.has(Y)||(Z.add(Y),P.length<14&&(P.push(me),me.kind==="emoji"&&ve&&T.set(Y,me)));}return {sticker:v.items,gif:b.items,emoji:Object.freeze(P),pendingSticker:v.pending,pendingGif:b.pending,pendingEmoji:T}}function Rn(d){R.value={sticker:d.sticker,gif:d.gif,emoji:[]},K.value={sticker:[],gif:[],emoji:[]},q.value=d.emoji,y.sticker.clear(),y.gif.clear(),ee.clear();for(let[p,v]of d.pendingSticker)y.sticker.set(p,v);for(let[p,v]of d.pendingGif)y.gif.set(p,v);for(let[p,v]of d.pendingEmoji)ee.set(p,v);for(let p of ["sticker","gif","emoji"])Object.assign(g[p],{loading:false,loaded:true,error:null});}function Ue(d,p){if(o===void 0||d.accountId==="")return 0;let v=$t(o,d.accountId);return p===void 0?v.revision:v.kindRevisions[p]}function Ae(d){if(o===void 0||d.accountId===""||!Sn(d))return;let p=$t(o,d.accountId);if(p.revision===Ce)return;let v=p.latestSnapshot===null?er():tt(p.latestSnapshot),b=(P,T)=>{let Z=P==="sticker"?v.pendingSticker:v.pendingGif,te=new Map(R.value[P].flatMap(Y=>Y.kind==="emoji"||Y.kind!==P?[]:[[Ne(Y),Y]]));return Object.freeze(T.map(Y=>{if(Y.kind==="emoji"||Y.kind!==P)return Y;let me=Ne(Y);if(Z.has(me))return Y;let ve=ht(te.get(me)??Y);return Object.freeze({...Y,...ve===void 0?{}:{recordId:ve}})}))};R.value={sticker:b("sticker",v.sticker),gif:b("gif",v.gif),emoji:R.value.emoji},q.value=v.emoji,y.sticker.clear(),y.gif.clear(),ee.clear();for(let[P,T]of v.pendingSticker)y.sticker.set(P,T);for(let[P,T]of v.pendingGif)y.gif.set(P,T);for(let[P,T]of v.pendingEmoji)ee.set(P,T);for(let P of ["sticker","gif"]){let T=new Set(R.value[P].flatMap(Z=>ht(Z)===void 0?[]:[ht(Z)]));K.value={...K.value,[P]:Object.freeze(K.value[P].filter(Z=>T.has(Z)))};}Ce=p.revision;}async function dn(d,p,v,b){let P="hydrate-recent";g.emoji.error=null;try{let T=null,Z=0;if(o!==void 0&&d.accountId!==""){T=$t(o,d.accountId);let Ee=T.latestSnapshot;if(!b&&T.status==="failed"&&Ee!==null&&xi(o,d.accountId,Ee,[]),Z=T.revision,await T.tail.catch(()=>{}),p!==J||!ae(d)||le!==v||T.revision!==Z)return he(P);if(!b&&T.status==="failed")return ln(P,g.emoji);T.status==="saved"&&fe!==null&&T.latestSnapshot===fe&&je===ue&&(je=null,U.clear(),de.length=0,fe=null,ue=null);}let te=o===void 0||d.accountId===""?null:await o.load(d.accountId);if(p!==J||!ae(d)||le!==v||T!==null&&T.revision!==Z)return he(P);let Y;try{Y=te===null?er():tt(te);}catch(Ee){let He=o?.clearInvalid;if(te!==null&&d.accountId!==""&&He!==void 0)try{await He(d.accountId,te);}catch(Xe){throw new Error("expression recent persistence \u635F\u574F\u5FEB\u7167\u6E05\u7406\u5931\u8D25",{cause:Xe})}throw Ee}let me=b?null:je,ve=new Set(U),ze=[...de],_e=me===null?Y:un(Y,ze);if(Rn(_e),Ce=Z,b){if(je=null,U.clear(),de.length=0,fe=null,ue=null,T!==null){T.revision+=1;for(let Ee of ["sticker","gif","emoji"])T.kindRevisions[Ee]+=1;T.status="saved",T.latestSnapshot=te,T.error=null,Ce=T.revision;}return ke=d,bn(),Object.freeze({ok:!0,operation:P})}if(me!==null&&o!==void 0&&d.accountId!==""){let Ee=yn();fe=Ee,ue=me;let He=Zt(d,F,Ee,[...ve]),Xe=await He.settled;if(p!==J||!ae(d)||le!==v||He.coordinator.revision!==He.revision)return he(P);if(!Xe)return ln(P,g.emoji);je===me&&(je=null,U.clear(),de.length=0,fe=null,ue=null);}return ke=d,Object.freeze({ok:!0,operation:P})}catch(T){return p!==J||!ae(d)?he(P):we(P,T,g.emoji)}}function $e(d,p){return d.client===p.client&&d.generation===p.generation&&d.stateEpoch===p.stateEpoch&&d.accountId===p.accountId}function qe(d={}){let p="hydrate-recent";if(h)return Promise.resolve(he(p));let v;try{v=Re();}catch(me){let ve=we(p,me,g.emoji);return !ve.ok&&ve.reason==="failed"&&(Se=ve.error??g.emoji.error),Promise.resolve(ve)}let b=o===void 0||v.accountId===""?null:$t(o,v.accountId);if(!d.force&&Sn(v)&&je===null&&(b===null||(b.status==="idle"||b.status==="saved")&&b.revision===Ce))return Se=null,Promise.resolve(Object.freeze({ok:true,operation:p}));if(!d.force&&k!==null&&!k.force&&k.stateRevision===le&&$e(k.context,v))return k.promise;let P=++J,T=le,Z=dn(v,P,T,d.force===true).then(me=>(me.ok?Se=null:me.reason==="failed"&&(Se=me.error??g.emoji.error),me)),te={context:v,stateRevision:T,force:d.force===true,promise:Z};k=te;let Y=()=>{k===te&&(k=null);};return Z.then(Y,Y),Z}async function fn(d){let p="load-packs";if(h)return he(p);let v=++D,b;try{b=Re();}catch(P){return we(p,P,w)}w.loading=true,w.error=null;try{let P=await b.client.expressions.packs.list(d);return v!==D||!ae(b)?he(p):(c.value=P.version,m.value=Object.freeze([...P.items]),w.loaded=!0,Object.freeze({ok:!0,operation:p}))}catch(P){return v!==D||!ae(b)?he(p):we(p,P,w)}finally{v===D&&ae(b)&&(w.loading=false);}}async function En(d){let p="load-pack-items";if(h)return he(p);let v=d.trim();if(v===""){let Z=It(new TypeError("packageId \u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32"),p);return Object.freeze({ok:false,operation:p,reason:"failed",error:Z})}let b=z[v]??=Vt(),P=(ce[v]??0)+1;ce[v]=P;let T;try{T=Re();}catch(Z){return we(p,Z,b)}b.loading=true,b.error=null;try{let Z=await T.client.expressions.packs.listItems(v);return ce[v]!==P||!ae(T)?he(p):(I.value={...I.value,[v]:Object.freeze([...Z])},b.loaded=!0,Object.freeze({ok:!0,operation:p}))}catch(Z){return ce[v]!==P||!ae(T)?he(p):we(p,Z,b)}finally{ce[v]===P&&ae(T)&&(b.loading=false);}}async function rt(d){let p="load-favorites";if(h)return he(p);let v=++pe[d],b=V[d],P;try{P=Re();}catch(T){return we(p,T,b)}b.loading=true,b.error=null;try{let T=await P.client.expressions.favorites.list(d);return pe[d]!==v||!ae(P)?he(p):(Nn(d,T),b.loaded=!0,Object.freeze({ok:!0,operation:p}))}catch(T){return pe[d]!==v||!ae(P)?he(p):we(p,T,b)}finally{pe[d]===v&&ae(P)&&(b.loading=false);}}function Nn(d,p){for(let T of p)_[d].delete(Ne(T));let v=[],b=new Set;for(let T of [..._[d].values(),...p]){let Z=Ne(T);b.has(Z)||(b.add(Z),v.push(Object.freeze({...T})));}G.value={...G.value,[d]:Object.freeze(v)};let P=new Set(p.flatMap(T=>T.recordId===void 0?[]:[T.recordId]));W.value={...W.value,[d]:Object.freeze(W.value[d].filter(T=>P.has(T)))};}async function Ln(d,p,v){let b=V[p];try{let P=await d.client.expressions.favorites.list(p);if(pe[p]!==v||!ae(d))return;Nn(p,P),b.loaded=!0;}catch(P){pe[p]===v&&ae(d)&&(b.error=It(P,"load-favorites"));}}function Pn(d,p){let v="set-favorite";if(h)return Promise.resolve(he(v));let b=Ne(d),P=ie.get(b);if(P?.desired===p)return P.promise;let T;try{T=Re();}catch(me){return Promise.resolve(we(v,me,V[d.kind]))}let Z=P?.promise.catch(()=>{})??Promise.resolve(),te=oe[d.kind].catch(()=>{}),Y=Promise.all([Z,te]).then(async()=>{if(!ae(T))return he(v);let me=d.kind,ve=V[me];ve.error=null;let ze=G.value[me].find(Ee=>Ne(Ee)===b);if(p&&ze!==void 0)return Object.freeze({ok:true,operation:v});if(!p&&ze?.recordId===void 0){let Ee=Ho({code:"IM_CHAT_KIT_EXPRESSION_FAVORITE_RECORD_REQUIRED",operation:"expressions.favorites.unset",retryable:true});return ve.error=Ee,Object.freeze({ok:false,operation:v,reason:"failed",error:Ee})}let _e=++pe[me];try{if(p?await T.client.expressions.favorites.add(d):await T.client.expressions.favorites.delete([ze.recordId]),!ae(T))return he(v);p?(_[me].set(b,Object.freeze({...d})),G.value={...G.value,[me]:$c(G.value[me],d)}):(_[me].delete(b),G.value={...G.value,[me]:Object.freeze(G.value[me].filter(He=>He.recordId!==ze.recordId))});let Ee=++pe[me];return _e=Ee,await Ln(T,me,Ee),!ae(T)||pe[me]!==Ee?he(v):Object.freeze({ok:!0,operation:v})}catch(Ee){return !ae(T)||pe[me]!==_e?he(v):we(v,Ee,ve)}finally{pe[me]===_e&&ae(T)&&(ve.loading=false);}});return ie.set(b,{desired:p,promise:Y}),oe[d.kind]=Y.then(()=>{},()=>{}),Y.finally(()=>{ie.get(b)?.promise===Y&&ie.delete(b);}),Y}async function jn(d){let p=await Pn(d,true);return Object.freeze({...p,operation:"add-favorite"})}function Tn(d){return Pn(d,false)}function kn(d,p,v){if(h)return;let b=Ai(p),P=new Set(W.value[d]);v??!P.has(b)?P.add(b):P.delete(b),W.value={...W.value,[d]:Object.freeze([...P])};}function nn(d,p,v){if(Ae(v),d==="emoji"){for(let P of p)if(P.kind==="emoji")for(let[T,Z]of ee)Z.resourceId===P.resourceId&&ee.delete(T);R.value={...R.value,emoji:Object.freeze([...p])},q.value=Lo(p,q.value,new Set(ee.keys()));}else {for(let P of p)P.kind===d&&y[d].delete(Ne(P));R.value={...R.value,[d]:Gi(d,p,y[d])};}let b=new Set(p.flatMap(P=>P.recordId===void 0?[]:[P.recordId]));K.value={...K.value,[d]:Object.freeze(K.value[d].filter(P=>b.has(P)))},g[d].loaded=true,cn(v,d,Object.freeze({type:"authoritative",kind:d,items:Object.freeze([...p])}));}async function tn(d){let p="load-recent";if(h)return he(p);let v=g[d],b=await qe();if(!b.ok)return b.reason==="stale"?he(p):(v.error=b.error??g.emoji.error,Object.freeze({...b,operation:p}));let P=++ye[d],T;try{T=Re();}catch(Z){return we(p,Z,v)}v.loading=true,v.error=null;try{let Z=Ue(T,d),te=await T.client.expressions.recent.list(d);return ye[d]!==P||!ae(T)?he(p):Ue(T,d)!==Z?(Ae(T),he(p)):(nn(d,te,T),Object.freeze({ok:!0,operation:p}))}catch(Z){return ye[d]!==P||!ae(T)?he(p):we(p,Z,v)}finally{ye[d]===P&&ae(T)&&(v.loading=false);}}async function gn(d,p){if(!ae(d))return;let v=++ye[p],b=g[p];b.loading=true,b.error=null;try{Ae(d);let P=Ue(d,p),T=await d.client.expressions.recent.list(p);if(ye[p]!==v||!ae(d))return;if(Ue(d,p)!==P){Ae(d);return}nn(p,T,d);}catch(P){ye[p]===v&&ae(d)&&(b.error=It(P,"load-recent"));}finally{ye[p]===v&&ae(d)&&(b.loading=false);}}function mn(d,p){if(!ae(d))return false;Ae(d),J+=1;let v=p.kind,b=Object.freeze({...p});return y[v].set(Ne(b),b),R.value={...R.value,[v]:No(R.value[v],b)},g[v].loaded=true,cn(d,v,Object.freeze({type:"prepend-asset",kind:v,asset:b})),true}function pn(d$1,p){if(!ae(d$1))return false;Ae(d$1),J+=1;let v=Object.freeze(p.map(P=>Object.freeze({...P}))),b=q.value;for(let P of v)ee.set(P.stableKey,P),b=d(b,P);return q.value=b,g.emoji.loaded=true,cn(d$1,"emoji",Object.freeze({type:"prepend-emojis",entries:v})),true}function Be(d,p){return pn(d,[p])}async function We(d,p,v=true){let b="report-recent";if(!ae(d))return he(b);let P=p.kind,T=++ye[P],Z=g[P];Z.error=null;try{if(await d.client.expressions.recent.report(p),ye[P]!==T||!ae(d))return he(b);if(!v)return Object.freeze({ok:!0,operation:b});try{Ae(d);let te=Ue(d,P),Y=await d.client.expressions.recent.list(P);if(ye[P]!==T||!ae(d))return he(b);if(Ue(d,P)!==te)return Ae(d),he(b);nn(P,Y,d);}catch(te){ye[P]===T&&ae(d)&&(Z.error=It(te,"load-recent"));}return Object.freeze({ok:!0,operation:b})}catch(te){return ye[P]!==T||!ae(d)?he(b):we(b,te,Z)}}async function so(d){let p="report-recent";if(h)return he(p);let v;try{v=Re();}catch(b){return we(p,b,g[d.kind])}return d.kind==="emoji"?Be(v,Object.freeze({...d,stableKey:qo(d)})):mn(v,d),We(v,d)}function lo(d,p,v){if(h)return;let b=Ai(p),P=new Set(K.value[d]);v??!P.has(b)?P.add(b):P.delete(b),K.value={...K.value,[d]:Object.freeze([...P])};}async function nr(d,p,v){let b=d==="favorites"?"delete-favorites":"delete-recent";if(h)return he(b);let P=d==="favorites"?W:K,T=d==="favorites"?pe:ye,Z=d==="favorites"?V:g,te=v?.selected??P.value[p];if(te.length===0)return Object.freeze({ok:false,operation:b,reason:"empty"});let Y=Z[p];if(Y.loading)return Object.freeze({ok:false,operation:b,reason:"busy"});let me=++T[p],ve;try{ve=v?.context??Re();}catch(Te){return we(b,Te,Y)}d==="recent"&&Ae(ve);let ze=d==="recent"?Ue(ve,p):0,_e=new Set(te),Ee=d==="recent"?R.value[p].filter(Te=>{let Ye=ht(Te);return Ye!==void 0&&_e.has(Ye)}):[];Y.loading=true,Y.error=null;let He=[],Xe=new Set,xn,zn,rn=false;for(let Te of Vc(te)){if(!ae(ve))return he(b);if(d==="recent"&&T[p]!==me){rn=true;break}try{d==="favorites"?await ve.client.expressions.favorites.delete(Te):await ve.client.expressions.recent.delete(Te);for(let Ye of Te)Xe.add(Ye);}catch(Ye){let An=It(Ye,b);xn??=An,He.push(...Te);}}if(!ae(ve))return he(b);if(d==="recent"&&T[p]!==me&&(rn=true),d==="recent"&&Ue(ve,p)!==ze&&(rn=true),d==="favorites"){let Te=p;G.value={...G.value,[Te]:Object.freeze(G.value[Te].filter(Gn=>Gn.recordId===void 0||!Xe.has(Gn.recordId)))};let Ye=new Set(te),An=W.value[Te].filter(Gn=>!Ye.has(Gn));if(W.value={...W.value,[Te]:Object.freeze([...new Set([...An,...He])])},zn=++pe[Te],await Ln(ve,Te,zn),!ae(ve))return he(b)}else {let Te=p;Ae(ve);let Ye=Ee.filter(xe=>{let on=ht(xe);return on!==void 0&&Xe.has(on)}),An=new Set(Ye.filter(xe=>xe.kind==="emoji").map(xe=>xe.resourceId)),Gn=new Set(Ye.filter(xe=>xe.kind!=="emoji").map(Ne));Te==="emoji"&&(q.value=Object.freeze(q.value.filter(xe=>xe.kind==="game"||!An.has(xe.resourceId)||ee.has(xe.stableKey)))),R.value={...R.value,[Te]:Object.freeze(R.value[Te].filter(xe=>{let on=ht(xe);return on===void 0||!Xe.has(on)}))};let uo=new Set(te),vn=rn?K.value[Te].filter(xe=>!Xe.has(xe)):K.value[Te].filter(xe=>!uo.has(xe));if(K.value={...K.value,[Te]:Object.freeze(rn?vn:[...new Set([...vn,...He])])},Te==="emoji"){let xe=R.value.emoji.filter(on=>on.kind==="emoji");q.value=Lo(xe,q.value,new Set(ee.keys()));}let In=Object.freeze(Te==="emoji"?{type:"delete-emojis",resourceIds:Object.freeze([...An])}:{type:"delete-assets",kind:Te,identities:Object.freeze([...Gn])});if(cn(ve,Te,In),rn&&Xe.size>0&&await gn(ve,Te),!ae(ve))return he(b)}return (d==="recent"?ye[p]===me:pe[p]===zn)&&(Y.loaded=true,(xn!==void 0||d==="recent")&&(Y.error=xn??null),Y.loading=false),rn?he(b):He.length===0?Object.freeze({ok:true,operation:b}):Object.freeze({ok:false,operation:b,reason:Xe.size===0?"failed":"partial",error:xn,failedRecordIds:Object.freeze(He)})}function co(d){let p="delete-favorites";if(h)return Promise.resolve(he(p));let v=Object.freeze([...W.value[d]]);if(v.length===0)return Promise.resolve(Object.freeze({ok:false,operation:p,reason:"empty"}));let b;try{b=Re();}catch(Z){return Promise.resolve(we(p,Z,V[d]))}let T=oe[d].catch(()=>{}).then(()=>ae(b)?nr("favorites",d,{context:b,selected:v}):he(p));return oe[d]=T.then(()=>{},()=>{}),T}function tr(d){return nr("recent",d)}function ot(d,p){let v=++H;return $.value=d,re.value=p,S.value=[],x.value=0,L.value=void 0,X.loading=true,X.loaded=false,X.error=null,v}async function at(d,p){let v="load-giphy";if(h)return he(v);let b={mode:$.value,query:re.value,items:S.value,totalCount:x.value,nextOffset:L.value,loaded:X.loaded},P=ot(d,p),T=()=>{$.value=b.mode,re.value=b.query,S.value=b.items,x.value=b.totalCount,L.value=b.nextOffset,X.loaded=b.loaded;},Z;try{Z=Re();}catch(te){return T(),X.loading=false,we(v,te,X)}try{let te=d==="trending"?await Z.client.expressions.giphy.trending():await Z.client.expressions.giphy.search(p);return P!==H||!ae(Z)?he(v):(S.value=Di(te.items),x.value=te.totalCount,L.value=te.nextOffset,X.loaded=!0,Object.freeze({ok:!0,operation:v}))}catch(te){return P!==H||!ae(Z)?he(v):(T(),we(v,te,X))}finally{P===H&&ae(Z)&&(X.loading=false);}}function it(){return at("trending","")}function wn(d){if(h)return Promise.resolve(he("load-giphy"));let p=d.trim();return p===""?(ot("search",""),X.loading=false,X.loaded=true,Promise.resolve(Object.freeze({ok:false,operation:"load-giphy",reason:"empty"}))):at("search",p)}async function rr(){let d="load-more-giphy";if(h)return he(d);if(X.loading)return Object.freeze({ok:false,operation:d,reason:"busy"});if($.value==="idle"||L.value===void 0)return Object.freeze({ok:false,operation:d,reason:"exhausted"});let p=++H,v=$.value,b=re.value,P=L.value,T;try{T=Re();}catch(Z){return we(d,Z,X)}X.loading=true,X.error=null;try{let Z=v==="trending"?await T.client.expressions.giphy.trending({offset:P}):await T.client.expressions.giphy.search(b,{offset:P});return p!==H||!ae(T)?he(d):(S.value=Di([...S.value,...Z.items]),x.value=Z.totalCount,L.value=Z.nextOffset,X.loaded=!0,Object.freeze({ok:!0,operation:d}))}catch(Z){return p!==H||!ae(T)?he(d):we(d,Z,X)}finally{p===H&&ae(T)&&(X.loading=false);}}async function or(d){return Tt([d])}async function Tt(d){let p="report-recent";if(h)return he(p);if(d.length===0)return Object.freeze({ok:true,operation:p});let v;try{v=Re();}catch(T){return we(p,T,g.emoji)}let b=Object.freeze(d.map(T=>Object.freeze({...T,stableKey:qo(T)})));if(!pn(v,b))return he(p);let P=Object.freeze({ok:true,operation:p});for(let[T,Z]of b.entries())if(P=await We(v,{kind:"emoji",token:Z.token,resourceId:Z.resourceId},T===b.length-1),!P.ok&&P.reason==="stale")return P;return P}function Qe(d,p){We(d,p).then(v=>{s.record(v.ok?"debug":"warn","pinia","message","expression-recent-report-settled",()=>({generation:d.generation,data:{kind:p.kind,ok:v.ok}}));});}async function ar(d,p){if(h)return Ke();let v;try{v=Re();}catch{return Ke()}let b;try{b=await d.messages.sendSticker(p);}catch(P){if(!ae(v))return Ke();throw P}return ae(v)?(b.ok&&mn(v,p)&&Qe(v,p),b):Ke()}async function wt(d,p){if(h)return Ke();let v;try{v=Re();}catch{return Ke()}let b;try{b=await d.messages.sendGifAsset(p);}catch(P){if(!ae(v))return Ke();throw P}return ae(v)?(b.ok&&mn(v,p)&&Qe(v,p),b):Ke()}async function st(d$1,p){if(h)return Ke();let v;try{v=Re();}catch{return Ke()}let b;try{b=await d$1.messages.sendGame(p);}catch(P){if(!ae(v))return Ke();throw P}return ae(v)?(b.ok&&(Ae(v),J+=1,q.value=d(q.value,Uo(p)),g.emoji.loaded=true,cn(v,"emoji",Object.freeze({type:"prepend-emoji",entry:Uo(p)}))),b):Ke()}function Je(d={}){if(h)return;let p=d.preserveRecentHydrationFailure===true?Se:null;M+=1,D+=1,H+=1,J+=1,Ie+=1,le=0,Ce=0,ke=null,je=null,U.clear(),de.length=0,fe=null,ue=null,De=null,k=null,Se=p,ie.clear(),oe=gt(()=>Promise.resolve()),c.value="",m.value=[],I.value={},Object.assign(w,{loading:false,loaded:false,error:null});for(let v of Object.keys(z))delete z[v];for(let v of Object.keys(ce))ce[v]=(ce[v]??0)+1;G.value={sticker:[],gif:[]},W.value={sticker:[],gif:[]};for(let v of ["sticker","gif"])pe[v]+=1,Object.assign(V[v],{loading:false,loaded:false,error:null});R.value={sticker:[],gif:[],emoji:[]},K.value={sticker:[],gif:[],emoji:[]},q.value=[],y.sticker.clear(),y.gif.clear(),_.sticker.clear(),_.gif.clear(),ee.clear();for(let v of ["sticker","gif","emoji"])ye[v]+=1,Object.assign(g[v],{loading:false,loaded:false,error:null});p!==null&&(g.emoji.error=p),$.value="idle",re.value="",S.value=[],x.value=0,L.value=void 0,Object.assign(X,{loading:false,loaded:false,error:null});}function ir(){h||(Je(),h=true);}return Fr.set(e,Object.freeze({dispose:ir})),{packVersion:c,packs:m,packItemsByPackage:I,packStatus:se,packItemStatus:ne,favorites:G,favoriteStatus:O,favoriteSelection:W,recent:R,recentStatus:j,recentSelection:K,emojiRecent:q,giphyMode:$,giphyQuery:re,giphyItems:S,giphyTotalCount:x,giphyHasMore:A,giphyStatus:C,hydrateRecent:qe,loadPacks:fn,loadPackItems:En,loadFavorites:rt,addFavorite:jn,setFavorite:Pn,unsetFavorite:Tn,toggleFavoriteSelection:kn,deleteSelectedFavorites:co,loadRecent:tn,reportRecent:so,rememberEmoji:or,rememberEmojis:Tt,toggleRecentSelection:lo,deleteSelectedRecent:tr,loadGiphyTrending:it,searchGiphy:wn,loadMoreGiphy:rr,sendSticker:ar,sendGif:wt,sendGame:st,reset:Je}})}var _i=new WeakMap,Dr=new WeakMap;function Wc(e=Pe()){ge(e);let n=_i.get(e);n===void 0&&(n=Bc(e),_i.set(e,n));let r=n(e),o=Fr.get(e);if(o===void 0)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u521B\u5EFA ImExpressionStore");return Dr.get(e)!==r&&(Dr.set(e,r),Oe(e,()=>{o.dispose(),r.$dispose(),Dr.get(e)===r&&(Dr.delete(e),Fr.get(e)===o&&Fr.delete(e));})),r}var Hr=new WeakMap;function Ki(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Nr(e,n){return e!==null&&e.conversationType===n.conversationType&&e.conversationId===n.conversationId}function Qc(e){return e?.conversationType==="direct"||e?.conversationType==="group"||e?.conversationType==="channel"}function Jc(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function Xc(e,n){let r=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:r!==null&&typeof r.code=="string"?r.code:"IM_CHAT_KIT_HISTORY_RETURN_FAILED",category:r!==null&&Jc(r.category)?r.category:"state",operation:"history.returnAfterSend",retryable:r!==null&&typeof r.retryable=="boolean"?r.retryable:false,conversation:Ki(n)})}function Yc(e=Pe()){let n=ge(e),r=Hr.get(e);if(r!==void 0&&!r.disposed)return r.coordinator;let o=n.runtime,s=o.getDiagnostics(),c=Ge(e),m=Mn(e),I={disposed:false};function w(g){return !I.disposed&&o.getGeneration()===g.generation&&c.getHandle()===g.handle&&Nr(c.activeRef,g.conversation)}function z(){let g=I.activeIntent;g!==void 0&&(I.activeIntent=void 0,g.complete(Object.freeze({status:"stale",conversation:g.conversation})));}async function G(g){if(!w(g)){g.complete(Object.freeze({status:"stale",conversation:g.conversation}));return}m.clearLocation(),s.record("debug","pinia","history","history-return-after-send-start",()=>({generation:g.generation,conversation:g.conversation}));try{if(!await c.loadLatest()||!w(g)){g.complete(Object.freeze({status:"stale",conversation:g.conversation}));return}s.record("debug","pinia","history","history-return-after-send-complete",()=>({generation:g.generation,conversation:g.conversation})),g.complete(Object.freeze({status:"applied",conversation:g.conversation}));}catch(K){if(!w(g)){g.complete(Object.freeze({status:"stale",conversation:g.conversation}));return}let q=Xc(K,g.conversation);s.record("warn","pinia","history","history-return-after-send-failed",()=>({generation:g.generation,conversation:g.conversation,error:{message:"\u53D1\u9001\u540E\u8FD4\u56DE\u6700\u65B0\u6D88\u606F\u5931\u8D25",data:q}})),g.complete(Object.freeze({status:"failed",conversation:g.conversation,error:q}));}}function V(g){let K=I.activeIntent;K===void 0||g.type!=="message:received"||g.source!=="live"||g.message.senderId!==K.selfId||g.message.status==="sent"||!Nr(g.ref,K.conversation)||(I.activeIntent=void 0,G(K));}async function W(g,K){let q=c.getHandle();if(!Qc(g)||I.disposed||!c.hasNewer||q===void 0||!Nr(q.ref,g)||!Nr(c.activeRef,g))return Object.freeze({value:await K(),history:Object.freeze({status:"not-needed"})});z();let $=Ki(g),re,S=new Promise(X=>{let L=false;re=se=>{L||(L=true,X(se));};}),x={token:Symbol("history-return-after-send"),conversation:$,handle:q,generation:o.getGeneration(),selfId:o.getCredentials().userId,complete:re};I.activeIntent=x;try{let X=await K();return I.activeIntent?.token===x.token&&(I.activeIntent=void 0,x.complete(w(x)?Object.freeze({status:"not-needed"}):Object.freeze({status:"stale",conversation:$}))),Object.freeze({value:X,history:await S})}catch(X){throw I.activeIntent?.token===x.token&&(I.activeIntent=void 0,x.complete(w(x)?Object.freeze({status:"not-needed"}):Object.freeze({status:"stale",conversation:$}))),await S,X}}let R=o.subscribeProductEvents(V);return I.coordinator=Object.freeze({run:W}),Hr.set(e,I),Oe(e,()=>{I.disposed=true,z(),R(),Hr.get(e)===I&&Hr.delete(e);}),I.coordinator}function Li(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Ui(e){return Object.freeze({code:e.code,category:e.category,operation:e.operation,retryable:e.retryable,...e.conversation===void 0?{}:{conversation:Li(e.conversation)}})}function nu(e){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"&&typeof e.operation=="string"&&typeof e.retryable=="boolean"}function tu(e,n){return nu(e)?Ui(e):Object.freeze({code:"IM_CHAT_KIT_MEDIA_OPERATION_FAILED",category:"state",operation:`media.${n}`,retryable:n==="retry"})}function ru(e){return Object.freeze({id:e.id,messageId:e.messageId,ref:Li(e.ref),direction:e.direction,state:e.state,percent:e.percent,...e.itemIndex===void 0?{}:{itemIndex:e.itemIndex},...e.phase===void 0?{}:{phase:e.phase},...e.error===void 0?{}:{error:Ui(e.error)}})}function qi(e,n){return n===void 0?e:`${e}\0${n}`}function bt(e,n){return e!==null&&e.conversationType===n.conversationType&&e.conversationId===n.conversationId}function ou(e){return defineStore("k2-im-media",()=>{let n=ge(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=ref([]),c=shallowRef(null),m=shallowRef(null),I=false,w=0,z=null,G=-1,V,W=computed(()=>{let h=o.activeRef,M={};for(let D of s.value)D.direction!=="upload"||D.state!=="queued"&&D.state!=="running"||!bt(h,D.ref)||(M[D.messageId]=D.state==="queued"?0:D.percent);return M}),R=computed(()=>{let h={};for(let M of s.value)M.direction==="download"&&bt(o.activeRef,M.ref)&&(h[qi(M.messageId,M.itemIndex)]=M);return h}),g=computed(()=>{let h={};for(let[M,D]of Object.entries(R.value))(D.state==="queued"||D.state==="running")&&(h[M]=D.percent);return h}),K=computed(()=>{let h=o.activeRef,M={};for(let D of s.value)D.direction==="upload"&&D.state==="queued"&&D.phase==="waiting-upload-slot"&&bt(h,D.ref)&&(M[D.messageId]=true);return M}),q=computed(()=>{let h=o.activeRef,M={};for(let D of s.value)D.direction==="upload"&&D.state==="running"&&D.phase==="finalizing"&&bt(h,D.ref)&&(M[D.messageId]=true);return M});function $(h,M,D){I||z!==M||G!==D||n.getGeneration()!==D||(s.value=h.map(ru));}function re(h){let M=n.getGeneration();if(I)throw new Error("Media Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u91CD\u65B0\u7ED1\u5B9A");if(z===h&&G===M||(w+=1,V?.(),V=void 0,z=h,G=h===null?-1:M,s.value=[],c.value=null,h===null))return;let D=false;V=h.media.subscribe(ce=>{D=true,$(ce,h,M);}),D||$(h.media.getSnapshot(),h,M),r.record("debug","pinia","media","media-tasks-subscribed",()=>({generation:M}));}function S(){re(n.getProductClient());}function x(){re(null),m.value=null;}async function X(h,M){let D=n.getProductClient();if(D===null)return Object.freeze({ok:false,operation:h,reason:"not-ready"});if(re(D),!s.value.some(ye=>ye.id===M))return Object.freeze({ok:false,operation:h,reason:"not-found"});let ce=n.getGeneration(),pe=w;c.value=null;try{return await D.media[h](M),I||pe!==w||n.getGeneration()!==ce||z!==D?Object.freeze({ok:!1,operation:h,reason:"stale"}):Object.freeze({ok:!0,operation:h})}catch(ye){if(I||pe!==w||n.getGeneration()!==ce||z!==D)return Object.freeze({ok:false,operation:h,reason:"stale"});let H=tu(ye,h);return c.value=H,r.record("error","pinia","media",`media-task-${h}-failed`,()=>({generation:ce,data:{taskId:M},error:{message:H.code,data:H}})),Object.freeze({ok:false,operation:h,reason:"failed",error:H})}}function L(h){return X("cancel",h)}function se(h){return X("retry",h)}async function ne(h){let M=o.activeRef,D=s.value.find(pe=>pe.direction==="upload"&&(pe.state==="queued"||pe.state==="running")&&pe.messageId===h&&bt(M,pe.ref));if(D===void 0)return Object.freeze({ok:false,operation:"cancel",reason:"not-found"});let ce=await L(D.id);return bt(o.activeRef,D.ref)?ce:Object.freeze({ok:false,operation:"cancel",reason:"stale"})}function O(h){let M=o.activeRef;return h.status!=="failed"||h.failure?.displayCode!=="media.uploadInterrupted"||h.contentType!=="video"&&h.contentType!=="file"||M===null||h.conversationId!==M.conversationId||h.conversationType!==M.conversationType?false:(m.value=Object.freeze({messageId:h.id,conversationId:h.conversationId,conversationType:h.conversationType,kind:h.contentType}),true)}function j(){let h=m.value;return m.value=null,h}function C(){m.value=null;}function A(){I||(w+=1,V?.(),V=void 0,z=null,G=-1,s.value=[],c.value=null,m.value=null,I=true);}return {tasks:s,error:c,uploadProgress:W,downloadTasks:R,downloadProgress:g,uploadWaiting:K,uploadFinalizing:q,replacementRequest:m,start:S,reset:x,cancel:L,retry:se,cancelUpload:ne,requestReplacement:O,takeReplacementRequest:j,clearReplacementRequest:C,dispose:A}})}var Ni=new WeakMap,Lr=new WeakMap;function au(e=Pe()){ge(e);let n=Ni.get(e);n===void 0&&(n=ou(e),Ni.set(e,n));let r=n(e);return Lr.get(e)!==r&&(Lr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),Lr.get(e)===r&&Lr.delete(e);})),r}function Jn(e){return Object.freeze({conversationType:"channel",conversationId:e.conversationId.trim()})}function Ur(e){return Object.freeze({userId:e.userId.trim(),role:e.role})}function iu(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function su(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_CHANNEL_MEMBER_MANAGEMENT_FAILED",category:o!==null&&iu(o.category)?o.category:"state",operation:`channel-member-management.${n}`,retryable:o?.retryable===true,conversation:r})}function Ct(e,n,r,o){return Object.freeze({ok:false,operation:e,conversation:n,outcome:r,stale:r==="stale",projectionUpdated:false,refreshRequired:false,...o===void 0?{}:{error:o}})}function Rt(e,n){return Ct(e,n,"failed",Object.freeze({code:"IM_CHAT_KIT_CHANNEL_MEMBER_MANAGEMENT_INVALID_INPUT",category:"validation",operation:`channel-member-management.${e}`,retryable:false,conversation:n}))}function lu(e,n,r){return Object.freeze({code:"IM_CHAT_KIT_CHANNEL_MEMBER_MANAGEMENT_UNAVAILABLE",category:r.availability==="unavailable"?"permission":"state",operation:`channel-member-management.${e}`,retryable:r.availability==="unknown",conversation:n})}function Vi(e,n){return n!==void 0&&n.userId!==""&&n.userId!==e.getCredentials().userId&&(n.role==="member"||n.role==="admin")}function cu(e,n,r,o,s){let c=n.capabilities.get(r);if(c.conversationType!=="channel"||c.ref.conversationId!==r.conversationId)return Object.freeze({availability:"unknown",reason:"not-ready"});if(o==="invite-members")return c.value.canInviteMembers;if(o==="remove-member")return s===void 0?Object.freeze({availability:"unknown",reason:"not-ready"}):I("members.removeTarget",{snapshot:c,selfId:e.getCredentials().userId,targetUserId:s.userId,targetRole:s.role});if(o==="add-admin"||o==="remove-admin")return s===void 0?Object.freeze({availability:"unknown",reason:"not-ready"}):I(o==="add-admin"?"members.setAdminTarget":"members.unsetAdminTarget",{snapshot:c,selfId:e.getCredentials().userId,targetUserId:s.userId,targetRole:s.role});if(o==="transfer-ownership")return Vi(e,s)?c.value.canTransferOwnership:Object.freeze({availability:"unavailable",reason:"role-insufficient"});if(o==="leave"){if(s===void 0)return c.value.canLeave;let m=c.value.canLeave;return m.availability!=="available"?m:Vi(e,s)?c.value.canTransferOwnership:Object.freeze({availability:"unavailable",reason:"role-insufficient"})}return c.value.canDismiss}function uu(e,n,r,o){let s=Jn(r);if(s.conversationId==="")return {ok:false,result:Rt(n,s)};let c=e.getProductClient();if(c===null)return {ok:false,result:Ct(n,s,"not-ready")};let m=e.getGeneration(),I=cu(e,c,s,n,o);return I.availability!=="available"?{ok:false,result:Ct(n,s,"not-allowed",lu(n,s,I))}:{ok:true,captured:Object.freeze({client:c,conversation:s,isCurrent:()=>e.getGeneration()===m&&e.getProductClient()===c})}}async function Pt(e,n,r,o,s){let c=uu(e,n,r,s);if(!c.ok)return c.result;try{let m=await o(c.captured);return c.captured.isCurrent()?m:Ct(n,c.captured.conversation,"stale")}catch(m){if(!c.captured.isCurrent())return Ct(n,c.captured.conversation,"stale");let I=su(m,n,c.captured.conversation),w=n==="leave"&&I.code==="IM_SDK_CHANNEL_OWNER_TRANSFER_REQUIRED"?"transfer-required":"failed";return Ct(n,c.captured.conversation,w,I)}}function du(e){return Object.freeze([...new Set(e.map(n=>n.trim()).filter(Boolean))])}function $i(e,n,r){let o=Jn(n),s=du(r);return s.length===0?Promise.resolve(Rt("invite-members",o)):Pt(e,"invite-members",o,async({client:c})=>(await c.channels.inviteMembers(o,s),Object.freeze({ok:!0,operation:"invite-members",conversation:o,outcome:"invited",memberIds:s,stale:!1,projectionUpdated:!1,refreshRequired:!0})))}function Bi(e,n,r){let o=Jn(n),s=Ur(r);return s.userId===""?Promise.resolve(Rt("remove-member",o)):Pt(e,"remove-member",o,async({client:c})=>(await c.channels.removeMember(o,s.userId),Object.freeze({ok:!0,operation:"remove-member",conversation:o,outcome:"removed",memberId:s.userId,stale:!1,projectionUpdated:!1,refreshRequired:!0})),s)}function Wi(e,n,r,o){let s=Jn(n),c=Ur(r),m=o?"add-admin":"remove-admin";return c.userId===""?Promise.resolve(Rt(m,s)):Pt(e,m,s,async({client:I})=>(o?await I.channels.addAdmin(s,c.userId):await I.channels.removeAdmin(s,c.userId),Object.freeze({ok:!0,operation:m,conversation:s,outcome:o?"admin-added":"admin-removed",memberId:c.userId,stale:!1,projectionUpdated:!1,refreshRequired:!0})),c)}function Qi(e,n,r){return Wi(e,n,r,true)}function Ji(e,n,r){return Wi(e,n,r,false)}function Xi(e,n,r){let o=Jn(n),s=Ur(r);return s.userId===""?Promise.resolve(Rt("transfer-ownership",o)):Pt(e,"transfer-ownership",o,async({client:c})=>(await c.channels.transferOwnership(o,s.userId),Object.freeze({ok:!0,operation:"transfer-ownership",conversation:o,outcome:"transferred",ownerId:s.userId,stale:!1,projectionUpdated:!1,refreshRequired:!0})),s)}function Yi(e,n,r){let o=Jn(n),s=r===void 0?void 0:Ur(r);return s!==void 0&&s.userId===""?Promise.resolve(Rt("leave",o)):Pt(e,"leave",o,async({client:c})=>(await c.channels.leave(o,s===void 0?void 0:{newOwnerId:s.userId}),Object.freeze({ok:!0,operation:"leave",conversation:o,outcome:"left",...s===void 0?{}:{newOwnerId:s.userId},stale:!1,projectionUpdated:!1,refreshRequired:!1})),s)}function Zi(e,n){let r=Jn(n);return Pt(e,"dismiss",r,async({client:o})=>(await o.channels.dismiss(r),Object.freeze({ok:!0,operation:"dismiss",conversation:r,outcome:"dismissed",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function Wt(e){return Object.freeze({conversationType:"channel",conversationId:e.conversationId.trim()})}function fu(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function mu(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_CHANNEL_PROFILE_OPERATION_FAILED",category:o!==null&&fu(o.category)?o.category:"state",operation:`channel-profile.${n}`,retryable:o?.retryable===true,conversation:r})}function kt(e,n,r,o){return Object.freeze({ok:false,operation:e,conversation:n,outcome:r,stale:r==="stale",projectionUpdated:false,refreshRequired:false,...o===void 0?{}:{error:o}})}function Ot(e,n){return kt(e,n,"failed",Object.freeze({code:"IM_CHAT_KIT_CHANNEL_PROFILE_INVALID_INPUT",category:"validation",operation:`channel-profile.${e}`,retryable:false,conversation:n}))}function pu(e,n,r){return Object.freeze({code:"IM_CHAT_KIT_CHANNEL_PROFILE_ACTION_UNAVAILABLE",category:r.availability==="unavailable"?"permission":"state",operation:`channel-profile.${e}`,retryable:r.availability==="unknown",conversation:n})}function vu(e,n,r,o,s){let c=n.capabilities.get(r);return c.conversationType!=="channel"||c.ref.conversationId!==r.conversationId?Object.freeze({availability:"unknown",reason:"not-ready"}):o==="set-my-nickname"?c.value.canLeave:o==="set-member-nickname"?s===void 0?Object.freeze({availability:"unknown",reason:"not-ready"}):I("members.editNicknameTarget",{snapshot:c,selfId:e.getCredentials().userId,targetUserId:s.userId,targetRole:s.role}):o==="set-all-muted"?c.value.canManageMute:o==="set-member-private-chat-disabled"?c.value.canSetMemberPrivateChat:c.value.canEditProfile}function gu(e,n,r,o){let s=Wt(r);if(s.conversationId==="")return {ok:false,result:Ot(n,s)};let c=e.getProductClient();if(c===null)return {ok:false,result:kt(n,s,"not-ready")};let m=e.getGeneration(),I=vu(e,c,s,n,o);return I.availability!=="available"?{ok:false,result:kt(n,s,"not-allowed",pu(n,s,I))}:{ok:true,captured:Object.freeze({client:c,conversation:s,isCurrent:()=>e.getGeneration()===m&&e.getProductClient()===c})}}async function Kn(e,n,r,o,s){let c=gu(e,n,r,s);if(!c.ok)return c.result;try{let m=await o(c.captured);return c.captured.isCurrent()?m:kt(n,c.captured.conversation,"stale")}catch(m){return c.captured.isCurrent()?kt(n,c.captured.conversation,"failed",mu(m,n,c.captured.conversation)):kt(n,c.captured.conversation,"stale")}}function es(e,n,r){let o=Wt(n),s=r.trim();return s===""||[...s].length>15?{ok:false,result:Ot(e,o)}:{ok:true,value:s}}function ns(e,n,r){let o=r.trim();return o===""?Promise.resolve(Ot("update-name",Wt(n))):Kn(e,"update-name",n,async({client:s,conversation:c})=>(await s.channels.updateName(c,o),Object.freeze({ok:!0,operation:"update-name",conversation:c,outcome:"updated",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}var Iu=100;function ts(e,n,r){let o=r.trim();return o===""||[...o].length>Iu?Promise.resolve(Ot("update-description",Wt(n))):Kn(e,"update-description",n,async({client:s,conversation:c})=>(await s.channels.updateDescription(c,o),Object.freeze({ok:!0,operation:"update-description",conversation:c,outcome:"updated",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function rs(e,n,r){return Kn(e,"update-avatar",n,async({client:o,conversation:s})=>{let c=(await o.channels.updateAvatar(s,r)).trim();return c===""?Ot("update-avatar",s):Object.freeze({ok:!0,operation:"update-avatar",conversation:s,outcome:"updated",avatar:c,stale:!1,projectionUpdated:!1,refreshRequired:!1})})}function os(e,n,r){let o=es("set-my-nickname",n,r);return o.ok?Kn(e,"set-my-nickname",n,async({client:s,conversation:c})=>(await s.channels.setMyNickname(c,o.value),Object.freeze({ok:!0,operation:"set-my-nickname",conversation:c,outcome:"updated",memberId:e.getCredentials().userId,stale:!1,projectionUpdated:!1,refreshRequired:!1}))):Promise.resolve(o.result)}function as(e,n,r,o,s){let c=r.trim(),m=es("set-member-nickname",n,s);if(c===""||!m.ok)return Promise.resolve(m.ok?Ot("set-member-nickname",Wt(n)):m.result);let I=Object.freeze({userId:c,role:o});return Kn(e,"set-member-nickname",n,async({client:w,conversation:z})=>(await w.channels.setMemberNickname(z,c,m.value),Object.freeze({ok:!0,operation:"set-member-nickname",conversation:z,outcome:"updated",memberId:c,stale:!1,projectionUpdated:!1,refreshRequired:!1})),I)}function is(e,n,r,o){return Kn(e,"update-verification",n,async({client:s,conversation:c})=>(await s.channels.updateVerification(c,r,o),Object.freeze({ok:!0,operation:"update-verification",conversation:c,outcome:"updated",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function ss(e,n,r){return Kn(e,"set-all-muted",n,async({client:o,conversation:s})=>(await o.channels.setAllMuted(s,r),Object.freeze({ok:!0,operation:"set-all-muted",conversation:s,outcome:"updated",muted:r,stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function ls(e,n,r){return Kn(e,"set-member-private-chat-disabled",n,async({client:o,conversation:s})=>(await o.channels.setMemberPrivateChatDisabled(s,r),Object.freeze({ok:!0,operation:"set-member-private-chat-disabled",conversation:s,outcome:"updated",disabled:r,stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function hu(e){return Object.freeze({conversationType:"direct",conversationId:e.conversationId.trim()})}function yu(e){return Object.freeze({conversationType:"direct",conversationId:e.trim()})}function bu(e){let n=e.getProductClient();if(n===null)return null;let r=e.getGeneration();return Object.freeze({client:n,isCurrent:()=>e.getGeneration()===r&&e.getProductClient()===n})}function Cu(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function Ru(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_DIRECT_CONTACT_OPERATION_FAILED",category:o!==null&&Cu(o.category)?o.category:"state",operation:`direct-contact.${n}`,retryable:o?.retryable===true,...r===null?{}:{conversation:r}})}function Xn(e,n,r,o){return Object.freeze({ok:false,operation:e,conversation:n,outcome:r,stale:r==="stale",projectionUpdated:false,refreshRequired:false,...o===void 0?{}:{error:o}})}function qr(e,n){return Object.freeze({code:"IM_CHAT_KIT_DIRECT_CONTACT_INVALID_INPUT",category:"validation",operation:`direct-contact.${e}`,retryable:false,...n===null?{}:{conversation:n}})}async function Yn(e,n,r,o){let s=bu(e);if(s===null)return {ok:false,result:Xn(n,r,"not-ready")};try{let c=await o(s.client);return s.isCurrent()?{ok:!0,value:c}:{ok:!1,result:Xn(n,r,"stale")}}catch(c){return s.isCurrent()?{ok:false,result:Xn(n,r,"failed",Ru(c,n,r))}:{ok:false,result:Xn(n,r,"stale")}}}function Mt(e,n){let r=hu(n);return r.conversationId===""?{ok:false,result:Xn(e,r,"failed",qr(e,r))}:{ok:true,conversation:r}}async function cs(e,n,r){let o=Mt("set-remark",n);if(!o.ok)return o.result;let{conversation:s}=o,c=await Yn(e,"set-remark",s,m=>m.contacts.setRemark(s.conversationId,Object.freeze({...r.name===void 0?{}:{name:r.name},...r.emails===void 0?{}:{emails:Object.freeze([...r.emails])},...r.phones===void 0?{}:{phones:Object.freeze(r.phones.map(I=>Object.freeze({countryCode:I.countryCode,mobile:I.mobile})))}})));return c.ok?Object.freeze({ok:true,operation:"set-remark",conversation:s,outcome:"updated",stale:false,projectionUpdated:false,refreshRequired:false}):c.result}async function us(e,n){let r=Mt("block",n);if(!r.ok)return r.result;let{conversation:o}=r,s=await Yn(e,"block",o,c=>c.contacts.blockUser(o.conversationId));return s.ok?Object.freeze({ok:true,operation:"block",conversation:o,outcome:"blocked",stale:false,projectionUpdated:false,refreshRequired:false}):s.result}async function ds(e,n,r){let o=Mt("report",n);if(!o.ok)return o.result;let{conversation:s}=o,c=r.trim();if(c==="")return Xn("report",s,"failed",qr("report",s));let m=await Yn(e,"report",s,I=>I.contacts.reportUser(s.conversationId,c));return m.ok?Object.freeze({ok:true,operation:"report",conversation:s,outcome:"reported",stale:false,projectionUpdated:false,refreshRequired:false}):m.result}async function fs(e,n){let r=Mt("delete-friendship",n);if(!r.ok)return r.result;let{conversation:o}=r,s=await Yn(e,"delete-friendship",o,c=>c.contacts.deleteFriendship(o.conversationId));return s.ok?Object.freeze({ok:true,operation:"delete-friendship",conversation:o,outcome:"deleted",stale:false,projectionUpdated:false,refreshRequired:false}):s.result}async function ms(e,n){let r=n.trim();if(r==="")return Xn("search-user",null,"failed",qr("search-user",null));let o=await Yn(e,"search-user",null,m=>m.contacts.searchUser(r));if(!o.ok)return !o.result.ok&&!o.result.stale&&o.result.error?.code==="IM_SDK_CONTACT_SEARCH_NO_MATCH"?Object.freeze({ok:true,operation:"search-user",conversation:null,outcome:"not-found",target:null,stale:false,projectionUpdated:false,refreshRequired:false}):o.result;let s=o.value,c=s===null?null:yu(s.userId);return Object.freeze({ok:true,operation:"search-user",conversation:c,outcome:s===null?"not-found":"found",target:s,stale:false,projectionUpdated:false,refreshRequired:false})}async function ps(e,n){let r=Mt("resolve-application-target",n);if(!r.ok)return r.result;let{conversation:o}=r,s=await Yn(e,"resolve-application-target",o,async c=>{let[m,I]=await Promise.all([c.contacts.getProfile(o.conversationId),c.contacts.getRelationship(o.conversationId)]);if(m===null)return null;if(m.userId!==o.conversationId)throw qr("resolve-application-target",o);return Object.freeze({userId:m.userId,displayName:m.displayName,nickname:m.nickname,relationship:I,...m.avatar===void 0?{}:{avatarUrl:m.avatar},...m.miCallId===void 0?{}:{miCallId:m.miCallId},...m.signature===void 0?{}:{signature:m.signature},...m.age===void 0?{}:{age:m.age}})});return s.ok?Object.freeze({ok:true,operation:"resolve-application-target",conversation:o,outcome:s.value===null?"not-found":"found",target:s.value,stale:false,projectionUpdated:false,refreshRequired:false}):s.result}async function vs(e,n,r){let o=Mt("request-friendship",n);if(!o.ok)return o.result;let{conversation:s}=o,c=await Yn(e,"request-friendship",s,m=>m.contacts.requestFriendship(s.conversationId,Object.freeze({message:r.message,...r.remark===void 0?{}:{remark:r.remark}})));return c.ok?Object.freeze({ok:true,operation:"request-friendship",conversation:s,outcome:c.value.status,stale:false,projectionUpdated:false,refreshRequired:false}):c.result}function Qt(e){return Object.freeze({conversationType:"group",conversationId:e.conversationId.trim()})}function Pu(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function ku(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_GROUP_MEMBER_MANAGEMENT_FAILED",category:o!==null&&Pu(o.category)?o.category:"state",operation:`group-member-management.${n}`,retryable:o?.retryable===true,conversation:r})}function St(e,n,r,o){return Object.freeze({ok:false,operation:e,conversation:n,outcome:r,stale:r==="stale",projectionUpdated:false,refreshRequired:false,...o===void 0?{}:{error:o}})}function Jt(e,n){return St(e,n,"failed",Object.freeze({code:"IM_CHAT_KIT_GROUP_MEMBER_MANAGEMENT_INVALID_INPUT",category:"validation",operation:`group-member-management.${e}`,retryable:false,conversation:n}))}function Ou(e,n,r){return Object.freeze({code:"IM_CHAT_KIT_GROUP_MEMBER_MANAGEMENT_UNAVAILABLE",category:r.availability==="unavailable"?"permission":"state",operation:`group-member-management.${e}`,retryable:r.availability==="unknown",conversation:n})}function Mu(e,n,r,o){let s=e.capabilities.get(n);if(s.conversationType!=="group"||s.ref.conversationId!==n.conversationId)return Object.freeze({availability:"unknown",reason:"not-ready"});if(r==="invite-members")return s.value.canInviteMembers;if(r==="remove-member")return s.value.canManageMembers;if(r==="transfer-ownership")return s.value.canTransferOwnership;let c=s.value.canLeave;return c.availability!=="available"||!o?c:s.value.canTransferOwnership}function Su(e,n,r,o=false){let s=Qt(r);if(s.conversationId==="")return {ok:false,result:Jt(n,s)};let c=e.getProductClient();if(c===null)return {ok:false,result:St(n,s,"not-ready")};let m=e.getGeneration(),I=Mu(c,s,n,o);return I.availability!=="available"?{ok:false,result:St(n,s,"not-allowed",Ou(n,s,I))}:{ok:true,captured:Object.freeze({client:c,conversation:s,isCurrent:()=>e.getGeneration()===m&&e.getProductClient()===c})}}async function Vr(e,n,r,o,s=false){let c=Su(e,n,r,s);if(!c.ok)return c.result;try{let m=await o(c.captured);return c.captured.isCurrent()?m:St(n,c.captured.conversation,"stale")}catch(m){if(!c.captured.isCurrent())return St(n,c.captured.conversation,"stale");let I=ku(m,n,c.captured.conversation),w=n==="leave"&&I.code==="IM_SDK_GROUP_OWNER_TRANSFER_REQUIRED"?"transfer-required":"failed";return St(n,c.captured.conversation,w,I)}}function Eu(e){return Object.freeze([...new Set(e.map(n=>n.trim()).filter(Boolean))])}function gs(e,n,r){let o=Qt(n),s=Eu(r);return s.length===0?Promise.resolve(Jt("invite-members",o)):Vr(e,"invite-members",o,async({client:c})=>(await c.groups.inviteMembers(o,s),Object.freeze({ok:!0,operation:"invite-members",conversation:o,outcome:"invited",memberIds:s,stale:!1,projectionUpdated:!1,refreshRequired:!0})))}function Is(e,n,r){let o=Qt(n),s=r.trim();return s===""?Promise.resolve(Jt("remove-member",o)):Vr(e,"remove-member",o,async({client:c})=>(await c.groups.removeMember(o,s),Object.freeze({ok:!0,operation:"remove-member",conversation:o,outcome:"removed",memberId:s,stale:!1,projectionUpdated:!1,refreshRequired:!0})))}function hs(e,n,r){let o=Qt(n),s=r.trim();return s===""?Promise.resolve(Jt("transfer-ownership",o)):Vr(e,"transfer-ownership",o,async({client:c})=>(await c.groups.transferOwnership(o,s),Object.freeze({ok:!0,operation:"transfer-ownership",conversation:o,outcome:"transferred",ownerId:s,stale:!1,projectionUpdated:!1,refreshRequired:!0})))}function ys(e,n,r={}){let o=Qt(n),s=r.newOwnerId?.trim();return r.newOwnerId!==void 0&&s===""?Promise.resolve(Jt("leave",o)):Vr(e,"leave",o,async({client:c})=>(await c.groups.leave(o,s===void 0?void 0:{newOwnerId:s}),Object.freeze({ok:!0,operation:"leave",conversation:o,outcome:"left",...s===void 0?{}:{newOwnerId:s},stale:!1,projectionUpdated:!1,refreshRequired:!1})),s!==void 0)}function Vo(e){return Object.freeze({conversationType:"group",conversationId:e.conversationId.trim()})}function ju(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function bs(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return Object.freeze({code:o!==null&&typeof o.code=="string"?o.code:"IM_CHAT_KIT_GROUP_PROFILE_OPERATION_FAILED",category:o!==null&&ju(o.category)?o.category:"state",operation:`group-profile.${n}`,retryable:o?.retryable===true,conversation:r})}function en(e,n,r,o){return Object.freeze({ok:false,operation:e,conversation:n,outcome:r,stale:r==="stale",projectionUpdated:false,refreshRequired:false,...o===void 0?{}:{error:o}})}function Tu(e,n,r){return Object.freeze({code:"IM_CHAT_KIT_GROUP_PROFILE_ACTION_UNAVAILABLE",category:r.availability==="unavailable"?"permission":"state",operation:`group-profile.${e}`,retryable:r.availability==="unknown",conversation:n})}function wu(e,n,r){let o=e.capabilities.get(n);return o.conversationType!=="group"||o.ref.conversationId!==n.conversationId?Object.freeze({availability:"unknown",reason:"not-ready"}):r==="update-verification"?o.value.canUpdateVerification:r==="set-my-nickname"?o.value.membership==="active"?Object.freeze({availability:"available",reason:"ok"}):Object.freeze({availability:o.value.membership==="unknown"?"unknown":"unavailable",reason:o.value.membership==="unknown_restricted"?"unknown-restricted":o.value.membership}):o.value.canEditProfile}function Cs(e,n,r){let o=Vo(r);if(o.conversationId==="")return {ok:false,result:en(n,o,"failed",Object.freeze({code:"IM_CHAT_KIT_GROUP_PROFILE_INVALID_INPUT",category:"validation",operation:`group-profile.${n}`,retryable:false,conversation:o}))};let s=e.getProductClient();if(s===null)return {ok:false,result:en(n,o,"not-ready")};let c=e.getGeneration(),m=wu(s,o,n);return m.availability!=="available"?{ok:false,result:en(n,o,"not-allowed",Tu(n,o,m))}:{ok:true,captured:Object.freeze({client:s,conversation:o,isCurrent:()=>e.getGeneration()===c&&e.getProductClient()===s})}}async function $o(e,n,r,o){let s=Cs(e,n,r);if(!s.ok)return s.result;try{let c=await o(s.captured);return s.captured.isCurrent()?c:en(n,s.captured.conversation,"stale")}catch(c){return s.captured.isCurrent()?en(n,s.captured.conversation,"failed",bs(c,n,s.captured.conversation)):en(n,s.captured.conversation,"stale")}}function Rs(e,n,r){let o=r.trim();if(o===""){let s=Vo(n);return Promise.resolve(en("update-name",s,"failed",Object.freeze({code:"IM_CHAT_KIT_GROUP_PROFILE_INVALID_INPUT",category:"validation",operation:"group-profile.update-name",retryable:false,conversation:s})))}return $o(e,"update-name",n,async({client:s,conversation:c})=>(await s.groups.updateName(c,o),Object.freeze({ok:!0,operation:"update-name",conversation:c,outcome:"updated",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function Ps(e,n,r){let o=r.trim();if(o===""){let s=Vo(n);return Promise.resolve(en("set-my-nickname",s,"failed",Object.freeze({code:"IM_CHAT_KIT_GROUP_PROFILE_INVALID_INPUT",category:"validation",operation:"group-profile.set-my-nickname",retryable:false,conversation:s})))}return $o(e,"set-my-nickname",n,async({client:s,conversation:c})=>(await s.groups.setMyNickname(c,o),Object.freeze({ok:!0,operation:"set-my-nickname",conversation:c,outcome:"updated",memberId:e.getCredentials().userId,stale:!1,projectionUpdated:!1,refreshRequired:!1})))}function ks(e,n,r,o){return $o(e,"update-verification",n,async({client:s,conversation:c})=>(await s.groups.updateVerification(c,r,o),Object.freeze({ok:!0,operation:"update-verification",conversation:c,outcome:"updated",stale:!1,projectionUpdated:!1,refreshRequired:!1})))}async function Os(e,n,r){let o=Cs(e,"update-avatar",n);if(!o.ok)return o.result;let{captured:s}=o;try{await s.client.groups.updateAvatar(s.conversation,r);}catch(c){return s.isCurrent()?en("update-avatar",s.conversation,"failed",bs(c,"update-avatar",s.conversation)):en("update-avatar",s.conversation,"stale")}if(!s.isCurrent())return en("update-avatar",s.conversation,"stale");try{let c=await s.client.groups.getProfile(s.conversation,{forceRefresh:!0});if(!s.isCurrent())return en("update-avatar",s.conversation,"stale");let m=c?.avatar?.trim();return Object.freeze({ok:!0,operation:"update-avatar",conversation:s.conversation,outcome:"updated",...m===void 0||m===""?{}:{avatar:m},stale:!1,projectionUpdated:!1,refreshRequired:m===void 0||m===""})}catch{return s.isCurrent()?Object.freeze({ok:true,operation:"update-avatar",conversation:s.conversation,outcome:"updated",stale:false,projectionUpdated:false,refreshRequired:true}):en("update-avatar",s.conversation,"stale")}}function xu(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function zu(e,n){if(n.id!==e.conversationId)throw new Error("GROUP \u8D44\u6599\u54CD\u5E94\u8EAB\u4EFD\u4E0D\u5339\u914D");return Object.freeze({ref:xu(e),name:n.name,...n.avatar===void 0?{}:{avatar:n.avatar},...n.memberCount===void 0?{}:{memberCount:n.memberCount},...n.ownerId===void 0?{}:{ownerId:n.ownerId},...n.verifyWay===void 0?{}:{verifyWay:n.verifyWay},...n.inviteCode===void 0?{}:{inviteCode:n.inviteCode},...n.isInGroup===void 0?{}:{isInGroup:n.isInGroup}})}function Ms(e){return Object.freeze(e.map(n=>Object.freeze({userId:n.userId,nickname:n.nickName,...n.joinType===void 0?{}:{joinType:n.joinType}})))}async function Ss(e,n,r={}){let o=e.ensureProductClient(),[s,c]=await Promise.all([r.forceRefresh===true?o.contacts.getProfile(n.conversationId,r):o.contacts.getProfile(n.conversationId),o.contacts.getRelationship(n.conversationId)]);return Object.freeze({profile:s,relationship:c})}async function Es(e,n){let r=await e.getClient()?.group.peekProfile(n.conversationId)??null;return r===null?null:zu(n,r.value)}function js(e,n,r){return e.ensureProductClient().groups.getProfile(n,r)}async function Ts(e,n){let r=n.trim();if(r==="")return Object.freeze([]);let o=e.ensureProductClient(),s=e.getClient();if(s===null)throw new Error("\u5171\u540C\u7FA4\u7EC4\u80FD\u529B\u672A\u8FDE\u63A5");let c=[],m=await o.groups.listFirstPage({pageSize:100});for(c.push(...m.items);!m.exhausted&&m.nextPageToken!==void 0;)m=await o.groups.listNextPage(m.nextPageToken),c.push(...m.items);let I=[];for(let w of c){let z=await s.group.listMembers(w.id,{forceRefresh:false});z!==null&&z.some(G=>G.userId===r)&&I.push(Object.freeze({ref:Object.freeze({conversationType:"group",conversationId:w.id}),name:w.displayName||w.cardDisplayName||w.id,...w.avatarUrl===void 0?{}:{avatar:w.avatarUrl}}));}return Object.freeze(I)}async function ws(e,n){let r=await e.getClient()?.group.peekMembers(n.conversationId)??null;return r===null?null:Object.freeze({items:Ms(r.value),stale:r.stale})}async function xs(e,n){let r=await e.getClient()?.group.listMembers(n.conversationId,{forceRefresh:true})??null;return r===null?null:Ms(r)}async function zs(e,n,r){let o=await e.ensureProductClient().channels.getProfile(n,r);if(o===null)return null;if(o.ref.conversationId!==n.conversationId)throw new Error("CHANNEL \u8D44\u6599\u54CD\u5E94\u8EAB\u4EFD\u4E0D\u5339\u914D");return Object.freeze({...o,canViewMembers:o.permissions.manageMembers===true||o.memberPrivateChatDisabled===false})}function As(e,n,r){let o=e.ensureProductClient(),s=n==="individual"?o.contacts:n==="group"?o.groups:o.channels;return r===void 0?s.listFirstPage():s.listNextPage(r)}function Gs(e,n){return e.ensureProductClient().directory.search(n)}async function Ds(e,n,r){let o=e.getClient();if(o===null)throw new Error("CHANNEL \u6210\u5458\u80FD\u529B\u672A\u8FDE\u63A5");let s=r.query?.trim()??"",c=s===""?await o.channel.listMembers({channelId:n.conversationId,cursor:r.cursor,limit:18}):await o.channel.searchMembers({channelId:n.conversationId,query:s,cursor:r.cursor,limit:18});return Bo(c)}function Bo(e){return Object.freeze({items:Object.freeze(e.items.map(n=>Object.freeze({userId:n.userId,...n.nickname===void 0?{}:{nickname:n.nickname},displayName:n.displayName,...n.avatar===void 0?{}:{avatar:n.avatar},role:n.role}))),...e.nextCursor===void 0?{}:{nextCursor:e.nextCursor},exhausted:e.exhausted})}async function _s(e,n,r,o={}){let s=e.getClient();if(s===null)throw new Error("CHANNEL \u6210\u5458\u80FD\u529B\u672A\u8FDE\u63A5");let c=r.trim();if(c==="")return null;let I=(await s.channel.getMembersByIds(n.conversationId,[c],o.forceRefresh===true?{forceRefresh:true}:void 0)).find(w=>w.userId===c);return I===void 0?null:Object.freeze({userId:I.userId,...I.nickname===void 0?{}:{nickname:I.nickname},displayName:I.displayName,...I.avatar===void 0?{}:{avatar:I.avatar},role:I.role})}async function Wo(e,n,r){let o=e.getClient();if(o===null)throw new Error("CHANNEL \u6210\u5458\u80FD\u529B\u672A\u8FDE\u63A5");let s=r?.trim()??"",c=await o.channel.getCachedMembers({channelId:n.conversationId,...s===""?{}:{query:s}});return c===null?null:Bo(c)}async function Fs(e,n,r){let o=e.getClient();if(o===null)throw new Error("CHANNEL \u6210\u5458\u80FD\u529B\u672A\u8FDE\u63A5");let s=r?.trim()??"";return Bo(await o.channel.refreshMembers({channelId:n.conversationId,...s===""?{}:{query:s}}))}function Qo(e){return Object.freeze({items:Object.freeze(e.items.map(n=>Object.freeze({userId:n.userId,displayName:n.displayName,...n.avatar===void 0?{}:{avatar:n.avatar}}))),...e.nextPageToken===void 0?{}:{nextPageToken:e.nextPageToken},exhausted:e.exhausted})}async function Jo(e,n,r){let o=await e.ensureProductClient().channels.mentions.getCachedPage(n,r);return o===null?null:Qo(o)}async function Ks(e,n,r){let o=e.ensureProductClient().channels.mentions,s=r?.trim()??"",c=s===""?await o.refreshFirstPage(n):await o.refreshSearchFirstPage(n,s);return Qo(c)}async function Hs(e,n,r){let o=e.ensureProductClient().channels.mentions,s=n.trim()===""?await o.listNextPage(r):await o.searchNextPage(r);return Qo(s)}function Ns(e,n){let r=e.map(s=>`${s.kind}:${s.id}`),o=new Map(e.map(s=>[`${s.kind}:${s.id}`,s]));for(let s of n){let c=`${s.kind}:${s.id}`;o.has(c)||r.push(c),o.set(c,s);}return Object.freeze(r.map(s=>o.get(s)))}var Du=new Set(["group_member_joined","group_member_invited","group_member_left","group_member_removed","group_member_renamed"]),_u=new Set(["channel_member_joined","channel_member_invited","channel_member_left","channel_member_removed","channel_owner_transferred","channel_admin_added","channel_admin_removed","channel_member_renamed"]),Ls=new Set(["channel_member_joined","channel_member_invited","channel_member_left","channel_member_removed","channel_member_renamed"]);function be(e){return Object.freeze({conversationType:e.conversationType,conversationId:e.conversationId})}function Q(e,n){return e!==null&&e.conversationType===n.conversationType&&e.conversationId===n.conversationId}function Zn(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"stale",stale:true,projectionUpdated:false,refreshRequired:false})}function $r(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"stale",stale:true,projectionUpdated:false,refreshRequired:false})}function Hn(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"stale",stale:true,projectionUpdated:false,refreshRequired:false})}function et(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"not-allowed",stale:false,projectionUpdated:false,refreshRequired:false})}function hn(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"stale",stale:true,projectionUpdated:false,refreshRequired:false})}function Xt(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"not-allowed",stale:false,projectionUpdated:false,refreshRequired:false})}function nt(e,n){return Object.freeze({ok:false,operation:e,conversation:n,outcome:"stale",stale:true,projectionUpdated:false,refreshRequired:false})}function Fu(e){return e==="auth"||e==="network"||e==="protocol"||e==="permission"||e==="validation"||e==="state"||e==="unsupported"||e==="contract"}function Ve(e,n,r){let o=typeof e=="object"&&e!==null?e:null;return o!==null&&typeof o.code=="string"&&Fu(o.category)?Object.freeze({code:o.code,category:o.category,operation:n,retryable:o.retryable===true,...r===void 0?{}:{conversation:be(r)}}):Object.freeze({code:"IM_CHAT_KIT_PROFILE_DIRECTORY_OPERATION_FAILED",category:"state",operation:n,retryable:false,...r===void 0?{}:{conversation:be(r)}})}function Br(){return {items:[],loading:false,loaded:false,exhausted:false,error:null}}function Ku(e){return defineStore("k2-im-profile-directory",()=>{let n=ge(e).runtime,r=n.getDiagnostics(),o=ref(0),s=ref({}),c=shallowRef(null),m=shallowRef(null),I=ref("unknown"),w=ref(false),z$1=shallowRef(null),G=shallowRef([]),V=ref(false),W=shallowRef(null),R=shallowRef(null),g=shallowRef(null),K=shallowRef([]),q=ref(false),$=ref(false),re=shallowRef(null),S=shallowRef(null),x$1=shallowRef(null),X=ref(false),L=shallowRef(null),se=reactive({individual:Br(),group:Br(),channel:Br()}),ne=ref(""),O=shallowRef(null),j=ref(false),C=shallowRef(null),A$1=shallowRef(null),h=shallowRef([]),M=ref(""),D=ref(false),ce=ref(false),pe=shallowRef(null),ye=shallowRef(null),H=shallowRef(null),J=ref(false),Ie=shallowRef(null),le=shallowRef(null),Ce=shallowRef([]),ke=ref(""),Se=ref(false),je=ref(false),F=shallowRef(null),U=false,de=new Map,fe=0,ue={direct:0,group:0,channel:0},De=0,k={"set-remark":0,block:0,report:0,"delete-friendship":0,"search-user":0,"resolve-application-target":0,"request-friendship":0},y$1={"update-name":0,"update-avatar":0,"set-my-nickname":0,"update-verification":0},_={"invite-members":0,"remove-member":0,"transfer-ownership":0,leave:0},ee=new Map,ie=0,oe=new Map,Re=new Map,ae=new Set,he=new Set,we=new Map,Ke=new Map,io=0,yn={"invite-members":0,"remove-member":0,"add-admin":0,"remove-admin":0,"transfer-ownership":0,leave:0,dismiss:0},bn=new Map,ln=new Map,Zt=0,Sn=new Set,Cn=new Map,cn=new Map,er=0,un=0,tt=0,Rn=new Map,Ue=new Map,Ae=new Map,dn=new Map,$e=new Map,qe=new Map,fn=new Map,En=ref(0),rt={individual:0,group:0,channel:0},Nn=new Map,Ln=0,Pn,jn,Tn,kn=0,nn,tn,gn,mn=0,pn,Be,We;function so(a){return s.value[a.conversationId]??0}function lo(a,i,t){o.value;let l=n.getSenderProfileCache();if(a.conversationType==="channel"){let u=y(l,n.getChannelMemberProfiles(),a.conversationId,i),f=(t??"").trim();return u===i&&f!==""?f:u}return a.conversationType==="group"?x(l,n.getGroupMemberNames(),a.conversationId,i,t):a.conversationType==="direct"?x(l,n.getGroupMemberNames(),"",i,t):(t??"").trim()||i}function nr(a,i){o.value;let t=n.getSenderProfileCache();return a.conversationType==="channel"?z(t,n.getChannelMemberProfiles(),a.conversationId,i):A(t,i)}function co(a){return o.value,B(n.getSenderProfileCache(),a)}function tr(a,i){return pa$1(n,a,i)}function ot(a,i){return qa(n,a.conversationId,i)}function at(a,i,t){let l=n.getGeneration(),u=de.get(a.conversationId)??0;return ra(n,a.conversationId,i,{...t?.forceRefresh===true?{forceRefresh:true}:{},isCurrent:()=>!U&&n.getGeneration()===l&&(de.get(a.conversationId)??0)===u&&t?.isCurrent?.()!==false})}function it(a,i){let t=a.conversationId.trim();if(t==="")return;de.set(t,(de.get(t)??0)+1);let l={...n.getChannelMemberProfiles()},u=[...new Set((i??[]).map(f=>f.trim()).filter(Boolean))];if(u.length===0)delete l[t];else {let f={...l[t]??{}};for(let E of u)delete f[E];Object.keys(f).length===0?delete l[t]:l[t]=f;}n.setChannelMemberProfiles(l);}function wn(a,i){let t=a.conversationId.trim();t!==""&&(it(a,i),s.value={...s.value,[t]:(s.value[t]??0)+1});}function rr(a,i,t){let l=t.trim();if(l==="")return;let u=a.get(i)??new Set;u.add(l),a.set(i,u);}function or(a,i,t){let l=a.get(i);l!==void 0&&(l.delete(t.trim()),l.size===0&&a.delete(i));}function Tt(a,i,t){let l=t.trim();return l!==""&&a.get(i)?.has(l)===true}function Qe(a,i,t){let l=a.get(i);return l===void 0||l.size===0?t:t.filter(u=>!l.has(u.userId))}function ar(a,i,t={}){let l=$e.get(a);if(l===void 0||l.size===0)return i;let u=new Set(i.map(N=>N.userId)),f=new Map(l),E=i.map(N=>{let B=l.get(N.userId);return B===void 0?N:(t.reconcile===true&&B===N.nickname&&f.delete(N.userId),Object.freeze({...N,nickname:B}))});if(t.reconcile===true)for(let N of f.keys())u.has(N)||f.delete(N);return f.size===0?$e.delete(a):$e.set(a,f),Object.freeze(E)}function wt(a,i){let t=$e.get(a);t!==void 0&&(t.delete(i.trim()),t.size===0&&$e.delete(a));}function st(a,i){let t=qe.get(a);return t===void 0||t.size===0?i:Object.freeze(i.map(l=>{let u=t.get(l.userId);return u===void 0?l:Object.freeze({...l,displayName:u.displayName})}))}function Je(a,i){let t=qe.get(a),l=fn.get(a),u=S.value?.conversationId===a?x$1.value?.ownerId:dn.get(a)?.ownerId;return (t===void 0||t.size===0)&&(l===void 0||l.size===0)&&u===void 0?i:Object.freeze(i.map(f=>{let E=t?.get(f.userId),N=l?.get(f.userId),B=u!==void 0&&f.userId===u;if(E===void 0&&N===void 0&&!B)return f;let{nickname:Me,...sn}=f;return Object.freeze({...sn,...E===void 0?f.nickname===void 0?{}:{nickname:f.nickname}:E.nickname===""?{}:{nickname:E.nickname},displayName:E?.displayName??f.displayName,role:B?"owner":N??f.role})}))}function ir(a,i){let t=qe.get(a);if(t===void 0)return;let l=false;for(let u of i)t.get(u.userId)?.nickname===(u.nickname??"")&&(t.delete(u.userId),l=true);t.size===0&&qe.delete(a),l&&(En.value+=1);}function d(a,i){let t=qe.get(a);t!==void 0&&t.delete(i.trim())&&(t.size===0&&qe.delete(a),En.value+=1);}function p(a,i){let t=fn.get(a);if(t!==void 0){for(let l of i)t.get(l.userId)===l.role&&t.delete(l.userId);t.size===0&&fn.delete(a);}}function v(a,i){let t=fn.get(a);t!==void 0&&(t.delete(i.trim()),t.size===0&&fn.delete(a));}function b(a,i,t,l){let u=a.conversationType==="direct"?c.value:a.conversationType==="group"?R.value:S.value;return !U&&n.getGeneration()===i&&fe===t&&ue[a.conversationType]===l&&Q(u,a)}async function P(a,i={}){let t=be(a),l=++fe,u=ue.direct,f=n.getGeneration(),E=!Q(c.value,t);c.value=t,E&&(m.value=null,I.value="unknown"),w.value=true,z$1.value=null;try{let N=await Ss(n,t,i);return b(t,f,l,u)?(m.value=N.profile,I.value=N.relationship,w.value=!1,N.profile===null?Object.freeze({ok:!1,operation:"direct-profile",reason:"not-found"}):Object.freeze({ok:!0,operation:"direct-profile"})):Object.freeze({ok:!1,operation:"direct-profile",reason:"stale"})}catch(N){if(!b(t,f,l,u))return Object.freeze({ok:false,operation:"direct-profile",reason:"stale"});let B=Ve(N,"profile.direct",t);return z$1.value=B,w.value=false,Object.freeze({ok:false,operation:"direct-profile",reason:"failed",error:B})}}async function T(a,i,t={}){let l=i.trim();if(l==="")return Object.freeze({ok:false,reason:"direct-profile",result:Object.freeze({ok:false,operation:"direct-profile",reason:"not-found"})});let u=t.forceRefresh===true,f;if(a.conversationType==="channel"){let N=await _t({conversationType:"channel",conversationId:a.conversationId},{forceRefresh:u});if(!N.ok)return Object.freeze({ok:false,reason:"channel-profile",result:N});if(f=Q(S.value,a)?x$1.value:null,oa({conversation:a,relationship:"unknown",channelProfile:f})==="blocked")return Object.freeze({ok:true,destination:"blocked"})}let E=await P({conversationType:"direct",conversationId:l},{forceRefresh:u});return E.ok?Object.freeze({ok:true,destination:oa({conversation:a,relationship:I.value,channelProfile:f})}):Object.freeze({ok:false,reason:"direct-profile",result:E})}async function Z(a){let i=be(a),t=++De,l=n.getGeneration();c.value=i,V.value=true,W.value=null;try{let u=await Ts(n,i.conversationId);return !Q(c.value,i)||l!==n.getGeneration()||t!==De?Object.freeze({ok:!1,operation:"direct-mutual-groups",reason:"stale"}):(G.value=u,V.value=!1,Object.freeze({ok:!0,operation:"direct-mutual-groups"}))}catch(u){if(!Q(c.value,i)||l!==n.getGeneration()||t!==De)return Object.freeze({ok:false,operation:"direct-mutual-groups",reason:"stale"});let f=Ve(u,"profile.direct-mutual-groups",i);return W.value=f,V.value=false,Object.freeze({ok:false,operation:"direct-mutual-groups",reason:"failed",error:f})}}function te(a){return k[a]+=1,k[a]}function Y(a,i){return !U&&k[a]===i}async function me(a,i){let t=be(a),l=te("set-remark"),u=await cs(n,t,i);if(!Y("set-remark",l)||!Q(c.value,t))return Zn("set-remark",t);if(!u.ok)return u;let f=m.value,E=f!==null&&f.userId===t.conversationId;return E&&(m.value=Object.freeze({...f,...i.name===void 0?{}:{remark:i.name},...i.emails===void 0?{}:{remarkEmails:Object.freeze([...i.emails])},...i.phones===void 0?{}:{remarkPhones:Object.freeze(i.phones.map(N=>Object.freeze({countryCode:N.countryCode,mobile:N.mobile})))}})),Object.freeze({...u,projectionUpdated:E})}async function ve(a){let i=be(a),t=te("block"),l=await us(n,i);return !Y("block",t)||!Q(c.value,i)?Zn("block",i):l.ok?(I.value="blocked",Object.freeze({...l,projectionUpdated:true})):l}async function ze(a,i){let t=be(a),l=te("report"),u=await ds(n,t,i);return !Y("report",l)||!Q(c.value,t)?Zn("report",t):u}async function _e(a){let i=be(a),t=te("delete-friendship"),l=await fs(n,i);return !Y("delete-friendship",t)||!Q(c.value,i)?Zn("delete-friendship",i):l.ok?(I.value="none",Object.freeze({...l,projectionUpdated:true})):l}async function Ee(a){let i=te("search-user"),t=await ms(n,a);return Y("search-user",i)?t:Zn("search-user",t.conversation)}async function He(a){let i=be(a),t=te("resolve-application-target"),l=await ps(n,i);return Y("resolve-application-target",t)?l:Zn("resolve-application-target",i)}async function Xe(a,i){let t=be(a),l=te("request-friendship"),u=await vs(n,t,i);return Y("request-friendship",l)?u:Zn("request-friendship",t)}function xn(a,i,t,l){return `${t}:${l}:${a.conversationType}:${a.conversationId}:${i}`}function zn(a,i){y$1[a]+=1;let t=n.getGeneration(),l=ue.group,u=xn(i,a,t,l);return oe.set(u,(oe.get(u)??0)+1),Object.freeze({epoch:y$1[a],generation:t,key:u,resetEpoch:l})}function rn(a,i){let t=oe.get(i.key)??0;t<=1?oe.delete(i.key):oe.set(i.key,t-1),ea(a);}function xt(a,i){return !U&&n.getGeneration()===i.generation&&ue.group===i.resetEpoch&&y$1[a]===i.epoch}function zt(a,i){let t=n.getGeneration(),l=ue.group;return i!==void 0?(oe.get(xn(a,i,t,l))??0)>0:Object.keys(y$1).some(u=>(oe.get(xn(a,u,t,l))??0)>0)}async function Te(a,i){let t=be(a),l=i.trim(),u=zn("update-name",t);try{let f=await Rs(n,t,l);if(!xt("update-name",u)||!Q(R.value,t))return $r("update-name",t);if(!f.ok)return f;let E=g.value!==null;return E&&wl(t,l),Object.freeze({...f,projectionUpdated:E})}finally{rn(t,u);}}async function Ye(a,i){let t=be(a),l=zn("update-avatar",t);try{let u=await Os(n,t,i);if(!xt("update-avatar",l)||!Q(R.value,t))return $r("update-avatar",t);if(!u.ok)return u;let f=g.value!==null&&u.avatar!==void 0;return f&&xl(t,u.avatar),Object.freeze({...u,projectionUpdated:f})}finally{rn(t,l);}}async function An(a,i){let t=be(a),l=i.trim(),u=zn("set-my-nickname",t);try{let f=await Ps(n,t,l);if(!xt("set-my-nickname",u)||!Q(R.value,t))return $r("set-my-nickname",t);if(!f.ok)return f;let E=K.value.some(N=>N.userId===f.memberId);return ca(t,f.memberId,l),ua(n,t.conversationId,f.memberId,l),Object.freeze({...f,projectionUpdated:E})}finally{rn(t,u);}}async function Gn(a,i,t){let l=be(a),u=i===4?t?.trim():void 0,f=zn("update-verification",l);try{let E=await ks(n,l,i,u);if(!xt("update-verification",f)||!Q(R.value,l))return $r("update-verification",l);if(!E.ok)return E;let N=g.value!==null;return N&&zl(l,i,u),Object.freeze({...E,projectionUpdated:N})}finally{rn(l,f);}}function uo(a,i,t,l,u){return `${l}:${u}:${a.conversationType}:${a.conversationId}:${i}:${t}`}function vn(a,i,t="profile"){let l=n.getGeneration(),u=ue.channel,f=uo(i,a,t,l,u),E=++io;return we.set(f,E),Ke.set(f,(Ke.get(f)??0)+1),Object.freeze({conversation:be(i),epoch:E,generation:l,resetEpoch:u,key:f})}function In(a){let i=Ke.get(a.key)??0;i<=1?Ke.delete(a.key):Ke.set(a.key,i-1),we.get(a.key)===a.epoch&&we.delete(a.key),oa$1(a.conversation);}function xe(a){return !U&&n.getGeneration()===a.generation&&ue.channel===a.resetEpoch&&we.get(a.key)===a.epoch}function on(a,i,t){let l=`${n.getGeneration()}:${ue.channel}:${a.conversationType}:${a.conversationId}:`;for(let[u,f]of Ke){let E=i===void 0?l:`${l}${i}:`;if(f>0&&u.startsWith(E)&&(t===void 0||u===`${E}${t.trim()}`))return true}return false}function Yo(a,i,t){let l=n.getChannelMemberProfiles(),u=l[a.conversationId],f=u?.[i];u===void 0||f===void 0||n.setChannelMemberProfiles({...l,[a.conversationId]:{...u,[i]:{...f,displayName:t}}});}async function Zs(a,i){let t=be(a);if(an(t))return et("update-name",t);let l=i.trim(),u=vn("update-name",t);try{let f=await ns(n,t,l);if(!xe(u)||!Q(S.value,t))return Hn("update-name",t);if(!f.ok)return f;let E=x$1.value!==null;return E&&fa(t,l),Object.freeze({...f,projectionUpdated:E})}finally{In(u);}}async function el(a,i){let t=be(a);if(an(t))return et("update-description",t);let l=i.trim(),u=vn("update-description",t);try{let f=await ts(n,t,l);if(!xe(u)||!Q(S.value,t))return Hn("update-description",t);if(!f.ok)return f;let E=x$1.value!==null;return E&&ma(t,l),Object.freeze({...f,projectionUpdated:E})}finally{In(u);}}async function nl(a,i){let t=be(a);if(an(t))return et("update-avatar",t);let l=vn("update-avatar",t);try{let u=await rs(n,t,i);if(!xe(l)||!Q(S.value,t))return Hn("update-avatar",t);if(!u.ok)return u;let f=x$1.value!==null;return f&&pa(t,u.avatar),Object.freeze({...u,projectionUpdated:f})}finally{In(l);}}async function tl(a,i){let t=be(a),l=i.trim(),u=vn("set-my-nickname",t,n.getCredentials().userId);try{let f=await os(n,t,l);return !xe(u)||!Q(S.value,t)?Hn("set-my-nickname",t):f.ok?(ho(t,f.memberId,l,l),Yo(t,f.memberId,l),Object.freeze({...f,projectionUpdated:!0})):f}finally{In(u);}}async function rl(a,i,t){let l=be(a);if(an(l))return et("set-member-nickname",l);let u=i.trim(),f=t.trim(),E=Ro(l,u),N=vn("set-member-nickname",l,u);try{let B=await as(n,l,u,E?.role??"unknown",f);return !xe(N)||!Q(S.value,l)?Hn("set-member-nickname",l):B.ok?(ho(l,B.memberId,f,f),Yo(l,B.memberId,f),Object.freeze({...B,projectionUpdated:!0})):B}finally{In(N);}}async function ol(a,i,t){let l=be(a);if(an(l))return et("update-verification",l);let u=i===4?t?.trim():void 0,f=vn("update-verification",l);try{let E=await is(n,l,i,u);if(!xe(f)||!Q(S.value,l))return Hn("update-verification",l);if(!E.ok)return E;let N=x$1.value!==null;return N&&va$1(l,i,u),Object.freeze({...E,projectionUpdated:N})}finally{In(f);}}async function al(a,i){let t=be(a);if(an(t))return et("set-all-muted",t);let l=vn("set-all-muted",t);try{let u=await ss(n,t,i);if(!xe(l)||!Q(S.value,t))return Hn("set-all-muted",t);if(!u.ok)return u;let f=x$1.value!==null;return f&&Io(t,{allMembersMuted:i}),Object.freeze({...u,projectionUpdated:f})}finally{In(l);}}async function il(a,i){let t=be(a);if(an(t))return et("set-member-private-chat-disabled",t);let l=vn("set-member-private-chat-disabled",t);try{let u=await ls(n,t,i);if(!xe(l)||!Q(S.value,t))return Hn("set-member-private-chat-disabled",t);if(!u.ok)return u;let f=x$1.value!==null;return f&&Io(t,{memberPrivateChatDisabled:i}),Object.freeze({...u,projectionUpdated:f})}finally{In(l);}}function sl(a,i,t,l,u){return `${l}:${u}:${a.conversationType}:${a.conversationId}:${i}:${t}`}function fo(a,i,t,l){return `${t}:${l}:${a.conversationType}:${a.conversationId}:${i}`}function sr(a,i,t){let l=n.getGeneration(),u=_[a],f=fo(i,a,l,u),E=sl(i,a,t,l,u),N=++ie;return ee.set(E,N),Re.set(f,(Re.get(f)??0)+1),Object.freeze({actionEpoch:N,actionKey:E,generation:l,resetEpoch:u,writeKey:f})}function lr(a,i){let t=Re.get(i.writeKey)??0;t<=1?Re.delete(i.writeKey):Re.set(i.writeKey,t-1),ee.get(i.actionKey)===i.actionEpoch&&ee.delete(i.actionKey),ea(a);}function cr(a,i){return !U&&n.getGeneration()===i.generation&&_[a]===i.resetEpoch&&ee.get(i.actionKey)===i.actionEpoch}function ur(a,i){let t=n.getGeneration();return i!==void 0?(Re.get(fo(a,i,t,_[i]))??0)>0:Object.keys(_).some(l=>(Re.get(fo(a,l,t,_[l]))??0)>0)}function ll(a,i){let t=i.trim();t!==""&&Ue.set(a.conversationId,{ownerId:t,expiresAt:Date.now()+3e4});}function cl(a,i){if(i===null||i.isInGroup===false)return Ue.delete(a.conversationId),i;let t=Ue.get(a.conversationId);return t===void 0?i:t.expiresAt<=Date.now()||i.ownerId===t.ownerId?(Ue.delete(a.conversationId),i):Object.freeze({...i,ownerId:t.ownerId})}function Zo(a){Q(R.value,a)&&dt(a,{forceRefresh:true,preserveExisting:true}).then(i=>{!i.ok||!Q(R.value,a)||dr(a);});}function At(a){Q(R.value,a)&&Dt(a,{forceRefresh:true});}function ea(a){zt(a)||ur(a)||(ae.delete(a.conversationId)&&At(a),he.delete(a.conversationId)&&Oo(a));}function dr(a){Q(R.value,a)&&ta(n,a.conversationId,K.value.map(i=>({userId:i.userId,nickName:i.nickname,...i.joinType===void 0?{}:{joinType:i.joinType}})));}async function ul(a,i){let t=be(a),l=JSON.stringify([...new Set(i.map(f=>f.trim()).filter(Boolean))].sort()),u=sr("invite-members",t,l);try{let f=await gs(n,t,i);if(!cr("invite-members",u))return nt("invite-members",t);if(!f.ok)return f.outcome!=="stale"&&Q(R.value,t)&&At(t),f;if(!Q(R.value,t))return nt("invite-members",t);let E=f.memberIds.some(N=>da(t,N));for(let N of f.memberIds)vo(t,N);return Zo(t),Object.freeze({...f,projectionUpdated:E,refreshRequired:!1})}finally{lr(t,u);}}async function dl(a,i){let t=be(a),l=sr("remove-member",t,i.trim());try{let u=await Is(n,t,i);if(!cr("remove-member",l))return nt("remove-member",t);if(!u.ok)return u.outcome!=="stale"&&Q(R.value,t)&&At(t),u;if(!Q(R.value,t))return nt("remove-member",t);let f=K.value.some(E=>E.userId===u.memberId);return po(t,u.memberId),Zo(t),Object.freeze({...u,projectionUpdated:f,refreshRequired:!1})}finally{lr(t,l);}}async function fl(a,i){let t=be(a),l=sr("transfer-ownership",t,"group-owner");try{let u=await hs(n,t,i);if(!cr("transfer-ownership",l))return nt("transfer-ownership",t);if(!u.ok)return u.outcome!=="stale"&&Q(R.value,t)&&At(t),u;if(!Q(R.value,t))return nt("transfer-ownership",t);ll(t,u.ownerId);let f=g.value,E=f!==null;return f!==null&&(g.value=Object.freeze({...f,ownerId:u.ownerId})),At(t),Object.freeze({...u,projectionUpdated:E,refreshRequired:!1})}finally{lr(t,l);}}async function ml(a,i={}){let t=be(a),l=sr("leave",t,"membership");try{let u=await ys(n,t,i);if(!u.ok&&!cr("leave",l))return nt("leave",t);if(!u.ok)return u.outcome==="transfer-required"&&Q(R.value,t)&&await Dt(t,{forceRefresh:!0}),u;go(t),va(n,t.conversationId,{clearCachedNames:!0}),Ue.delete(t.conversationId);let f=Q(R.value,t)&&(g.value!==null||K.value.length>0);return Q(R.value,t)&&(R.value=null,g.value=null,K.value=[],q.value=!1,$.value=!1,re.value=null),Object.freeze({...u,projectionUpdated:f})}finally{lr(t,l);}}function pl(a,i,t,l,u){return `${l}:${u}:${a.conversationType}:${a.conversationId}:${i}:${t}`}function na(a,i,t,l){return `${t}:${l}:${a.conversationType}:${a.conversationId}:${i}`}function lt(a,i,t){let l=n.getGeneration(),u=yn[a],f=pl(i,a,t,l,u),E=na(i,a,l,u),N=++Zt;return bn.set(f,N),ln.set(E,(ln.get(E)??0)+1),Object.freeze({actionEpoch:N,actionKey:f,conversation:be(i),writeKey:E,generation:l,resetEpoch:u})}function ct(a){let i=ln.get(a.writeKey)??0;i<=1?ln.delete(a.writeKey):ln.set(a.writeKey,i-1),bn.get(a.actionKey)===a.actionEpoch&&bn.delete(a.actionKey),oa$1(a.conversation);}function ut(a,i){return !U&&n.getGeneration()===i.generation&&yn[a]===i.resetEpoch&&bn.get(i.actionKey)===i.actionEpoch}function fr(a,i){let t=n.getGeneration();return (i===void 0?Object.keys(yn):[i]).some(u=>(ln.get(na(a,u,t,yn[u]))??0)>0)}function mr(a,i){let t=i.trim();if(t==="")return;let l=Ro(a,t);return l===void 0?void 0:Object.freeze({userId:t,role:l.role})}function vl(a,i){let t=i.trim();t!==""&&dn.set(a.conversationId,{ownerId:t});}function an(a){let i=dn.get(a.conversationId);return i===void 0?false:i.ownerId!==n.getCredentials().userId}function ta$1(a,i){if(i===null)return dn.delete(a.conversationId),null;let t=dn.get(a.conversationId);return t===void 0?i:i.ownerId===t.ownerId&&i.role!=="owner"||i.ownerId!==n.getCredentials().userId&&i.role!=="owner"?(dn.delete(a.conversationId),i):Object.freeze({...i,ownerId:t.ownerId,role:"member",permissions:Object.freeze({sendMessages:i.permissions.sendMessages}),canViewMembers:i.memberPrivateChatDisabled===false})}function gl(a){return !Q(S.value,a)||x$1.value===null?false:(x$1.value=ta$1(a,x$1.value),true)}function Il(a){Q(A$1.value,a)&&ko(a,{preserveExisting:true});}function Gt(a){Q(S.value,a)&&_t(a,{forceRefresh:true});}function pr(a){Gt(a),Il(a);}function hl(a,i,t,l){let u=Cn.get(a.conversationId)??{allTargets:false,affectsMentions:false,resolvesProfiles:false,userIds:new Set},f=l.map(E=>E.trim()).filter(Boolean);f.length===0&&(u.allTargets=true);for(let E of f)u.userIds.add(E);u.affectsMentions||=i,u.resolvesProfiles||=t,Cn.set(a.conversationId,u);}function ra$1(a,i){let t=Cn.get(a.conversationId);if(!(t===void 0||t.allTargets)){for(let l of i)t.userIds.delete(l.trim());t.userIds.size===0&&Cn.delete(a.conversationId);}}function oa$1(a){if(on(a)||fr(a))return;Sn.delete(a.conversationId)&&ba(a);let i=Cn.get(a.conversationId);if(i===void 0)return;Cn.delete(a.conversationId);let t=i.allTargets?void 0:[...i.userIds];i.affectsMentions?wn(a,t):it(a,t),i.resolvesProfiles&&t!==void 0&&t.length>0&&at(a,t,{forceRefresh:true}),Ir(a);}function yl(a,i){let t=n.getChannelMemberProfiles(),l=t[a.conversationId];if(l===void 0||l[i]===void 0)return false;let u={...l};return delete u[i],n.setChannelMemberProfiles({...t,[a.conversationId]:u}),true}function aa(a){let i=n.getChannelMemberProfiles();if(i[a.conversationId]===void 0)return false;let t={...i};return delete t[a.conversationId],n.setChannelMemberProfiles(t),true}async function bl(a,i){let t=be(a);if(an(t))return Xt("invite-members",t);let l=JSON.stringify([...new Set(i.map(f=>f.trim()).filter(Boolean))].sort()),u=lt("invite-members",t,l);try{let f=await $i(n,t,i);if(!ut("invite-members",u))return hn("invite-members",t);if(!f.ok)return f.outcome!=="stale"&&Gt(t),f;if(!Q(S.value,t))return hn("invite-members",t);let E=f.memberIds.some(N=>Co(t,N));for(let N of f.memberIds)bo(t,N);return wn(t,f.memberIds),ra$1(t,f.memberIds),pr(t),Object.freeze({...f,projectionUpdated:E,refreshRequired:!1})}finally{ct(u);}}async function Cl(a,i){let t=be(a);if(an(t))return Xt("remove-member",t);let l=mr(t,i),u=lt("remove-member",t,i.trim());try{let f=await Bi(n,t,l??{userId:i,role:"unknown"});if(!ut("remove-member",u))return hn("remove-member",t);if(!f.ok)return f.outcome!=="stale"&&Gt(t),f;if(!Q(S.value,t))return hn("remove-member",t);let E=yl(t,f.memberId),N=h.value.some(B=>B.userId===f.memberId)||Ce.value.some(B=>B.userId===f.memberId)||E;return yo(t,f.memberId),wn(t,[f.memberId]),ra$1(t,[f.memberId]),pr(t),Object.freeze({...f,projectionUpdated:N,refreshRequired:!1})}finally{ct(u);}}async function Rl(a,i,t){let l=be(a),u=mr(l,i),f=t?"add-admin":"remove-admin";if(an(l))return Xt(f,l);let E=lt(f,l,i.trim());try{let N=t?await Qi(n,l,u??{userId:i,role:"unknown"}):await Ji(n,l,u??{userId:i,role:"unknown"});if(!ut(f,E))return hn(f,l);if(!N.ok)return N.outcome!=="stale"&&Gt(l),N;if(!Q(S.value,l))return hn(f,l);let B=t?"admin":"member",Me=u?.role!==B;return Un(l,N.memberId,B),pr(l),Object.freeze({...N,projectionUpdated:Me,refreshRequired:!1})}finally{ct(E);}}async function Pl(a,i){let t=be(a);if(an(t))return Xt("transfer-ownership",t);let l=mr(t,i),u=lt("transfer-ownership",t,"channel-owner");try{let f=await Xi(n,t,l??{userId:i,role:"unknown"});if(!ut("transfer-ownership",u))return hn("transfer-ownership",t);if(!f.ok)return f.outcome!=="stale"&&Gt(t),f;if(!Q(S.value,t))return hn("transfer-ownership",t);vl(t,f.ownerId);let E=gl(t);return Un(t,f.ownerId,"owner"),Un(t,n.getCredentials().userId,"member"),pr(t),Object.freeze({...f,projectionUpdated:E,refreshRequired:!1})}finally{ct(u);}}async function kl(a,i={}){let t=be(a),l=i.newOwnerId===void 0?void 0:mr(t,i.newOwnerId)??{userId:i.newOwnerId,role:"unknown"},u=lt("leave",t,"membership");try{let f=await Yi(n,t,l);if(!f.ok&&!ut("leave",u))return hn("leave",t);if(!f.ok)return f;let E=Q(S.value,t)&&(x$1.value!==null||h.value.length>0||Ce.value.length>0);return vr(t),dn.delete(t.conversationId),aa(t),Q(S.value,t)&&hr(),Object.freeze({...f,projectionUpdated:E})}finally{ct(u);}}async function Ol(a){let i=be(a);if(an(i))return Xt("dismiss",i);let t=lt("dismiss",i,"membership");try{let l=await Zi(n,i);if(!l.ok&&!ut("dismiss",t))return hn("dismiss",i);if(!l.ok)return l;let u=Q(S.value,i)&&(x$1.value!==null||h.value.length>0||Ce.value.length>0);return vr(i),dn.delete(i.conversationId),aa(i),Q(S.value,i)&&hr(),Object.freeze({...l,projectionUpdated:u})}finally{ct(t);}}async function Dt(a,i={}){let t=be(a),l=++fe,u=ue.group,f=n.getGeneration(),E=!Q(R.value,t);R.value=t,E&&(g.value=null,un+=1,K.value=[],$.value=false),q.value=true,re.value=null;try{let N=i.forceRefresh===!0?null:await Es(n,t);if(!b(t,f,l,u))return Object.freeze({ok:!1,operation:"group-profile",reason:"stale"});if(N!==null&&(g.value=N),i.restricted===!0)return i.includeMembers===!0&&await dt(t,{restricted:!0,forceRefresh:!0}),b(t,f,l,u)?(q.value=!1,g.value===null?Object.freeze({ok:!1,operation:"group-profile",reason:"not-found"}):Object.freeze({ok:!0,operation:"group-profile"})):Object.freeze({ok:!1,operation:"group-profile",reason:"stale"});let B=await js(n,t,i.forceRefresh===!0?{forceRefresh:!0}:void 0);if(!b(t,f,l,u))return Object.freeze({ok:!1,operation:"group-profile",reason:"stale"});let Me=cl(t,B);return r.record("debug","pinia","profile","group-profile-membership-resolved",()=>({conversation:t,data:{profileId:Me?.ref.conversationId??null,name:Me?.name??null,isInGroup:Me?.isInGroup??null,verifyWay:Me?.verifyWay??null,memberCount:Me?.memberCount??null,membershipDecision:Me?.isInGroup===!0?"joined":Me?.isInGroup===!1?"not-joined":"unknown"}})),Me===null||Me.isInGroup===!1?(un+=1,K.value=[],$.value=!1,go(t),va(n,t.conversationId,{clearCachedNames:!0})):i.includeMembers===!0&&await dt(t,{restricted:!1,forceRefresh:!0}),b(t,f,l,u)?(g.value=Me,q.value=!1,Object.freeze(Me===null?{ok:!1,operation:"group-profile",reason:"not-found"}:{ok:!0,operation:"group-profile"})):Object.freeze({ok:!1,operation:"group-profile",reason:"stale"})}catch(N){if(!b(t,f,l,u))return Object.freeze({ok:false,operation:"group-profile",reason:"stale"});let B=Ve(N,"profile.group",t);return i.forceRefresh===true&&(g.value=null,un+=1,K.value=[],$.value=false),re.value=B,q.value=false,Object.freeze({ok:false,operation:"group-profile",reason:"failed",error:B})}}async function dt(a,i={}){let t=be(a);if(Q(R.value,t)||(R.value=t,K.value=[]),Q(R.value,t)&&g.value?.ref.conversationId===t.conversationId&&g.value.isInGroup===false)return un+=1,K.value=[],$.value=false,Object.freeze({ok:true,operation:"group-members"});if(K.value.length>0&&i.forceRefresh!==true)return Object.freeze({ok:true,operation:"group-members"});let l=++un,u=n.getGeneration();$.value=true;try{let f=i.preserveExisting===!0?null:await ws(n,t);if(U||n.getGeneration()!==u||l!==un||!Q(R.value,t))return Object.freeze({ok:!1,operation:"group-members",reason:"stale"});let E=f===null?null:Qe(Rn,t.conversationId,f.items);if(E!==null&&(K.value=ar(t.conversationId,E),dr(t)),i.restricted===!0||i.forceRefresh!==!0&&E!==null&&E.length>0)return $.value=!1,Object.freeze({ok:!0,operation:"group-members"});let N=await xs(n,t);return U||n.getGeneration()!==u||l!==un||!Q(R.value,t)?Object.freeze({ok:!1,operation:"group-members",reason:"stale"}):(N!==null&&(K.value=ar(t.conversationId,Qe(Rn,t.conversationId,N),{reconcile:!0}),dr(t)),$.value=!1,Object.freeze({ok:!0,operation:"group-members"}))}catch(f){if(U||n.getGeneration()!==u||l!==un||!Q(R.value,t))return Object.freeze({ok:false,operation:"group-members",reason:"stale"});let E=Ve(f,"profile.group-members",t);return re.value=E,$.value=false,Object.freeze({ok:false,operation:"group-members",reason:"failed",error:E})}}async function _t(a,i){let t=be(a),l=++fe,u=ue.channel,f=n.getGeneration(),E=!Q(S.value,t);S.value=t,E&&(x$1.value=null,Vn(t)),X.value=true,L.value=null;try{let N=await zs(n,t,i);if(!b(t,f,l,u))return Object.freeze({ok:!1,operation:"channel-profile",reason:"stale"});let B=ta$1(t,N);return x$1.value=B,B!==null&&Q(A$1.value,t)&&(h.value=Je(t.conversationId,h.value)),B===null?(vr(t),Vn()):B.canViewMembers!==!0&&Vn(),X.value=!1,Object.freeze(B===null?{ok:!1,operation:"channel-profile",reason:"not-found"}:{ok:!0,operation:"channel-profile"})}catch(N){if(!b(t,f,l,u))return Object.freeze({ok:false,operation:"channel-profile",reason:"stale"});let B=Ve(N,"profile.channel",t);return i?.forceRefresh===true&&(x$1.value=null,Vn()),L.value=B,X.value=false,Object.freeze({ok:false,operation:"channel-profile",reason:"failed",error:B})}}async function Ml(a,i={}){let t=a.conversationType==="group"?Object.freeze({conversationType:"group",conversationId:a.conversationId}):Object.freeze({conversationType:"channel",conversationId:a.conversationId}),l=t.conversationType==="group"?"request-group-join":"request-channel-join",u=n.getProductClient();if(u===null)return Object.freeze({ok:false,operation:l,reason:"not-ready"});let f=`${t.conversationType}:${t.conversationId}`,E=++er,N=n.getGeneration(),B=ue[t.conversationType];cn.set(f,E);let Me=()=>!U&&n.getGeneration()===N&&ue[t.conversationType]===B&&cn.get(f)===E&&(t.conversationType==="group"?Q(R.value,t):Q(S.value,t));try{let sn=t.conversationType==="group"?i.inviteCode===void 0?await u.groups.requestJoin(t):await u.groups.joinByInviteCode(t,i.inviteCode):i.inviteCode===void 0?await u.channels.requestJoin(t):await u.channels.joinByInviteCode(t,i.inviteCode);return Me()?(sn.outcome==="joined"&&(t.conversationType==="group"?await Dt(t,{forceRefresh:!0}):await _t(t,{forceRefresh:!0})),Me()?Object.freeze({ok:!0,operation:l,outcome:sn.outcome}):Object.freeze({ok:!1,operation:l,reason:"stale"})):Object.freeze({ok:!1,operation:l,reason:"stale"})}catch(sn){return Me()?Object.freeze({ok:false,operation:l,reason:"failed",error:Ve(sn,l,t)}):Object.freeze({ok:false,operation:l,reason:"stale"})}finally{cn.get(f)===E&&cn.delete(f);}}async function ia(a,i,t){let l=se[a];if(l.loading&&!t)return Object.freeze({ok:false,operation:"directory",reason:"busy"});if(i&&l.exhausted)return Object.freeze({ok:false,operation:"directory",reason:"exhausted"});if(!i&&l.loaded&&!t)return Object.freeze({ok:true,operation:"directory"});let u=i?Nn.get(a):void 0;if(i&&u===void 0)return Object.freeze({ok:false,operation:"directory",reason:"exhausted"});let f=++rt[a],E=n.getGeneration();l.loading=true,l.error=null;try{let N=await As(n,a,u);return U||E!==n.getGeneration()||f!==rt[a]?Object.freeze({ok:!1,operation:"directory",reason:"stale"}):(l.items=Ns(i?l.items:[],N.items),l.loaded=!0,l.exhausted=N.exhausted,l.loading=!1,N.nextPageToken===void 0?Nn.delete(a):Nn.set(a,N.nextPageToken),Object.freeze({ok:!0,operation:"directory"}))}catch(N){if(U||E!==n.getGeneration()||f!==rt[a])return Object.freeze({ok:false,operation:"directory",reason:"stale"});let B=Ve(N,`directory.${a}`);return l.error=B,l.loading=false,Object.freeze({ok:false,operation:"directory",reason:"failed",error:B})}}function Sl(a,i=false){return ia(a,i,false)}function El(a){return ia(a,false,true)}function sa$1(){Pn!==void 0&&(clearTimeout(Pn),Pn=void 0),jn?.resolve(Object.freeze({ok:false,operation:"directory-search",reason:"stale"})),jn=void 0;}async function jl(a,i){let t=n.getGeneration();try{let l=await Gs(n,a);return U||t!==n.getGeneration()||i!==Ln?Object.freeze({ok:!1,operation:"directory-search",reason:"stale"}):(O.value=l,j.value=!1,Object.freeze({ok:!0,operation:"directory-search"}))}catch(l){if(U||t!==n.getGeneration()||i!==Ln)return Object.freeze({ok:false,operation:"directory-search",reason:"stale"});let u=Ve(l,"directory.search");return C.value=u,j.value=false,Object.freeze({ok:false,operation:"directory-search",reason:"failed",error:u})}}function mo(){Ln+=1,sa$1(),ne.value="",O.value=null,j.value=false,C.value=null,Tn=void 0;}function Tl(a,i={}){let t=a.trim();if(t==="")return mo(),Promise.resolve(Object.freeze({ok:false,operation:"directory-search",reason:"not-ready"}));if(!i.immediate&&jn?.keyword===t)return jn.promise;if(Tn?.keyword===t)return Tn.promise;if(!i.immediate&&ne.value===t&&O.value?.keyword===t.toLocaleLowerCase()&&C.value===null)return Promise.resolve(Object.freeze({ok:true,operation:"directory-search"}));let l=++Ln;sa$1(),ne.value=t,O.value=null,j.value=true,C.value=null;let u=()=>{let N=jl(t,l);return Tn={keyword:t,promise:N},N.finally(()=>{Tn?.promise===N&&(Tn=void 0);}),N};if(i.immediate)return u();let f,E=new Promise(N=>{f=N;});return jn={keyword:t,promise:E,resolve:f},Pn=setTimeout(()=>{Pn=void 0,jn=void 0,u().then(f);},300),E}function la(a,i){let t=a.map(u=>u.userId),l=new Map(a.map(u=>[u.userId,u]));for(let u of i)l.has(u.userId)||t.push(u.userId),l.set(u.userId,u);return Object.freeze(t.map(u=>l.get(u)))}function wl(a,i){!Q(R.value,a)||g.value===null||(g.value=Object.freeze({...g.value,name:i}));}function xl(a,i){!Q(R.value,a)||g.value===null||(g.value=Object.freeze({...g.value,avatar:i}));}function zl(a,i,t){if(!Q(R.value,a)||g.value===null)return;let{inviteCode:l,...u}=g.value;g.value=Object.freeze({...u,verifyWay:i,...t===void 0?{}:{inviteCode:t}});}function ca(a,i,t){let l=i.trim();if(l==="")return;let u=t.trim(),f=$e.get(a.conversationId)??new Map;f.set(l,u),$e.set(a.conversationId,f),Q(R.value,a)&&(K.value=Object.freeze(K.value.map(E=>E.userId===l?Object.freeze({...E,nickname:u}):E)));}function ua$1(a,i){wt(a.conversationId,i);}function po(a,i){let t=i.trim();if(t===""||(wt(a.conversationId,t),rr(Rn,a.conversationId,t),!Q(R.value,a)))return;let l=K.value.filter(f=>f.userId!==t),u=l.length!==K.value.length;u&&(K.value=Object.freeze(l),dr(a)),u&&g.value!==null&&g.value.memberCount!==void 0&&(g.value=Object.freeze({...g.value,memberCount:Math.max(0,g.value.memberCount-1)}));}function vo(a,i){wt(a.conversationId,i),or(Rn,a.conversationId,i);}function da(a,i){return Tt(Rn,a.conversationId,i)}function go(a){Rn.delete(a.conversationId),$e.delete(a.conversationId);}function fa(a,i){!Q(S.value,a)||x$1.value===null||(x$1.value=Object.freeze({...x$1.value,name:i}));}function ma(a,i){!Q(S.value,a)||x$1.value===null||(x$1.value=Object.freeze({...x$1.value,description:i}));}function pa(a,i){!Q(S.value,a)||x$1.value===null||(x$1.value=Object.freeze({...x$1.value,avatar:i}));}function va$1(a,i,t){if(!Q(S.value,a)||x$1.value===null)return;let{inviteCode:l,...u}=x$1.value;x$1.value=Object.freeze({...u,verifyType:i,...t===void 0?{}:{inviteCode:t}});}function Io(a,i){if(!Q(S.value,a)||x$1.value===null)return;let t={...x$1.value,...i.allMembersMuted===void 0?{}:{allMembersMuted:i.allMembersMuted},...i.memberPrivateChatDisabled===void 0?{}:{memberPrivateChatDisabled:i.memberPrivateChatDisabled}};x$1.value=Object.freeze({...t,canViewMembers:t.permissions.manageMembers===true||t.memberPrivateChatDisabled===false});}function ho(a,i,t,l){let u=i.trim();if(u==="")return;let f=t.trim(),E=f||l?.trim()||u,N=qe.get(a.conversationId)??new Map;N.set(u,{nickname:f,displayName:E}),qe.set(a.conversationId,N),En.value+=1,Q(A$1.value,a)&&(h.value=Je(a.conversationId,h.value)),qn(a,u)&&(H.value=Je(a.conversationId,H.value===null?[]:[H.value])[0]??null),Q(le.value,a)&&(Ce.value=Object.freeze(Ce.value.map(B=>B.userId===u?Object.freeze({...B,displayName:E}):B)));}function Un(a,i,t){let l=i.trim();if(l==="")return;let u=fn.get(a.conversationId)??new Map;u.set(l,t),fn.set(a.conversationId,u),Q(A$1.value,a)&&(h.value=Je(a.conversationId,h.value)),qn(a,l)&&(H.value=Je(a.conversationId,H.value===null?[]:[H.value])[0]??null);}function ga(a,i){d(a.conversationId,i);}function Al(a,i){return En.value,qe.get(a.conversationId)?.get(i.trim())?.nickname}function yo(a,i){let t=i.trim();if(t==="")return;let l=Q(A$1.value,a),u=Q(le.value,a);if(d(a.conversationId,t),v(a.conversationId,t),rr(Ae,a.conversationId,t),!l&&!u)return;let f=l&&h.value.some(N=>N.userId===t),E=u&&Ce.value.some(N=>N.userId===t);l&&(h.value=Object.freeze(h.value.filter(N=>N.userId!==t))),u&&(Ce.value=Object.freeze(Ce.value.filter(N=>N.userId!==t))),qn(a,t)&&(H.value=null),(f||E)&&Q(S.value,a)&&x$1.value?.memberCount!==void 0&&(x$1.value=Object.freeze({...x$1.value,memberCount:Math.max(0,x$1.value.memberCount-1)}));}function bo(a,i){d(a.conversationId,i),v(a.conversationId,i),or(Ae,a.conversationId,i);}function Co(a,i){return Tt(Ae,a.conversationId,i)}function vr(a){Ae.delete(a.conversationId),fn.delete(a.conversationId),qe.delete(a.conversationId)&&(En.value+=1);}function On(a,i,t){return !U&&n.getGeneration()===i&&kn===t&&Q(A$1.value,a)}function qn(a,i,t,l){let u=ye.value;return !U&&(t===void 0||n.getGeneration()===t)&&(l===void 0||tt===l)&&u!==null&&Q(u,a)&&u.userId===i}function Ro(a,i){let t=i.trim();if(t!==""){if(Q(A$1.value,a)){let l=h.value.find(u=>u.userId===t);if(l!==void 0)return l}return qn(a,t)?H.value??void 0:void 0}}async function Gl(a,i,t={forceRefresh:true}){let l=be(a),u=i.trim();if(u==="")return Object.freeze({ok:false,operation:"channel-member",reason:"not-found"});let f=++tt,E=n.getGeneration();ye.value=Object.freeze({...l,userId:u}),H.value=null,J.value=true,Ie.value=null;try{let N=await _s(n,l,u,{forceRefresh:t.forceRefresh!==!1});return qn(l,u,E,f)?N===null||Co(l,u)?Object.freeze({ok:!1,operation:"channel-member",reason:"not-found"}):(H.value=Je(l.conversationId,[N])[0]??null,Object.freeze({ok:!0,operation:"channel-member"})):Object.freeze({ok:!1,operation:"channel-member",reason:"stale"})}catch(N){if(!qn(l,u,E,f))return Object.freeze({ok:false,operation:"channel-member",reason:"stale"});let B=Ve(N,"profile.channel-member",l);return Ie.value=B,Object.freeze({ok:false,operation:"channel-member",reason:"failed",error:B})}finally{qn(l,u,E,f)&&(J.value=false);}}async function Po(a,i,t){D.value=true,pe.value=null;try{let l=await Fs(n,a,M.value);return On(a,i,t)?(ir(a.conversationId,l.items),p(a.conversationId,l.items),h.value=Je(a.conversationId,Qe(Ae,a.conversationId,l.items)),nn=l.nextCursor,ce.value=l.exhausted||l.nextCursor===void 0,gn=void 0,D.value=!1,Object.freeze({ok:!0,operation:"channel-members"})):Object.freeze({ok:!1,operation:"channel-members",reason:"stale"})}catch(l){if(!On(a,i,t))return Object.freeze({ok:false,operation:"channel-members",reason:"stale"});let u=Ve(l,"profile.channel-members.refresh",a);return gn="initial",pe.value=u,D.value=false,Object.freeze({ok:false,operation:"channel-members",reason:"failed",error:u})}}async function Ia(a){if(D.value)return Object.freeze({ok:false,operation:"channel-members",reason:"busy"});let i=be(a),t=kn,l=n.getGeneration();D.value=true,pe.value=null;try{let u=await Wo(n,i,M.value);return On(i,l,t)?(u!==null&&(h.value=Je(i.conversationId,Qe(Ae,i.conversationId,u.items)),nn=u.nextCursor,ce.value=u.exhausted||u.nextCursor===void 0),await Po(i,l,t)):Object.freeze({ok:!1,operation:"channel-members",reason:"stale"})}catch(u){if(!On(i,l,t))return Object.freeze({ok:false,operation:"channel-members",reason:"stale"});let f=Ve(u,"profile.channel-members.cache",i);return gn="initial",pe.value=f,D.value=false,Object.freeze({ok:false,operation:"channel-members",reason:"failed",error:f})}}async function ha(a){if(D.value)return Object.freeze({ok:false,operation:"channel-members",reason:"busy"});if(ce.value||nn===void 0)return Object.freeze({ok:false,operation:"channel-members",reason:"exhausted"});let i=be(a),t=kn,l=n.getGeneration();D.value=true,pe.value=null;try{let u=await Ds(n,i,{query:M.value,cursor:nn});return On(i,l,t)?(ir(i.conversationId,u.items),p(i.conversationId,u.items),h.value=Je(i.conversationId,Qe(Ae,i.conversationId,la(h.value,u.items))),nn=u.nextCursor,ce.value=u.exhausted||u.nextCursor===void 0,gn=void 0,D.value=!1,Object.freeze({ok:!0,operation:"channel-members"})):Object.freeze({ok:!1,operation:"channel-members",reason:"stale"})}catch(u){if(!On(i,l,t))return Object.freeze({ok:false,operation:"channel-members",reason:"stale"});let f=Ve(u,"profile.channel-members.page",i);return gn="more",pe.value=f,D.value=false,Object.freeze({ok:false,operation:"channel-members",reason:"failed",error:f})}}function Vn(a=null){tn!==void 0&&(clearTimeout(tn),tn=void 0),kn+=1,A$1.value=a===null?null:be(a),h.value=[],M.value="",D.value=false,ce.value=false,pe.value=null,nn=void 0,gn=void 0;}function ko(a,i={}){let t=be(a);if(i.preserveExisting===true&&Q(A$1.value,t)){tn!==void 0&&(clearTimeout(tn),tn=void 0);let l=++kn,u=n.getGeneration();return pe.value=null,Po(t,u,l)}return Vn(t),Ia(t)}function Dl(a){let i=A$1.value;if(i===null)return;M.value=a,kn+=1,h.value=[],ce.value=false,pe.value=null,nn=void 0,D.value=false,tn!==void 0&&clearTimeout(tn);let t=kn,l=n.getGeneration();(async()=>{try{let u=await Wo(n,i,M.value);if(!On(i,l,t))return;u!==null&&(h.value=Je(i.conversationId,Qe(Ae,i.conversationId,u.items)),nn=u.nextCursor,ce.value=u.exhausted||u.nextCursor===void 0);}catch(u){if(!On(i,l,t))return;pe.value=Ve(u,"profile.channel-members.cache",i);}On(i,l,t)&&(tn=setTimeout(()=>{tn=void 0,Po(i,l,t);},300));})();}function _l(){let a=A$1.value;return a===null?Promise.resolve(Object.freeze({ok:false,operation:"channel-members",reason:"not-ready"})):ha(a)}function Fl(){let a=A$1.value;return a===null||gn===void 0?Promise.resolve(Object.freeze({ok:false,operation:"channel-members",reason:"not-ready"})):gn==="more"?ha(a):Ia(a)}function Dn(a,i,t){return !U&&n.getGeneration()===i&&mn===t&&Q(le.value,a)}async function Ft(a,i={}){if(Se.value)return Object.freeze({ok:false,operation:"channel-mentions",reason:"busy"});let t=be(a),l=mn,u=n.getGeneration();Se.value=true,F.value=null;try{let f=i.useCache===!1?null:await Jo(n,t,ke.value||void 0);if(!Dn(t,u,l))return Object.freeze({ok:!1,operation:"channel-mentions",reason:"stale"});f!==null&&(Ce.value=st(t.conversationId,Qe(Ae,t.conversationId,f.items)),pn=f.nextPageToken,je.value=f.exhausted||f.nextPageToken===void 0);let E=await Ks(n,t,ke.value||void 0);return Dn(t,u,l)?(Ce.value=st(t.conversationId,Qe(Ae,t.conversationId,E.items)),pn=E.nextPageToken,je.value=E.exhausted||E.nextPageToken===void 0,We=void 0,Se.value=!1,Object.freeze({ok:!0,operation:"channel-mentions"})):Object.freeze({ok:!1,operation:"channel-mentions",reason:"stale"})}catch(f){if(!Dn(t,u,l))return Object.freeze({ok:false,operation:"channel-mentions",reason:"stale"});let E=Ve(f,"profile.channel-mentions",t);return We="initial",F.value=E,Se.value=false,Object.freeze({ok:false,operation:"channel-mentions",reason:"failed",error:E})}}async function ya(){let a=le.value,i=pn;if(a===null)return Object.freeze({ok:false,operation:"channel-mentions",reason:"not-ready"});if(Se.value)return Object.freeze({ok:false,operation:"channel-mentions",reason:"busy"});if(je.value||i===void 0)return Object.freeze({ok:false,operation:"channel-mentions",reason:"exhausted"});let t=mn,l=n.getGeneration();Se.value=true,F.value=null;try{let u=await Hs(n,ke.value,i);return Dn(a,l,t)?(Ce.value=st(a.conversationId,Qe(Ae,a.conversationId,la(Ce.value,u.items))),pn=u.nextPageToken,je.value=u.exhausted||u.nextPageToken===void 0,We=void 0,Se.value=!1,Object.freeze({ok:!0,operation:"channel-mentions"})):Object.freeze({ok:!1,operation:"channel-mentions",reason:"stale"})}catch(u){if(!Dn(a,l,t))return Object.freeze({ok:false,operation:"channel-mentions",reason:"stale"});let f=Ve(u,"profile.channel-mentions.page",a);return We="more",F.value=f,Se.value=false,Object.freeze({ok:false,operation:"channel-mentions",reason:"failed",error:f})}}function gr(a=null,i=""){Be!==void 0&&(clearTimeout(Be),Be=void 0),mn+=1,le.value=a===null?null:be(a),Ce.value=[],ke.value=i,Se.value=false,je.value=false,F.value=null,pn=void 0,We=void 0;}function Kl(a,i=""){return Q(le.value,a)&&ke.value===i?(Be!==void 0&&(clearTimeout(Be),Be=void 0),mn+=1,Se.value=false,F.value=null,pn=void 0,We=void 0,Ft(a,{useCache:false})):(gr(a,i),Ft(a))}function Hl(a){let i=le.value;if(i===null)return;gr(i,a);let t=mn,l=n.getGeneration();(async()=>{try{let u=await Jo(n,i,a||void 0);if(!Dn(i,l,t))return;u!==null&&(Ce.value=st(i.conversationId,Qe(Ae,i.conversationId,u.items)),pn=u.nextPageToken,je.value=u.exhausted||u.nextPageToken===void 0);}catch(u){if(!Dn(i,l,t))return;F.value=Ve(u,"profile.channel-mentions.cache",i);}Dn(i,l,t)&&(Be=setTimeout(()=>{Be=void 0,Ft(i);},300));})();}function Nl(){let a=le.value;return a===null?Promise.resolve(Object.freeze({ok:false,operation:"channel-mentions",reason:"not-ready"})):(Be!==void 0&&(clearTimeout(Be),Be=void 0),mn+=1,Se.value=false,F.value=null,pn=void 0,je.value=false,We=void 0,Ft(a,{useCache:false}))}function Ll(){let a=le.value;return a===null||We===void 0?Promise.resolve(Object.freeze({ok:false,operation:"channel-mentions",reason:"not-ready"})):We==="more"?ya():Ft(a)}function Oo(a){Q(R.value,a)&&(ot(a,{forceRefresh:true}),dt(a,{forceRefresh:true,preserveExisting:true}));}function Ir(a){Q(A$1.value,a)&&ko(a,{preserveExisting:true});}async function ba(a){if(!Q(S.value,a))return;(await _t(a,{forceRefresh:true})).ok&&x$1.value?.canViewMembers===true&&Ir(a);}function Ul(a){if(a.type==="profile:updated"){if(a.profileType==="user")tr(a.id,{forceRefresh:true}),c.value?.conversationId===a.id&&P({conversationType:"direct",conversationId:a.id},{forceRefresh:true});else {let B={conversationType:"group",conversationId:a.id};if(zt(B)||ur(B)){ae.add(B.conversationId);return}Q(R.value,B)?Dt(B,{includeMembers:true,forceRefresh:true}):ot(B,{forceRefresh:true});}return}if(a.type==="channel-profile:updated"){let B={conversationType:"channel",conversationId:a.channelId};on(B)||fr(B)?Sn.add(B.conversationId):ba(B);return}if(a.type==="sync:complete"){for(let B of a.conversations)if(B.conversationType==="group"){let Me={conversationType:"group",conversationId:B.conversationId};Q(R.value,Me)&&Oo(Me);}else if(B.conversationType==="channel"){let Me={conversationType:"channel",conversationId:B.conversationId};(Q(S.value,Me)||Q(A$1.value,Me)||Q(le.value,Me))&&(wn(Me),Ir(Me));}return}if(a.type!=="message:received"&&a.type!=="message:updated")return;let i=a.message,t=i.body.system?.eventType;if(t===void 0)return;let l=i.body.system?.targetUserIds??[],u=n.getCredentials().userId;if(i.conversationType==="group"&&Du.has(t)){let B={conversationType:"group",conversationId:i.conversationId},Me=(a.source??"live")==="live",sn=t==="group_member_renamed"&&l.some(_n=>_n.trim()===u)&&zt(B,"set-my-nickname"),Bl=t==="group_member_renamed"&&!sn;if(t==="group_member_renamed"){sn||sa(n,i);for(let _n of l)sn&&_n.trim()===u||ua$1(B,_n);}if(t==="group_member_joined"||t==="group_member_invited")for(let _n of l)vo(B,_n);if(Me&&(t==="group_member_left"||t==="group_member_removed"))for(let _n of l)po(B,_n);if(ur(B)){he.add(B.conversationId);return}Me&&!sn&&(Bl?Q(R.value,B)&&dt(B,{forceRefresh:true,preserveExisting:true}):Oo(B));return}let f=(a.source??"live")==="live"||a.channelLifecycleEffects===true;if(i.conversationType!=="channel"||!_u.has(t)||!f)return;let E={conversationType:"channel",conversationId:i.conversationId};if(!(t==="channel_member_renamed"&&l.some(B=>on(E,B.trim()===u?"set-my-nickname":"set-member-nickname",B)))){if(t==="channel_member_renamed")for(let B of l)ga(E,B);if(t==="channel_admin_added"||t==="channel_admin_removed"){let B=t==="channel_admin_added"?"admin":"member";for(let Me of l)Un(E,Me,B);}if(t==="channel_owner_transferred"){for(let Me of l)Un(E,Me,"owner");let B=i.body.system?.operatorId;B!==void 0&&!l.includes(B)&&Un(E,B,"member");}if(t==="channel_member_joined"||t==="channel_member_invited")for(let B of l)bo(E,B);if(t==="channel_member_left"||t==="channel_member_removed")for(let B of l)yo(E,B);if(fr(E)){hl(E,Ls.has(t),t!=="channel_member_left"&&t!=="channel_member_removed"&&l.length>0,l);return}Ls.has(t)?wn(E,l):it(E,l),t!=="channel_member_left"&&t!=="channel_member_removed"&&l.length>0&&at(E,l,{forceRefresh:true}),Ir(E);}}let ql=n.subscribeProfileChange(()=>{o.value+=1;}),Vl=n.subscribeEvents(Ul);function Ca(){k["set-remark"]+=1,k.block+=1,k.report+=1,k["delete-friendship"]+=1,ue.direct+=1,c.value=null,m.value=null,I.value="unknown",w.value=false,z$1.value=null,De+=1,G.value=[],V.value=false,W.value=null;}function Ra(){for(let a of Object.keys(y$1))y$1[a]+=1;for(let a of Object.keys(_))_[a]+=1;oe.clear(),Re.clear(),ee.clear(),ae.clear(),he.clear(),ue.group+=1,un+=1,R.value=null,g.value=null,K.value=[],q.value=false,$.value=false,re.value=null;}function hr(){for(let a of Object.keys(yn))yn[a]+=1;ln.clear(),bn.clear(),Ke.clear(),we.clear(),Sn.clear(),Cn.clear(),ue.channel+=1,S.value=null,x$1.value=null,X.value=false,L.value=null,tt+=1,ye.value=null,H.value=null,J.value=false,Ie.value=null,Vn(),gr();}function Pa(){Ca(),k["search-user"]+=1,k["resolve-application-target"]+=1,k["request-friendship"]+=1,Ra(),hr(),cn.clear();for(let a of ["individual","group","channel"])rt[a]+=1,Object.assign(se[a],Br());Nn.clear(),mo(),Rn.clear(),Ue.clear(),Ae.clear(),dn.clear(),$e.clear(),fn.clear(),de.clear(),s.value={},qe.size>0&&(qe.clear(),En.value+=1);}function $l(){U||(Pa(),U=true,oe.clear(),Re.clear(),ee.clear(),Ke.clear(),we.clear(),ln.clear(),bn.clear(),ql(),Vl(),r.record("debug","pinia","profile","profile-directory-disposed"));}return {profileRevision:o,directRef:c,directProfile:m,directRelationship:I,directLoading:w,directError:z$1,directMutualGroups:G,directMutualGroupsLoading:V,directMutualGroupsError:W,groupRef:R,groupProfile:g,groupMembers:K,groupLoading:q,groupMembersLoading:$,groupError:re,channelRef:S,channelProfile:x$1,channelLoading:X,channelError:L,directories:se,directorySearchKeyword:ne,directorySearchResult:O,directorySearchLoading:j,directorySearchError:C,channelMembersRef:A$1,channelMembers:h,channelMemberQuery:M,channelMembersLoading:D,channelMembersExhausted:ce,channelMembersError:pe,channelMemberDetailRef:ye,channelMemberDetail:H,channelMemberDetailLoading:J,channelMemberDetailError:Ie,channelMentionsRef:le,channelMentions:Ce,channelMentionQuery:ke,channelMentionsLoading:Se,channelMentionsExhausted:je,channelMentionsError:F,resolveDisplayName:lo,resolveAvatarUrl:nr,resolvePublicNickname:co,resolveSenderProfile:tr,resolveGroupMemberProfiles:ot,resolveChannelMemberProfiles:at,invalidateChannelMemberProfiles:it,invalidateChannelMemberSet:wn,channelMentionRevision:so,loadDirect:P,resolveProfileAccess:T,loadDirectMutualGroups:Z,setDirectContactRemark:me,blockDirectContact:ve,reportDirectContact:ze,deleteDirectFriendship:_e,searchDirectContact:Ee,resolveDirectContactTarget:He,requestDirectFriendship:Xe,loadGroup:Dt,updateGroupName:Te,updateGroupAvatar:Ye,setMyGroupNickname:An,updateGroupVerification:Gn,isGroupProfileWritePending:zt,inviteGroupMembers:ul,removeGroupMember:dl,transferGroupOwnership:fl,leaveGroup:ml,isGroupMemberManagementPending:ur,ensureGroupMembers:dt,loadChannel:_t,requestMembershipJoin:Ml,updateChannelName:Zs,updateChannelDescription:el,updateChannelAvatar:nl,setMyChannelNickname:tl,setChannelMemberNickname:rl,updateChannelVerification:ol,setChannelAllMuted:al,setChannelMemberPrivateChatDisabled:il,isChannelProfileWritePending:on,inviteChannelMembers:bl,removeChannelMember:Cl,setChannelMemberAdmin:Rl,transferChannelOwnership:Pl,leaveChannel:kl,dismissChannel:Ol,isChannelMemberManagementPending:fr,loadDirectory:Sl,refreshDirectory:El,searchDirectory:Tl,clearDirectorySearch:mo,openChannelMembers:ko,getChannelMember:Ro,loadChannelMember:Gl,setChannelMemberQuery:Dl,loadMoreChannelMembers:_l,retryChannelMembers:Fl,resetChannelMembers:Vn,updateGroupMemberNicknameProjection:ca,clearGroupMemberNicknameProjection:ua$1,removeGroupMemberProjection:po,restoreGroupMemberProjection:vo,isGroupMemberRemovedProjection:da,clearGroupMemberProjections:go,updateChannelNameProjection:fa,updateChannelDescriptionProjection:ma,updateChannelAvatarProjection:pa,updateChannelVerificationProjection:va$1,updateChannelManagementProjection:Io,updateChannelMemberDisplayNameProjection:ho,updateChannelMemberRoleProjection:Un,clearChannelMemberDisplayNameProjection:ga,channelMemberNicknameProjection:Al,removeChannelMemberProjection:yo,restoreChannelMemberProjection:bo,isChannelMemberRemovedProjection:Co,clearChannelMemberProjections:vr,openChannelMentions:Kl,setChannelMentionQuery:Hl,loadMoreChannelMentions:ya,refreshChannelMentions:Nl,retryChannelMentions:Ll,resetChannelMentions:gr,resetDirect:Ca,resetGroup:Ra,resetChannel:hr,reset:Pa,dispose:$l}})}var Us=new WeakMap,Wr=new WeakMap;function Hu(e=Pe()){ge(e);let n=Us.get(e);n===void 0&&(n=Ku(e),Us.set(e,n));let r=n(e);return Wr.get(e)!==r&&(Wr.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),Wr.get(e)===r&&Wr.delete(e);})),r}var Xr=new WeakMap,Vu=Object.freeze({status:"loading",message:null}),qs=Object.freeze({status:"missing",message:null});function Qr(e){return e===null?"":`${e.conversationType}\0${e.conversationId}`}function Xo(e){let n=new Set;for(let r of e){let o=r.trim();o!==""&&n.add(o);}return [...n]}function $u(e){return defineStore("k2-im-quoted-message",()=>{let n=ge(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=shallowRef({}),c=new Set,m=new Set,I=0,w=new Map,z=false,G=false,V=false,W=computed(()=>{let j=new Map;for(let C of o.messages)j.set(C.id,C);return j});function R(){I+=1,c.clear(),w.clear(),m=new Set,V=false,s.value={};}let g=watch(()=>Qr(o.activeRef),(j,C)=>{j!==C&&R();},{flush:"sync"}),K=n.subscribeEvents(j=>{z||j.type!=="connection:changed"||j.state!=="authenticated"||se();});function q(j){let C=j.trim();if(C==="")return qs;let A=W.value.get(C);return A!==void 0?Object.freeze({status:"ready",message:A}):s.value[C]??Vu}function $(j,C){if(j.length===0)return;let A={...s.value},h=false;for(let[M,D]of j)C.get(M)===(w.get(M)??0)&&(A[M]=D,h=true);h&&(s.value=A);}async function re(j){let C=I,A=new Map(j.map(H=>[H,w.get(H)??0])),h=n.getGeneration(),M=o.getHandle(),D=Qr(o.activeRef);if(M===void 0||Qr(M.ref)!==D)return;let ce=()=>!z&&I===C&&n.getGeneration()===h&&o.getHandle()===M&&Qr(o.activeRef)===D,pe=[],ye=[];try{let H=await Promise.all(j.map(async J=>({messageId:J,message:await M.resolveMessage(J)})));if(!ce())return;for(let{messageId:J,message:Ie}of H)Ie===null?ye.push(J):pe.push([J,Object.freeze({status:"ready",message:Ie})]);}catch(H){if(!ce())return;$(j.map(J=>[J,Object.freeze({status:"failed",message:null,retryable:true})]),A),r.record("error","pinia","message","quoted-message-local-lookup-failed",()=>({generation:h,conversation:{...M.ref},data:{requestedCount:j.length},error:{message:"\u8BFB\u53D6\u672C\u673A\u5386\u53F2\u89E3\u6790\u5F15\u7528\u539F\u6587\u5931\u8D25",data:H}}));return}if($(pe,A),ye.length!==0)try{let H=await M.messages.fetchByIds(ye);if(!ce())return;let J=[];for(let le of H.messages)J.push([le.id,Object.freeze({status:"ready",message:le})]);for(let le of H.missingMessageIds)J.push([le,qs]);let Ie=H.failure?.retryable??!0;for(let le of H.unresolvedMessageIds)J.push([le,Object.freeze({status:"failed",message:null,retryable:Ie})]);$(J,A),r.record("debug","pinia","message","quoted-message-remote-lookup-settled",()=>({generation:h,conversation:{...M.ref},data:{requestedCount:ye.length,resolvedCount:H.messages.length,missingCount:H.missingMessageIds.length,unresolvedCount:H.unresolvedMessageIds.length,retryable:H.failure?.retryable}}));}catch(H){if(!ce())return;$(ye.map(J=>[J,Object.freeze({status:"failed",message:null,retryable:false})]),A),r.record("error","pinia","message","quoted-message-remote-lookup-failed",()=>({generation:h,conversation:{...M.ref},data:{requestedCount:ye.length},error:{message:"\u6309\u6D88\u606F ID \u56DE\u6E90\u5F15\u7528\u539F\u6587\u5931\u8D25",data:H}}));}}function S(){let j=[];for(let C of m)W.value.has(C)||c.has(C)||s.value[C]===void 0&&j.push(C);return j}function x(){if(z)return;if(G){V=true;return}let j=S();if(j.length!==0){G=true;for(let C of j)c.add(C);re(j).catch(C=>{r.record("error","pinia","message","quoted-message-resolve-crashed",()=>({data:{requestedCount:j.length},error:{message:"\u5F15\u7528\u539F\u6587\u89E3\u6790\u6279\u6B21\u5F02\u5E38\u7EC8\u6B62",data:C}}));}).finally(()=>{for(let C of j)c.delete(C);G=false,V&&(V=false,x());});}}function X(j){if(z)return;m=new Set(Xo(j));let C=Object.fromEntries(Object.entries(s.value).filter(([A])=>m.has(A)&&!W.value.has(A)));Object.keys(C).length!==Object.keys(s.value).length&&(s.value=C),x();}function L(j){if(z)return;let C=Xo(j).filter(h=>s.value[h]!==void 0);if(C.length===0)return;let A={...s.value};for(let h of C)delete A[h],c.delete(h),w.set(h,(w.get(h)??0)+1);s.value=A,x();}function se(j){if(z)return;let A=(j===void 0?[...m]:Xo(j)).filter(M=>{let D=s.value[M];return D?.status==="failed"&&D.retryable});if(A.length===0)return;let h={...s.value};for(let M of A)delete h[M],c.delete(M),w.set(M,(w.get(M)??0)+1);s.value=h,x();}function ne(){R();}function O(){z||(z=true,g(),K(),R());}return Xr.set(e,Object.freeze({dispose:O})),{lookup:q,prefetch:X,retry:se,invalidate:L,reset:ne}})}var Vs=new WeakMap,Jr=new WeakMap;function Bu(e=Pe()){ge(e);let n=Vs.get(e);n===void 0&&(n=$u(e),Vs.set(e,n));let r=n(e),o=Xr.get(e);if(o===void 0)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u521B\u5EFA ImQuotedMessageStore");return Jr.get(e)!==r&&(Jr.set(e,r),Oe(e,()=>{o.dispose(),r.$dispose(),Jr.get(e)===r&&(Jr.delete(e),Xr.get(e)===o&&Xr.delete(e));})),r}var eo=new WeakMap;function Yr(e){return e===null?"":`${e.conversationType}\0${e.conversationId}`}function Yu(e){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"&&typeof e.operation=="string"&&typeof e.retryable=="boolean"}function Zu(e,n){return Yu(e)?Object.freeze({code:e.code,category:e.category,operation:e.operation,retryable:e.retryable,...e.conversation===void 0?{}:{conversation:Object.freeze({...e.conversation})}}):Object.freeze({code:"IM_CHAT_KIT_REACTION_OPERATION_FAILED",category:"state",operation:`reaction.${n}`,retryable:false})}function ed(e){return defineStore("k2-im-reaction",()=>{let n=ge(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=ref([]),c=shallowRef(null),m=false,I=0,w=new Map;function z(){I+=1,w.clear(),s.value=[],c.value=null;}let G=watch(()=>Yr(o.activeRef),(S,x)=>{S!==x&&z();},{flush:"sync"});function V(S,x){let X=o.activeRef,L=o.getHandle(),se=Yr(X);if(m||X===null||L===void 0||Yr(L.ref)!==se||!o.messages.some(O=>O.id===S))return Object.freeze({ok:false,operation:x,reason:"not-ready"});if(w.has(S))return Object.freeze({ok:false,operation:x,reason:"busy"});let ne=Symbol(S);return w.set(S,ne),s.value=Object.freeze([...w.keys()]),{generation:n.getGeneration(),contextEpoch:I,handle:L,conversationKey:se,token:ne}}function W(S){return !m&&S.contextEpoch===I&&S.generation===n.getGeneration()&&o.getHandle()===S.handle&&Yr(o.activeRef)===S.conversationKey}function R(S,x){w.get(S)===x&&(w.delete(S),s.value=Object.freeze([...w.keys()]));}async function g(S,x,X){let L=V(S,x);if(!("handle"in L))return L;try{let se=await X(L.handle);return W(L)?(c.value=null,r.record("debug","pinia","message",`reaction-${x}-settled`,()=>({generation:L.generation,conversation:{...L.handle.ref},messageId:S,result:{ok:!0,action:se.action}})),Object.freeze({ok:!0,operation:x,change:se})):Object.freeze({ok:!1,operation:x,reason:"stale"})}catch(se){if(!W(L))return Object.freeze({ok:false,operation:x,reason:"stale"});let ne=Zu(se,x);return c.value=ne,r.record("error","pinia","message",`reaction-${x}-settled`,()=>({generation:L.generation,conversation:{...L.handle.ref},messageId:S,result:{ok:false,reason:"sdk-rejected",error:ne}})),Object.freeze({ok:false,operation:x,reason:"sdk-rejected",error:ne})}finally{R(S,L.token);}}function K(S,x){return g(S,"toggle",X=>X.messages.toggleReaction(S,x))}function q(S,x,X){return g(S,"set",L=>L.messages.setReaction(S,x,X))}function $(){z();}function re(){m||(m=true,G(),z());}return eo.set(e,Object.freeze({dispose:re})),{operatingMessageIds:s,error:c,toggle:K,set:q,reset:$}})}var $s=new WeakMap,Zr=new WeakMap;function nd(e=Pe()){ge(e);let n=$s.get(e);n===void 0&&(n=ed(e),$s.set(e,n));let r=n(e),o=eo.get(e);if(o===void 0)throw new Error("\u5F53\u524D Pinia \u5C1A\u672A\u521B\u5EFA ImReactionStore");return Zr.get(e)!==r&&(Zr.set(e,r),Oe(e,()=>{o.dispose(),r.$dispose(),Zr.get(e)===r&&(Zr.delete(e),eo.get(e)===o&&eo.delete(e));})),r}function no(e,n){let r=e;return Object.freeze({code:typeof r.code=="string"?r.code:"IM_SDK_SESSION_FAVORITE_REQUEST_FAILED",category:r.category??"network",operation:r.operation??n,retryable:r.retryable===true})}function ad(e){let n=Pe(e),r=ge(n).runtime;return defineStore("im-session-favorites",()=>{let o=shallowRef([]),s=ref(false),c=shallowRef(null),m=computed(()=>{let ne=new Map;for(let O of o.value)O.msgId!==""&&O.collectId!==""&&ne.set(O.msgId,O.collectId);return ne}),I=false,w=0,z=0,G,V;function W(){w+=1,z+=1,o.value=[],s.value=false,c.value=null;}function R(ne){return {client:ne,generation:r.getGeneration(),stateEpoch:w}}function g(ne){return !I&&ne.client===r.getProductClient()&&ne.generation===r.getGeneration()&&ne.stateEpoch===w}function K(ne){return m.value.get(ne.trim())??""}function q(ne){return K(ne)!==""}async function $(){if(I)return Object.freeze({ok:false,operation:"reload",reason:"stale"});let ne=++z,O;try{O=R(r.ensureProductClient()),se(O.client);}catch(j){let C=no(j,"reload");return c.value=C,s.value=false,Object.freeze({ok:false,operation:"reload",reason:"failed",error:C})}s.value=true,c.value=null;try{let j=await O.client.sessionFavorites.list();return ne!==z||!g(O)?Object.freeze({ok:!1,operation:"reload",reason:"stale"}):(o.value=j,Object.freeze({ok:!0,operation:"reload"}))}catch(j){if(ne!==z||!g(O))return Object.freeze({ok:false,operation:"reload",reason:"stale"});let C=no(j,"reload");return c.value=C,Object.freeze({ok:false,operation:"reload",reason:"failed",error:C})}finally{ne===z&&g(O)&&(s.value=false);}}function re(){z+=1,s.value=false;}async function S(ne){if(I)return Object.freeze({ok:false,operation:"add",reason:"stale"});let O;try{O=R(r.ensureProductClient()),se(O.client);let j=await O.client.sessionFavorites.addFromMessage(ne);return g(O)?(re(),o.value=Object.freeze([j,...o.value.filter(C=>C.collectId!==j.collectId)]),Object.freeze({ok:!0,operation:"add",collectId:j.collectId})):Object.freeze({ok:!1,operation:"add",reason:"stale"})}catch(j){return Object.freeze({ok:false,operation:"add",reason:"failed",error:no(j,"add")})}}async function x(ne){if(I)return Object.freeze({ok:false,operation:"delete",reason:"stale"});let O=[...new Set(ne.map(j=>j.trim()).filter(j=>j!==""))];if(O.length===0)return Object.freeze({ok:false,operation:"delete",reason:"failed",error:Object.freeze({code:"IM_SDK_SESSION_FAVORITE_INPUT_INVALID",category:"validation",operation:"delete",retryable:false})});try{let j=R(r.ensureProductClient());if(await j.client.sessionFavorites.delete(O),!g(j))return Object.freeze({ok:!1,operation:"delete",reason:"stale"});re();let C=new Set(O);return o.value=Object.freeze(o.value.filter(A=>!C.has(A.collectId))),Object.freeze({ok:!0,operation:"delete",collectId:O[0]??""})}catch(j){return Object.freeze({ok:false,operation:"delete",reason:"failed",error:no(j,"delete")})}}async function X(ne){let O=K(ne);return O===""?Object.freeze({ok:false,operation:"delete",reason:"failed",error:Object.freeze({code:"IM_SDK_SESSION_FAVORITE_INPUT_INVALID",category:"validation",operation:"delete",retryable:false})}):x([O])}function L(){G?.(),G=void 0,V=void 0,W();}function se(ne){if(V===ne)return;G?.(),V=ne;let O=R(ne);G=ne.events.subscribe(j=>{V===ne&&g(O)&&j.type==="session-favorites:changed"&&$();});}return Oe(n,()=>{I=true,G?.(),G=void 0,V=void 0,W();}),{items:o,loading:s,error:c,collectIdOf:K,isFavorited:q,reload:$,addFromMessage:S,removeByCollectIds:x,removeByMessageId:X,reset:L}})(n)}function sd(e){return defineStore("k2-im-session",()=>{let n=ge(e).runtime,r=ref(""),o=ref(n.getConnectionState()),s=ref(n.getGeneration()),c=ref("idle"),m=ref(""),I=ref({}),w=false,z=0,G="",V=n.getDiagnostics(),W=n.subscribeEvents(L=>{w||L.type==="connection:changed"&&(o.value=L.state,L.state==="authenticated"&&(c.value="ready"));});function R(L,se){return !w&&L===z&&n.getGeneration()===se}function g(L){if(w)throw new Error("Session Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u91CD\u65B0\u914D\u7F6E\u5BBF\u4E3B");n.configureHost(L);}function K(L){if(w)throw new Error("Session Store \u5DF2 dispose\uFF0C\u4E0D\u80FD\u5E94\u7528\u8D26\u53F7");let se=L.session===null?"":`${L.session.userId}\0${L.session.token}`;se!==G&&(z+=1,G=se);let ne=n.applySession(L.session,L.endpoints,L.deviceToken);return r.value=L.session?.userId??"",s.value=n.getGeneration(),o.value=n.getConnectionState(),c.value=o.value==="authenticated"?"ready":"idle",m.value="",I.value={},V.record("info","pinia","session","session-applied",()=>({generation:s.value,...r.value===""?{}:{accountId:r.value},data:{hasToken:ne.hasToken,didReset:ne.didReset}})),ne}async function q(L,se,ne){if(w)return {ok:false,errorKey:"lifecycle.disposed"};let O=++z,j=n.getGeneration(),C=Date.now();c.value=L,m.value="",I.value={},V.record("info","pinia",se==="prepare"?"session":"connection",`${se}-start`,()=>({generation:j}));let A=await ne();return R(O,j)?(s.value=n.getGeneration(),o.value=n.getConnectionState(),c.value=A.ok?o.value==="authenticated"?"ready":"idle":"error",m.value=A.errorKey??"",I.value=A.errorParams??{},V.record(A.ok?"info":"error","pinia",se==="prepare"?"session":"connection",`${se}-${A.ok?"complete":"failed"}`,()=>({generation:s.value,durationMs:Date.now()-C,...A.ok?{}:{error:{message:A.errorKey??`${se}-failed`,data:A.errorParams}}})),A):(V.record("debug","pinia","session",`${se}-stale-result-dropped`,()=>({generation:j,durationMs:Date.now()-C})),A)}function $(){return q("preparing","prepare",()=>n.prepare())}function re(){return q("connecting","connect",()=>n.connect())}function S(){w||(z+=1,n.disconnect(),o.value=n.getConnectionState(),c.value="idle");}async function x(L){if(w)throw new Error("Session Store \u5DF2 dispose\uFF0C\u4E0D\u80FD logout");z+=1;try{await n.logout(L);}finally{r.value="",G="",s.value=n.getGeneration(),o.value=n.getConnectionState(),c.value="idle",m.value="",I.value={};}}function X(){w||(w=true,z+=1,W(),r.value="",o.value="idle",s.value=n.getGeneration(),c.value="disposed",m.value="",I.value={});}return {accountId:r,connectionState:o,generation:s,phase:c,errorKey:m,errorParams:I,configureHost:g,applySession:K,prepare:$,connect:re,disconnect:S,logout:x,dispose:X,getRuntime:()=>n}})}var Ws=new WeakMap,to=new WeakMap;function ld(e=Pe()){ge(e);let n=Ws.get(e);n===void 0&&(n=sd(e),Ws.set(e,n));let r=n(e);return to.get(e)!==r&&(to.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),to.get(e)===r&&to.delete(e);})),r}function oo(e,n){return e!==null&&n!==null&&e.conversationType===n.conversationType&&e.conversationId===n.conversationId}function Ys(e){return e===null?"":`${e.conversationType}\0${e.conversationId}`}function Yt(e,n){return `${Ys(e)}\0${n}`}function jt(e,n){return n==="older"?e[0]?.id??"":e[e.length-1]?.id??""}function Js(e){return e instanceof Error?{message:e.message,name:e.name}:typeof e=="string"?{message:e}:{message:"Unknown paging error"}}function ud(e){return defineStore("k2-im-thread-paging",()=>{let n=ge(e).runtime,r=n.getDiagnostics(),o=Ge(e),s=Mn(e),c=ref(false),m=ref(false),I=ref(null),w=ref(null),z=false,G="",V="",W=0,R=()=>({ref:o.activeRef,generation:n.getGeneration(),olderBoundary:jt(o.messages,"older"),newerBoundary:jt(o.messages,"newer")}),g=(O,j)=>{let C=R();return !z&&j===W&&O.generation===C.generation&&oo(O.ref,C.ref)&&O.ref!==null},K=O=>{(O===void 0||O==="older")&&(G="",I.value=null),(O===void 0||O==="newer")&&(V="",w.value=null);},q=()=>{W+=1,c.value=false,m.value=false,K();},$=async(O,j)=>{let C=R(),A=O==="older"?G:V,h=O==="older"?o.hasOlder:o.hasNewer;if(C.ref===null||!h||(O==="older"?c.value:m.value))return 0;let M=C.ref,D=O==="older"?C.olderBoundary:C.newerBoundary,ce=Yt(M,D);if(O==="older"?m.value:c.value)return 0;if(!j&&A!==""&&A===ce)return r.record("debug","pinia","history",`thread-paging-${O}-circuit-open`,()=>({conversation:M,data:{boundary:D}})),0;j&&(K(O),r.record("debug","pinia","history",`thread-paging-${O}-retry`,()=>({conversation:M})));let pe=new Set(o.messages.map(H=>H.id)),ye=++W;O==="older"?c.value=true:m.value=true,r.record("debug","pinia","history",`thread-paging-${O}-start`,()=>({conversation:M,generation:C.generation,data:{boundary:D,force:j}}));try{let H=O==="older"?await o.loadOlder():await o.loadNewer();if(!g(C,ye))return r.record("debug","pinia","history","thread-paging-stale-result-dropped",()=>({conversation:M,generation:C.generation,data:{side:O}})),0;if(!H)return 0;K(O);let J=o.messages.reduce((Ie,le)=>Ie+ +!pe.has(le.id),0);return r.record("debug","pinia","history",`thread-paging-${O}-success`,()=>({conversation:M,generation:C.generation,data:{added:J}})),J}catch(H){if(!g(C,ye))return r.record("debug","pinia","history","thread-paging-stale-result-dropped",()=>({conversation:M,generation:C.generation,data:{side:O,outcome:"failed"}})),0;throw jt(o.messages,O)===D&&(O==="older"?(G=ce,I.value=H):(V=ce,w.value=H),r.record("warn","pinia","history",`thread-paging-${O}-failed`,()=>({conversation:M,generation:C.generation,error:{message:`\u6D88\u606F\u7EBF\u7A0B ${O} \u5206\u9875\u5931\u8D25`,data:Js(H)}}))),H}finally{ye===W&&(O==="older"?c.value=false:m.value=false);}},re=(O={})=>$("older",O.force===true),S=(O={})=>$("newer",O.force===true),x=async O=>{if(O!==void 0&&!oo(o.activeRef,O))return false;s.clearLocation(),q();let j=R();if(j.ref===null)return false;let C=j.ref;if(r.record("debug","pinia","history","thread-paging-jump-latest-start",()=>({conversation:C})),!o.hasNewer)return true;let A;try{A=await o.loadLatest();}catch(h){if(oo(o.activeRef,C)&&n.getGeneration()===j.generation){let M=jt(o.messages,"newer");V=Yt(C,M),w.value=h,r.record("warn","pinia","history","thread-paging-jump-latest-failed",()=>({conversation:C,generation:j.generation,error:{message:"\u8DF3\u8F6C\u6700\u65B0\u6D88\u606F\u5931\u8D25",data:Js(h)}}));}throw h}return !oo(o.activeRef,C)||n.getGeneration()!==j.generation?(r.record("debug","pinia","history","thread-paging-jump-latest-stale-result-dropped",()=>({conversation:C})),false):(K("newer"),A)},X=watch(()=>Ys(o.activeRef),()=>q(),{flush:"sync"}),L=watch(()=>`${Yt(o.activeRef,jt(o.messages,"older"))}\0${jt(o.messages,"newer")}`,()=>{let O=R(),j=Yt(O.ref,O.olderBoundary),C=Yt(O.ref,O.newerBoundary);G!==""&&G!==j&&K("older"),V!==""&&V!==C&&K("newer");},{flush:"sync"}),se=o.$onAction(({name:O})=>{(O==="loadLatest"||O==="loadAround"||O==="open"||O==="close"||O==="reset")&&q();});return {loadingOlder:c,loadingNewer:m,olderError:I,newerError:w,loadOlder:re,loadNewer:S,retryOlder:()=>re({force:true}),retryNewer:()=>S({force:true}),jumpToLatest:x,reset:q,dispose:()=>{z||(z=true,X(),L(),se(),q());}}})}var Xs=new WeakMap,ao=new WeakMap;function dd(e=Pe()){ge(e);let n=Xs.get(e);n===void 0&&(n=ud(e),Xs.set(e,n));let r=n(e);return ao.get(e)!==r&&(ao.set(e,r),Oe(e,()=>{r.dispose(),r.$dispose(),ao.get(e)===r&&ao.delete(e);})),r}function fd(e,n){return e!==null&&e.conversationType===n.conversationType&&e.conversationId===n.conversationId}function md(e=Pe()){let n=Ge(e),r=Mn(e);return Object.freeze({async returnToLatest(o){return fd(n.activeRef,o)?(r.clearLocation(),n.hasNewer?n.loadLatest():true):false}})}export{Pr as applicationKey,Jl as createAndInstallImChatKit,ai as createImChatKitContext,Yl as disposeImChatKit,Xl as ensureImChatKitSelfProfile,ge as getImChatKitContext,qi as imMediaDownloadKey,ii as installImChatKit,oc as useImApplicationsStore,bc as useImCapabilitiesStore,Wn as useImComposerStore,Pc as useImConversationActivationCoordinator,Fc as useImConversationDeletionCoordinator,_o as useImConversationListStore,Wc as useImExpressionStore,Yc as useImHistoryReturnAfterSendCoordinator,au as useImMediaStore,Ut as useImMessageOperationsStore,Hu as useImProfileDirectoryStore,Bu as useImQuotedMessageStore,nd as useImReactionStore,Mn as useImSearchStore,ad as useImSessionFavoritesStore,ld as useImSessionStore,dd as useImThreadPagingStore,md as useImThreadReturnToLatestCoordinator,Ge as useImThreadStore};