k2-im 0.1.28 → 0.1.29

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 {j,p,b as b$1,i,f,q as q$1}from'./chunk-DVQGXZ6S.js';import {Xa,Wa}from'./chunk-FQJBDSXT.js';import {ra,a as a$1,b,na,wa,ya}from'./chunk-O7GQQMEW.js';import {a}from'./chunk-WOT6VMZA.js';var vn=14,yn="game:rps",Cn="game:dice";function Ve(e){if(e.stableKey.length===0||e.stableKey.trim()!==e.stableKey)throw new TypeError("Emoji recent item \u9700\u8981\u975E\u7A7A\u4E14\u65E0\u9996\u5C3E\u7A7A\u767D\u7684 stableKey")}function Mn(e,t){Ve(t);let n=new Set([t.stableKey]),r=[t];for(let o of e)if(Ve(o),!n.has(o.stableKey)&&(n.add(o.stableKey),r.push(o),r.length===14))break;return Object.freeze(r)}var ze=["0x1f600","0x1f603","0x1f604","0x1f601","0x1f606","0x1f605","0x1f923","0x1f602","0x1f642","0x1f643","0x1f609","0x1f60a","0x1f607","0x1f970","0x1f60d","0x1f929","0x1f618","0x1f617","0x1f61a","0x1f619","0x1f60b","0x1f61b","0x1f61c","0x1f92a","0x1f61d","0x1f911","0x1f917","0x1f92d","0x1f92b","0x1f914","0x1f910","0x1f928","0x1f610","0x1f611","0x1f636","0x1f60f","0x1f612","0x1f644","0x1f62c","0x1f925","0x1f60c","0x1f614","0x1f62a","0x1f924","0x1f634","0x1f637","0x1f912","0x1f915","0x1f922","0x1f92e","0x1f927","0x1f975","0x1f976","0x1f974","0x1f635","0x1f92f","0x1f920","0x1f973","0x1f60e","0x1f913","0x1f9d0","0x1f615","0x1f61f","0x1f641","0x1f62e","0x1f62f","0x1f632","0x1f633","0x1f97a","0x1f626","0x1f627","0x1f628","0x1f630","0x1f625","0x1f622","0x1f62d","0x1f631","0x1f616","0x1f623","0x1f61e","0x1f613","0x1f629","0x1f62b","0x1f971","0x1f624","0x1f621","0x1f620","0x1f92c","0x1f608","0x1f47f","0x1f480","0x1f4a9","0x1f921","0x1f479","0x1f47a","0x1f47b","0x1f47d","0x1f47e","0x1f916","0x1f63a","0x1f638","0x1f639","0x1f63b","0x1f63c","0x1f63d","0x1f640","0x1f63f","0x1f63e","0x1f648","0x1f649","0x1f64a","0x1f48c","0x1f498","0x1f49d","0x1f496","0x1f497","0x1f493","0x1f49e","0x1f495","0x1f49f","0x1f494","0x1f9e1","0x1f49b","0x1f49a","0x1f499","0x1f49c","0x1f90e","0x1f5a4","0x1f90d","0x1f48b","0x1f4af","0x1f4a2","0x1f4a5","0x1f4ab","0x1f4a6","0x1f4a8","0x1f4ac","0x1f4ad","0x1f4a4","0x1f44b","0x1f91a","0x1f590","0x270b","0x1f596","0x1f44c","0x1f90f","0x270c","0x1f91e","0x1f91f","0x1f918","0x1f919","0x1f448","0x1f449","0x1f446","0x1f595","0x1f447","0x1f44d","0x1f44e","0x270a","0x1f44a","0x1f91b","0x1f91c","0x1f44f","0x1f64c","0x1f450","0x1f932","0x1f91d","0x1f64f","0x270d","0x1f485","0x1f933","0x1f4aa","0x1f9be","0x1f9bf","0x1f9b5","0x1f9b6","0x1f442","0x1f9bb","0x1f443","0x1f9e0","0x1f9b7","0x1f9b4","0x1f440","0x1f445","0x1f444","0x1f435","0x1f9a7","0x1f436","0x1f98a","0x1f99d","0x1f431","0x1f981","0x1f42f","0x1f42e","0x1f437","0x1f43d","0x1f42d","0x1f439","0x1f430","0x1f43b","0x1f428","0x1f43c","0x1f9a5","0x1f983","0x1f414","0x1f423","0x1f425","0x1f427","0x1f985","0x1f986","0x1f989","0x1f9a9","0x1f99a","0x1f99c","0x1f438","0x1f433","0x1f980","0x1f490","0x1f338","0x1f4ae","0x1f339","0x1f940","0x1f33a","0x1f33b","0x1f340","0x1f341","0x1f342","0x1f343","0x1f9c0","0x1f969","0x1f354","0x1f35f","0x1f355","0x1f32d","0x1f96a","0x1f32e","0x1f32f","0x1f365","0x1f36b","0x2615","0x1f37a","0x1f943","0x1f30f","0x1f9f1","0x1f6d1","0x1f6a7","0x2693","0x1f680","0x23f3","0x231a","0x23f0","0x1f553","0x1f319","0x1f31a","0x1f31b","0x1f31c","0x1f31d","0x1f31e","0x1fa90","0x2b50","0x1f31f","0x1f320","0x1f30c","0x26c5","0x1f300","0x1f308","0x1f302","0x2614","0x26a1","0x26c4","0x1f525","0x1f4a7","0x1f30a","0x1f383","0x1f384","0x1f386","0x1f387","0x1f9e8","0x2728","0x1f388","0x1f389","0x1f38a","0x1f38b","0x1f38d","0x1f38e","0x1f38f","0x1f390","0x1f391","0x1f9e7","0x1f380","0x1f381","0x1f3ab","0x1f3c6","0x1f3c5","0x1f947","0x1f948","0x1f949","0x1f3c1","0x1f6a9","0x1f38c","0x1f3f4"];var bn=1114111,In=55296,hn=57343,Ke=65039,Sn="0123456789abcdef";function Tn(e,t){if(!e.startsWith("0x")||e.length<=2)throw new TypeError(`\u975E\u6CD5 Unicode emoji code: ${t}`);let n=e.slice(2);for(let o of n)if(!Sn.includes(o))throw new TypeError(`\u975E\u6CD5 Unicode emoji code: ${t}`);let r=Number.parseInt(n,16);if(!Number.isSafeInteger(r)||r>bn||r>=In&&r<=hn)throw new RangeError(`Unicode emoji code point \u8D8A\u754C: ${t}`);return r}function ie(e){if(e.length===0||e.trim()!==e)throw new TypeError(`\u975E\u6CD5 Unicode emoji code: ${e}`);let t=e.split(" ");if(t.some(n=>n.length===0))throw new TypeError(`\u975E\u6CD5 Unicode emoji code: ${e}`);return Object.freeze(t.map(n=>Tn(n,e)))}function En(e){return String.fromCodePoint(...ie(e))}function be(e){return e.map(t=>`0x${t.toString(16)}`).join(" ")}function Pn(e){let t=ie(e),n=be(t);if(n!==e)throw new TypeError(`Unicode emoji code \u5FC5\u987B\u4F7F\u7528 canonical \u5C0F\u5199\u683C\u5F0F: ${e}`);return Object.freeze({stableKey:`unicode:${n}`,code:e,codePoints:t,text:String.fromCodePoint(...t),kind:"unicode"})}var Ie=Object.freeze(ze.map(Pn)),K=new Map,W=new Map;for(let e of Ie){if(K.has(e.code)||W.has(e.text))throw new Error(`Unicode emoji \u76EE\u5F55\u5B58\u5728\u91CD\u590D\u9879: ${e.code}`);K.set(e.code,e),W.set(e.text,e);}for(let e of Ie){let n=e.codePoints.at(-1)===Ke?e.codePoints.slice(0,-1):[...e.codePoints,Ke],r=be(n),o=String.fromCodePoint(...n);K.has(r)||K.set(r,e),W.has(o)||W.set(o,e);}function Rn(e){if(e.startsWith("0x")){let t=be(ie(e));return K.get(t)}return W.get(e)}var We=["[100\u5206]","[VS]","[\u4E0A]","[\u4E0B]","[\u4E0D\u542C]","[\u4E0D\u770B]","[\u4E0D\u9AD8\u5174]","[\u4EB2\u543B]","[\u4F1E]","[\u51FB\u638C]","[\u5357\u74DC\u5934]","[\u53F3]","[\u54C8\u54C8]","[\u54E6]","[\u5564\u9152]","[\u55B7\u568F]","[\u5723\u8BDE\u6811]","[\u5929\u4F7F\u7B11]","[\u5956\u676F]","[\u5BB3\u6015]","[\u5DE6]","[\u5E73\u9759]","[\u5F3A\u58EE]","[\u5F69\u8679]","[\u5F97\u610F]","[\u5FAE\u7B11]","[\u5FC3\u7D2F]","[\u5FC3\u8DF3]","[\u601D\u8003]","[\u6076\u9B54\u6012]","[\u6076\u9B54\u7B11]","[\u6210\u957F]","[\u6293\u72C2]","[\u62F3\u5934]","[\u6325\u624B]","[\u63E1\u62F3]","[\u65E0]","[\u661F\u661F]","[\u661F\u661F\u773C]","[\u6708\u997C]","[\u6C14\u6124]","[\u6EE1\u8DB3]","[\u706B]","[\u718A\u732B]","[\u7231\u4F60]","[\u725B]","[\u72D7]","[\u732B]","[\u7591\u60D1]","[\u7687\u51A0]","[\u778C\u7761]","[\u795D]","[\u79D8]","[\u7BEE\u7403]","[\u7F8E\u5473]","[\u836F]","[\u8DB3\u7403]","[\u95EA\u7535]","[\u95EA\u8000\u7684\u5FC3]","[\u96EA\u82B1]","[\u997A\u5B50]","[\u9A6C]","[\u9B3C]","[\u9E21]","[\u9F13\u638C]","[\u9F20]","[ALLIN]","[\u4F24\u5FC3]","[\u4FBF\u4FBF]","[\u5077\u7B11]","[\u50B2\u6162]","[\u50BB\u7B11]","[\u5192\u6C57]","[\u51CB\u96F6]","[\u53D1\u5446]","[\u53EF\u601C]","[\u53F9\u6C14]","[\u5403\u60CA]","[\u5403\u74DC]","[\u5408\u638C]","[\u5446\u6EDE]","[\u5455\u5410]","[\u5492\u9A82]","[\u5496\u5561]","[\u54C7]","[\u559C\u7231]","[\u5634\u5507]","[\u563F\u54C8]","[\u56F0]","[\u56F0\u4F4F]","[\u5927\u54ED]","[\u5927\u7B11]","[\u592A\u9633]","[\u5931\u671B]","[\u594B\u6597]","[\u5978\u7B11]","[\u59D4\u5C48]","[\u5BB3\u7F9E]","[\u5C2C\u7B11]","[\u5E72\u676F]","[\u5E86\u795D]","[\u5FC3\u788E]","[\u6050\u60E7]","[\u60CA\u8BB6]","[\u6109\u60A6]","[\u611F\u5192]","[\u6124\u6012]","[\u61CA\u607C]","[\u620F\u5F04]","[\u6253\u51FB]","[\u62A0\u9F3B]","[\u62B1\u62F3]","[\u62C5\u5FC3]","[\u62DC\u62DC]","[\u62E5\u62B1]","[\u6342\u8138]","[\u63E1\u624B]","[\u642C\u7816]","[\u6536\u5230]","[\u6536\u5272]","[\u65B9\u5757]","[\u65E0\u8BED]","[\u6655]","[\u6708\u4EAE]","[\u673A\u667A]","[\u6C57]","[\u6D77\u8482]","[\u70B8\u5F39]","[\u70DF\u82B1]","[\u718A\u54ED\u4E86]","[\u7206\u7AF9]","[\u7231\u5FC3]","[\u725B\u5E02]","[\u72D7\u5934]","[\u732A]","[\u73AB\u7470]","[\u751F\u65E5\u86CB\u7CD5]","[\u767D\u773C]","[\u76B1\u7709]","[\u770B\u6DA8]","[\u770B\u8DCC]","[\u7728\u773C]","[\u7761\u89C9]","[\u793C\u7269]","[\u793E\u4F1A]","[\u798F]","[\u7B11\u54ED]","[\u7CD6\u679C]","[\u7EA2\u5305]","[\u8036]","[\u8138\u7EA2]","[\u82E6\u6DA9]","[\u83DC\u5200]","[\u8870]","[\u88C2\u5F00]","[\u8981\u54ED\u4E86]","[\u8C03\u76AE]","[\u8D5E]","[\u8E29]","[\u9119\u89C6]","[\u9177]","[\u91D1\u94B1]","[\u9501\u7BB1]","[\u957F\u8349]","[\u95EE\u53F7]","[\u95F9\u5267]","[\u9634\u9669]","[\u964D\u843D\u4F1E]","[\u96BE\u8FC7]","[\u98DE\u543B]","[\u9AB7\u9AC5]","[\u9EBB\u5C06]"];var $e=j,An=new Set(We),kn="/images/emoji/v1",_n=(()=>{let e=new Map;for(let t of $e)for(let n of t.tokens)e.set(n,t);return e})();function Nn(e){return _n.get(e)}function Dn(e,t=kn){return `${t}/${e.file}`}var On=/\[[^[\]]{1,20}\]/g,Gn=(()=>{let e=new Map;for(let t of $e)e.set(t.code,t);return e})();function qt(e,t){let n=Gn.get(e);return n===void 0?void 0:Dn(n,t)}var jn=/\[[^[\]]{1,20}\]/;function Qt(e){return jn.test(e)}function Ln(){return e=>{let t=[];for(let n of e.matchAll(On)){let r=Nn(n[0]);if(n.index!==void 0){if(r!==void 0){t.push({start:n.index,end:n.index+n[0].length-1,segment:{kind:"emoji",text:n[0],code:r.code}});continue}An.has(n[0])&&t.push({start:n.index,end:n.index+n[0].length-1,segment:{kind:"legacy-emoji-placeholder",text:n[0]}});}}return t}}var Hn=Ln();function Zt(e){if(e.contentType!=="text"||e.encryption.decryptFailed===true||e.mention!==void 0)return null;let t=e.body.text;if(t===void 0||t==="")return null;let n=Hn(t);if(n.length===0)return null;let r=0,o=[];for(let a of n){if(a.start!==r||a.segment.kind!=="emoji"&&a.segment.kind!=="legacy-emoji-placeholder")return null;o.push(a.segment),r=a.end+1;}return r!==t.length?null:Object.freeze({segments:Object.freeze(o),count:o.length})}function rr(e){return e.source!=="live"?{show:false,reason:"not-live"}:e.permission===null?{show:false,reason:"unsupported"}:e.permission!=="granted"?{show:false,reason:"permission-denied"}:e.visibilityState==="visible"?{show:false,reason:"page-visible"}:e.accountId!==""&&e.senderId===e.accountId?{show:false,reason:"self-message"}:e.contentType==="system"?{show:false,reason:"system-message"}:e.muted?{show:false,reason:"conversation-muted"}:e.globallyEnabled?{show:true}:{show:false,reason:"globally-disabled"}}function Xe(e){let t=new Map,n=new Set,r=e.revokeObjectUrl??(s=>URL.revokeObjectURL(s));function o(s){s.revoked||(s.revoked=true,n.delete(s),r(s.url));}function a(s){t.get(s.key)===s&&t.delete(s.key),s.retired=true,s.leases===0?o(s):n.add(s);}function c(){let s=0,d=0;for(let m of t.values())m.evictable&&(s+=1,d+=m.byteSize);return {entries:s,bytes:d}}function i(){let s=c();for(;s.entries>e.maxCachedEntries||s.bytes>e.maxCachedBytes;){let d;for(let m of t.values())if(m.evictable&&m.leases===0){d=m;break}if(d===void 0)return;a(d),s=c();}}function l(s,d,m){let h=m.byteSize??0,Z=Number.isFinite(h)&&h>0?Math.floor(h):0,R=t.get(s);if(R?.url===d){R.byteSize=Z,R.evictable=m.evictable,t.delete(s),t.set(s,R),i();return}R!==void 0&&a(R),t.set(s,{key:s,url:d,byteSize:Z,evictable:m.evictable,leases:0,retired:false,revoked:false}),i();}function g(s,d){let m=t.get(s);if(m===void 0)return false;let h=t.get(d);return h!==void 0&&h!==m&&a(h),t.delete(s),m.key=d,t.set(d,m),true}function f(s,d){let m=t.get(s);return m===void 0?false:(d!==void 0&&Number.isFinite(d)&&d>0&&(m.byteSize=Math.floor(d)),m.evictable=true,t.delete(s),t.set(s,m),i(),t.get(s)===m)}function y(s){let d=t.get(s);if(d===void 0||d.revoked)return;d.leases+=1,t.delete(s),t.set(s,d);let m=false;return Object.freeze({url:d.url,release(){m||(m=true,d.leases=Math.max(0,d.leases-1),d.retired&&d.leases===0?o(d):i());}})}function u(s){let d=t.get(s);d!==void 0&&a(d);}function v(s){for(let d of [...t.keys()])d.startsWith(s)&&u(d);}function C(){let s=[...t.values()];t.clear();for(let d of [...s,...n])o(d);n.clear();}return {register:l,move:g,makeEvictable:f,acquire:y,remove:u,removeByPrefix:v,clearAll:C,getStats:()=>Object.freeze({activeEntries:t.size,retiredEntries:n.size,...c()})}}var Bn=20;function Fn(){if(typeof navigator>"u")return {maxCachedEntries:6,maxCachedBytes:512*1024*1024};let e=navigator,t=e.deviceMemory??4,n=/Android|iPhone|iPad|Mobile/i.test(e.userAgent);return e.connection?.saveData===true||t<=2||navigator.hardwareConcurrency<=2?{maxCachedEntries:2,maxCachedBytes:128*1024*1024}:n?{maxCachedEntries:4,maxCachedBytes:256*1024*1024}:t>=8&&navigator.hardwareConcurrency>=8?{maxCachedEntries:9,maxCachedBytes:1024*1024*1024}:{maxCachedEntries:6,maxCachedBytes:512*1024*1024}}function he(e){let t=`message\0${e.conversationType}\0${e.conversationId}\0${e.messageId}`;return e.itemIndex===void 0?t:`${t}\0${e.itemIndex}`}function Un(e){return `message\0${e.conversationType}\0${e.conversationId}\0`}function Se(e){return `source\0${e}`}function Rr(e){let t=a$1(e.cachePrefix),n=b(t),r=e.createClient??p,o=e.createStorage??(p=>typeof indexedDB>"u"?void 0:Xa({...p,mediaAssetCache:{strategies:b$1()}})),a=e.createProfile,c=e.deleteStorage??(p=>Wa(p.accountId,{namespaceFactory:p.namespaceFactory})),i$1=null,l=null,g=false,f,y,u,v=0,C,s=false,d={wsUrl:"",userId:"",token:"",deviceToken:"",channelType:"0",cmHttpBaseUrl:""},m=i(e.debug,()=>({generation:v,...d.userId===""?{}:{accountId:d.userId}}));m.record("debug","chat-kit","session","runtime-created");function h(){return {generation:v,...d.userId===""?{}:{accountId:d.userId}}}function Z(){d.userId="",d.token="",d.deviceToken="",d.channelType="0";}let R={},ee={},ne={},A=new Map,k=Xe(Fn()),te=new Set,B=new Set,re=new Set;function F(){for(let p of re)p();}function de(){let p=h(),x=i$1,b=y!==void 0||u!==void 0;y?.(),y=void 0,u?.(),u=void 0,b&&m.record("debug","chat-kit","session","client-subscriptions-released",()=>p),x?.connection.disconnect("im-chat-auth-changed"),i$1=null,l=null,Promise.resolve(f?.close?.()).catch(()=>{}),f=void 0,v+=1,R={},ee={},ne={},le(),A.clear(),F();}function oe(){if(s)throw new Error("ChatRuntime \u5DF2 dispose\uFF0C\u4E0D\u80FD\u521B\u5EFA/\u590D\u7528 client");if(i$1===null){f=o({namespaceFactory:n});let x=C?.getCoreClient(),b=C?.getCoreApi?.();g=x!==void 0||b!==void 0;let E=C?.clientType??2,S=v,w=C?.onRequestError,U=x&&a?a({client:x,clientType:E,storage:f}):void 0,pn={authProvider:{getLoginContext:async()=>{let P=C?.getSession?.(),j=C?.getSession!==void 0,ue=(j?P?.userId:d.userId)?.trim()??"",Le=(j?P?.token:d.token)?.trim()??"";return ue===""||Le===""||ue!==d.userId?null:{userId:ue,token:Le,deviceToken:d.deviceToken,clientType:E,channelType:Number(d.channelType)}}},endpointProvider:{getEndpoints:async()=>[{url:d.wsUrl}],getCmHttpBaseUrl:async()=>d.cmHttpBaseUrl},cache:{prefix:t},adapters:{namespaceFactory:n,storage:{create:P=>{if(P.namespaceFactory!==n)throw new Error("ChatRuntime storage namespace factory \u4E0D\u4E00\u81F4");return f},purgeCurrentAccount:P=>c(P)}},profile:U,media:C?.getMediaConfig(),expressions:C?.getExpressionOptions?.(),coreApi:b,coreClient:x,onRequestError:w===void 0?void 0:P=>!s&&v===S?w(P):void 0,debug:e.debug},je=r(pn),fe=je.events;if(fe===void 0&&B.size>0)throw Promise.resolve(f?.close?.()).catch(()=>{}),f=void 0,new Error("IM client \u7F3A\u5C11\u4EA7\u54C1\u4E8B\u4EF6 API");i$1=je,y=i$1.connection.subscribe(P=>{for(let j of te)j(P);}),fe!==void 0&&(u=fe.subscribe(P=>{for(let j of B)j(P);})),m.record("debug","chat-kit","session","client-subscriptions-established",()=>h());}return i$1}function Ge(){let p=oe();return l??=q$1(p,{coreApiAvailable:g}),l}function le(){k.clearAll();}function gn(p){k.removeByPrefix(Un(p));}return {getClient:()=>i$1,getProductClient:()=>i$1===null?null:Ge(),ensureProductClient:Ge,getConnectionState:()=>i$1?.connection.state??"idle",getGeneration:()=>v,getCredentials:()=>d,getMediaConfig:()=>C?.getMediaConfig(),getDiagnostics:()=>m,configureHost(p){C=p;},applySession(p,x,b){let E=p?.userId??"",S=p?.token??"",w=i$1!==null&&(d.userId!==E||d.token!==S);return w&&de(),d.wsUrl=x.wsUrl,d.cmHttpBaseUrl=x.cmHttpBaseUrl,d.userId=E,d.token=S,d.deviceToken=b,d.channelType="0",m.record("info","chat-kit","session","session-applied",()=>({data:{accountId:E,hasToken:S!=="",didReset:w}})),{didReset:w,hasToken:S!==""}},ensureClient:oe,async prepare(){if(s)return {ok:false,errorKey:"lifecycle.disposed"};if(d.userId==="")return {ok:false,errorKey:"lifecycle.missingLoginState"};let p=Date.now(),x=h();m.record("info","chat-kit","session","prepare-start",()=>x);try{return await oe().connection.prepare(),m.record("info","chat-kit","session","prepare-complete",()=>({...x,durationMs:Date.now()-p})),{ok:!0}}catch(b){return m.record("error","chat-kit","session","prepare-failed",()=>({...x,durationMs:Date.now()-p,error:{message:"ChatRuntime prepare \u5931\u8D25",data:b}})),{ok:false,errorKey:"lifecycle.prepareFailed",errorParams:{reason:b instanceof Error?b.message:String(b)}}}},async connect(){if(s)return {ok:false,errorKey:"lifecycle.disposed"};if(d.wsUrl===""||d.userId===""||d.token==="")return {ok:false,errorKey:"lifecycle.missingConnectParams"};let p=Date.now(),x=h();m.record("info","chat-kit","connection","connect-start",()=>x);try{return await oe().connection.connect(),m.record("info","chat-kit","connection","connect-complete",()=>({...x,durationMs:Date.now()-p})),{ok:!0}}catch(b){return m.record("error","chat-kit","connection","connect-failed",()=>({...x,durationMs:Date.now()-p,error:{message:"ChatRuntime connect \u5931\u8D25",data:b}})),{ok:false,errorKey:"lifecycle.connectFailed",errorParams:{reason:b instanceof Error?b.message:String(b)}}}},disconnect(){let p=h();m.record("info","chat-kit","connection","disconnect",()=>p),i$1?.connection.disconnect("im-chat-manual");},async logout(p){let x=Date.now(),b=h();m.record("info","chat-kit","session","logout-start",()=>({...b,data:p}));let E=i$1,S,w;if(E!==null)try{w=E.logout(p);}catch(U){S=U;}if(Z(),v+=1,w!==void 0)try{await w;}catch(U){S=U;}if(R={},ee={},ne={},le(),A.clear(),F(),m.record(S===void 0?"info":"error","chat-kit","session",S===void 0?"logout-complete":"logout-failed",()=>({...b,durationMs:Date.now()-x,...S===void 0?{}:{error:{message:"ChatRuntime logout \u5931\u8D25",data:S}}})),S!==void 0)throw S},resetForAuthChange:de,dispose(){let p=h();m.record("info","chat-kit","session","dispose",()=>p),de(),te.clear(),B.clear(),re.clear(),s=true;},subscribeEvents(p){return te.add(p),()=>{te.delete(p);}},subscribeProductEvents(p){return B.add(p),()=>{B.delete(p);}},getSenderProfileCache:()=>R,setSenderProfileCache(p){R=p,F();},getGroupMemberNames:()=>ee,setGroupMemberNames(p){ee=p,F();},getChannelMemberProfiles:()=>ne,setChannelMemberProfiles(p){ne=p,F();},subscribeProfileChange(p){return re.add(p),()=>{re.delete(p);}},putSelfVoiceBytes(p,x){for(A.delete(p),A.set(p,x);A.size>Bn;){let b=A.keys().next().value;if(b===void 0)break;A.delete(b);}},getSelfVoiceBytes:p=>A.get(p),clearSelfVoiceBytes(){A.clear();},createLocalMediaPreview(p){let x=URL.createObjectURL(p);return k.register(Se(x),x,{byteSize:p.size,evictable:false}),x},discardLocalMediaPreview(p){k.remove(Se(p));},trackLocalMediaPreview(p,x){k.move(Se(x),he(p));},resolveMediaPreviewToRemote(p,x,b){let E=he(p);x==="image"||x==="video"?k.makeEvictable(E,b):k.remove(E);},acquireMediaBlob(p){return k.acquire(he(p))},cleanupLocalMediaBlobs:le,cleanupConversationMediaBlobs:gn}}function Ye(e){return "group"in e?e.group:e.channel}function Je(e,t,n){if(t.conversationType!==e.ref.conversationType||t.conversationId!==e.ref.conversationId||t.status!=="sent"||t.recalled!==void 0||t.deletedForEveryone!==void 0||t.encryption.decryptFailed===true||!["text","image","video","voice","file","miniProgram","transfer","game"].includes(t.contentType))return false;if(n===null)return true;let r=Ye(n);return r.conversationType!==e.ref.conversationType||r.conversationId!==e.ref.conversationId||n.messageId!==t.id}function Vn(e){let{session:t,message:n,currentPinnedMessage:r,selfId:o,ownerId:a}=e;return t?.ref.conversationType==="group"&&(t.groupState===void 0||t.groupState==="active")&&o!==""&&a!==void 0&&a!==""&&o===a&&Je(t,n,r)}function zn(e){let{session:t,message:n,currentPinnedMessage:r}=e;return t?.ref.conversationType==="channel"&&t.channelState==="active"&&t.channelPermissions?.moderateMessages===true&&Je(t,n,r)}function Ar(e){return e.session?.ref.conversationType==="group"?Vn(e):e.session?.ref.conversationType==="channel"?zn(e):false}function qe(e,t){if(e===null)return false;let n=Ye(e);return n.conversationType===t.conversationType&&n.conversationId===t.conversationId&&e.messageId===t.id}function _r(e,t,n,r,o){let a=e[r];if(a&&a.remark!=="")return a.remark;let c=n===""?void 0:t[n]?.[r];if(c!==void 0&&c!=="")return c;if(a&&a.nickname!=="")return a.nickname;let i=(o??"").trim();return i!==""?i:r.length>12?`${r.slice(0,6)}\u2026${r.slice(-4)}`:r}function Nr(e,t,n,r){let o=e[r];if(o?.remark!==void 0&&o.remark!=="")return o.remark;let a=t[n]?.[r]?.displayName;return a!==void 0&&a!==""?a:o?.nickname!==void 0&&o.nickname!==""?o.nickname:r}function Dr(e,t,n,r){let o=t[n]?.[r]?.avatar;return o!==void 0&&o!==""?o:Kn(e,r)}function Kn(e,t){return e[t]?.avatar??""}function Or(e,t){return e[t]?.nickname??""}function Gr(e){return (e.remark??"").trim()||e.nickname||e.id}function Te(e,t,n=Date.now()){return e.senderId!==t||e.status!=="sent"||e.recalled!==void 0||e.deletedForEveryone!==void 0?false:n-(e.serverTime??e.createdAt)<=300*1e3}function Ee(e,t,n,r=Date.now()){return e.senderId!==t||e.status!=="sent"||e.recalled!==void 0||e.deletedForEveryone!==void 0||e.body.text===void 0||e.body.text===""?false:r-(e.serverTime??e.createdAt)<=n}var I=Object.freeze({availability:"available",reason:"ok"});function M(e){return Object.freeze({availability:"unavailable",reason:e})}function Wn(e,t){return e.ref.conversationType===t.conversationType&&e.ref.conversationId===t.conversationId}function $(e){if(e.status!=="sent"||e.recalled!==void 0||e.deletedForEveryone!==void 0||e.contentType==="system")return M("unsupported-type")}function $n(e){return e.status==="sent"&&e.recalled===void 0&&e.deletedForEveryone===void 0&&e.encryption.decryptFailed!==true&&["text","image","video","voice","file","miniProgram","game","mediaAlbum"].includes(e.contentType)}function Xn(e){return e.status==="sent"&&e.recalled===void 0&&e.deletedForEveryone===void 0}function X(e){return e.conversationType==="channel"?e.value.canMutateMessages:(e.conversationType==="group",e.value.canUseMessageActions)}function Qe(e,t,n={}){return t.availability==="available"?"":e==="direct"?n.mode!=="target"?"":t.reason==="blocked"||t.reason==="not-friend"?"directBlock.contactRequired":"":e==="group"?t.reason==="left"?"groupBlock.left":t.reason==="removed"?"groupBlock.removed":t.reason==="dismissed"?"groupBlock.dismissed":"groupBlock.unknownRestricted":e==="channel"?t.reason==="guest"?"channelBlock.guest":t.reason==="left"?"channelBlock.left":t.reason==="removed"?"channelBlock.removed":t.reason==="dismissed"?"channelBlock.dismissed":t.reason==="muted-all"?"channelBlock.allMembersMuted":t.reason==="muted-self"?"channelBlock.currentUserMuted":t.reason==="muted"?"channelBlock.muted":t.reason==="blacklisted"?"channelBlock.blacklisted":"channelBlock.unknownRestricted":""}function Fr(e,t){switch(t){case "conversation.openProfile":return e.conversationType==="direct"||e.conversationType==="group",e.value.canOpenProfile;case "conversation.readHistory":return e.conversationType==="direct"?I:e.value.canReadHistory;case "conversation.listPreferences":return e.conversationType==="channel"?e.value.state==="muted"?I:e.value.canOpenProfile:e.conversationType==="group"?e.value.canOpenProfile:I;case "composer.send":return e.value.canSendMessages;case "composer.mentionAll":return e.conversationType==="channel"?e.value.canMentionAll:I;case "profile.edit":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canEditProfile:I;case "relationship.manage":return e.conversationType==="direct"?e.value.canManageRelationship:M("unsupported-type");case "members.view":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canViewMembers:M("unsupported-type");case "members.manage":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canManageMembers:M("unsupported-type");case "members.invite":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canInviteMembers:M("unsupported-type");case "members.remove":return e.conversationType==="channel"?e.value.canRemoveMembers:e.conversationType==="group"?e.value.canManageMembers:M("unsupported-type");case "members.setAdmin":return e.conversationType==="channel"?e.value.canSetMemberAdmin:M("unsupported-type");case "ownership.transfer":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canTransferOwnership:M("unsupported-type");case "conversation.leave":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canLeave:M("unsupported-type");case "channel.manageMute":return e.conversationType==="channel"?e.value.canManageMute:M("unsupported-type");case "channel.setMemberPrivateChat":return e.conversationType==="channel"?e.value.canSetMemberPrivateChat:M("unsupported-type");case "channel.dismiss":return e.conversationType==="channel"?e.value.canDismiss:M("unsupported-type")}}function Ur(e,t){let{message:n,pinnedMessage:r,selfId:o,snapshot:a,nowMs:c=Date.now()}=t;if(!Wn(a,n))return M("unsupported-type");let i=qe(r,n);switch(e){case "message.react":return n.status!=="sent"||!wa(n)?M("unsupported-type"):a.conversationType==="channel"?a.value.canSendMessages:I;case "message.forward":{let l=$(n);return l!==void 0?l:ra(n)?I:M("unsupported-type")}case "message.favorite":{let l=$(n);return l!==void 0?l:n.encryption?.decryptFailed===true?M("unsupported-type"):n.contentType==="text"||n.contentType==="image"||n.contentType==="video"||n.contentType==="voice"||n.contentType==="file"||n.contentType==="mediaAlbum"?I:M("unsupported-type")}case "message.multiSelect":{let l=$(n);return l!==void 0?l:i?M("message-protected"):I}case "message.reply":{let l=$(n);return l!==void 0?l:a.conversationType==="direct"?I:X(a)}case "message.recall":return i?M("message-protected"):a.conversationType==="direct"?Te(n,o,c)?I:M("role-insufficient"):X(a).availability!=="available"?X(a):Te(n,o,c)?I:M("role-insufficient");case "message.edit":return i?M("message-protected"):a.conversationType==="direct"?Ee(n,o,na,c)?I:M("role-insufficient"):X(a).availability!=="available"?X(a):Ee(n,o,na,c)?I:M("role-insufficient");case "message.pin":return i?M("message-protected"):$n(n)&&(a.conversationType==="group"||a.conversationType==="channel")?a.value.canPinMessages:M("unsupported-type");case "message.unpin":return a.conversationType==="group"||a.conversationType==="channel"?a.value.canUnpinMessages:M("unsupported-type");case "message.deleteLocal":{if(i)return M("message-protected");let l=$(n);return l!==void 0?l:n.contentType==="unknown"?M("unsupported-type"):a.conversationType==="direct"||a.conversationType==="group"?I:M("unsupported-type")}case "message.deleteForEveryone":return i?M("message-protected"):a.conversationType!=="channel"||!Xn(n)?M("unsupported-type"):a.value.canDeleteMessagesForEveryone}}function Vr(e,t){let{selfId:n,snapshot:r,targetRole:o="unknown",targetUserId:a}=t;if(a===""||a===n)return M("role-insufficient");if(r.conversationType==="group"){if(e!=="members.removeTarget")return M("unsupported-type");let i=r.value.canManageMembers;return i.availability!=="available"?i:r.value.ownerId!==void 0&&a===r.value.ownerId?M("role-insufficient"):I}if(r.conversationType!=="channel")return M("unsupported-type");if(e==="members.removeTarget"||e==="members.editNicknameTarget"){let i=r.value.canRemoveMembers;return i.availability!=="available"?i:r.value.role==="owner"?o==="member"||o==="admin"?I:M("role-insufficient"):r.value.role==="admin"&&o==="member"?I:M("role-insufficient")}let c=r.value.canSetMemberAdmin;return c.availability!=="available"?c:r.value.role!=="owner"?M("role-insufficient"):e==="members.setAdminTarget"?o==="member"?I:M("role-insufficient"):o==="admin"?I:M("role-insufficient")}function Ze(e){if(e===void 0||e==="active")return "";switch(e){case "guest":return "channelBlock.guest";case "left":return "channelBlock.left";case "removed":return "channelBlock.removed";case "dismissed":return "channelBlock.dismissed";case "muted":return "channelBlock.muted";case "blacklisted":return "channelBlock.blacklisted";case "unknown_restricted":return "channelBlock.unknownRestricted"}}function en(e,t=Date.now()){if(e?.channelState===void 0)return "channelBlock.unknownRestricted";let n=ya({channelState:e.channelState,snapshot:e.channelAccessSnapshot,permissions:e.channelPermissions,nowMs:t});return n.channelState==="muted"?n.muteReason==="all-members"?"channelBlock.allMembersMuted":n.muteReason==="current-user"?"channelBlock.currentUserMuted":"channelBlock.muted":n.channelState!=="active"?Ze(n.channelState)||"channelBlock.unknownRestricted":n.permissions.sendMessages?"":"channelBlock.unknownRestricted"}var D=9;function Yn(e={}){let t=typeof navigator<"u"?navigator:void 0,n=e.deviceMemoryGb??(typeof t?.deviceMemory=="number"?t.deviceMemory:4),r=Math.floor(n*1024*1024*1024/8);return Math.min(512*1024*1024,Math.max(64*1024*1024,r))}async function nn(e,t,n={}){if(e.length===0)return {processedCount:0,rejectedByLimit:false};let r=e.length>9;r&&n.onRejectedByLimit?.({reason:"count-limit",maxCount:9,selectedCount:e.length});let o=e.slice(0,9);if(n.startAll)return await Promise.all(o.map(g=>t(g).catch(()=>false))),{processedCount:o.length,rejectedByLimit:r};let a=Yn(n),c=Math.max(1,Math.floor(n.maxConcurrency??Number.POSITIVE_INFINITY)),i=0,l=new Set;for(let g of o){for(;l.size>0&&(l.size>=c||i+g.size>a);)await Promise.race(l);i+=g.size;let f=t(g).catch(()=>false).finally(()=>{i-=g.size,l.delete(f);});l.add(f);}return await Promise.all(l),{processedCount:o.length,rejectedByLimit:r}}async function tn(e){if(await Y(e)!=="not-gif")return "sticker";if(await f(e))return "image";let t=e.type.trim().toLowerCase();return t.startsWith("image/")||/\.(?:jpe?g|png|webp|gif|svgz?|heic|heif|avif|bmp|tiff?|ico|jfif|jxl|psd|dng|raw)$/i.test(e.name)?"unsupported-image":t.startsWith("video/")?"video":"file"}async function Y(e){let t=e.type.trim().toLowerCase(),n=new Uint8Array(await e.slice(0,6).arrayBuffer()),r=n.length===6?String.fromCharCode(...n):"",o=r==="GIF87a"||r==="GIF89a",a=t==="image/gif";return o&&(a||t==="")?"gif":o||a?"invalid-gif":"not-gif"}async function Pe(e){return await Y(e)==="gif"}var Jn=new Set(["group","channel"]),qn=new Set(["group","channel"]),rn=30*1024*1024,Re=200*1024*1024,on=2*1024*1024*1024,Qn=3*1024*1024;function q(e,t,n){let r=e.getConversationHandle();if(!(r===void 0||n===void 0||n==="supergroup"))return r.ref.conversationId===t&&r.ref.conversationType===n?r:void 0}function Q(e,t){return e.retainConversationHandle?.(t)??(()=>{})}function J(e,t){try{return e.getSnapshot().messages.find(n=>n.contentType==="video"?n.body.video?.url===t:n.contentType==="image"?n.body.image?.url===t:n.contentType==="sticker"?n.body.sticker?.url===t:n.contentType==="mediaAlbum"?n.body.mediaAlbum?.items.some(r=>r.url===t)===!0:!1)?.id}catch{return}}function we(e){if(e===void 0)return;let t=e.atAll?[{userId:"0",displayName:""}]:[];for(let n of e.atUserIds)t.push({userId:n,displayName:e.atUsersName?.[n]??n});return t.length===0?void 0:t}function Zn(e){if(e===void 0||e==="active")return "";switch(e){case "left":return "groupBlock.left";case "removed":return "groupBlock.removed";case "dismissed":return "groupBlock.dismissed";default:return "groupBlock.unknownRestricted"}}function no(e){return Jn.has(e)}function et(e){return qn.has(e)}function to(e,t=Date.now()){return e?.type==="channel"?en(e,t):e?.type==="group"?Zn(e.groupState):""}function _(e,t,n,r={}){let o=e.getProductClient();if(o===null)return "";let a=n??o.conversations.list().find(i=>i.ref.conversationId===t)?.ref.conversationType;if(a===void 0||a==="supergroup")return "";let c=o.capabilities.get({conversationType:a,conversationId:t}).value.canSendMessages;return Qe(a,c,r)}async function ro(e,t,n){let r=e.getClient(),o=t.text.trim();if(r===null)return n.setNote(n.t("common.notConnected")),false;if(t.conversationId==="")return n.setNote(n.t("common.selectOrOpenConversation")),false;if(o==="")return false;let a=e.getGeneration();try{let c=t.conversationType;if(c===void 0)return n.setNote(n.t("common.conversationTypeNotReady")),!1;let i=q(n,t.conversationId,c);if(i===void 0)return n.setNote(n.t("common.conversationNotReady")),!1;let l=_(e,t.conversationId,c);if(l!=="")return n.setNote(n.t(l)),!1;let g=Q(n,i);try{let f=await i.messages.sendText(o,{...et(c)?{mentions:we(t.mention)}:{},...t.refMessageId===void 0?{}:{replyToMessageId:t.refMessageId}});return n.refreshActiveMessages(),f.ok?e.getGeneration()===a:(e.getGeneration()===a&&n.setNote(n.t("send.failed",{reason:f.error.code})),!1)}finally{g();}}catch(c){return e.getGeneration()===a&&n.setNote(n.t("send.failed",{reason:c instanceof Error?c.message:String(c)})),false}}async function an(e,t,n){let{kind:r,file:o,conversationId:a,conversationType:c,refMessageId:i}=t,l=n.t(`label.${r}`);if(e.getClient()===null)return n.setNote(n.t("common.notConnected")),false;if(a===""||c===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let f$1=q(n,a,c);if(f$1===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let y=_(e,a,c);if(y!=="")return n.setNote(n.t(y)),false;let u=r==="video"?Re:r==="file"?on:r==="sticker"?Qn:rn;if(o.size>u)return n.pushMediaLimitItem({name:o.name,sizeMb:o.size/1024/1024,label:l,maxMb:Math.round(u/1024/1024)}),n.showWarning?.(n.t("send.mediaTooLarge",{name:o.name,label:l,maxMb:Math.round(u/1024/1024)})),false;let v=e.getGeneration();if(o.size===0)return e.getGeneration()===v&&n.setNote(n.t("send.mediaEmpty",{label:l})),false;if(r==="sticker"&&!await Pe(o))return e.getGeneration()===v&&n.setNote(n.t("send.mediaFormatMismatch",{name:o.name})),false;let C=Q(n,f$1),s;try{if(r==="image"&&!await f(o))return e.getGeneration()===v&&n.setNote(n.t("send.imageFormatUnsupported",{name:o.name})),!1;if(e.getGeneration()!==v)return !1;s=r==="file"?void 0:e.createLocalMediaPreview(o);let d=t.localPreviewMetadata;if(e.getGeneration()!==v)return s!==void 0&&e.discardLocalMediaPreview(s),!1;let m=await(r==="image"?f$1.messages.sendImage(o,{...s===void 0?{}:{localPreviewUrl:s},...d===void 0?{}:{localPreviewMetadata:d},...i===void 0?{}:{replyToMessageId:i}}):r==="video"?f$1.messages.sendVideo(o,{...s===void 0?{}:{localPreviewUrl:s},...d===void 0?{}:{localPreviewMetadata:d},...i===void 0?{}:{replyToMessageId:i}}):r==="sticker"?f$1.messages.sendGif(o,{...s===void 0?{}:{localPreviewUrl:s},...i===void 0?{}:{replyToMessageId:i}}):f$1.messages.sendFile(o,{fileName:o.name,...i===void 0?{}:{replyToMessageId:i}}));if(n.refreshActiveMessages(),!m.ok){if(e.getGeneration()===v&&(m.error.code==="IM_SDK_VIDEO_DURATION_TOO_LONG"?n.showWarning?.(n.t("send.videoTooLong",{name:o.name,maxMinutes:5})):m.error.code==="IM_SDK_VIDEO_DURATION_UNAVAILABLE"?n.showWarning?.(n.t("send.videoDurationUnavailable",{name:o.name})):n.setNote(m.error.code==="IM_SDK_MEDIA_CANCELLED"?n.t("send.mediaCancelled",{label:l}):n.t("send.mediaFailed",{label:l,reason:m.error.code}))),s!==void 0){let h=J(f$1,s);h===void 0?e.discardLocalMediaPreview(s):e.trackLocalMediaPreview({conversationId:a,conversationType:c,messageId:h},s);}return !1}return e.getGeneration()===v}catch(d){if(e.getGeneration()===v&&n.setNote(n.t("send.mediaFailed",{label:l,reason:d instanceof Error?d.message:String(d)})),s!==void 0){let m=J(f$1,s);m===void 0?e.discardLocalMediaPreview(s):e.trackLocalMediaPreview({conversationId:a,conversationType:c,messageId:m},s);}return false}finally{C();}}async function oo(e,t,n){let{kind:r,file:o,messageId:a,conversationId:c,conversationType:i}=t,l=n.t(`label.${r}`);if(e.getClient()===null)return n.setNote(n.t("common.notConnected")),false;let g=q(n,c,i);if(g===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let f=_(e,c,i);if(f!=="")return n.setNote(n.t(f)),false;let y=r==="video"?Re:on;if(o.size>y)return n.pushMediaLimitItem({name:o.name,sizeMb:o.size/1024/1024,label:l,maxMb:Math.round(y/1024/1024)}),n.showWarning?.(n.t("send.mediaTooLarge",{name:o.name,label:l,maxMb:Math.round(y/1024/1024)})),false;let u=e.getGeneration();if(o.size===0)return e.getGeneration()===u&&n.setNote(n.t("send.mediaEmpty",{label:l})),false;let v=Q(n,g),C;try{if(C=r==="video"?e.createLocalMediaPreview(o):void 0,e.getGeneration()!==u)return C!==void 0&&e.discardLocalMediaPreview(C),!1;let s=await(r==="video"?g.messages.replaceInterruptedVideo(a,o,{...C===void 0?{}:{localPreviewUrl:C}}):g.messages.replaceInterruptedFile(a,o,{fileName:o.name}));if(n.refreshActiveMessages(),!s.ok){e.getGeneration()===u&&(s.error.code==="IM_SDK_VIDEO_DURATION_TOO_LONG"?n.showWarning?.(n.t("send.videoTooLong",{name:o.name,maxMinutes:5})):s.error.code==="IM_SDK_VIDEO_DURATION_UNAVAILABLE"?n.showWarning?.(n.t("send.videoDurationUnavailable",{name:o.name})):n.setNote(n.t("send.mediaFailed",{label:l,reason:s.error.code})));let d=C!==void 0&&g.getSnapshot().messages.some(m=>m.id===a&&m.contentType==="video"&&m.body.video?.url===C);return C!==void 0&&!d?e.discardLocalMediaPreview(C):C!==void 0&&e.trackLocalMediaPreview({conversationId:c,conversationType:i,messageId:a},C),!1}return e.getGeneration()===u}catch(s){return e.getGeneration()===u&&n.setNote(n.t("send.mediaFailed",{label:l,reason:s instanceof Error?s.message:String(s)})),C!==void 0&&(J(g,C)===a?e.trackLocalMediaPreview({conversationId:c,conversationType:i,messageId:a},C):e.discardLocalMediaPreview(C)),false}finally{v();}}function nt(e){let t=e.getMediaConfig()?.buckets.voice;return t!==void 0&&t!==""}async function ao(e,t,n){let{payload:r,conversationId:o,conversationType:a,refMessageId:c}=t;if(e.getClient()===null)return n.setNote(n.t("common.notConnected")),false;if(o===""||a===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let l=q(n,o,a);if(l===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let g=_(e,o,a);if(g!=="")return n.setNote(n.t(g)),false;if(r.data.length===0)return n.setNote(n.t("send.voiceEmpty")),false;if(!nt(e))return n.setNote(n.t("send.voiceStorageNotConfigured")),false;let f=e.getGeneration(),y=Q(n,l);try{let u=new File([r.data],r.filename,{type:r.mimeType}),v=await l.messages.sendVoice(u,{durationMs:r.durationMs,waveform:r.waveform,...c===void 0?{}:{replyToMessageId:c}});return n.refreshActiveMessages(),v.ok?e.getGeneration()!==f?!1:(e.putSelfVoiceBytes(v.message.id,r.data),!0):(e.getGeneration()===f&&n.setNote(v.error.code==="IM_SDK_MEDIA_CANCELLED"?n.t("send.voiceCancelled"):n.t("send.voiceFailed",{reason:v.error.code})),!1)}catch(u){return e.getGeneration()===f&&n.setNote(n.t("send.voiceFailed",{reason:u instanceof Error?u.message:String(u)})),false}finally{y();}}var tt=new Set(["IM_SDK_VIDEO_TOO_LARGE","IM_SDK_VIDEO_PREVIEW_METADATA_INVALID","IM_SDK_VIDEO_DURATION_TOO_LONG","IM_SDK_VIDEO_DURATION_UNAVAILABLE"]);async function io(e,t,n){let{caption:r,conversationId:o,conversationType:a,items:c,refMessageId:i}=t;if(e.getClient()===null)return n.setNote(n.t("common.notConnected")),false;if(o===""||a===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let g=q(n,o,a);if(g===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let f$1=_(e,o,a);if(f$1!=="")return n.setNote(n.t(f$1)),false;if(c.length===0)return false;let y=e.getGeneration();for(let s of c){let d=n.t(`label.${s.kind}`),m=s.kind==="video"?Re:rn;if(s.file.size>m)return n.pushMediaLimitItem({name:s.file.name,sizeMb:s.file.size/1024/1024,label:d,maxMb:Math.round(m/1024/1024)}),n.showWarning?.(n.t("send.mediaTooLarge",{name:s.file.name,label:d,maxMb:Math.round(m/1024/1024)})),false;if(s.file.size===0)return n.setNote(n.t("send.mediaEmpty",{label:d})),false}for(let s of c){let d=await Y(s.file);if(s.kind==="image"&&d==="not-gif"&&!await f(s.file))return e.getGeneration()===y&&n.setNote(n.t("send.imageFormatUnsupported",{name:s.file.name})),false;if(d!=="not-gif")return e.getGeneration()!==y||n.showWarning?.(n.t("send.mediaFailed",{label:n.t("label.image"),reason:"IM_SDK_MEDIA_ALBUM_GIF_UNSUPPORTED"})),false}if(e.getGeneration()!==y)return false;let u=Q(n,g),v=c.map(s=>e.createLocalMediaPreview(s.file)),C=s=>{v.forEach((d,m)=>{s===void 0?e.discardLocalMediaPreview(d):e.trackLocalMediaPreview({conversationId:o,conversationType:a,messageId:s,itemIndex:m},d);});};try{if(e.getGeneration()!==y)return C(void 0),!1;let s=await g.messages.sendMediaAlbum(c.map((d,m)=>({kind:d.kind,file:d.file,localPreviewUrl:v[m],...d.localPreviewMetadata===void 0?{}:{localPreviewMetadata:d.localPreviewMetadata}})),{...r===void 0||r.trim()===""?{}:{caption:r},...t.hd===void 0?{}:{hd:t.hd},...i===void 0?{}:{replyToMessageId:i}});if(n.refreshActiveMessages(),!s.ok){if(e.getGeneration()===y){let d=n.t(tt.has(s.error.code)?"label.video":"label.image");n.setNote(s.error.code==="IM_SDK_MEDIA_CANCELLED"?n.t("send.mediaCancelled",{label:d}):n.t("send.mediaFailed",{label:d,reason:s.error.code}));}return C(J(g,v[0])),!1}return e.getGeneration()===y}catch(s){return e.getGeneration()===y&&n.setNote(n.t("send.mediaFailed",{label:n.t("label.image"),reason:s instanceof Error?s.message:String(s)})),C(J(g,v[0])),false}finally{u();}}async function so(e,t,n){let r=t.files.slice(0,9);t.files.length>9&&(n.setMediaBatchLimit({selectedCount:t.files.length,maxCount:9}),n.showWarning?.(n.t("send.mediaCountLimit",{maxCount:9,ignoredCount:t.files.length-9})));let o=e.getGeneration(),a=[];for(let i of r){let l=await tn(i);if(e.getGeneration()!==o)break;if(l==="unsupported-image"){n.setNote(n.t("send.imageFormatUnsupported",{name:i.name})),a.push(Promise.resolve(false));continue}a.push(an(e,{kind:l,file:i,conversationId:t.conversationId,conversationType:t.conversationType,...t.refMessageId===void 0?{}:{refMessageId:t.refMessageId}},n));}let c=await Promise.all(a.map(i=>i.catch(()=>false)));return Object.freeze({selectedCount:t.files.length,processedCount:a.length,acceptedCount:c.filter(Boolean).length,rejectedByLimit:t.files.length>9})}async function co(e,t,n){let r=0,o=await nn(t.files,async a=>{let c=await an(e,{kind:"file",file:a,conversationId:t.conversationId,conversationType:t.conversationType,...t.refMessageId===void 0?{}:{refMessageId:t.refMessageId}},n);return c&&(r+=1),c},{startAll:true,onRejectedByLimit:a=>{n.setMediaBatchLimit({selectedCount:a.selectedCount,maxCount:a.maxCount}),n.showWarning?.(n.t("send.mediaCountLimit",{maxCount:a.maxCount,ignoredCount:a.selectedCount-a.maxCount}));}});return Object.freeze({selectedCount:t.files.length,processedCount:o.processedCount,acceptedCount:r,rejectedByLimit:o.rejectedByLimit})}async function lo(e,t,n){let r=e.getClient(),o=n.getConversationHandle();if(r===null||o===void 0)return n.setNote(n.t("send.cancelFailed")),false;let a=e.getGeneration();try{let c=r.media.getSnapshot().filter(i=>i.direction==="upload"&&i.messageId===t&&i.ref.conversationType===o.ref.conversationType&&i.ref.conversationId===o.ref.conversationId);return c.length!==1?(n.setNote(n.t("send.cancelFailed")),!1):(await r.media.cancel(c[0].id),e.getGeneration()!==a||n.getConversationHandle()!==o?!1:(n.refreshActiveMessages(),!0))}catch{return e.getGeneration()===a&&n.getConversationHandle()===o&&n.setNote(n.t("send.cancelFailed")),false}}async function fo(e,t,n){let r=e.getClient();if(r===null)return false;let o=n.getConversationHandle();if(o===void 0)return n.setNote(n.t("send.retryFailed")),false;let a=e.getGeneration(),c=r.media.getSnapshot().find(l=>l.direction==="upload"&&(l.state==="failed"||l.state==="canceled")&&l.messageId===t&&l.ref.conversationType===o.ref.conversationType&&l.ref.conversationId===o.ref.conversationId);if(c!==void 0)try{return await r.media.retry(c.id),e.getGeneration()!==a?!1:(n.refreshActiveMessages(),!0)}catch{return e.getGeneration()===a&&n.setNote(n.t("send.retryFailed")),false}let i=r.outbox.getSnapshot().find(l=>l.messageId===t);if(i===void 0||i.ref.conversationType!==o.ref.conversationType||i.ref.conversationId!==o.ref.conversationId)return n.setNote(n.t("send.retryFailed")),false;try{return await r.outbox.retry(t),e.getGeneration()!==a?!1:(n.refreshActiveMessages(),!0)}catch{return e.getGeneration()===a&&n.setNote(n.t("send.retryFailed")),false}}var dt={};a(dt,{executeForwardMessages:()=>st,forwardMessages:()=>ct});function rt(e,t){let n=e.getConversationHandle();if(n!==void 0)return t.every(r=>r.conversationType!=="supergroup"&&r.conversationType===n.ref.conversationType&&r.conversationId===n.ref.conversationId)?n:void 0}function ot(e){let t=e?.code;return typeof t=="string"&&t!==""?t:"unknown"}function at(e,t){let n=e;return typeof n?.code=="string"&&typeof n.category=="string"&&typeof n.operation=="string"&&typeof n.retryable=="boolean"?n:Object.freeze({code:"IM_CHAT_KIT_FORWARD_FAILED",category:"state",operation:"message-operations.forward",retryable:false,conversation:Object.freeze({...t.ref}),cause:e})}function it(e,t){return t.every(n=>n.conversationType!=="supergroup"&&n.conversationType===e.ref.conversationType&&n.conversationId===e.ref.conversationId)}async function st(e,t){let n="forward";if(e.getProductClient()===null||e.getConnectionState()!=="authenticated"||t.handle===void 0||!it(t.handle,t.messages))return Object.freeze({ok:false,operation:n,reason:"not-ready"});if(t.messages.length===0||t.targets.length===0)return Object.freeze({ok:false,operation:n,reason:"empty-input"});for(let f of t.targets){let y=_(e,f.conversationId,f.conversationType,{mode:"target"});if(y!=="")return Object.freeze({ok:false,operation:n,reason:"target-blocked",blockReason:y})}let o=t.messages.filter(ra),a=t.messages.length-o.length;if(o.length===0)return Object.freeze({ok:false,operation:n,reason:"all-skipped",skippedCount:a});let c=e.getGeneration(),i;try{i=await t.handle.messages.forward(o.map(f=>f.id),t.targets);}catch(f){return e.getGeneration()!==c?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:at(f,t.handle)})}if(e.getGeneration()!==c)return Object.freeze({ok:false,operation:n,reason:"stale"});let l=i.sent.length,g=a+i.skippedSourceMessageIds.length;return Object.freeze(l===0?{ok:false,operation:n,reason:i.failed.length>0?"sdk-rejected":"all-skipped",...i.failed[0]===void 0?{}:{error:i.failed[0].error},result:i,skippedCount:g}:{ok:true,operation:n,result:i,sentCount:l,skippedCount:g})}async function ct(e,t,n){if(e.getClient()===null)return n.setNote(n.t("common.notConnected")),null;if(t.messages.length===0||t.targets.length===0)return n.setNote(n.t("forward.emptyInput")),null;let o=rt(n,t.messages);if(o===void 0)return n.setNote(n.t("common.conversationNotReady")),null;for(let y of t.targets){let u=_(e,y.conversationId,y.conversationType,{mode:"target"});if(u!=="")return n.setNote(n.t(u)),null}let a=t.messages.filter(ra),c=t.messages.length-a.length;if(a.length===0)return n.setNote(n.t("forward.allSkipped")),null;let i=e.getGeneration(),l;try{l=await o.messages.forward(a.map(y=>y.id),t.targets);}catch(y){return e.getGeneration()===i&&n.getConversationHandle()===o&&n.setNote(n.t("forward.failed",{reason:ot(y)})),null}if(e.getGeneration()!==i||n.getConversationHandle()!==o)return l;let g=l.sent.length,f=c+l.skippedSourceMessageIds.length;if(g===0){let y=l.failed[0];y!==void 0?n.setNote(n.t("forward.failed",{reason:y.error.code})):f>0?n.setNote(n.t("forward.allSkipped")):n.setNote(n.t("forward.failed",{reason:"unknown"}));}else f>0?n.setNote(n.t("forward.partialSkipped",{skipped:f,ok:g})):n.setNote(n.t("forward.done"));return n.refreshActiveMessages?.(),l}var bt={};a(bt,{deleteChannelMessageForEveryone:()=>Mt,editMessage:()=>xt,executeDeleteChannelMessageForEveryone:()=>vt,executeDeleteLocalMessage:()=>pt,executeRecallMessage:()=>gt,executeRetryMessage:()=>yt,recallMessage:()=>Ct});var lt={IM_SDK_MESSAGE_NOT_FOUND:"recall.not-found",IM_SDK_MESSAGE_STATE_MISMATCH:"recall.not-found",IM_SDK_RECALL_NOT_OWN:"recall.not-own",IM_SDK_RECALL_NOT_SENT:"recall.not-sent",IM_SDK_RECALL_EXPIRED:"recall.expired",IM_SDK_RECALL_UNSUPPORTED:"recall.unsupported",IM_SDK_RECALL_TIMEOUT:"recall.timeout",IM_SDK_RECALL_FAILED:"recall.failed",IM_SDK_RECALL_DISCONNECTED:"recall.disconnected"},ft={IM_SDK_MESSAGE_NOT_FOUND:"edit.not-found",IM_SDK_MESSAGE_STATE_MISMATCH:"edit.not-found",IM_SDK_EDIT_NOT_OWN:"edit.not-own",IM_SDK_EDIT_NOT_SENT:"edit.not-sent",IM_SDK_EDIT_RECALLED:"edit.recalled",IM_SDK_EDIT_DELETED:"edit.deleted",IM_SDK_EDIT_EXPIRED:"edit.expired",IM_SDK_EDIT_UNSUPPORTED:"edit.unsupported",IM_SDK_DIRECT_MENTION_UNSUPPORTED:"edit.unsupported",IM_SDK_EDIT_EMPTY:"edit.empty",IM_SDK_EDIT_RESTRICTED:"edit.restricted",IM_SDK_EDIT_CONTENT_UNSUPPORTED:"edit.unsupported-content",IM_SDK_EDIT_KEY_UNAVAILABLE:"edit.no-key",IM_SDK_EDIT_ENCRYPT_FAILED:"edit.encrypt-failed",IM_SDK_EDIT_TIMEOUT:"edit.timeout",IM_SDK_EDIT_FAILED:"edit.failed",IM_SDK_EDIT_DISCONNECTED:"edit.disconnected"},ut={IM_SDK_MESSAGE_NOT_FOUND:"channelDelete.notFound",IM_SDK_CHANNEL_DELETE_UNSUPPORTED:"channelDelete.unsupported",IM_SDK_CHANNEL_DELETE_NOT_SENT:"channelDelete.notSent",IM_SDK_CHANNEL_DELETE_UNAVAILABLE:"channelDelete.unavailable",IM_SDK_CHANNEL_DELETE_FORBIDDEN:"channelDelete.forbidden",IM_SDK_CHANNEL_DELETE_TIMEOUT:"channelDelete.timeout",IM_SDK_CHANNEL_DELETE_FAILED:"channelDelete.failed",IM_SDK_CHANNEL_DELETE_DISCONNECTED:"channelDelete.disconnected"};function Ae(e,t){let n=e.getConversationHandle();if(!(n===void 0||t.conversationType==="supergroup"))return n.ref.conversationType===t.conversationType&&n.ref.conversationId===t.conversationId?n:void 0}function ke(e){return typeof e?.code=="string"?e.code:void 0}function mt(e){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"&&typeof e.operation=="string"&&typeof e.retryable=="boolean"}function se(e,t,n){return mt(e)?e:Object.freeze({code:"IM_CHAT_KIT_MESSAGE_OPERATION_FAILED",category:"state",operation:`message-operations.${t}`,retryable:false,...n===void 0?{}:{conversation:Object.freeze({...n.ref})},cause:e})}function _e(e,t){return e!==void 0&&t.conversationType!=="supergroup"&&e.ref.conversationType===t.conversationType&&e.ref.conversationId===t.conversationId}async function gt(e,t){let n="recall";if(!_e(t.handle,t.message))return Object.freeze({ok:false,operation:n,reason:"not-ready"});let r=e.getGeneration();try{await t.handle.messages.recall(t.message.id);}catch(o){return e.getGeneration()!==r?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:se(o,n,t.handle)})}return e.getGeneration()===r?Object.freeze({ok:true,operation:n}):Object.freeze({ok:false,operation:n,reason:"stale"})}async function pt(e,t){let n="delete-local";if(!_e(t.handle,t.message)||t.handle.ref.conversationType!=="direct"&&t.handle.ref.conversationType!=="group"||t.message.conversationType!=="direct"&&t.message.conversationType!=="group")return Object.freeze({ok:false,operation:n,reason:"not-ready"});let r=e.getGeneration();try{await t.handle.messages.deleteLocal(t.message.id);}catch(o){return e.getGeneration()!==r?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:se(o,n,t.handle)})}return e.getGeneration()===r?Object.freeze({ok:true,operation:n}):Object.freeze({ok:false,operation:n,reason:"stale"})}async function vt(e,t){let n="delete-for-everyone";if(!_e(t.handle,t.message)||t.handle.ref.conversationType!=="channel"||t.message.conversationType!=="channel")return Object.freeze({ok:false,operation:n,reason:"not-ready"});let r=e.getGeneration();try{await t.handle.messages.deleteForEveryone(t.message.id);}catch(o){return e.getGeneration()!==r?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:se(o,n,t.handle)})}return e.getGeneration()===r?Object.freeze({ok:true,operation:n}):Object.freeze({ok:false,operation:n,reason:"stale"})}async function yt(e,t){let n="retry",r=e.getProductClient(),o=t.handle;if(r===null||o===void 0)return Object.freeze({ok:false,operation:n,reason:"not-ready"});let a=e.getGeneration();try{let c=r.media.getSnapshot().find(i=>i.direction==="upload"&&(i.state==="failed"||i.state==="canceled")&&i.messageId===t.messageId&&i.ref.conversationType===o.ref.conversationType&&i.ref.conversationId===o.ref.conversationId);if(c!==void 0)await r.media.retry(c.id);else {let i=r.outbox.getSnapshot().find(l=>l.messageId===t.messageId);if(i===void 0||i.ref.conversationType!==o.ref.conversationType||i.ref.conversationId!==o.ref.conversationId)return Object.freeze({ok:!1,operation:n,reason:"not-ready"});await r.outbox.retry(t.messageId);}}catch(c){return e.getGeneration()!==a?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:se(c,n,o)})}return e.getGeneration()===a?Object.freeze({ok:true,operation:n}):Object.freeze({ok:false,operation:n,reason:"stale"})}async function Ct(e,t,n){let r=Ae(n,t.message);if(r===void 0){n.setNote(n.t("common.conversationNotReady"));return}let o=e.getGeneration();try{await r.messages.recall(t.message.id);}catch(a){if(e.getGeneration()!==o)return;n.setNote(n.t(lt[ke(a)??""]??"recall.failed"));}}async function Mt(e,t,n){let r=Ae(n,t.message);if(r===void 0||r.ref.conversationType!=="channel"||t.message.conversationType!=="channel"){n.setNote(n.t("common.conversationNotReady"));return}let o=e.getGeneration();try{await r.messages.deleteForEveryone(t.message.id);}catch(a){if(e.getGeneration()!==o)return;n.setNote(n.t(ut[ke(a)??""]??"channelDelete.failed"));}}async function xt(e,t,n){let r=Ae(n,t.message);if(r===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let o=e.getGeneration(),a=we(t.mention);try{await r.messages.editText(t.message.id,t.text,{...a===void 0?{}:{mentions:a}});}catch(c){return e.getGeneration()!==o||n.setNote(n.t(ft[ke(c)??""]??"edit.failed")),false}return e.getGeneration()===o}var At={};a(At,{executePinMessage:()=>ht,executeSyncPinnedMessage:()=>Tt,executeUnpinMessage:()=>St,getPinnedMessage:()=>Rt,peekPinnedMessage:()=>wt,pinMessage:()=>Et,syncPinnedMessage:()=>cn,unpinMessage:()=>Pt});function L(e,t){let n=e.getProductClient();return n===null||e.getConnectionState()!=="authenticated"?(t?.setNote(t.t("common.notConnected")),null):n}function It(e){switch(e){case "permission":return "pinned.forbidden";case "network":return "pinned.network";case "contract":return "pinned.contract";case "unsupported":return "pinned.unsupported";default:return "pinned.failed"}}function sn(e){return typeof e=="object"&&e!==null&&typeof e.category=="string"}function Ne(e,t,n){if(sn(e))return e;let r=typeof e?.kind=="string"?e.kind:void 0,o=r==="forbidden"?"permission":r==="network"?"network":r==="unsupported"?"unsupported":r==="contract"?"contract":"state";return Object.freeze({code:"IM_CHAT_KIT_PINNED_MESSAGE_OPERATION_FAILED",category:o,operation:`message-operations.${t}`,retryable:o==="network",conversation:Object.freeze({...n}),cause:e})}async function ht(e,t){let r=L(e);if(r===null||t.message.conversationId!==t.conversation.conversationId||t.message.conversationType!==t.conversation.conversationType)return Object.freeze({ok:false,operation:"pin",reason:"not-ready"});let o=e.getGeneration();try{let a=t.conversation.conversationType==="group"?await r.groups.pinMessage(t.conversation,t.message.id):await r.channels.pinMessage(t.conversation,t.message.id);return e.getGeneration()===o?Object.freeze({ok:!0,operation:"pin",value:a}):Object.freeze({ok:!1,operation:"pin",reason:"stale"})}catch(a){return e.getGeneration()!==o?Object.freeze({ok:false,operation:"pin",reason:"stale"}):Object.freeze({ok:false,operation:"pin",reason:"sdk-rejected",error:Ne(a,"pin",t.conversation)})}}async function St(e,t){let n="unpin",r=L(e);if(r===null)return Object.freeze({ok:false,operation:n,reason:"not-ready"});let o=e.getGeneration();try{return t.conversationType==="group"?await r.groups.unpinMessage(t):await r.channels.unpinMessage(t),e.getGeneration()===o?Object.freeze({ok:!0,operation:n}):Object.freeze({ok:!1,operation:n,reason:"stale"})}catch(a){return e.getGeneration()!==o?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:Ne(a,n,t)})}}async function Tt(e,t){let n="sync-pin",r=L(e);if(r===null)return Object.freeze({ok:false,operation:n,reason:"not-ready"});let o=e.getGeneration();try{let a=t.conversationType==="group"?await r.groups.getPinnedMessage(t):await r.channels.getPinnedMessage(t);return e.getGeneration()===o?Object.freeze({ok:!0,operation:n,value:a}):Object.freeze({ok:!1,operation:n,reason:"stale"})}catch(a){return e.getGeneration()!==o?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:Ne(a,n,t)})}}function De(e,t,n,r){if(e.getGeneration()!==t)return;let o=sn(r)?It(r.category):"pinned.failed";n.setNote(n.t(o));}async function Et(e,t,n){let r=L(e,n);if(r===null)return null;let o=e.getGeneration();try{let a=t.conversation.conversationType==="group"?await r.groups.pinMessage(t.conversation,t.message.id):await r.channels.pinMessage(t.conversation,t.message.id);return e.getGeneration()===o?a:null}catch(a){return De(e,o,n,a),null}}async function Pt(e,t,n){let r=L(e,n);if(r===null)return false;let o=e.getGeneration();try{return t.conversationType==="group"?await r.groups.unpinMessage(t):await r.channels.unpinMessage(t),e.getGeneration()===o}catch(a){return De(e,o,n,a),false}}async function Rt(e,t,n){let r=await cn(e,t,n);return r.ok?r.value:null}async function cn(e,t,n){let r=L(e,n);if(r===null)return {ok:false};let o=e.getGeneration();try{let a=t.conversationType==="group"?await r.groups.getPinnedMessage(t):await r.channels.getPinnedMessage(t);return e.getGeneration()===o?{ok:!0,value:a}:{ok:!1}}catch(a){return De(e,o,n,a),{ok:false}}}function wt(e,t){let n=e.getProductClient();return n===null?null:t.conversationType==="group"?n.groups.peekPinnedMessage(t):n.channels.peekPinnedMessage(t)}function Co(e){return e.conversation.conversationType==="channel"&&e.channelProfile?.memberPrivateChatDisabled!==false?"blocked":e.relationship==="friend"?"friend-profile":"friend-contact"}var Vt={};a(Vt,{applyGroupMemberNickname:()=>Lt,applyGroupMemberRename:()=>Gt,applyMemberNames:()=>jt,clearGroupMemberNicknameProjection:()=>Ht,ensureSelfProfile:()=>Bt,prewarmActiveSenders:()=>Ut,prewarmMemberAvatars:()=>Ft,refreshStaleSenders:()=>mn,resolveChannelMembers:()=>Ot,resolveGroupMembers:()=>un,resolveSenderName:()=>Dt});var kt=new WeakMap,_t=new WeakMap,Nt=new WeakMap;function Oe(e,t){let n=e.get(t);return n===void 0&&(n=new Map,e.set(t,n)),n}function ln(e,t){return e===void 0?t===void 0?0:-1:t===void 0?1:e.length!==t.length?e.length>t.length?1:-1:e===t?0:e>t?1:-1}var dn=new WeakMap;function T(e){return (e??"").trim()}function H(e){let t=dn.get(e),n=e.getGeneration();return (t===void 0||t.generation!==n)&&(t={generation:n,groups:new Map},dn.set(e,t)),t}function ce(e,t,n,r={}){let o=H(e).groups.get(t);if(o===void 0||o.size===0)return n;let a={...n};for(let[c,i]of o){let l=n[c];if((i===""?l===void 0:l===i)&&r.reconcile===true){o.delete(c);continue}i===""?delete a[c]:a[c]=i;}return o.size===0&&H(e).groups.delete(t),a}function fn(e,t,n){let r=H(e).groups.get(t);if(r!==void 0){if(n===void 0){H(e).groups.delete(t);return}r.delete(n.trim()),r.size===0&&H(e).groups.delete(t);}}function N(e,t,n,r){e.getDiagnostics().record("warn","chat-kit","profile",t,()=>({...r===void 0?{}:{data:r},error:{message:"\u8D44\u6599\u9884\u70ED\u5931\u8D25",data:n}}));}function Dt(e,t,n){let r=e.getClient(),o=e.getCredentials().userId;if(t===""||t==="system"||t===o||r===null)return Promise.resolve(false);let a=n?.forceRefresh===true,c=Oe(kt,e),i=a?void 0:c.get(t);if(i!==void 0)return i;let l=e.getSenderProfileCache();if(!a&&l[t]!==void 0)return Promise.resolve(true);l[t]===void 0&&e.setSenderProfileCache({...l,[t]:{remark:"",nickname:"",avatar:""}});let g=e.getGeneration(),f=r.contact.getProfile(t,a?{forceRefresh:true}:void 0).then(y=>{if(e.getGeneration()!==g)return false;let u=T(y?.remark),v=T(y?.nickname),C=T(y?.avatar);return (u!==""||v!==""||C!=="")&&e.setSenderProfileCache({...e.getSenderProfileCache(),[t]:{remark:u,nickname:v,avatar:C}}),true}).catch(y=>{if(e.getGeneration()!==g)return false;if(!a){let u={...e.getSenderProfileCache()};delete u[t],e.setSenderProfileCache(u);}return e.getDiagnostics().record("warn","chat-kit","profile","sender-profile-resolve-failed",()=>({data:{userId:t},error:{message:"\u89E3\u6790\u53D1\u9001\u8005\u8D44\u6599\u5931\u8D25",data:y}})),false}).finally(()=>{!a&&c.get(t)===f&&c.delete(t);});return a||c.set(t,f),f}function un(e,t,n){let r=e.getClient();if(t===""||r===null)return Promise.resolve(false);let o=n?.forceRefresh===true,a=Oe(_t,e),c=o?void 0:a.get(t);if(c!==void 0)return c;let i=e.getGroupMemberNames();if(!o&&i[t]!==void 0)return Promise.resolve(true);let l=i[t]!==void 0;l||e.setGroupMemberNames({...i,[t]:{}});let g=e.getGeneration(),f=()=>{if(l||e.getGeneration()!==g)return;let u={...e.getGroupMemberNames()};delete u[t],e.setGroupMemberNames(u);},y=r.group.getMemberNames(t,{forceRefresh:o}).then(u=>e.getGeneration()!==g?false:u===null?(f(),false):(e.setGroupMemberNames({...e.getGroupMemberNames(),[t]:ce(e,t,u,{reconcile:true})}),true)).catch(u=>(f(),e.getGeneration()===g&&N(e,"group-member-name-resolve-failed",u,{groupId:t}),false)).finally(()=>{!o&&a.get(t)===y&&a.delete(t);});return o||a.set(t,y),y}function Ot(e,t,n,r){let o=e.getClient();if(o===null||t===""||r?.isCurrent?.()===false)return Promise.resolve(false);let a=r?.forceRefresh===true,c=e.getChannelMemberProfiles()[t]??{},i=[...new Set(n.map(v=>v.trim()).filter(v=>v!==""&&v!=="system"))].filter(v=>a||c[v]===void 0||c[v].expiresAt<=Date.now());if(i.length===0)return Promise.resolve(true);let l=Oe(Nt,e),g=`${t}:${[...i].sort().join(",")}`,f=a?void 0:l.get(g);if(f!==void 0)return f;let y=e.getGeneration(),u=o.channel.getMembersByIds(t,i,a?{forceRefresh:true}:void 0).then(v=>{if(e.getGeneration()!==y||r?.isCurrent?.()===false)return false;let C=Date.now()+3e5,s={...e.getChannelMemberProfiles()[t]??{}};for(let d of v){let m=s[d.userId];m!==void 0&&ln(d.updateVersion,m.updateVersion)<0||(s[d.userId]={displayName:d.displayName,...d.avatar===void 0?{}:{avatar:d.avatar},role:d.role,...d.updateVersion===void 0?{}:{updateVersion:d.updateVersion},expiresAt:C});}return e.setChannelMemberProfiles({...e.getChannelMemberProfiles(),[t]:s}),true}).catch(v=>(e.getGeneration()===y&&e.getDiagnostics().record("warn","chat-kit","profile","channel-members-resolve-failed",()=>({conversation:{conversationType:"channel",conversationId:t},error:{message:"\u89E3\u6790 CHANNEL \u6210\u5458\u8D44\u6599\u5931\u8D25",data:v}})),false)).finally(()=>{!a&&l.get(g)===u&&l.delete(g);});return a||l.set(g,u),u}function Gt(e,t,n={}){let r=t.body.system;if(t.contentType!=="system"||r?.eventType!=="group_member_renamed")return;let o=new Set((n.preserveUserIds??[]).map(a=>a.trim()).filter(Boolean));for(let a of r.targetUserIds??[]){let c=a.trim();o.has(c)||fn(e,t.conversationId,c);}un(e,t.conversationId,{forceRefresh:true});}function jt(e,t,n){let r={};for(let o of n)o.nickName!==""&&(r[o.userId]=o.nickName);e.setGroupMemberNames({...e.getGroupMemberNames(),[t]:ce(e,t,r)});}function Lt(e,t,n,r){let o=t.trim(),a=n.trim();if(o===""||a==="")return;let c=r.trim(),i=H(e),l=i.groups.get(o)??new Map;l.set(a,c),i.groups.set(o,l);let g=e.getGroupMemberNames()[o];if(g===void 0)return;let f={...g};c===""?delete f[a]:f[a]=c,e.setGroupMemberNames({...e.getGroupMemberNames(),[o]:f});}function Ht(e,t,n={}){let r=t.trim();if(r===""||(fn(e,r),n.clearCachedNames!==true))return;let o=e.getGroupMemberNames();if(o[r]===void 0)return;let a={...o};delete a[r],e.setGroupMemberNames(a);}function Bt(e){let t=e.getClient(),n=e.getCredentials().userId;if(n===""||t===null||e.getSenderProfileCache()[n]!==void 0)return;let r=e.getGeneration();t.contact.getProfile(n).then(o=>{if(o===null||e.getGeneration()!==r)return;let a=T(o.remark),c=T(o.nickname),i=T(o.avatar);(a!==""||c!==""||i!=="")&&e.getSenderProfileCache()[n]===void 0&&e.setSenderProfileCache({...e.getSenderProfileCache(),[n]:{remark:a,nickname:c,avatar:i}});}).catch(o=>{e.getGeneration()===r&&N(e,"self-profile-prefetch-failed",o,{userId:n});});}async function Ft(e,t){let n=e.getClient();if(n===null)return;let r=e.getGeneration(),o=[];for(let a of t){let c=a.userId;e.getSenderProfileCache()[c]===void 0&&o.push((async()=>{let i;try{i=await n.contact.peekProfile(c);}catch(y){e.getGeneration()===r&&N(e,"member-avatar-prefetch-failed",y,{userId:c});return}if(i===null||e.getGeneration()!==r)return;let l=T(i.value.remark),g=T(i.value.nickname),f=T(i.value.avatar);(l!==""||g!==""||f!=="")&&e.getSenderProfileCache()[c]===void 0&&e.setSenderProfileCache({...e.getSenderProfileCache(),[c]:{remark:l,nickname:g,avatar:f}});})());}await Promise.allSettled(o);}async function Ut(e,t,n,r){let o=e.getClient();if(o===null)return;let a=e.getCredentials().userId,c=e.getGeneration(),i=[],l=[],g=false,f=t[0]?.conversationType;f==="group"&&e.getGroupMemberNames()[n]===void 0&&i.push((async()=>{let u;try{u=await o.group.peekMemberNames(n);}catch(v){e.getGeneration()===c&&N(e,"group-member-name-prefetch-failed",v,{groupId:n});return}u===null||e.getGeneration()!==c||(e.getGroupMemberNames()[n]===void 0&&e.setGroupMemberNames({...e.getGroupMemberNames(),[n]:ce(e,n,u.value)}),u.stale&&(g=true));})());let y=[...new Set(t.map(u=>u.senderId).filter(u=>u!==""&&u!=="system"&&u!==a))];f==="channel"&&y.length>0&&i.push((async()=>{let u;try{u=await o.channel.getMembersByIds(n,y);}catch(s){e.getGeneration()===c&&N(e,"channel-member-prefetch-failed",s,{conversation:{conversationType:"channel",conversationId:n}});return}if(e.getGeneration()!==c||r?.isCurrent?.()===false)return;let v=Date.now()+3e5,C={...e.getChannelMemberProfiles()[n]??{}};for(let s of u){let d=C[s.userId];d!==void 0&&ln(s.updateVersion,d.updateVersion)<0||(C[s.userId]={displayName:s.displayName,...s.avatar===void 0?{}:{avatar:s.avatar},role:s.role,...s.updateVersion===void 0?{}:{updateVersion:s.updateVersion},expiresAt:v});}e.setChannelMemberProfiles({...e.getChannelMemberProfiles(),[n]:C});})());for(let u of y)e.getSenderProfileCache()[u]===void 0&&i.push((async()=>{let v;try{v=await o.contact.peekProfile(u);}catch(m){e.getGeneration()===c&&N(e,"sender-profile-prefetch-failed",m,{userId:u});return}if(v===null||e.getGeneration()!==c)return;let C=T(v.value.remark),s=T(v.value.nickname),d=T(v.value.avatar);(C!==""||s!==""||d!=="")&&e.getSenderProfileCache()[u]===void 0&&e.setSenderProfileCache({...e.getSenderProfileCache(),[u]:{remark:C,nickname:s,avatar:d}}),v.stale&&l.push(u);})());await Promise.allSettled(i),e.getGeneration()===c&&mn(e,l,g?n:void 0);}function mn(e,t,n){let r=e.getClient();if(r===null)return;let o=e.getGeneration();n!==void 0&&r.group.getMemberNames(n,{forceRefresh:true}).then(a=>{a!==null&&e.getGeneration()===o&&e.setGroupMemberNames({...e.getGroupMemberNames(),[n]:ce(e,n,a,{reconcile:true})});}).catch(a=>{e.getGeneration()===o&&N(e,"group-member-name-refresh-failed",a,{groupId:n});});for(let a of t)r.contact.getProfile(a,{forceRefresh:true}).then(c=>{if(c===null||e.getGeneration()!==o)return;let i=T(c.remark),l=T(c.nickname),g=T(c.avatar),f=e.getSenderProfileCache()[a];(i!==""||l!==""||g!=="")&&(f===void 0||f.remark!==i||f.nickname!==l||f.avatar!==g)&&e.setSenderProfileCache({...e.getSenderProfileCache(),[a]:{remark:i,nickname:l,avatar:g}});}).catch(c=>{e.getGeneration()===o&&N(e,"sender-profile-refresh-failed",c,{userId:a});});}async function xo(e,t){let n=O(e),r=t.keyword.trim();return G(n,()=>{switch(t.conversation.conversationType){case "direct":return n.inDirect({conversationType:"direct",conversationId:t.conversation.conversationId},r);case "group":return n.inGroup({conversationType:"group",conversationId:t.conversation.conversationId},r);case "channel":return n.inChannel({conversationType:"channel",conversationId:t.conversation.conversationId},r)}})}async function bo(e,t){let n=O(e),r=t.keyword.trim();return G(n,()=>n.texts(t.conversation,r))}function Io(e,t){let n=O(e),r=t.keyword?.trim();return G(n,()=>n.files(t.conversation,r===void 0||r===""?void 0:r))}function ho(e,t){let n=O(e);return G(n,()=>n.images(t.conversation))}function So(e,t){let n=O(e);return G(n,()=>n.videos(t.conversation))}function To(e,t){let n=O(e);return G(n,()=>n.voices(t.conversation))}function Eo(e,t){let n=O(e);return G(n,()=>n.next(t))}function O(e){let t=e.getClient();if(t===null)throw new Error("IM client is not available");return t.search.messages}async function G(e,t){let n=await t();for(let r=0;r<5;r+=1){if(n.items.length>0||n.exhausted||r===4)return {results:n.items,...n.nextPageToken===void 0?{}:{nextPageToken:n.nextPageToken},exhausted:n.exhausted};if(n.nextPageToken===void 0)throw new Error("IM search page is missing nextPageToken");n=await e.next(n.nextPageToken);}throw new Error("Unreachable search pagination state")}export{so as $,Kn as A,bo as Aa,Or as B,Io as Ba,Gr as C,ho as Ca,Te as D,So as Da,Ee as E,To as Ea,Qe as F,Eo as Fa,Fr as G,Ur as H,Vr as I,Ze as J,en as K,D as L,Yn as M,nn as N,tn as O,Y as P,Pe as Q,Zn as R,no as S,et as T,to as U,ro as V,an as W,oo as X,nt as Y,ao as Z,io as _,vn as a,co as aa,yn as b,lo as ba,Cn as c,fo as ca,Mn as d,st as da,ie as e,dt as ea,En as f,gt as fa,Ie as g,pt as ga,Rn as h,vt as ha,$e as i,yt as ia,kn as j,bt as ja,Nn as k,ht as ka,Dn as l,St as la,On as m,Tt as ma,qt as n,wt as na,Qt as o,At as oa,Ln as p,Co as pa,Zt as q,Dt as qa,rr as r,un as ra,Rr as s,Ot as sa,Vn as t,Gt as ta,zn as u,jt as ua,Ar as v,Lt as va,qe as w,Ht as wa,_r as x,Bt as xa,Nr as y,Vt as ya,Dr as z,xo as za};
1
+ import {j,p,b as b$1,i,f,q as q$1}from'./chunk-HZD2QAZB.js';import {Xa,Wa}from'./chunk-TKWU3IO7.js';import {ra,a as a$1,b,na,wa,ya}from'./chunk-XICYFDN4.js';import {a}from'./chunk-WOT6VMZA.js';var vn=14,yn="game:rps",Cn="game:dice";function Ve(e){if(e.stableKey.length===0||e.stableKey.trim()!==e.stableKey)throw new TypeError("Emoji recent item \u9700\u8981\u975E\u7A7A\u4E14\u65E0\u9996\u5C3E\u7A7A\u767D\u7684 stableKey")}function Mn(e,t){Ve(t);let n=new Set([t.stableKey]),r=[t];for(let o of e)if(Ve(o),!n.has(o.stableKey)&&(n.add(o.stableKey),r.push(o),r.length===14))break;return Object.freeze(r)}var ze=["0x1f600","0x1f603","0x1f604","0x1f601","0x1f606","0x1f605","0x1f923","0x1f602","0x1f642","0x1f643","0x1f609","0x1f60a","0x1f607","0x1f970","0x1f60d","0x1f929","0x1f618","0x1f617","0x1f61a","0x1f619","0x1f60b","0x1f61b","0x1f61c","0x1f92a","0x1f61d","0x1f911","0x1f917","0x1f92d","0x1f92b","0x1f914","0x1f910","0x1f928","0x1f610","0x1f611","0x1f636","0x1f60f","0x1f612","0x1f644","0x1f62c","0x1f925","0x1f60c","0x1f614","0x1f62a","0x1f924","0x1f634","0x1f637","0x1f912","0x1f915","0x1f922","0x1f92e","0x1f927","0x1f975","0x1f976","0x1f974","0x1f635","0x1f92f","0x1f920","0x1f973","0x1f60e","0x1f913","0x1f9d0","0x1f615","0x1f61f","0x1f641","0x1f62e","0x1f62f","0x1f632","0x1f633","0x1f97a","0x1f626","0x1f627","0x1f628","0x1f630","0x1f625","0x1f622","0x1f62d","0x1f631","0x1f616","0x1f623","0x1f61e","0x1f613","0x1f629","0x1f62b","0x1f971","0x1f624","0x1f621","0x1f620","0x1f92c","0x1f608","0x1f47f","0x1f480","0x1f4a9","0x1f921","0x1f479","0x1f47a","0x1f47b","0x1f47d","0x1f47e","0x1f916","0x1f63a","0x1f638","0x1f639","0x1f63b","0x1f63c","0x1f63d","0x1f640","0x1f63f","0x1f63e","0x1f648","0x1f649","0x1f64a","0x1f48c","0x1f498","0x1f49d","0x1f496","0x1f497","0x1f493","0x1f49e","0x1f495","0x1f49f","0x1f494","0x1f9e1","0x1f49b","0x1f49a","0x1f499","0x1f49c","0x1f90e","0x1f5a4","0x1f90d","0x1f48b","0x1f4af","0x1f4a2","0x1f4a5","0x1f4ab","0x1f4a6","0x1f4a8","0x1f4ac","0x1f4ad","0x1f4a4","0x1f44b","0x1f91a","0x1f590","0x270b","0x1f596","0x1f44c","0x1f90f","0x270c","0x1f91e","0x1f91f","0x1f918","0x1f919","0x1f448","0x1f449","0x1f446","0x1f595","0x1f447","0x1f44d","0x1f44e","0x270a","0x1f44a","0x1f91b","0x1f91c","0x1f44f","0x1f64c","0x1f450","0x1f932","0x1f91d","0x1f64f","0x270d","0x1f485","0x1f933","0x1f4aa","0x1f9be","0x1f9bf","0x1f9b5","0x1f9b6","0x1f442","0x1f9bb","0x1f443","0x1f9e0","0x1f9b7","0x1f9b4","0x1f440","0x1f445","0x1f444","0x1f435","0x1f9a7","0x1f436","0x1f98a","0x1f99d","0x1f431","0x1f981","0x1f42f","0x1f42e","0x1f437","0x1f43d","0x1f42d","0x1f439","0x1f430","0x1f43b","0x1f428","0x1f43c","0x1f9a5","0x1f983","0x1f414","0x1f423","0x1f425","0x1f427","0x1f985","0x1f986","0x1f989","0x1f9a9","0x1f99a","0x1f99c","0x1f438","0x1f433","0x1f980","0x1f490","0x1f338","0x1f4ae","0x1f339","0x1f940","0x1f33a","0x1f33b","0x1f340","0x1f341","0x1f342","0x1f343","0x1f9c0","0x1f969","0x1f354","0x1f35f","0x1f355","0x1f32d","0x1f96a","0x1f32e","0x1f32f","0x1f365","0x1f36b","0x2615","0x1f37a","0x1f943","0x1f30f","0x1f9f1","0x1f6d1","0x1f6a7","0x2693","0x1f680","0x23f3","0x231a","0x23f0","0x1f553","0x1f319","0x1f31a","0x1f31b","0x1f31c","0x1f31d","0x1f31e","0x1fa90","0x2b50","0x1f31f","0x1f320","0x1f30c","0x26c5","0x1f300","0x1f308","0x1f302","0x2614","0x26a1","0x26c4","0x1f525","0x1f4a7","0x1f30a","0x1f383","0x1f384","0x1f386","0x1f387","0x1f9e8","0x2728","0x1f388","0x1f389","0x1f38a","0x1f38b","0x1f38d","0x1f38e","0x1f38f","0x1f390","0x1f391","0x1f9e7","0x1f380","0x1f381","0x1f3ab","0x1f3c6","0x1f3c5","0x1f947","0x1f948","0x1f949","0x1f3c1","0x1f6a9","0x1f38c","0x1f3f4"];var bn=1114111,In=55296,hn=57343,Ke=65039,Sn="0123456789abcdef";function Tn(e,t){if(!e.startsWith("0x")||e.length<=2)throw new TypeError(`\u975E\u6CD5 Unicode emoji code: ${t}`);let n=e.slice(2);for(let o of n)if(!Sn.includes(o))throw new TypeError(`\u975E\u6CD5 Unicode emoji code: ${t}`);let r=Number.parseInt(n,16);if(!Number.isSafeInteger(r)||r>bn||r>=In&&r<=hn)throw new RangeError(`Unicode emoji code point \u8D8A\u754C: ${t}`);return r}function ie(e){if(e.length===0||e.trim()!==e)throw new TypeError(`\u975E\u6CD5 Unicode emoji code: ${e}`);let t=e.split(" ");if(t.some(n=>n.length===0))throw new TypeError(`\u975E\u6CD5 Unicode emoji code: ${e}`);return Object.freeze(t.map(n=>Tn(n,e)))}function En(e){return String.fromCodePoint(...ie(e))}function be(e){return e.map(t=>`0x${t.toString(16)}`).join(" ")}function Pn(e){let t=ie(e),n=be(t);if(n!==e)throw new TypeError(`Unicode emoji code \u5FC5\u987B\u4F7F\u7528 canonical \u5C0F\u5199\u683C\u5F0F: ${e}`);return Object.freeze({stableKey:`unicode:${n}`,code:e,codePoints:t,text:String.fromCodePoint(...t),kind:"unicode"})}var Ie=Object.freeze(ze.map(Pn)),K=new Map,W=new Map;for(let e of Ie){if(K.has(e.code)||W.has(e.text))throw new Error(`Unicode emoji \u76EE\u5F55\u5B58\u5728\u91CD\u590D\u9879: ${e.code}`);K.set(e.code,e),W.set(e.text,e);}for(let e of Ie){let n=e.codePoints.at(-1)===Ke?e.codePoints.slice(0,-1):[...e.codePoints,Ke],r=be(n),o=String.fromCodePoint(...n);K.has(r)||K.set(r,e),W.has(o)||W.set(o,e);}function Rn(e){if(e.startsWith("0x")){let t=be(ie(e));return K.get(t)}return W.get(e)}var We=["[100\u5206]","[VS]","[\u4E0A]","[\u4E0B]","[\u4E0D\u542C]","[\u4E0D\u770B]","[\u4E0D\u9AD8\u5174]","[\u4EB2\u543B]","[\u4F1E]","[\u51FB\u638C]","[\u5357\u74DC\u5934]","[\u53F3]","[\u54C8\u54C8]","[\u54E6]","[\u5564\u9152]","[\u55B7\u568F]","[\u5723\u8BDE\u6811]","[\u5929\u4F7F\u7B11]","[\u5956\u676F]","[\u5BB3\u6015]","[\u5DE6]","[\u5E73\u9759]","[\u5F3A\u58EE]","[\u5F69\u8679]","[\u5F97\u610F]","[\u5FAE\u7B11]","[\u5FC3\u7D2F]","[\u5FC3\u8DF3]","[\u601D\u8003]","[\u6076\u9B54\u6012]","[\u6076\u9B54\u7B11]","[\u6210\u957F]","[\u6293\u72C2]","[\u62F3\u5934]","[\u6325\u624B]","[\u63E1\u62F3]","[\u65E0]","[\u661F\u661F]","[\u661F\u661F\u773C]","[\u6708\u997C]","[\u6C14\u6124]","[\u6EE1\u8DB3]","[\u706B]","[\u718A\u732B]","[\u7231\u4F60]","[\u725B]","[\u72D7]","[\u732B]","[\u7591\u60D1]","[\u7687\u51A0]","[\u778C\u7761]","[\u795D]","[\u79D8]","[\u7BEE\u7403]","[\u7F8E\u5473]","[\u836F]","[\u8DB3\u7403]","[\u95EA\u7535]","[\u95EA\u8000\u7684\u5FC3]","[\u96EA\u82B1]","[\u997A\u5B50]","[\u9A6C]","[\u9B3C]","[\u9E21]","[\u9F13\u638C]","[\u9F20]","[ALLIN]","[\u4F24\u5FC3]","[\u4FBF\u4FBF]","[\u5077\u7B11]","[\u50B2\u6162]","[\u50BB\u7B11]","[\u5192\u6C57]","[\u51CB\u96F6]","[\u53D1\u5446]","[\u53EF\u601C]","[\u53F9\u6C14]","[\u5403\u60CA]","[\u5403\u74DC]","[\u5408\u638C]","[\u5446\u6EDE]","[\u5455\u5410]","[\u5492\u9A82]","[\u5496\u5561]","[\u54C7]","[\u559C\u7231]","[\u5634\u5507]","[\u563F\u54C8]","[\u56F0]","[\u56F0\u4F4F]","[\u5927\u54ED]","[\u5927\u7B11]","[\u592A\u9633]","[\u5931\u671B]","[\u594B\u6597]","[\u5978\u7B11]","[\u59D4\u5C48]","[\u5BB3\u7F9E]","[\u5C2C\u7B11]","[\u5E72\u676F]","[\u5E86\u795D]","[\u5FC3\u788E]","[\u6050\u60E7]","[\u60CA\u8BB6]","[\u6109\u60A6]","[\u611F\u5192]","[\u6124\u6012]","[\u61CA\u607C]","[\u620F\u5F04]","[\u6253\u51FB]","[\u62A0\u9F3B]","[\u62B1\u62F3]","[\u62C5\u5FC3]","[\u62DC\u62DC]","[\u62E5\u62B1]","[\u6342\u8138]","[\u63E1\u624B]","[\u642C\u7816]","[\u6536\u5230]","[\u6536\u5272]","[\u65B9\u5757]","[\u65E0\u8BED]","[\u6655]","[\u6708\u4EAE]","[\u673A\u667A]","[\u6C57]","[\u6D77\u8482]","[\u70B8\u5F39]","[\u70DF\u82B1]","[\u718A\u54ED\u4E86]","[\u7206\u7AF9]","[\u7231\u5FC3]","[\u725B\u5E02]","[\u72D7\u5934]","[\u732A]","[\u73AB\u7470]","[\u751F\u65E5\u86CB\u7CD5]","[\u767D\u773C]","[\u76B1\u7709]","[\u770B\u6DA8]","[\u770B\u8DCC]","[\u7728\u773C]","[\u7761\u89C9]","[\u793C\u7269]","[\u793E\u4F1A]","[\u798F]","[\u7B11\u54ED]","[\u7CD6\u679C]","[\u7EA2\u5305]","[\u8036]","[\u8138\u7EA2]","[\u82E6\u6DA9]","[\u83DC\u5200]","[\u8870]","[\u88C2\u5F00]","[\u8981\u54ED\u4E86]","[\u8C03\u76AE]","[\u8D5E]","[\u8E29]","[\u9119\u89C6]","[\u9177]","[\u91D1\u94B1]","[\u9501\u7BB1]","[\u957F\u8349]","[\u95EE\u53F7]","[\u95F9\u5267]","[\u9634\u9669]","[\u964D\u843D\u4F1E]","[\u96BE\u8FC7]","[\u98DE\u543B]","[\u9AB7\u9AC5]","[\u9EBB\u5C06]"];var $e=j,An=new Set(We),kn="/images/emoji/v1",_n=(()=>{let e=new Map;for(let t of $e)for(let n of t.tokens)e.set(n,t);return e})();function Nn(e){return _n.get(e)}function Dn(e,t=kn){return `${t}/${e.file}`}var On=/\[[^[\]]{1,20}\]/g,Gn=(()=>{let e=new Map;for(let t of $e)e.set(t.code,t);return e})();function qt(e,t){let n=Gn.get(e);return n===void 0?void 0:Dn(n,t)}var jn=/\[[^[\]]{1,20}\]/;function Qt(e){return jn.test(e)}function Ln(){return e=>{let t=[];for(let n of e.matchAll(On)){let r=Nn(n[0]);if(n.index!==void 0){if(r!==void 0){t.push({start:n.index,end:n.index+n[0].length-1,segment:{kind:"emoji",text:n[0],code:r.code}});continue}An.has(n[0])&&t.push({start:n.index,end:n.index+n[0].length-1,segment:{kind:"legacy-emoji-placeholder",text:n[0]}});}}return t}}var Hn=Ln();function Zt(e){if(e.contentType!=="text"||e.encryption.decryptFailed===true||e.mention!==void 0)return null;let t=e.body.text;if(t===void 0||t==="")return null;let n=Hn(t);if(n.length===0)return null;let r=0,o=[];for(let a of n){if(a.start!==r||a.segment.kind!=="emoji"&&a.segment.kind!=="legacy-emoji-placeholder")return null;o.push(a.segment),r=a.end+1;}return r!==t.length?null:Object.freeze({segments:Object.freeze(o),count:o.length})}function rr(e){return e.source!=="live"?{show:false,reason:"not-live"}:e.permission===null?{show:false,reason:"unsupported"}:e.permission!=="granted"?{show:false,reason:"permission-denied"}:e.visibilityState==="visible"?{show:false,reason:"page-visible"}:e.accountId!==""&&e.senderId===e.accountId?{show:false,reason:"self-message"}:e.contentType==="system"?{show:false,reason:"system-message"}:e.muted?{show:false,reason:"conversation-muted"}:e.globallyEnabled?{show:true}:{show:false,reason:"globally-disabled"}}function Xe(e){let t=new Map,n=new Set,r=e.revokeObjectUrl??(s=>URL.revokeObjectURL(s));function o(s){s.revoked||(s.revoked=true,n.delete(s),r(s.url));}function a(s){t.get(s.key)===s&&t.delete(s.key),s.retired=true,s.leases===0?o(s):n.add(s);}function c(){let s=0,d=0;for(let m of t.values())m.evictable&&(s+=1,d+=m.byteSize);return {entries:s,bytes:d}}function i(){let s=c();for(;s.entries>e.maxCachedEntries||s.bytes>e.maxCachedBytes;){let d;for(let m of t.values())if(m.evictable&&m.leases===0){d=m;break}if(d===void 0)return;a(d),s=c();}}function l(s,d,m){let h=m.byteSize??0,Z=Number.isFinite(h)&&h>0?Math.floor(h):0,R=t.get(s);if(R?.url===d){R.byteSize=Z,R.evictable=m.evictable,t.delete(s),t.set(s,R),i();return}R!==void 0&&a(R),t.set(s,{key:s,url:d,byteSize:Z,evictable:m.evictable,leases:0,retired:false,revoked:false}),i();}function g(s,d){let m=t.get(s);if(m===void 0)return false;let h=t.get(d);return h!==void 0&&h!==m&&a(h),t.delete(s),m.key=d,t.set(d,m),true}function f(s,d){let m=t.get(s);return m===void 0?false:(d!==void 0&&Number.isFinite(d)&&d>0&&(m.byteSize=Math.floor(d)),m.evictable=true,t.delete(s),t.set(s,m),i(),t.get(s)===m)}function y(s){let d=t.get(s);if(d===void 0||d.revoked)return;d.leases+=1,t.delete(s),t.set(s,d);let m=false;return Object.freeze({url:d.url,release(){m||(m=true,d.leases=Math.max(0,d.leases-1),d.retired&&d.leases===0?o(d):i());}})}function u(s){let d=t.get(s);d!==void 0&&a(d);}function v(s){for(let d of [...t.keys()])d.startsWith(s)&&u(d);}function C(){let s=[...t.values()];t.clear();for(let d of [...s,...n])o(d);n.clear();}return {register:l,move:g,makeEvictable:f,acquire:y,remove:u,removeByPrefix:v,clearAll:C,getStats:()=>Object.freeze({activeEntries:t.size,retiredEntries:n.size,...c()})}}var Bn=20;function Fn(){if(typeof navigator>"u")return {maxCachedEntries:6,maxCachedBytes:512*1024*1024};let e=navigator,t=e.deviceMemory??4,n=/Android|iPhone|iPad|Mobile/i.test(e.userAgent);return e.connection?.saveData===true||t<=2||navigator.hardwareConcurrency<=2?{maxCachedEntries:2,maxCachedBytes:128*1024*1024}:n?{maxCachedEntries:4,maxCachedBytes:256*1024*1024}:t>=8&&navigator.hardwareConcurrency>=8?{maxCachedEntries:9,maxCachedBytes:1024*1024*1024}:{maxCachedEntries:6,maxCachedBytes:512*1024*1024}}function he(e){let t=`message\0${e.conversationType}\0${e.conversationId}\0${e.messageId}`;return e.itemIndex===void 0?t:`${t}\0${e.itemIndex}`}function Un(e){return `message\0${e.conversationType}\0${e.conversationId}\0`}function Se(e){return `source\0${e}`}function Rr(e){let t=a$1(e.cachePrefix),n=b(t),r=e.createClient??p,o=e.createStorage??(p=>typeof indexedDB>"u"?void 0:Xa({...p,mediaAssetCache:{strategies:b$1()}})),a=e.createProfile,c=e.deleteStorage??(p=>Wa(p.accountId,{namespaceFactory:p.namespaceFactory})),i$1=null,l=null,g=false,f,y,u,v=0,C,s=false,d={wsUrl:"",userId:"",token:"",deviceToken:"",channelType:"0",cmHttpBaseUrl:""},m=i(e.debug,()=>({generation:v,...d.userId===""?{}:{accountId:d.userId}}));m.record("debug","chat-kit","session","runtime-created");function h(){return {generation:v,...d.userId===""?{}:{accountId:d.userId}}}function Z(){d.userId="",d.token="",d.deviceToken="",d.channelType="0";}let R={},ee={},ne={},A=new Map,k=Xe(Fn()),te=new Set,B=new Set,re=new Set;function F(){for(let p of re)p();}function de(){let p=h(),x=i$1,b=y!==void 0||u!==void 0;y?.(),y=void 0,u?.(),u=void 0,b&&m.record("debug","chat-kit","session","client-subscriptions-released",()=>p),x?.connection.disconnect("im-chat-auth-changed"),i$1=null,l=null,Promise.resolve(f?.close?.()).catch(()=>{}),f=void 0,v+=1,R={},ee={},ne={},le(),A.clear(),F();}function oe(){if(s)throw new Error("ChatRuntime \u5DF2 dispose\uFF0C\u4E0D\u80FD\u521B\u5EFA/\u590D\u7528 client");if(i$1===null){f=o({namespaceFactory:n});let x=C?.getCoreClient(),b=C?.getCoreApi?.();g=x!==void 0||b!==void 0;let E=C?.clientType??2,S=v,w=C?.onRequestError,U=x&&a?a({client:x,clientType:E,storage:f}):void 0,pn={authProvider:{getLoginContext:async()=>{let P=C?.getSession?.(),j=C?.getSession!==void 0,ue=(j?P?.userId:d.userId)?.trim()??"",Le=(j?P?.token:d.token)?.trim()??"";return ue===""||Le===""||ue!==d.userId?null:{userId:ue,token:Le,deviceToken:d.deviceToken,clientType:E,channelType:Number(d.channelType)}}},endpointProvider:{getEndpoints:async()=>[{url:d.wsUrl}],getCmHttpBaseUrl:async()=>d.cmHttpBaseUrl},cache:{prefix:t},adapters:{namespaceFactory:n,storage:{create:P=>{if(P.namespaceFactory!==n)throw new Error("ChatRuntime storage namespace factory \u4E0D\u4E00\u81F4");return f},purgeCurrentAccount:P=>c(P)}},profile:U,media:C?.getMediaConfig(),expressions:C?.getExpressionOptions?.(),coreApi:b,coreClient:x,onRequestError:w===void 0?void 0:P=>!s&&v===S?w(P):void 0,debug:e.debug},je=r(pn),fe=je.events;if(fe===void 0&&B.size>0)throw Promise.resolve(f?.close?.()).catch(()=>{}),f=void 0,new Error("IM client \u7F3A\u5C11\u4EA7\u54C1\u4E8B\u4EF6 API");i$1=je,y=i$1.connection.subscribe(P=>{for(let j of te)j(P);}),fe!==void 0&&(u=fe.subscribe(P=>{for(let j of B)j(P);})),m.record("debug","chat-kit","session","client-subscriptions-established",()=>h());}return i$1}function Ge(){let p=oe();return l??=q$1(p,{coreApiAvailable:g}),l}function le(){k.clearAll();}function gn(p){k.removeByPrefix(Un(p));}return {getClient:()=>i$1,getProductClient:()=>i$1===null?null:Ge(),ensureProductClient:Ge,getConnectionState:()=>i$1?.connection.state??"idle",getGeneration:()=>v,getCredentials:()=>d,getMediaConfig:()=>C?.getMediaConfig(),getDiagnostics:()=>m,configureHost(p){C=p;},applySession(p,x,b){let E=p?.userId??"",S=p?.token??"",w=i$1!==null&&(d.userId!==E||d.token!==S);return w&&de(),d.wsUrl=x.wsUrl,d.cmHttpBaseUrl=x.cmHttpBaseUrl,d.userId=E,d.token=S,d.deviceToken=b,d.channelType="0",m.record("info","chat-kit","session","session-applied",()=>({data:{accountId:E,hasToken:S!=="",didReset:w}})),{didReset:w,hasToken:S!==""}},ensureClient:oe,async prepare(){if(s)return {ok:false,errorKey:"lifecycle.disposed"};if(d.userId==="")return {ok:false,errorKey:"lifecycle.missingLoginState"};let p=Date.now(),x=h();m.record("info","chat-kit","session","prepare-start",()=>x);try{return await oe().connection.prepare(),m.record("info","chat-kit","session","prepare-complete",()=>({...x,durationMs:Date.now()-p})),{ok:!0}}catch(b){return m.record("error","chat-kit","session","prepare-failed",()=>({...x,durationMs:Date.now()-p,error:{message:"ChatRuntime prepare \u5931\u8D25",data:b}})),{ok:false,errorKey:"lifecycle.prepareFailed",errorParams:{reason:b instanceof Error?b.message:String(b)}}}},async connect(){if(s)return {ok:false,errorKey:"lifecycle.disposed"};if(d.wsUrl===""||d.userId===""||d.token==="")return {ok:false,errorKey:"lifecycle.missingConnectParams"};let p=Date.now(),x=h();m.record("info","chat-kit","connection","connect-start",()=>x);try{return await oe().connection.connect(),m.record("info","chat-kit","connection","connect-complete",()=>({...x,durationMs:Date.now()-p})),{ok:!0}}catch(b){return m.record("error","chat-kit","connection","connect-failed",()=>({...x,durationMs:Date.now()-p,error:{message:"ChatRuntime connect \u5931\u8D25",data:b}})),{ok:false,errorKey:"lifecycle.connectFailed",errorParams:{reason:b instanceof Error?b.message:String(b)}}}},disconnect(){let p=h();m.record("info","chat-kit","connection","disconnect",()=>p),i$1?.connection.disconnect("im-chat-manual");},async logout(p){let x=Date.now(),b=h();m.record("info","chat-kit","session","logout-start",()=>({...b,data:p}));let E=i$1,S,w;if(E!==null)try{w=E.logout(p);}catch(U){S=U;}if(Z(),v+=1,w!==void 0)try{await w;}catch(U){S=U;}if(R={},ee={},ne={},le(),A.clear(),F(),m.record(S===void 0?"info":"error","chat-kit","session",S===void 0?"logout-complete":"logout-failed",()=>({...b,durationMs:Date.now()-x,...S===void 0?{}:{error:{message:"ChatRuntime logout \u5931\u8D25",data:S}}})),S!==void 0)throw S},resetForAuthChange:de,dispose(){let p=h();m.record("info","chat-kit","session","dispose",()=>p),de(),te.clear(),B.clear(),re.clear(),s=true;},subscribeEvents(p){return te.add(p),()=>{te.delete(p);}},subscribeProductEvents(p){return B.add(p),()=>{B.delete(p);}},getSenderProfileCache:()=>R,setSenderProfileCache(p){R=p,F();},getGroupMemberNames:()=>ee,setGroupMemberNames(p){ee=p,F();},getChannelMemberProfiles:()=>ne,setChannelMemberProfiles(p){ne=p,F();},subscribeProfileChange(p){return re.add(p),()=>{re.delete(p);}},putSelfVoiceBytes(p,x){for(A.delete(p),A.set(p,x);A.size>Bn;){let b=A.keys().next().value;if(b===void 0)break;A.delete(b);}},getSelfVoiceBytes:p=>A.get(p),clearSelfVoiceBytes(){A.clear();},createLocalMediaPreview(p){let x=URL.createObjectURL(p);return k.register(Se(x),x,{byteSize:p.size,evictable:false}),x},discardLocalMediaPreview(p){k.remove(Se(p));},trackLocalMediaPreview(p,x){k.move(Se(x),he(p));},resolveMediaPreviewToRemote(p,x,b){let E=he(p);x==="image"||x==="video"?k.makeEvictable(E,b):k.remove(E);},acquireMediaBlob(p){return k.acquire(he(p))},cleanupLocalMediaBlobs:le,cleanupConversationMediaBlobs:gn}}function Ye(e){return "group"in e?e.group:e.channel}function Je(e,t,n){if(t.conversationType!==e.ref.conversationType||t.conversationId!==e.ref.conversationId||t.status!=="sent"||t.recalled!==void 0||t.deletedForEveryone!==void 0||t.encryption.decryptFailed===true||!["text","image","video","voice","file","miniProgram","transfer","game"].includes(t.contentType))return false;if(n===null)return true;let r=Ye(n);return r.conversationType!==e.ref.conversationType||r.conversationId!==e.ref.conversationId||n.messageId!==t.id}function Vn(e){let{session:t,message:n,currentPinnedMessage:r,selfId:o,ownerId:a}=e;return t?.ref.conversationType==="group"&&(t.groupState===void 0||t.groupState==="active")&&o!==""&&a!==void 0&&a!==""&&o===a&&Je(t,n,r)}function zn(e){let{session:t,message:n,currentPinnedMessage:r}=e;return t?.ref.conversationType==="channel"&&t.channelState==="active"&&t.channelPermissions?.moderateMessages===true&&Je(t,n,r)}function Ar(e){return e.session?.ref.conversationType==="group"?Vn(e):e.session?.ref.conversationType==="channel"?zn(e):false}function qe(e,t){if(e===null)return false;let n=Ye(e);return n.conversationType===t.conversationType&&n.conversationId===t.conversationId&&e.messageId===t.id}function _r(e,t,n,r,o){let a=e[r];if(a&&a.remark!=="")return a.remark;let c=n===""?void 0:t[n]?.[r];if(c!==void 0&&c!=="")return c;if(a&&a.nickname!=="")return a.nickname;let i=(o??"").trim();return i!==""?i:r.length>12?`${r.slice(0,6)}\u2026${r.slice(-4)}`:r}function Nr(e,t,n,r){let o=e[r];if(o?.remark!==void 0&&o.remark!=="")return o.remark;let a=t[n]?.[r]?.displayName;return a!==void 0&&a!==""?a:o?.nickname!==void 0&&o.nickname!==""?o.nickname:r}function Dr(e,t,n,r){let o=t[n]?.[r]?.avatar;return o!==void 0&&o!==""?o:Kn(e,r)}function Kn(e,t){return e[t]?.avatar??""}function Or(e,t){return e[t]?.nickname??""}function Gr(e){return (e.remark??"").trim()||e.nickname||e.id}function Te(e,t,n=Date.now()){return e.senderId!==t||e.status!=="sent"||e.recalled!==void 0||e.deletedForEveryone!==void 0?false:n-(e.serverTime??e.createdAt)<=300*1e3}function Ee(e,t,n,r=Date.now()){return e.senderId!==t||e.status!=="sent"||e.recalled!==void 0||e.deletedForEveryone!==void 0||e.body.text===void 0||e.body.text===""?false:r-(e.serverTime??e.createdAt)<=n}var I=Object.freeze({availability:"available",reason:"ok"});function M(e){return Object.freeze({availability:"unavailable",reason:e})}function Wn(e,t){return e.ref.conversationType===t.conversationType&&e.ref.conversationId===t.conversationId}function $(e){if(e.status!=="sent"||e.recalled!==void 0||e.deletedForEveryone!==void 0||e.contentType==="system")return M("unsupported-type")}function $n(e){return e.status==="sent"&&e.recalled===void 0&&e.deletedForEveryone===void 0&&e.encryption.decryptFailed!==true&&["text","image","video","voice","file","miniProgram","game","mediaAlbum"].includes(e.contentType)}function Xn(e){return e.status==="sent"&&e.recalled===void 0&&e.deletedForEveryone===void 0}function X(e){return e.conversationType==="channel"?e.value.canMutateMessages:(e.conversationType==="group",e.value.canUseMessageActions)}function Qe(e,t,n={}){return t.availability==="available"?"":e==="direct"?n.mode!=="target"?"":t.reason==="blocked"||t.reason==="not-friend"?"directBlock.contactRequired":"":e==="group"?t.reason==="left"?"groupBlock.left":t.reason==="removed"?"groupBlock.removed":t.reason==="dismissed"?"groupBlock.dismissed":"groupBlock.unknownRestricted":e==="channel"?t.reason==="guest"?"channelBlock.guest":t.reason==="left"?"channelBlock.left":t.reason==="removed"?"channelBlock.removed":t.reason==="dismissed"?"channelBlock.dismissed":t.reason==="muted-all"?"channelBlock.allMembersMuted":t.reason==="muted-self"?"channelBlock.currentUserMuted":t.reason==="muted"?"channelBlock.muted":t.reason==="blacklisted"?"channelBlock.blacklisted":"channelBlock.unknownRestricted":""}function Fr(e,t){switch(t){case "conversation.openProfile":return e.conversationType==="direct"||e.conversationType==="group",e.value.canOpenProfile;case "conversation.readHistory":return e.conversationType==="direct"?I:e.value.canReadHistory;case "conversation.listPreferences":return e.conversationType==="channel"?e.value.state==="muted"?I:e.value.canOpenProfile:e.conversationType==="group"?e.value.canOpenProfile:I;case "composer.send":return e.value.canSendMessages;case "composer.mentionAll":return e.conversationType==="channel"?e.value.canMentionAll:I;case "profile.edit":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canEditProfile:I;case "relationship.manage":return e.conversationType==="direct"?e.value.canManageRelationship:M("unsupported-type");case "members.view":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canViewMembers:M("unsupported-type");case "members.manage":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canManageMembers:M("unsupported-type");case "members.invite":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canInviteMembers:M("unsupported-type");case "members.remove":return e.conversationType==="channel"?e.value.canRemoveMembers:e.conversationType==="group"?e.value.canManageMembers:M("unsupported-type");case "members.setAdmin":return e.conversationType==="channel"?e.value.canSetMemberAdmin:M("unsupported-type");case "ownership.transfer":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canTransferOwnership:M("unsupported-type");case "conversation.leave":return e.conversationType==="channel"||e.conversationType==="group"?e.value.canLeave:M("unsupported-type");case "channel.manageMute":return e.conversationType==="channel"?e.value.canManageMute:M("unsupported-type");case "channel.setMemberPrivateChat":return e.conversationType==="channel"?e.value.canSetMemberPrivateChat:M("unsupported-type");case "channel.dismiss":return e.conversationType==="channel"?e.value.canDismiss:M("unsupported-type")}}function Ur(e,t){let{message:n,pinnedMessage:r,selfId:o,snapshot:a,nowMs:c=Date.now()}=t;if(!Wn(a,n))return M("unsupported-type");let i=qe(r,n);switch(e){case "message.react":return n.status!=="sent"||!wa(n)?M("unsupported-type"):a.conversationType==="channel"?a.value.canSendMessages:I;case "message.forward":{let l=$(n);return l!==void 0?l:ra(n)?I:M("unsupported-type")}case "message.favorite":{let l=$(n);return l!==void 0?l:n.encryption?.decryptFailed===true?M("unsupported-type"):n.contentType==="text"||n.contentType==="image"||n.contentType==="video"||n.contentType==="voice"||n.contentType==="file"||n.contentType==="mediaAlbum"?I:M("unsupported-type")}case "message.multiSelect":{let l=$(n);return l!==void 0?l:i?M("message-protected"):I}case "message.reply":{let l=$(n);return l!==void 0?l:a.conversationType==="direct"?I:X(a)}case "message.recall":return i?M("message-protected"):a.conversationType==="direct"?Te(n,o,c)?I:M("role-insufficient"):X(a).availability!=="available"?X(a):Te(n,o,c)?I:M("role-insufficient");case "message.edit":return i?M("message-protected"):a.conversationType==="direct"?Ee(n,o,na,c)?I:M("role-insufficient"):X(a).availability!=="available"?X(a):Ee(n,o,na,c)?I:M("role-insufficient");case "message.pin":return i?M("message-protected"):$n(n)&&(a.conversationType==="group"||a.conversationType==="channel")?a.value.canPinMessages:M("unsupported-type");case "message.unpin":return a.conversationType==="group"||a.conversationType==="channel"?a.value.canUnpinMessages:M("unsupported-type");case "message.deleteLocal":{if(i)return M("message-protected");let l=$(n);return l!==void 0?l:n.contentType==="unknown"?M("unsupported-type"):a.conversationType==="direct"||a.conversationType==="group"?I:M("unsupported-type")}case "message.deleteForEveryone":return i?M("message-protected"):a.conversationType!=="channel"||!Xn(n)?M("unsupported-type"):a.value.canDeleteMessagesForEveryone}}function Vr(e,t){let{selfId:n,snapshot:r,targetRole:o="unknown",targetUserId:a}=t;if(a===""||a===n)return M("role-insufficient");if(r.conversationType==="group"){if(e!=="members.removeTarget")return M("unsupported-type");let i=r.value.canManageMembers;return i.availability!=="available"?i:r.value.ownerId!==void 0&&a===r.value.ownerId?M("role-insufficient"):I}if(r.conversationType!=="channel")return M("unsupported-type");if(e==="members.removeTarget"||e==="members.editNicknameTarget"){let i=r.value.canRemoveMembers;return i.availability!=="available"?i:r.value.role==="owner"?o==="member"||o==="admin"?I:M("role-insufficient"):r.value.role==="admin"&&o==="member"?I:M("role-insufficient")}let c=r.value.canSetMemberAdmin;return c.availability!=="available"?c:r.value.role!=="owner"?M("role-insufficient"):e==="members.setAdminTarget"?o==="member"?I:M("role-insufficient"):o==="admin"?I:M("role-insufficient")}function Ze(e){if(e===void 0||e==="active")return "";switch(e){case "guest":return "channelBlock.guest";case "left":return "channelBlock.left";case "removed":return "channelBlock.removed";case "dismissed":return "channelBlock.dismissed";case "muted":return "channelBlock.muted";case "blacklisted":return "channelBlock.blacklisted";case "unknown_restricted":return "channelBlock.unknownRestricted"}}function en(e,t=Date.now()){if(e?.channelState===void 0)return "channelBlock.unknownRestricted";let n=ya({channelState:e.channelState,snapshot:e.channelAccessSnapshot,permissions:e.channelPermissions,nowMs:t});return n.channelState==="muted"?n.muteReason==="all-members"?"channelBlock.allMembersMuted":n.muteReason==="current-user"?"channelBlock.currentUserMuted":"channelBlock.muted":n.channelState!=="active"?Ze(n.channelState)||"channelBlock.unknownRestricted":n.permissions.sendMessages?"":"channelBlock.unknownRestricted"}var D=9;function Yn(e={}){let t=typeof navigator<"u"?navigator:void 0,n=e.deviceMemoryGb??(typeof t?.deviceMemory=="number"?t.deviceMemory:4),r=Math.floor(n*1024*1024*1024/8);return Math.min(512*1024*1024,Math.max(64*1024*1024,r))}async function nn(e,t,n={}){if(e.length===0)return {processedCount:0,rejectedByLimit:false};let r=e.length>9;r&&n.onRejectedByLimit?.({reason:"count-limit",maxCount:9,selectedCount:e.length});let o=e.slice(0,9);if(n.startAll)return await Promise.all(o.map(g=>t(g).catch(()=>false))),{processedCount:o.length,rejectedByLimit:r};let a=Yn(n),c=Math.max(1,Math.floor(n.maxConcurrency??Number.POSITIVE_INFINITY)),i=0,l=new Set;for(let g of o){for(;l.size>0&&(l.size>=c||i+g.size>a);)await Promise.race(l);i+=g.size;let f=t(g).catch(()=>false).finally(()=>{i-=g.size,l.delete(f);});l.add(f);}return await Promise.all(l),{processedCount:o.length,rejectedByLimit:r}}async function tn(e){if(await Y(e)!=="not-gif")return "sticker";if(await f(e))return "image";let t=e.type.trim().toLowerCase();return t.startsWith("image/")||/\.(?:jpe?g|png|webp|gif|svgz?|heic|heif|avif|bmp|tiff?|ico|jfif|jxl|psd|dng|raw)$/i.test(e.name)?"unsupported-image":t.startsWith("video/")?"video":"file"}async function Y(e){let t=e.type.trim().toLowerCase(),n=new Uint8Array(await e.slice(0,6).arrayBuffer()),r=n.length===6?String.fromCharCode(...n):"",o=r==="GIF87a"||r==="GIF89a",a=t==="image/gif";return o&&(a||t==="")?"gif":o||a?"invalid-gif":"not-gif"}async function Pe(e){return await Y(e)==="gif"}var Jn=new Set(["group","channel"]),qn=new Set(["group","channel"]),rn=30*1024*1024,Re=200*1024*1024,on=2*1024*1024*1024,Qn=3*1024*1024;function q(e,t,n){let r=e.getConversationHandle();if(!(r===void 0||n===void 0||n==="supergroup"))return r.ref.conversationId===t&&r.ref.conversationType===n?r:void 0}function Q(e,t){return e.retainConversationHandle?.(t)??(()=>{})}function J(e,t){try{return e.getSnapshot().messages.find(n=>n.contentType==="video"?n.body.video?.url===t:n.contentType==="image"?n.body.image?.url===t:n.contentType==="sticker"?n.body.sticker?.url===t:n.contentType==="mediaAlbum"?n.body.mediaAlbum?.items.some(r=>r.url===t)===!0:!1)?.id}catch{return}}function we(e){if(e===void 0)return;let t=e.atAll?[{userId:"0",displayName:""}]:[];for(let n of e.atUserIds)t.push({userId:n,displayName:e.atUsersName?.[n]??n});return t.length===0?void 0:t}function Zn(e){if(e===void 0||e==="active")return "";switch(e){case "left":return "groupBlock.left";case "removed":return "groupBlock.removed";case "dismissed":return "groupBlock.dismissed";default:return "groupBlock.unknownRestricted"}}function no(e){return Jn.has(e)}function et(e){return qn.has(e)}function to(e,t=Date.now()){return e?.type==="channel"?en(e,t):e?.type==="group"?Zn(e.groupState):""}function _(e,t,n,r={}){let o=e.getProductClient();if(o===null)return "";let a=n??o.conversations.list().find(i=>i.ref.conversationId===t)?.ref.conversationType;if(a===void 0||a==="supergroup")return "";let c=o.capabilities.get({conversationType:a,conversationId:t}).value.canSendMessages;return Qe(a,c,r)}async function ro(e,t,n){let r=e.getClient(),o=t.text.trim();if(r===null)return n.setNote(n.t("common.notConnected")),false;if(t.conversationId==="")return n.setNote(n.t("common.selectOrOpenConversation")),false;if(o==="")return false;let a=e.getGeneration();try{let c=t.conversationType;if(c===void 0)return n.setNote(n.t("common.conversationTypeNotReady")),!1;let i=q(n,t.conversationId,c);if(i===void 0)return n.setNote(n.t("common.conversationNotReady")),!1;let l=_(e,t.conversationId,c);if(l!=="")return n.setNote(n.t(l)),!1;let g=Q(n,i);try{let f=await i.messages.sendText(o,{...et(c)?{mentions:we(t.mention)}:{},...t.refMessageId===void 0?{}:{replyToMessageId:t.refMessageId}});return n.refreshActiveMessages(),f.ok?e.getGeneration()===a:(e.getGeneration()===a&&n.setNote(n.t("send.failed",{reason:f.error.code})),!1)}finally{g();}}catch(c){return e.getGeneration()===a&&n.setNote(n.t("send.failed",{reason:c instanceof Error?c.message:String(c)})),false}}async function an(e,t,n){let{kind:r,file:o,conversationId:a,conversationType:c,refMessageId:i}=t,l=n.t(`label.${r}`);if(e.getClient()===null)return n.setNote(n.t("common.notConnected")),false;if(a===""||c===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let f$1=q(n,a,c);if(f$1===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let y=_(e,a,c);if(y!=="")return n.setNote(n.t(y)),false;let u=r==="video"?Re:r==="file"?on:r==="sticker"?Qn:rn;if(o.size>u)return n.pushMediaLimitItem({name:o.name,sizeMb:o.size/1024/1024,label:l,maxMb:Math.round(u/1024/1024)}),n.showWarning?.(n.t("send.mediaTooLarge",{name:o.name,label:l,maxMb:Math.round(u/1024/1024)})),false;let v=e.getGeneration();if(o.size===0)return e.getGeneration()===v&&n.setNote(n.t("send.mediaEmpty",{label:l})),false;if(r==="sticker"&&!await Pe(o))return e.getGeneration()===v&&n.setNote(n.t("send.mediaFormatMismatch",{name:o.name})),false;let C=Q(n,f$1),s;try{if(r==="image"&&!await f(o))return e.getGeneration()===v&&n.setNote(n.t("send.imageFormatUnsupported",{name:o.name})),!1;if(e.getGeneration()!==v)return !1;s=r==="file"?void 0:e.createLocalMediaPreview(o);let d=t.localPreviewMetadata;if(e.getGeneration()!==v)return s!==void 0&&e.discardLocalMediaPreview(s),!1;let m=await(r==="image"?f$1.messages.sendImage(o,{...s===void 0?{}:{localPreviewUrl:s},...d===void 0?{}:{localPreviewMetadata:d},...i===void 0?{}:{replyToMessageId:i}}):r==="video"?f$1.messages.sendVideo(o,{...s===void 0?{}:{localPreviewUrl:s},...d===void 0?{}:{localPreviewMetadata:d},...i===void 0?{}:{replyToMessageId:i}}):r==="sticker"?f$1.messages.sendGif(o,{...s===void 0?{}:{localPreviewUrl:s},...i===void 0?{}:{replyToMessageId:i}}):f$1.messages.sendFile(o,{fileName:o.name,...i===void 0?{}:{replyToMessageId:i}}));if(n.refreshActiveMessages(),!m.ok){if(e.getGeneration()===v&&(m.error.code==="IM_SDK_VIDEO_DURATION_TOO_LONG"?n.showWarning?.(n.t("send.videoTooLong",{name:o.name,maxMinutes:5})):m.error.code==="IM_SDK_VIDEO_DURATION_UNAVAILABLE"?n.showWarning?.(n.t("send.videoDurationUnavailable",{name:o.name})):n.setNote(m.error.code==="IM_SDK_MEDIA_CANCELLED"?n.t("send.mediaCancelled",{label:l}):n.t("send.mediaFailed",{label:l,reason:m.error.code}))),s!==void 0){let h=J(f$1,s);h===void 0?e.discardLocalMediaPreview(s):e.trackLocalMediaPreview({conversationId:a,conversationType:c,messageId:h},s);}return !1}return e.getGeneration()===v}catch(d){if(e.getGeneration()===v&&n.setNote(n.t("send.mediaFailed",{label:l,reason:d instanceof Error?d.message:String(d)})),s!==void 0){let m=J(f$1,s);m===void 0?e.discardLocalMediaPreview(s):e.trackLocalMediaPreview({conversationId:a,conversationType:c,messageId:m},s);}return false}finally{C();}}async function oo(e,t,n){let{kind:r,file:o,messageId:a,conversationId:c,conversationType:i}=t,l=n.t(`label.${r}`);if(e.getClient()===null)return n.setNote(n.t("common.notConnected")),false;let g=q(n,c,i);if(g===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let f=_(e,c,i);if(f!=="")return n.setNote(n.t(f)),false;let y=r==="video"?Re:on;if(o.size>y)return n.pushMediaLimitItem({name:o.name,sizeMb:o.size/1024/1024,label:l,maxMb:Math.round(y/1024/1024)}),n.showWarning?.(n.t("send.mediaTooLarge",{name:o.name,label:l,maxMb:Math.round(y/1024/1024)})),false;let u=e.getGeneration();if(o.size===0)return e.getGeneration()===u&&n.setNote(n.t("send.mediaEmpty",{label:l})),false;let v=Q(n,g),C;try{if(C=r==="video"?e.createLocalMediaPreview(o):void 0,e.getGeneration()!==u)return C!==void 0&&e.discardLocalMediaPreview(C),!1;let s=await(r==="video"?g.messages.replaceInterruptedVideo(a,o,{...C===void 0?{}:{localPreviewUrl:C}}):g.messages.replaceInterruptedFile(a,o,{fileName:o.name}));if(n.refreshActiveMessages(),!s.ok){e.getGeneration()===u&&(s.error.code==="IM_SDK_VIDEO_DURATION_TOO_LONG"?n.showWarning?.(n.t("send.videoTooLong",{name:o.name,maxMinutes:5})):s.error.code==="IM_SDK_VIDEO_DURATION_UNAVAILABLE"?n.showWarning?.(n.t("send.videoDurationUnavailable",{name:o.name})):n.setNote(n.t("send.mediaFailed",{label:l,reason:s.error.code})));let d=C!==void 0&&g.getSnapshot().messages.some(m=>m.id===a&&m.contentType==="video"&&m.body.video?.url===C);return C!==void 0&&!d?e.discardLocalMediaPreview(C):C!==void 0&&e.trackLocalMediaPreview({conversationId:c,conversationType:i,messageId:a},C),!1}return e.getGeneration()===u}catch(s){return e.getGeneration()===u&&n.setNote(n.t("send.mediaFailed",{label:l,reason:s instanceof Error?s.message:String(s)})),C!==void 0&&(J(g,C)===a?e.trackLocalMediaPreview({conversationId:c,conversationType:i,messageId:a},C):e.discardLocalMediaPreview(C)),false}finally{v();}}function nt(e){let t=e.getMediaConfig()?.buckets.voice;return t!==void 0&&t!==""}async function ao(e,t,n){let{payload:r,conversationId:o,conversationType:a,refMessageId:c}=t;if(e.getClient()===null)return n.setNote(n.t("common.notConnected")),false;if(o===""||a===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let l=q(n,o,a);if(l===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let g=_(e,o,a);if(g!=="")return n.setNote(n.t(g)),false;if(r.data.length===0)return n.setNote(n.t("send.voiceEmpty")),false;if(!nt(e))return n.setNote(n.t("send.voiceStorageNotConfigured")),false;let f=e.getGeneration(),y=Q(n,l);try{let u=new File([r.data],r.filename,{type:r.mimeType}),v=await l.messages.sendVoice(u,{durationMs:r.durationMs,waveform:r.waveform,...c===void 0?{}:{replyToMessageId:c}});return n.refreshActiveMessages(),v.ok?e.getGeneration()!==f?!1:(e.putSelfVoiceBytes(v.message.id,r.data),!0):(e.getGeneration()===f&&n.setNote(v.error.code==="IM_SDK_MEDIA_CANCELLED"?n.t("send.voiceCancelled"):n.t("send.voiceFailed",{reason:v.error.code})),!1)}catch(u){return e.getGeneration()===f&&n.setNote(n.t("send.voiceFailed",{reason:u instanceof Error?u.message:String(u)})),false}finally{y();}}var tt=new Set(["IM_SDK_VIDEO_TOO_LARGE","IM_SDK_VIDEO_PREVIEW_METADATA_INVALID","IM_SDK_VIDEO_DURATION_TOO_LONG","IM_SDK_VIDEO_DURATION_UNAVAILABLE"]);async function io(e,t,n){let{caption:r,conversationId:o,conversationType:a,items:c,refMessageId:i}=t;if(e.getClient()===null)return n.setNote(n.t("common.notConnected")),false;if(o===""||a===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let g=q(n,o,a);if(g===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let f$1=_(e,o,a);if(f$1!=="")return n.setNote(n.t(f$1)),false;if(c.length===0)return false;let y=e.getGeneration();for(let s of c){let d=n.t(`label.${s.kind}`),m=s.kind==="video"?Re:rn;if(s.file.size>m)return n.pushMediaLimitItem({name:s.file.name,sizeMb:s.file.size/1024/1024,label:d,maxMb:Math.round(m/1024/1024)}),n.showWarning?.(n.t("send.mediaTooLarge",{name:s.file.name,label:d,maxMb:Math.round(m/1024/1024)})),false;if(s.file.size===0)return n.setNote(n.t("send.mediaEmpty",{label:d})),false}for(let s of c){let d=await Y(s.file);if(s.kind==="image"&&d==="not-gif"&&!await f(s.file))return e.getGeneration()===y&&n.setNote(n.t("send.imageFormatUnsupported",{name:s.file.name})),false;if(d!=="not-gif")return e.getGeneration()!==y||n.showWarning?.(n.t("send.mediaFailed",{label:n.t("label.image"),reason:"IM_SDK_MEDIA_ALBUM_GIF_UNSUPPORTED"})),false}if(e.getGeneration()!==y)return false;let u=Q(n,g),v=c.map(s=>e.createLocalMediaPreview(s.file)),C=s=>{v.forEach((d,m)=>{s===void 0?e.discardLocalMediaPreview(d):e.trackLocalMediaPreview({conversationId:o,conversationType:a,messageId:s,itemIndex:m},d);});};try{if(e.getGeneration()!==y)return C(void 0),!1;let s=await g.messages.sendMediaAlbum(c.map((d,m)=>({kind:d.kind,file:d.file,localPreviewUrl:v[m],...d.localPreviewMetadata===void 0?{}:{localPreviewMetadata:d.localPreviewMetadata}})),{...r===void 0||r.trim()===""?{}:{caption:r},...t.hd===void 0?{}:{hd:t.hd},...i===void 0?{}:{replyToMessageId:i}});if(n.refreshActiveMessages(),!s.ok){if(e.getGeneration()===y){let d=n.t(tt.has(s.error.code)?"label.video":"label.image");n.setNote(s.error.code==="IM_SDK_MEDIA_CANCELLED"?n.t("send.mediaCancelled",{label:d}):n.t("send.mediaFailed",{label:d,reason:s.error.code}));}return C(J(g,v[0])),!1}return e.getGeneration()===y}catch(s){return e.getGeneration()===y&&n.setNote(n.t("send.mediaFailed",{label:n.t("label.image"),reason:s instanceof Error?s.message:String(s)})),C(J(g,v[0])),false}finally{u();}}async function so(e,t,n){let r=t.files.slice(0,9);t.files.length>9&&(n.setMediaBatchLimit({selectedCount:t.files.length,maxCount:9}),n.showWarning?.(n.t("send.mediaCountLimit",{maxCount:9,ignoredCount:t.files.length-9})));let o=e.getGeneration(),a=[];for(let i of r){let l=await tn(i);if(e.getGeneration()!==o)break;if(l==="unsupported-image"){n.setNote(n.t("send.imageFormatUnsupported",{name:i.name})),a.push(Promise.resolve(false));continue}a.push(an(e,{kind:l,file:i,conversationId:t.conversationId,conversationType:t.conversationType,...t.refMessageId===void 0?{}:{refMessageId:t.refMessageId}},n));}let c=await Promise.all(a.map(i=>i.catch(()=>false)));return Object.freeze({selectedCount:t.files.length,processedCount:a.length,acceptedCount:c.filter(Boolean).length,rejectedByLimit:t.files.length>9})}async function co(e,t,n){let r=0,o=await nn(t.files,async a=>{let c=await an(e,{kind:"file",file:a,conversationId:t.conversationId,conversationType:t.conversationType,...t.refMessageId===void 0?{}:{refMessageId:t.refMessageId}},n);return c&&(r+=1),c},{startAll:true,onRejectedByLimit:a=>{n.setMediaBatchLimit({selectedCount:a.selectedCount,maxCount:a.maxCount}),n.showWarning?.(n.t("send.mediaCountLimit",{maxCount:a.maxCount,ignoredCount:a.selectedCount-a.maxCount}));}});return Object.freeze({selectedCount:t.files.length,processedCount:o.processedCount,acceptedCount:r,rejectedByLimit:o.rejectedByLimit})}async function lo(e,t,n){let r=e.getClient(),o=n.getConversationHandle();if(r===null||o===void 0)return n.setNote(n.t("send.cancelFailed")),false;let a=e.getGeneration();try{let c=r.media.getSnapshot().filter(i=>i.direction==="upload"&&i.messageId===t&&i.ref.conversationType===o.ref.conversationType&&i.ref.conversationId===o.ref.conversationId);return c.length!==1?(n.setNote(n.t("send.cancelFailed")),!1):(await r.media.cancel(c[0].id),e.getGeneration()!==a||n.getConversationHandle()!==o?!1:(n.refreshActiveMessages(),!0))}catch{return e.getGeneration()===a&&n.getConversationHandle()===o&&n.setNote(n.t("send.cancelFailed")),false}}async function fo(e,t,n){let r=e.getClient();if(r===null)return false;let o=n.getConversationHandle();if(o===void 0)return n.setNote(n.t("send.retryFailed")),false;let a=e.getGeneration(),c=r.media.getSnapshot().find(l=>l.direction==="upload"&&(l.state==="failed"||l.state==="canceled")&&l.messageId===t&&l.ref.conversationType===o.ref.conversationType&&l.ref.conversationId===o.ref.conversationId);if(c!==void 0)try{return await r.media.retry(c.id),e.getGeneration()!==a?!1:(n.refreshActiveMessages(),!0)}catch{return e.getGeneration()===a&&n.setNote(n.t("send.retryFailed")),false}let i=r.outbox.getSnapshot().find(l=>l.messageId===t);if(i===void 0||i.ref.conversationType!==o.ref.conversationType||i.ref.conversationId!==o.ref.conversationId)return n.setNote(n.t("send.retryFailed")),false;try{return await r.outbox.retry(t),e.getGeneration()!==a?!1:(n.refreshActiveMessages(),!0)}catch{return e.getGeneration()===a&&n.setNote(n.t("send.retryFailed")),false}}var dt={};a(dt,{executeForwardMessages:()=>st,forwardMessages:()=>ct});function rt(e,t){let n=e.getConversationHandle();if(n!==void 0)return t.every(r=>r.conversationType!=="supergroup"&&r.conversationType===n.ref.conversationType&&r.conversationId===n.ref.conversationId)?n:void 0}function ot(e){let t=e?.code;return typeof t=="string"&&t!==""?t:"unknown"}function at(e,t){let n=e;return typeof n?.code=="string"&&typeof n.category=="string"&&typeof n.operation=="string"&&typeof n.retryable=="boolean"?n:Object.freeze({code:"IM_CHAT_KIT_FORWARD_FAILED",category:"state",operation:"message-operations.forward",retryable:false,conversation:Object.freeze({...t.ref}),cause:e})}function it(e,t){return t.every(n=>n.conversationType!=="supergroup"&&n.conversationType===e.ref.conversationType&&n.conversationId===e.ref.conversationId)}async function st(e,t){let n="forward";if(e.getProductClient()===null||e.getConnectionState()!=="authenticated"||t.handle===void 0||!it(t.handle,t.messages))return Object.freeze({ok:false,operation:n,reason:"not-ready"});if(t.messages.length===0||t.targets.length===0)return Object.freeze({ok:false,operation:n,reason:"empty-input"});for(let f of t.targets){let y=_(e,f.conversationId,f.conversationType,{mode:"target"});if(y!=="")return Object.freeze({ok:false,operation:n,reason:"target-blocked",blockReason:y})}let o=t.messages.filter(ra),a=t.messages.length-o.length;if(o.length===0)return Object.freeze({ok:false,operation:n,reason:"all-skipped",skippedCount:a});let c=e.getGeneration(),i;try{i=await t.handle.messages.forward(o.map(f=>f.id),t.targets);}catch(f){return e.getGeneration()!==c?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:at(f,t.handle)})}if(e.getGeneration()!==c)return Object.freeze({ok:false,operation:n,reason:"stale"});let l=i.sent.length,g=a+i.skippedSourceMessageIds.length;return Object.freeze(l===0?{ok:false,operation:n,reason:i.failed.length>0?"sdk-rejected":"all-skipped",...i.failed[0]===void 0?{}:{error:i.failed[0].error},result:i,skippedCount:g}:{ok:true,operation:n,result:i,sentCount:l,skippedCount:g})}async function ct(e,t,n){if(e.getClient()===null)return n.setNote(n.t("common.notConnected")),null;if(t.messages.length===0||t.targets.length===0)return n.setNote(n.t("forward.emptyInput")),null;let o=rt(n,t.messages);if(o===void 0)return n.setNote(n.t("common.conversationNotReady")),null;for(let y of t.targets){let u=_(e,y.conversationId,y.conversationType,{mode:"target"});if(u!=="")return n.setNote(n.t(u)),null}let a=t.messages.filter(ra),c=t.messages.length-a.length;if(a.length===0)return n.setNote(n.t("forward.allSkipped")),null;let i=e.getGeneration(),l;try{l=await o.messages.forward(a.map(y=>y.id),t.targets);}catch(y){return e.getGeneration()===i&&n.getConversationHandle()===o&&n.setNote(n.t("forward.failed",{reason:ot(y)})),null}if(e.getGeneration()!==i||n.getConversationHandle()!==o)return l;let g=l.sent.length,f=c+l.skippedSourceMessageIds.length;if(g===0){let y=l.failed[0];y!==void 0?n.setNote(n.t("forward.failed",{reason:y.error.code})):f>0?n.setNote(n.t("forward.allSkipped")):n.setNote(n.t("forward.failed",{reason:"unknown"}));}else f>0?n.setNote(n.t("forward.partialSkipped",{skipped:f,ok:g})):n.setNote(n.t("forward.done"));return n.refreshActiveMessages?.(),l}var bt={};a(bt,{deleteChannelMessageForEveryone:()=>Mt,editMessage:()=>xt,executeDeleteChannelMessageForEveryone:()=>vt,executeDeleteLocalMessage:()=>pt,executeRecallMessage:()=>gt,executeRetryMessage:()=>yt,recallMessage:()=>Ct});var lt={IM_SDK_MESSAGE_NOT_FOUND:"recall.not-found",IM_SDK_MESSAGE_STATE_MISMATCH:"recall.not-found",IM_SDK_RECALL_NOT_OWN:"recall.not-own",IM_SDK_RECALL_NOT_SENT:"recall.not-sent",IM_SDK_RECALL_EXPIRED:"recall.expired",IM_SDK_RECALL_UNSUPPORTED:"recall.unsupported",IM_SDK_RECALL_TIMEOUT:"recall.timeout",IM_SDK_RECALL_FAILED:"recall.failed",IM_SDK_RECALL_DISCONNECTED:"recall.disconnected"},ft={IM_SDK_MESSAGE_NOT_FOUND:"edit.not-found",IM_SDK_MESSAGE_STATE_MISMATCH:"edit.not-found",IM_SDK_EDIT_NOT_OWN:"edit.not-own",IM_SDK_EDIT_NOT_SENT:"edit.not-sent",IM_SDK_EDIT_RECALLED:"edit.recalled",IM_SDK_EDIT_DELETED:"edit.deleted",IM_SDK_EDIT_EXPIRED:"edit.expired",IM_SDK_EDIT_UNSUPPORTED:"edit.unsupported",IM_SDK_DIRECT_MENTION_UNSUPPORTED:"edit.unsupported",IM_SDK_EDIT_EMPTY:"edit.empty",IM_SDK_EDIT_RESTRICTED:"edit.restricted",IM_SDK_EDIT_CONTENT_UNSUPPORTED:"edit.unsupported-content",IM_SDK_EDIT_KEY_UNAVAILABLE:"edit.no-key",IM_SDK_EDIT_ENCRYPT_FAILED:"edit.encrypt-failed",IM_SDK_EDIT_TIMEOUT:"edit.timeout",IM_SDK_EDIT_FAILED:"edit.failed",IM_SDK_EDIT_DISCONNECTED:"edit.disconnected"},ut={IM_SDK_MESSAGE_NOT_FOUND:"channelDelete.notFound",IM_SDK_CHANNEL_DELETE_UNSUPPORTED:"channelDelete.unsupported",IM_SDK_CHANNEL_DELETE_NOT_SENT:"channelDelete.notSent",IM_SDK_CHANNEL_DELETE_UNAVAILABLE:"channelDelete.unavailable",IM_SDK_CHANNEL_DELETE_FORBIDDEN:"channelDelete.forbidden",IM_SDK_CHANNEL_DELETE_TIMEOUT:"channelDelete.timeout",IM_SDK_CHANNEL_DELETE_FAILED:"channelDelete.failed",IM_SDK_CHANNEL_DELETE_DISCONNECTED:"channelDelete.disconnected"};function Ae(e,t){let n=e.getConversationHandle();if(!(n===void 0||t.conversationType==="supergroup"))return n.ref.conversationType===t.conversationType&&n.ref.conversationId===t.conversationId?n:void 0}function ke(e){return typeof e?.code=="string"?e.code:void 0}function mt(e){return typeof e=="object"&&e!==null&&typeof e.code=="string"&&typeof e.category=="string"&&typeof e.operation=="string"&&typeof e.retryable=="boolean"}function se(e,t,n){return mt(e)?e:Object.freeze({code:"IM_CHAT_KIT_MESSAGE_OPERATION_FAILED",category:"state",operation:`message-operations.${t}`,retryable:false,...n===void 0?{}:{conversation:Object.freeze({...n.ref})},cause:e})}function _e(e,t){return e!==void 0&&t.conversationType!=="supergroup"&&e.ref.conversationType===t.conversationType&&e.ref.conversationId===t.conversationId}async function gt(e,t){let n="recall";if(!_e(t.handle,t.message))return Object.freeze({ok:false,operation:n,reason:"not-ready"});let r=e.getGeneration();try{await t.handle.messages.recall(t.message.id);}catch(o){return e.getGeneration()!==r?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:se(o,n,t.handle)})}return e.getGeneration()===r?Object.freeze({ok:true,operation:n}):Object.freeze({ok:false,operation:n,reason:"stale"})}async function pt(e,t){let n="delete-local";if(!_e(t.handle,t.message)||t.handle.ref.conversationType!=="direct"&&t.handle.ref.conversationType!=="group"||t.message.conversationType!=="direct"&&t.message.conversationType!=="group")return Object.freeze({ok:false,operation:n,reason:"not-ready"});let r=e.getGeneration();try{await t.handle.messages.deleteLocal(t.message.id);}catch(o){return e.getGeneration()!==r?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:se(o,n,t.handle)})}return e.getGeneration()===r?Object.freeze({ok:true,operation:n}):Object.freeze({ok:false,operation:n,reason:"stale"})}async function vt(e,t){let n="delete-for-everyone";if(!_e(t.handle,t.message)||t.handle.ref.conversationType!=="channel"||t.message.conversationType!=="channel")return Object.freeze({ok:false,operation:n,reason:"not-ready"});let r=e.getGeneration();try{await t.handle.messages.deleteForEveryone(t.message.id);}catch(o){return e.getGeneration()!==r?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:se(o,n,t.handle)})}return e.getGeneration()===r?Object.freeze({ok:true,operation:n}):Object.freeze({ok:false,operation:n,reason:"stale"})}async function yt(e,t){let n="retry",r=e.getProductClient(),o=t.handle;if(r===null||o===void 0)return Object.freeze({ok:false,operation:n,reason:"not-ready"});let a=e.getGeneration();try{let c=r.media.getSnapshot().find(i=>i.direction==="upload"&&(i.state==="failed"||i.state==="canceled")&&i.messageId===t.messageId&&i.ref.conversationType===o.ref.conversationType&&i.ref.conversationId===o.ref.conversationId);if(c!==void 0)await r.media.retry(c.id);else {let i=r.outbox.getSnapshot().find(l=>l.messageId===t.messageId);if(i===void 0||i.ref.conversationType!==o.ref.conversationType||i.ref.conversationId!==o.ref.conversationId)return Object.freeze({ok:!1,operation:n,reason:"not-ready"});await r.outbox.retry(t.messageId);}}catch(c){return e.getGeneration()!==a?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:se(c,n,o)})}return e.getGeneration()===a?Object.freeze({ok:true,operation:n}):Object.freeze({ok:false,operation:n,reason:"stale"})}async function Ct(e,t,n){let r=Ae(n,t.message);if(r===void 0){n.setNote(n.t("common.conversationNotReady"));return}let o=e.getGeneration();try{await r.messages.recall(t.message.id);}catch(a){if(e.getGeneration()!==o)return;n.setNote(n.t(lt[ke(a)??""]??"recall.failed"));}}async function Mt(e,t,n){let r=Ae(n,t.message);if(r===void 0||r.ref.conversationType!=="channel"||t.message.conversationType!=="channel"){n.setNote(n.t("common.conversationNotReady"));return}let o=e.getGeneration();try{await r.messages.deleteForEveryone(t.message.id);}catch(a){if(e.getGeneration()!==o)return;n.setNote(n.t(ut[ke(a)??""]??"channelDelete.failed"));}}async function xt(e,t,n){let r=Ae(n,t.message);if(r===void 0)return n.setNote(n.t("common.conversationNotReady")),false;let o=e.getGeneration(),a=we(t.mention);try{await r.messages.editText(t.message.id,t.text,{...a===void 0?{}:{mentions:a}});}catch(c){return e.getGeneration()!==o||n.setNote(n.t(ft[ke(c)??""]??"edit.failed")),false}return e.getGeneration()===o}var At={};a(At,{executePinMessage:()=>ht,executeSyncPinnedMessage:()=>Tt,executeUnpinMessage:()=>St,getPinnedMessage:()=>Rt,peekPinnedMessage:()=>wt,pinMessage:()=>Et,syncPinnedMessage:()=>cn,unpinMessage:()=>Pt});function L(e,t){let n=e.getProductClient();return n===null||e.getConnectionState()!=="authenticated"?(t?.setNote(t.t("common.notConnected")),null):n}function It(e){switch(e){case "permission":return "pinned.forbidden";case "network":return "pinned.network";case "contract":return "pinned.contract";case "unsupported":return "pinned.unsupported";default:return "pinned.failed"}}function sn(e){return typeof e=="object"&&e!==null&&typeof e.category=="string"}function Ne(e,t,n){if(sn(e))return e;let r=typeof e?.kind=="string"?e.kind:void 0,o=r==="forbidden"?"permission":r==="network"?"network":r==="unsupported"?"unsupported":r==="contract"?"contract":"state";return Object.freeze({code:"IM_CHAT_KIT_PINNED_MESSAGE_OPERATION_FAILED",category:o,operation:`message-operations.${t}`,retryable:o==="network",conversation:Object.freeze({...n}),cause:e})}async function ht(e,t){let r=L(e);if(r===null||t.message.conversationId!==t.conversation.conversationId||t.message.conversationType!==t.conversation.conversationType)return Object.freeze({ok:false,operation:"pin",reason:"not-ready"});let o=e.getGeneration();try{let a=t.conversation.conversationType==="group"?await r.groups.pinMessage(t.conversation,t.message.id):await r.channels.pinMessage(t.conversation,t.message.id);return e.getGeneration()===o?Object.freeze({ok:!0,operation:"pin",value:a}):Object.freeze({ok:!1,operation:"pin",reason:"stale"})}catch(a){return e.getGeneration()!==o?Object.freeze({ok:false,operation:"pin",reason:"stale"}):Object.freeze({ok:false,operation:"pin",reason:"sdk-rejected",error:Ne(a,"pin",t.conversation)})}}async function St(e,t){let n="unpin",r=L(e);if(r===null)return Object.freeze({ok:false,operation:n,reason:"not-ready"});let o=e.getGeneration();try{return t.conversationType==="group"?await r.groups.unpinMessage(t):await r.channels.unpinMessage(t),e.getGeneration()===o?Object.freeze({ok:!0,operation:n}):Object.freeze({ok:!1,operation:n,reason:"stale"})}catch(a){return e.getGeneration()!==o?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:Ne(a,n,t)})}}async function Tt(e,t){let n="sync-pin",r=L(e);if(r===null)return Object.freeze({ok:false,operation:n,reason:"not-ready"});let o=e.getGeneration();try{let a=t.conversationType==="group"?await r.groups.getPinnedMessage(t):await r.channels.getPinnedMessage(t);return e.getGeneration()===o?Object.freeze({ok:!0,operation:n,value:a}):Object.freeze({ok:!1,operation:n,reason:"stale"})}catch(a){return e.getGeneration()!==o?Object.freeze({ok:false,operation:n,reason:"stale"}):Object.freeze({ok:false,operation:n,reason:"sdk-rejected",error:Ne(a,n,t)})}}function De(e,t,n,r){if(e.getGeneration()!==t)return;let o=sn(r)?It(r.category):"pinned.failed";n.setNote(n.t(o));}async function Et(e,t,n){let r=L(e,n);if(r===null)return null;let o=e.getGeneration();try{let a=t.conversation.conversationType==="group"?await r.groups.pinMessage(t.conversation,t.message.id):await r.channels.pinMessage(t.conversation,t.message.id);return e.getGeneration()===o?a:null}catch(a){return De(e,o,n,a),null}}async function Pt(e,t,n){let r=L(e,n);if(r===null)return false;let o=e.getGeneration();try{return t.conversationType==="group"?await r.groups.unpinMessage(t):await r.channels.unpinMessage(t),e.getGeneration()===o}catch(a){return De(e,o,n,a),false}}async function Rt(e,t,n){let r=await cn(e,t,n);return r.ok?r.value:null}async function cn(e,t,n){let r=L(e,n);if(r===null)return {ok:false};let o=e.getGeneration();try{let a=t.conversationType==="group"?await r.groups.getPinnedMessage(t):await r.channels.getPinnedMessage(t);return e.getGeneration()===o?{ok:!0,value:a}:{ok:!1}}catch(a){return De(e,o,n,a),{ok:false}}}function wt(e,t){let n=e.getProductClient();return n===null?null:t.conversationType==="group"?n.groups.peekPinnedMessage(t):n.channels.peekPinnedMessage(t)}function Co(e){return e.conversation.conversationType==="channel"&&e.channelProfile?.memberPrivateChatDisabled!==false?"blocked":e.relationship==="friend"?"friend-profile":"friend-contact"}var Vt={};a(Vt,{applyGroupMemberNickname:()=>Lt,applyGroupMemberRename:()=>Gt,applyMemberNames:()=>jt,clearGroupMemberNicknameProjection:()=>Ht,ensureSelfProfile:()=>Bt,prewarmActiveSenders:()=>Ut,prewarmMemberAvatars:()=>Ft,refreshStaleSenders:()=>mn,resolveChannelMembers:()=>Ot,resolveGroupMembers:()=>un,resolveSenderName:()=>Dt});var kt=new WeakMap,_t=new WeakMap,Nt=new WeakMap;function Oe(e,t){let n=e.get(t);return n===void 0&&(n=new Map,e.set(t,n)),n}function ln(e,t){return e===void 0?t===void 0?0:-1:t===void 0?1:e.length!==t.length?e.length>t.length?1:-1:e===t?0:e>t?1:-1}var dn=new WeakMap;function T(e){return (e??"").trim()}function H(e){let t=dn.get(e),n=e.getGeneration();return (t===void 0||t.generation!==n)&&(t={generation:n,groups:new Map},dn.set(e,t)),t}function ce(e,t,n,r={}){let o=H(e).groups.get(t);if(o===void 0||o.size===0)return n;let a={...n};for(let[c,i]of o){let l=n[c];if((i===""?l===void 0:l===i)&&r.reconcile===true){o.delete(c);continue}i===""?delete a[c]:a[c]=i;}return o.size===0&&H(e).groups.delete(t),a}function fn(e,t,n){let r=H(e).groups.get(t);if(r!==void 0){if(n===void 0){H(e).groups.delete(t);return}r.delete(n.trim()),r.size===0&&H(e).groups.delete(t);}}function N(e,t,n,r){e.getDiagnostics().record("warn","chat-kit","profile",t,()=>({...r===void 0?{}:{data:r},error:{message:"\u8D44\u6599\u9884\u70ED\u5931\u8D25",data:n}}));}function Dt(e,t,n){let r=e.getClient(),o=e.getCredentials().userId;if(t===""||t==="system"||t===o||r===null)return Promise.resolve(false);let a=n?.forceRefresh===true,c=Oe(kt,e),i=a?void 0:c.get(t);if(i!==void 0)return i;let l=e.getSenderProfileCache();if(!a&&l[t]!==void 0)return Promise.resolve(true);l[t]===void 0&&e.setSenderProfileCache({...l,[t]:{remark:"",nickname:"",avatar:""}});let g=e.getGeneration(),f=r.contact.getProfile(t,a?{forceRefresh:true}:void 0).then(y=>{if(e.getGeneration()!==g)return false;let u=T(y?.remark),v=T(y?.nickname),C=T(y?.avatar);return (u!==""||v!==""||C!=="")&&e.setSenderProfileCache({...e.getSenderProfileCache(),[t]:{remark:u,nickname:v,avatar:C}}),true}).catch(y=>{if(e.getGeneration()!==g)return false;if(!a){let u={...e.getSenderProfileCache()};delete u[t],e.setSenderProfileCache(u);}return e.getDiagnostics().record("warn","chat-kit","profile","sender-profile-resolve-failed",()=>({data:{userId:t},error:{message:"\u89E3\u6790\u53D1\u9001\u8005\u8D44\u6599\u5931\u8D25",data:y}})),false}).finally(()=>{!a&&c.get(t)===f&&c.delete(t);});return a||c.set(t,f),f}function un(e,t,n){let r=e.getClient();if(t===""||r===null)return Promise.resolve(false);let o=n?.forceRefresh===true,a=Oe(_t,e),c=o?void 0:a.get(t);if(c!==void 0)return c;let i=e.getGroupMemberNames();if(!o&&i[t]!==void 0)return Promise.resolve(true);let l=i[t]!==void 0;l||e.setGroupMemberNames({...i,[t]:{}});let g=e.getGeneration(),f=()=>{if(l||e.getGeneration()!==g)return;let u={...e.getGroupMemberNames()};delete u[t],e.setGroupMemberNames(u);},y=r.group.getMemberNames(t,{forceRefresh:o}).then(u=>e.getGeneration()!==g?false:u===null?(f(),false):(e.setGroupMemberNames({...e.getGroupMemberNames(),[t]:ce(e,t,u,{reconcile:true})}),true)).catch(u=>(f(),e.getGeneration()===g&&N(e,"group-member-name-resolve-failed",u,{groupId:t}),false)).finally(()=>{!o&&a.get(t)===y&&a.delete(t);});return o||a.set(t,y),y}function Ot(e,t,n,r){let o=e.getClient();if(o===null||t===""||r?.isCurrent?.()===false)return Promise.resolve(false);let a=r?.forceRefresh===true,c=e.getChannelMemberProfiles()[t]??{},i=[...new Set(n.map(v=>v.trim()).filter(v=>v!==""&&v!=="system"))].filter(v=>a||c[v]===void 0||c[v].expiresAt<=Date.now());if(i.length===0)return Promise.resolve(true);let l=Oe(Nt,e),g=`${t}:${[...i].sort().join(",")}`,f=a?void 0:l.get(g);if(f!==void 0)return f;let y=e.getGeneration(),u=o.channel.getMembersByIds(t,i,a?{forceRefresh:true}:void 0).then(v=>{if(e.getGeneration()!==y||r?.isCurrent?.()===false)return false;let C=Date.now()+3e5,s={...e.getChannelMemberProfiles()[t]??{}};for(let d of v){let m=s[d.userId];m!==void 0&&ln(d.updateVersion,m.updateVersion)<0||(s[d.userId]={displayName:d.displayName,...d.avatar===void 0?{}:{avatar:d.avatar},role:d.role,...d.updateVersion===void 0?{}:{updateVersion:d.updateVersion},expiresAt:C});}return e.setChannelMemberProfiles({...e.getChannelMemberProfiles(),[t]:s}),true}).catch(v=>(e.getGeneration()===y&&e.getDiagnostics().record("warn","chat-kit","profile","channel-members-resolve-failed",()=>({conversation:{conversationType:"channel",conversationId:t},error:{message:"\u89E3\u6790 CHANNEL \u6210\u5458\u8D44\u6599\u5931\u8D25",data:v}})),false)).finally(()=>{!a&&l.get(g)===u&&l.delete(g);});return a||l.set(g,u),u}function Gt(e,t,n={}){let r=t.body.system;if(t.contentType!=="system"||r?.eventType!=="group_member_renamed")return;let o=new Set((n.preserveUserIds??[]).map(a=>a.trim()).filter(Boolean));for(let a of r.targetUserIds??[]){let c=a.trim();o.has(c)||fn(e,t.conversationId,c);}un(e,t.conversationId,{forceRefresh:true});}function jt(e,t,n){let r={};for(let o of n)o.nickName!==""&&(r[o.userId]=o.nickName);e.setGroupMemberNames({...e.getGroupMemberNames(),[t]:ce(e,t,r)});}function Lt(e,t,n,r){let o=t.trim(),a=n.trim();if(o===""||a==="")return;let c=r.trim(),i=H(e),l=i.groups.get(o)??new Map;l.set(a,c),i.groups.set(o,l);let g=e.getGroupMemberNames()[o];if(g===void 0)return;let f={...g};c===""?delete f[a]:f[a]=c,e.setGroupMemberNames({...e.getGroupMemberNames(),[o]:f});}function Ht(e,t,n={}){let r=t.trim();if(r===""||(fn(e,r),n.clearCachedNames!==true))return;let o=e.getGroupMemberNames();if(o[r]===void 0)return;let a={...o};delete a[r],e.setGroupMemberNames(a);}function Bt(e){let t=e.getClient(),n=e.getCredentials().userId;if(n===""||t===null||e.getSenderProfileCache()[n]!==void 0)return;let r=e.getGeneration();t.contact.getProfile(n).then(o=>{if(o===null||e.getGeneration()!==r)return;let a=T(o.remark),c=T(o.nickname),i=T(o.avatar);(a!==""||c!==""||i!=="")&&e.getSenderProfileCache()[n]===void 0&&e.setSenderProfileCache({...e.getSenderProfileCache(),[n]:{remark:a,nickname:c,avatar:i}});}).catch(o=>{e.getGeneration()===r&&N(e,"self-profile-prefetch-failed",o,{userId:n});});}async function Ft(e,t){let n=e.getClient();if(n===null)return;let r=e.getGeneration(),o=[];for(let a of t){let c=a.userId;e.getSenderProfileCache()[c]===void 0&&o.push((async()=>{let i;try{i=await n.contact.peekProfile(c);}catch(y){e.getGeneration()===r&&N(e,"member-avatar-prefetch-failed",y,{userId:c});return}if(i===null||e.getGeneration()!==r)return;let l=T(i.value.remark),g=T(i.value.nickname),f=T(i.value.avatar);(l!==""||g!==""||f!=="")&&e.getSenderProfileCache()[c]===void 0&&e.setSenderProfileCache({...e.getSenderProfileCache(),[c]:{remark:l,nickname:g,avatar:f}});})());}await Promise.allSettled(o);}async function Ut(e,t,n,r){let o=e.getClient();if(o===null)return;let a=e.getCredentials().userId,c=e.getGeneration(),i=[],l=[],g=false,f=t[0]?.conversationType;f==="group"&&e.getGroupMemberNames()[n]===void 0&&i.push((async()=>{let u;try{u=await o.group.peekMemberNames(n);}catch(v){e.getGeneration()===c&&N(e,"group-member-name-prefetch-failed",v,{groupId:n});return}u===null||e.getGeneration()!==c||(e.getGroupMemberNames()[n]===void 0&&e.setGroupMemberNames({...e.getGroupMemberNames(),[n]:ce(e,n,u.value)}),u.stale&&(g=true));})());let y=[...new Set(t.map(u=>u.senderId).filter(u=>u!==""&&u!=="system"&&u!==a))];f==="channel"&&y.length>0&&i.push((async()=>{let u;try{u=await o.channel.getMembersByIds(n,y);}catch(s){e.getGeneration()===c&&N(e,"channel-member-prefetch-failed",s,{conversation:{conversationType:"channel",conversationId:n}});return}if(e.getGeneration()!==c||r?.isCurrent?.()===false)return;let v=Date.now()+3e5,C={...e.getChannelMemberProfiles()[n]??{}};for(let s of u){let d=C[s.userId];d!==void 0&&ln(s.updateVersion,d.updateVersion)<0||(C[s.userId]={displayName:s.displayName,...s.avatar===void 0?{}:{avatar:s.avatar},role:s.role,...s.updateVersion===void 0?{}:{updateVersion:s.updateVersion},expiresAt:v});}e.setChannelMemberProfiles({...e.getChannelMemberProfiles(),[n]:C});})());for(let u of y)e.getSenderProfileCache()[u]===void 0&&i.push((async()=>{let v;try{v=await o.contact.peekProfile(u);}catch(m){e.getGeneration()===c&&N(e,"sender-profile-prefetch-failed",m,{userId:u});return}if(v===null||e.getGeneration()!==c)return;let C=T(v.value.remark),s=T(v.value.nickname),d=T(v.value.avatar);(C!==""||s!==""||d!=="")&&e.getSenderProfileCache()[u]===void 0&&e.setSenderProfileCache({...e.getSenderProfileCache(),[u]:{remark:C,nickname:s,avatar:d}}),v.stale&&l.push(u);})());await Promise.allSettled(i),e.getGeneration()===c&&mn(e,l,g?n:void 0);}function mn(e,t,n){let r=e.getClient();if(r===null)return;let o=e.getGeneration();n!==void 0&&r.group.getMemberNames(n,{forceRefresh:true}).then(a=>{a!==null&&e.getGeneration()===o&&e.setGroupMemberNames({...e.getGroupMemberNames(),[n]:ce(e,n,a,{reconcile:true})});}).catch(a=>{e.getGeneration()===o&&N(e,"group-member-name-refresh-failed",a,{groupId:n});});for(let a of t)r.contact.getProfile(a,{forceRefresh:true}).then(c=>{if(c===null||e.getGeneration()!==o)return;let i=T(c.remark),l=T(c.nickname),g=T(c.avatar),f=e.getSenderProfileCache()[a];(i!==""||l!==""||g!=="")&&(f===void 0||f.remark!==i||f.nickname!==l||f.avatar!==g)&&e.setSenderProfileCache({...e.getSenderProfileCache(),[a]:{remark:i,nickname:l,avatar:g}});}).catch(c=>{e.getGeneration()===o&&N(e,"sender-profile-refresh-failed",c,{userId:a});});}async function xo(e,t){let n=O(e),r=t.keyword.trim();return G(n,()=>{switch(t.conversation.conversationType){case "direct":return n.inDirect({conversationType:"direct",conversationId:t.conversation.conversationId},r);case "group":return n.inGroup({conversationType:"group",conversationId:t.conversation.conversationId},r);case "channel":return n.inChannel({conversationType:"channel",conversationId:t.conversation.conversationId},r)}})}async function bo(e,t){let n=O(e),r=t.keyword.trim();return G(n,()=>n.texts(t.conversation,r))}function Io(e,t){let n=O(e),r=t.keyword?.trim();return G(n,()=>n.files(t.conversation,r===void 0||r===""?void 0:r))}function ho(e,t){let n=O(e);return G(n,()=>n.images(t.conversation))}function So(e,t){let n=O(e);return G(n,()=>n.videos(t.conversation))}function To(e,t){let n=O(e);return G(n,()=>n.voices(t.conversation))}function Eo(e,t){let n=O(e);return G(n,()=>n.next(t))}function O(e){let t=e.getClient();if(t===null)throw new Error("IM client is not available");return t.search.messages}async function G(e,t){let n=await t();for(let r=0;r<5;r+=1){if(n.items.length>0||n.exhausted||r===4)return {results:n.items,...n.nextPageToken===void 0?{}:{nextPageToken:n.nextPageToken},exhausted:n.exhausted};if(n.nextPageToken===void 0)throw new Error("IM search page is missing nextPageToken");n=await e.next(n.nextPageToken);}throw new Error("Unreachable search pagination state")}export{so as $,Kn as A,bo as Aa,Or as B,Io as Ba,Gr as C,ho as Ca,Te as D,So as Da,Ee as E,To as Ea,Qe as F,Eo as Fa,Fr as G,Ur as H,Vr as I,Ze as J,en as K,D as L,Yn as M,nn as N,tn as O,Y as P,Pe as Q,Zn as R,no as S,et as T,to as U,ro as V,an as W,oo as X,nt as Y,ao as Z,io as _,vn as a,co as aa,yn as b,lo as ba,Cn as c,fo as ca,Mn as d,st as da,ie as e,dt as ea,En as f,gt as fa,Ie as g,pt as ga,Rn as h,vt as ha,$e as i,yt as ia,kn as j,bt as ja,Nn as k,ht as ka,Dn as l,St as la,On as m,Tt as ma,qt as n,wt as na,Qt as o,At as oa,Ln as p,Co as pa,Zt as q,Dt as qa,rr as r,un as ra,Rr as s,Ot as sa,Vn as t,Gt as ta,zn as u,jt as ua,Ar as v,Lt as va,qe as w,Ht as wa,_r as x,Bt as xa,Nr as y,Vt as ya,Dr as z,xo as za};
@@ -1,2 +1,2 @@
1
- import {p}from'./chunk-H7AM5DTT.js';import {e,a as a$1}from'./chunk-YUPKU2L7.js';import {j as j$1,h}from'./chunk-BIFDS3MH.js';import {ha}from'./chunk-O7GQQMEW.js';import {a}from'./chunk-WOT6VMZA.js';function E(e){return e===""||e.startsWith("/")||e.startsWith("?")||e.startsWith("&")?false:e.includes(".")}function X(e){return e===""?"":/^https?:\/\//i.test(e)?e:`https://${e}`}function y(e){let t=e.domain?.trim()??"",n=e.suffixAddress?.trim()??"",i=e.h5Url?.trim()??"";if(t!==""){if(n==="")return t;if(n.startsWith("/"))return t.replace(/\/$/,"")+n;let r=n.replace(/^&/,""),o=t.includes("?")?"&":n.includes("?")?"":"?";return t+o+r}return /^https?:\/\//i.test(n)?n:E(n)?`https://${n}`:i}function x(e){let t=e.domain?.trim()??"",n=e.suffixAddress?.trim()??"",i=e.h5Url?.trim()??"";return /^https?:\/\//i.test(n)?n:E(n)?`https://${n}`:t!==""?X(y({domain:t,suffixAddress:n,h5Url:i})):/^https?:\/\//i.test(i)?i:E(i)?`https://${i}`:""}function Z(e,t){return {id:e.appId??t,name:t,cover:"",...e.appId===void 0?{}:{appId:e.appId},...e.developerId===void 0?{}:{developerId:e.developerId},...e.domain===void 0?{}:{domain:e.domain},...e.suffixAddress===void 0?{}:{suffixAddress:e.suffixAddress},...e.h5Url===void 0?{}:{h5Url:e.h5Url},...e.isDynamic===void 0?{}:{isDynamic:e.isDynamic},...e.productId===void 0?{}:{productId:e.productId}}}function ee(e,t){if(e.configType==="float-link"){let r=x({domain:e.domain,suffixAddress:e.suffixAddress,h5Url:e.h5Url});return r===""?{kind:"refuse"}:{kind:"open-link",url:r}}if(e.configType!=="pinned-game"&&e.configType!=="float-game")return {kind:"refuse"};let n=e.appId?.trim()??"",i=y({domain:e.domain,suffixAddress:e.suffixAddress,h5Url:e.h5Url});return n===""||i===""?{kind:"refuse"}:{kind:"open-game",game:Z(e,t.name),currencyType:t.currentCurrencyType??""}}var N={"zh-CN":1,"zh-TW":2,"en-US":3,"vi-VN":4,"th-TH":5};function O(e,t){let n=String(t).trim();return n===""||n==="0"?false:(e??"").split(",").map(i=>i.trim()).filter(i=>i!=="").includes(n)}function G(e){return e in N?e:"en-US"}function V(e,t){let i={"zh-CN":e.nameZhHans,"zh-TW":e.nameZhHant,"en-US":e.nameEn,"vi-VN":e.nameVi,"th-TH":e.nameTh}[G(t)]?.trim()??"";return i!==""?i:[e.nameEn,e.nameZhHans,e.nameZhHant,e.nameVi,e.nameTh].map(r=>r?.trim()??"").find(r=>r!=="")??""}function ne(e){return e.icon?.trim()||e.iconSmall?.trim()||e.iconMedium?.trim()||e.iconLarge?.trim()||""}function B(e){return y({domain:e.domain,suffixAddress:e.suffixAddress,h5Url:e.h5Url})}function H(e){return (e.appId?.trim()??"")!==""}function te(e){return e.configType==="float-game"?H(e)&&B(e)!=="":e.configType==="float-link"?x({domain:e.domain,suffixAddress:e.suffixAddress,h5Url:e.h5Url})!=="":false}function re(e){return e.configType==="float-game"?"half":"page"}function ie(e){let t=V(e.rel,e.locale);return {title:e.channelDescription?.trim()??"",tag:t,name:t}}function j(e){return [...e].sort((t,n)=>t.configType===n.configType?0:t.configType==="float-game"?1:n.configType==="float-game"?-1:0)}function oe(e,t){if(e===void 0)return {pinnedGame:null,floatingItems:[]};let n=N[G(t.locale)],i=e.filter(r=>r.configType!=="unknown"&&O(r.langTypes,n)&&O(r.currencyTypes,t.currencyType??""));return {pinnedGame:i.find(r=>r.configType==="pinned-game"&&H(r))??null,floatingItems:j(i.filter(r=>(r.configType==="float-link"||r.configType==="float-game")&&te(r)))}}function ae(e,t){return [e,t.configType,t.appId??"",t.suffixAddress??t.h5Url??""].join("|")}var W=p();function se(e$1,t){let n=t.suppressDraft===true?null:e$1.draft,i=n?.text.trim()??"",r,o="",s="";return n!==null?r=i===""?[]:de(e$1,i,t.locale):me(e$1)?r=I(ue(e$1,t)):e$1.lastMessageSummary?.kind==="channel-moderation-deleted"||e$1.lastMessageDeletedForEveryone!==void 0?r=I(C(e$1,e$1.lastMessageSummary?.kind==="channel-moderation-deleted"?e$1.lastMessageSummary:{kind:"channel-moderation-deleted",by:e$1.lastMessageDeletedForEveryone?.by??""},t)):e$1.lastMessageSummary?.kind==="recalled"||e$1.lastMessageRecalled!==void 0?r=I(C(e$1,e$1.lastMessageSummary?.kind==="recalled"?e$1.lastMessageSummary:{kind:"recalled",by:e$1.lastMessageRecalled?.by??""},t)):(o=fe(e$1,t),s=e$1.mentionUnreadCount>0?t.labels.mentionBadge:"",r=ce(e$1,t)),{preview:`${s}${o}${r.map(l=>l.text).join("")}`||(n===null?t.labels.emptyPreview:""),previewSegments:r,...le(e$1,n!==null),senderPrefix:o,mentionBadge:s,time:e(a$1(n?.updatedAt,e$1.timestamp),{locale:t.locale,...t.now===void 0?{}:{now:t.now}}),hasDraft:n!==null}}function I(e){return [{kind:"text",text:e}]}function le(e,t){let n=e.lastMessageSummary;if(t||e.lastMessageDeletedForEveryone!==void 0||e.lastMessageRecalled!==void 0||e.lastMessageSystemEvent!==void 0||n===void 0)return {};if(n.kind==="mediaAlbum"){let{imageCount:i,videoCount:r,caption:o,firstItemKind:s}=n;return i<=0&&r<=0?{}:o!==void 0&&o!==""&&s!==void 0?{previewMediaKind:s}:i>0&&r>0?{previewMediaKind:"mediaAlbum"}:{previewMediaKind:r>0?"video":"image"}}return n.kind==="image"||n.kind==="video"||n.kind==="gif"||n.kind==="sticker"?{previewMediaKind:n.kind}:{}}function $(e){return e.map(t=>t.kind==="emoji"?{kind:"emoji",text:t.text,code:t.code}:{kind:t.kind,text:t.text})}function de(e,t,n){let i=e.draft?.mentions??[],r=[],o={},s=false;for(let l of i){if(l.userId==="0"){s=true;continue}r.includes(l.userId)||r.push(l.userId),l.displayName.trim()!==""&&(o[l.userId]=l.displayName);}let a=s||r.length>0?{atAll:s,atUserIds:r,...Object.keys(o).length===0?{}:{atUsersName:o}}:void 0;return $(ha(t,{mention:a,resolveName:l=>o[l]??l,atAllDisplay:j$1(n),matchers:[W]}))}function ce(e,t){let n=e.lastMessageSummary;if(n!==void 0&&n.kind!=="text")return I(C(e,n,t));let i=(n?.kind==="text"?n.text:e.lastMessagePreview).trim();if(i==="")return I(t.labels.emptyPreview);let r=e.lastMessageMention?.atUsersName;return $(ha(i,{mention:e.lastMessageMention===void 0?void 0:{...e.lastMessageMention,atUserIds:[...e.lastMessageMention.atUserIds]},resolveName:o=>t.resolveName(e.ref,o,r?.[o]),selfId:t.accountId,atAllDisplay:j$1(t.locale),matchers:[W]}))}function C(e,t,n){return h(pe(t),{locale:n.locale,selfId:n.accountId,resolveName:i=>n.resolveName(e.ref,i)})}function me(e){return e.lastMessageSummary?.kind==="system"||e.lastMessageSenderId==="system"||e.lastMessageSystemEvent!==void 0}function ue(e,t){return e.lastMessageSummary?.kind==="system"?C(e,e.lastMessageSummary,t):e.lastMessageSystemEvent===void 0?e.lastMessagePreview.trim()||t.labels.emptyPreview:C(e,{kind:"system",system:{eventType:e.lastMessageSystemEvent,...e.lastMessageSystemTargetsSelf===true?{targetUserIds:[t.accountId]}:{},...e.lastMessagePreview.trim()===""?{}:{fallbackText:e.lastMessagePreview.trim()}}},t)}function fe(e,t){let n=e.lastMessageSenderId;return e.ref.conversationType!=="group"&&e.ref.conversationType!=="channel"||n===void 0||n===""||n==="system"?"":`${n===t.accountId?t.labels.selfSender:t.resolveName(e.ref,n)}: `}function pe(e){return e.kind!=="system"?e:{kind:"system",system:{eventType:e.system.eventType,...e.system.operatorId===void 0?{}:{operatorId:e.system.operatorId},...e.system.targetUserIds===void 0?{}:{targetUserIds:[...e.system.targetUserIds]},...e.system.fallbackText===void 0?{}:{fallbackText:e.system.fallbackText}}}}var ge=160,he=220;function Me(e){let t=Math.max(0,e.showDelayMs??160),n=Math.max(0,e.minimumVisibleMs??220),i=e.now??Date.now,r=e.setTimer??((c,v)=>setTimeout(c,v)),o=e.clearTimer??(c=>clearTimeout(c)),s="",a=false,l=false,d=0,m,f,p=false;function h(){m!==void 0&&o(m),m=void 0;}function u(){f!==void 0&&o(f),f=void 0;}function M(c){l!==c&&(l=c,d=c?i():0,e.onVisibleChange(c));}function R(c){h(),m=r(()=>{m=void 0,!(p||!a||s!==c)&&M(true);},t);}function Y(){if(h(),!l)return;let c=n-Math.max(0,i()-d);if(c<=0){M(false);return}u(),f=r(()=>{f=void 0,!(p||a)&&M(false);},c);}return {update(c,v){if(p)return;if(s!==v){s=v,a=c,h(),u(),M(false),c&&R(v);return}if(a=c,c){u(),!l&&m===void 0&&R(v);return}Y();},dispose(){p||(p=true,a=false,h(),u(),M(false));}}}var b={placeholder:0,thumbnail:1,local:2,original:3};function ve(e){let t;for(let n of e)n.value!==void 0&&(t===void 0||b[n.quality]>b[t.quality])&&(t=n);return t}function ye(e,t){return b[t]>=b[e]}function xe(e){let t=e.getGeneration();return Object.freeze({isCurrent:()=>e.getGeneration()===t})}function D(e){let t=e.getClient();if(t===null)return null;let n=e.getGeneration();return Object.freeze({client:t,isCurrent:()=>e.getGeneration()===n&&e.getClient()===t})}var Q={};a(Q,{acquireMediaBlob:()=>Pe,detectImageMime:()=>K,detectVideoMime:()=>z,loadCachedImageObjectUrl:()=>Te,loadCachedMediaAlbumItemObjectUrl:()=>Le,loadCachedVideoObjectUrl:()=>Se,loadFileObjectUrl:()=>ke,loadImageObjectUrl:()=>Ae,loadMediaAlbumItemObjectUrl:()=>we,loadVideoObjectUrl:()=>be,loadVoiceBytes:()=>Re,prepareLocalMediaPreview:()=>Ce});function S(e,t){if(e.conversationType!=="supergroup")return {conversation:{conversationType:e.conversationType,conversationId:e.conversationId},messageId:e.id,...t===void 0?{}:{itemIndex:t}}}async function P(e,t,n,i){let r=e.getClient(),o=S(t,i);if(r===null||o===void 0)throw new Error("media download unavailable");let s=n===void 0?void 0:r.media.subscribe(a=>{let l=a.find(d=>d.direction==="download"&&d.messageId===o.messageId&&d.itemIndex===i&&d.ref.conversationType===o.conversation.conversationType&&d.ref.conversationId===o.conversation.conversationId);l!==void 0&&n(l.percent);});try{return await r.media.download(o)}finally{s?.();}}function Ie(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="IM_SDK_MEDIA_DOWNLOAD_CANCELED"}async function Ce(e,t){let n=e.getClient();if(n===null)return null;let i=e.getGeneration(),r=await n.media.prepareLocalPreview(t);return r===null||e.getGeneration()!==i?null:r}function K(e){return e.length>=3&&e[0]===255&&e[1]===216&&e[2]===255?"image/jpeg":e.length>=8&&e[0]===137&&e[1]===80&&e[2]===78&&e[3]===71?"image/png":e.length>=6&&e[0]===71&&e[1]===73&&e[2]===70?"image/gif":e.length>=12&&e[8]===87&&e[9]===69&&e[10]===66&&e[11]===80?"image/webp":null}async function w(e){let t=new Uint8Array(await e.slice(0,12).arrayBuffer()),n=K(t);return n===null?null:URL.createObjectURL(e.type===n?e:e.slice(0,e.size,n))}function z(e){return e.length>=4&&e[0]===26&&e[1]===69&&e[2]===223&&e[3]===163?"video/webm":(e.length>=8&&e[4]===102&&e[5]===116&&e[6]===121&&e[7]===112,"video/mp4")}function Pe(e,t,n){return e.acquireMediaBlob({conversationType:t.conversationType,conversationId:t.conversationId,messageId:t.id,...n===void 0?{}:{itemIndex:n}})}async function Re(e,t,n){let i=e.getClient(),r=t.body.voice;if(i===null||r===void 0)return null;let o=e.getSelfVoiceBytes(t.id);if(o!==void 0)return o;let s=e.getGeneration();try{let a=new Uint8Array(await(await P(e,t)).arrayBuffer());return a.length===0?(e.getGeneration()===s&&n.setNote(n.t("media.voiceLoadEmpty")),null):a}catch(a){return e.getGeneration()===s&&n.setNote(n.t("media.voiceLoadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}async function be(e,t,n,i){let r=e.getClient(),o=t.body.video;if(r===null||o===void 0)return null;let s=e.getGeneration();try{let a=await P(e,t,i);if(a.size===0)return e.getGeneration()===s&&n.setNote(n.t("media.videoOpenEmpty")),null;let l=URL.createObjectURL(a);return e.getGeneration()!==s?(URL.revokeObjectURL(l),null):l}catch(a){return e.getGeneration()===s&&n.setNote(n.t("media.videoLoadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}async function Se(e,t){let n=e.getClient(),i=S(t);if(n===null||i===void 0||t.body.video===void 0)return null;let r=e.getGeneration();try{let o=await n.media.getCached(i);if(o===null||o.size===0||e.getGeneration()!==r)return null;let s=new Uint8Array(await o.slice(0,12).arrayBuffer()),a=o.type||z(s);return e.getGeneration()!==r?null:URL.createObjectURL(o.type===a?o:o.slice(0,o.size,a))}catch{return null}}async function we(e,t,n,i,r){let o=e.getClient(),s=t.body.mediaAlbum?.items[n];if(o===null||s===void 0)return null;let a=s.kind==="video",l=e.getGeneration();try{let d=await P(e,t,r,n);if(a&&d.size===0)return e.getGeneration()===l&&i.setNote(i.t("media.videoOpenEmpty")),null;let m=a?URL.createObjectURL(d):await w(d);return m===null?(e.getGeneration()===l&&i.setNote(i.t("media.imageInvalid",{size:d.size})),null):e.getGeneration()!==l?(URL.revokeObjectURL(m),null):m}catch(d){return e.getGeneration()===l&&!Ie(d)&&i.setNote(i.t(a?"media.videoLoadFailed":"media.imageLoadFailed",{reason:d instanceof Error?d.message:String(d)})),null}}async function Le(e,t,n){let i=e.getClient(),r=t.body.mediaAlbum?.items[n],o=S(t,n);if(i===null||o===void 0||r===void 0||!/^https?:\/\//i.test(r.url))return null;let s=e.getGeneration();try{let a=await i.media.getCached(o);if(a===null||a.size===0||e.getGeneration()!==s)return null;let l=r.kind==="video"?URL.createObjectURL(a):await w(a);return l===null?null:e.getGeneration()!==s?(URL.revokeObjectURL(l),null):l}catch{return null}}async function Ae(e,t,n){let i=e.getClient(),r=t.body.image;if(i===null||r===void 0)return null;let o=e.getGeneration();try{let s=await P(e,t),a=await w(s);return a===null?(e.getGeneration()===o&&n.setNote(n.t("media.imageInvalid",{size:s.size})),null):e.getGeneration()!==o?(URL.revokeObjectURL(a),null):a}catch(s){return e.getGeneration()===o&&n.setNote(n.t("media.imageLoadFailed",{reason:s instanceof Error?s.message:String(s)})),null}}async function Te(e,t){let n=e.getClient(),i=S(t);if(n===null||i===void 0||t.body.image===void 0)return null;let r=e.getGeneration();try{let o=await n.media.getCached(i);if(o===null||o.size===0||e.getGeneration()!==r)return null;let s=await w(o);return s===null?null:e.getGeneration()!==r?(URL.revokeObjectURL(s),null):s}catch{return null}}async function ke(e,t,n,i){let r=e.getClient(),o=t.body.file;if(r===null||o===void 0)return null;let s=e.getGeneration();try{let a=await P(e,t,i);if(a.size===0)return e.getGeneration()===s&&n.setNote(n.t("media.fileDownloadEmpty")),null;let l=URL.createObjectURL(a);return e.getGeneration()!==s?(URL.revokeObjectURL(l),null):l}catch(a){return e.getGeneration()===s&&n.setNote(n.t("media.fileDownloadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}var q={};a(q,{markReadUpTo:()=>Ue});function Ue(e,t,n,i){let r=D(e);if(r===null||t.conversationId===""||n==="")return;let o=r.client.conversations.list().find(a=>a.id===t.conversationId&&a.type===t.conversationType);if(o?.manuallyUnread===true&&o.unreadCount<=0){r.client.conversations.markConversationRead(t).catch(a=>{r.isCurrent()&&e.getDiagnostics().record("warn","chat-kit","conversation","clear-manual-unread-skipped",()=>({conversation:t,error:{message:"\u6E05\u9664\u624B\u5DE5\u672A\u8BFB\u63D0\u9192\u5931\u8D25",data:a}}));});return}if(o?.type==="group"&&o.unreadCount<=0)return;let s=i.getConversationHandle();s===void 0||s.ref.conversationId!==t.conversationId||s.ref.conversationType!==t.conversationType||s.markRead(n).catch(a=>{r.isCurrent()&&i.getConversationHandle()===s&&e.getDiagnostics().record("warn","chat-kit","message","mark-read-skipped",()=>({conversation:t,data:{messageId:n},error:{message:"markRead \u8DF3\u8FC7",data:a}}));});}function Ee(e){return e.deletedForEveryone!==void 0?"hidden":e.recalled!==void 0?"recalled":"content"}function Oe(e,t){if(t.length===0)return [{text:e,hit:false}];let n=[],i=0;for(let[r,o]of t)r>i&&n.push({text:e.slice(i,r),hit:false}),n.push({text:e.slice(r,o),hit:true}),i=o;return i<e.length&&n.push({text:e.slice(i),hit:false}),n}var Ne=/\b(?:https?:\/\/|www\.)[^\s<>"')】]+/gi,De=/\b(?:https?:\/\/|www\.)/i,Fe=/[),.!?;:,。!?;:、)】]+$/u;function J(e){let t=/^www\./i.test(e)?`https://${e}`:e;try{let n=new URL(t);return n.protocol==="http:"||n.protocol==="https:"?n.href:void 0}catch{return}}function _e(e){return De.test(e)}function Ge(){return e=>{let t=[];for(let n of e.matchAll(Ne)){if(n.index===void 0)continue;let i=n[0].replace(Fe,"");if(i==="")continue;let r=J(i);r!==void 0&&t.push({start:n.index,end:n.index+i.length-1,segment:{kind:"link",text:i,href:r}});}return t}}function g(e,t){if(!Number.isFinite(e)||e<=0)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${t} \u5FC5\u987B\u662F\u5927\u4E8E 0 \u7684\u6709\u9650\u6570`)}function Ve(e){if(g(e.fallbackAspectRatio,"fallbackAspectRatio"),!Array.isArray(e.rules)||e.rules.length===0)throw new Error("\u5A92\u4F53\u5C55\u793A\u7B56\u7565 rules \u4E0D\u80FD\u4E3A\u7A7A");let t=new Set;e.rules.forEach((n,i)=>{let r=`rules[${i}]`;if(n.id.trim()==="")throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.id \u4E0D\u80FD\u4E3A\u7A7A`);if(t.has(n.id))throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565\u89C4\u5219 id \u91CD\u590D\uFF1A${n.id}`);if(t.add(n.id),n.minAspectRatio!==void 0&&(!Number.isFinite(n.minAspectRatio)||n.minAspectRatio<0))throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.minAspectRatio \u5FC5\u987B\u662F\u5927\u4E8E\u7B49\u4E8E 0 \u7684\u6709\u9650\u6570`);if(n.maxAspectRatio!==void 0&&g(n.maxAspectRatio,`${r}.maxAspectRatio`),n.minAspectRatio!==void 0&&n.maxAspectRatio!==void 0&&n.minAspectRatio>=n.maxAspectRatio)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r} \u7684\u5BBD\u9AD8\u6BD4\u4E0B\u754C\u5FC5\u987B\u5C0F\u4E8E\u4E0A\u754C`);if(g(n.preferredWidth,`${r}.preferredWidth`),g(n.minWidth,`${r}.minWidth`),g(n.maxWidth,`${r}.maxWidth`),g(n.minHeight,`${r}.minHeight`),g(n.maxHeight,`${r}.maxHeight`),n.minWidth>n.preferredWidth||n.preferredWidth>n.maxWidth)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.preferredWidth \u5FC5\u987B\u4F4D\u4E8E minWidth \u548C maxWidth \u4E4B\u95F4`);if(n.minHeight>n.maxHeight)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.minHeight \u4E0D\u80FD\u5927\u4E8E maxHeight`);if(typeof n.allowUpscale!="boolean")throw new TypeError(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.allowUpscale \u5FC5\u987B\u662F boolean`);if(n.fit!=="cover"&&n.fit!=="contain")throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.fit \u53EA\u652F\u6301 cover \u6216 contain`)});}function Be(e){let{intrinsicWidth:t,intrinsicHeight:n,availableWidth:i,policy:r}=e;g(i,"availableWidth"),Ve(r);let o=Number.isFinite(t)&&Number.isFinite(n)&&t>0&&n>0,s=o?t/n:r.fallbackAspectRatio,a=r.rules.find(u=>{let M=u.minAspectRatio===void 0||s>=u.minAspectRatio,R=u.maxAspectRatio===void 0||s<u.maxAspectRatio;return M&&R});if(a===void 0)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565\u6CA1\u6709\u5339\u914D\u5BBD\u9AD8\u6BD4 ${s}`);let l=!a.allowUpscale&&o?Math.min(a.preferredWidth,t):a.preferredWidth,d=Math.min(i,a.maxWidth,Math.max(a.minWidth,l)),m=Math.max(1,Math.round(d)),f=m/s,p=Math.min(a.maxHeight,Math.max(a.minHeight,f)),h=Math.max(1,Math.round(p));return {width:m,height:h,aspectRatio:m/h,sourceAspectRatio:s,ruleId:a.id,fit:a.fit,aspectClamped:p!==f}}function He(e,t,n,i){if(!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0)return null;let r=Math.min(n/e,i/t,1);return {width:`${Math.max(1,Math.round(e*r))}px`,aspectRatio:`${e} / ${t}`}}function je(e){if(!Number.isFinite(e)||e<=0)return "0:00";let t=Math.floor(e),n=Math.floor(t/3600),i=Math.floor(t%3600/60),r=t%60,o=s=>s.toString().padStart(2,"0");return n>0?`${n}:${o(i)}:${o(r)}`:`${i}:${o(r)}`}function We(e){if(!Number.isFinite(e)||e<=0)return "0 B";let t=["B","KB","MB","GB","TB"],n=Math.min(t.length-1,Math.floor(Math.log(e)/Math.log(1024))),i=e/1024**n;return `${n===0?i:Math.round(i*10)/10} ${t[n]}`}function $e(e){let t=e.lastIndexOf(".");return t>-1&&t<e.length-1?e.slice(t+1).toLowerCase():""}var Ke=4;function ze(e){let t=Math.min(Math.max(e/1e3,0)/10,1);return Math.round(22+24*t)}function Qe(e,t){if(e.length===0)return Array.from({length:t},()=>0);let n=[],i=(e.length-1)/Math.max(1,t-1);for(let r=0;r<t;r+=1){let o=r*i,s=Math.round(o),a=e[Math.max(0,s-1)]??0,l=e[Math.min(e.length-1,s)]??0,d=e[Math.min(e.length-1,s+1)]??0;n.push((a+l+d)/3);}return n}function qe(e,t){let n=2166136261;for(let r=0;r<e.length;r+=1)n^=e.charCodeAt(r),n=Math.imul(n,16777619);let i=[];for(let r=0;r<t;r+=1)n=Math.imul(n^n>>>15,2246822519)>>>0,i.push(90+n%111);return i}
1
+ import {p}from'./chunk-AFLOPH2O.js';import {e,a as a$1}from'./chunk-BZFBUHDE.js';import {j as j$1,h}from'./chunk-R6BJQWPW.js';import {ha}from'./chunk-XICYFDN4.js';import {a}from'./chunk-WOT6VMZA.js';function E(e){return e===""||e.startsWith("/")||e.startsWith("?")||e.startsWith("&")?false:e.includes(".")}function X(e){return e===""?"":/^https?:\/\//i.test(e)?e:`https://${e}`}function y(e){let t=e.domain?.trim()??"",n=e.suffixAddress?.trim()??"",i=e.h5Url?.trim()??"";if(t!==""){if(n==="")return t;if(n.startsWith("/"))return t.replace(/\/$/,"")+n;let r=n.replace(/^&/,""),o=t.includes("?")?"&":n.includes("?")?"":"?";return t+o+r}return /^https?:\/\//i.test(n)?n:E(n)?`https://${n}`:i}function x(e){let t=e.domain?.trim()??"",n=e.suffixAddress?.trim()??"",i=e.h5Url?.trim()??"";return /^https?:\/\//i.test(n)?n:E(n)?`https://${n}`:t!==""?X(y({domain:t,suffixAddress:n,h5Url:i})):/^https?:\/\//i.test(i)?i:E(i)?`https://${i}`:""}function Z(e,t){return {id:e.appId??t,name:t,cover:"",...e.appId===void 0?{}:{appId:e.appId},...e.developerId===void 0?{}:{developerId:e.developerId},...e.domain===void 0?{}:{domain:e.domain},...e.suffixAddress===void 0?{}:{suffixAddress:e.suffixAddress},...e.h5Url===void 0?{}:{h5Url:e.h5Url},...e.isDynamic===void 0?{}:{isDynamic:e.isDynamic},...e.productId===void 0?{}:{productId:e.productId}}}function ee(e,t){if(e.configType==="float-link"){let r=x({domain:e.domain,suffixAddress:e.suffixAddress,h5Url:e.h5Url});return r===""?{kind:"refuse"}:{kind:"open-link",url:r}}if(e.configType!=="pinned-game"&&e.configType!=="float-game")return {kind:"refuse"};let n=e.appId?.trim()??"",i=y({domain:e.domain,suffixAddress:e.suffixAddress,h5Url:e.h5Url});return n===""||i===""?{kind:"refuse"}:{kind:"open-game",game:Z(e,t.name),currencyType:t.currentCurrencyType??""}}var N={"zh-CN":1,"zh-TW":2,"en-US":3,"vi-VN":4,"th-TH":5};function O(e,t){let n=String(t).trim();return n===""||n==="0"?false:(e??"").split(",").map(i=>i.trim()).filter(i=>i!=="").includes(n)}function G(e){return e in N?e:"en-US"}function V(e,t){let i={"zh-CN":e.nameZhHans,"zh-TW":e.nameZhHant,"en-US":e.nameEn,"vi-VN":e.nameVi,"th-TH":e.nameTh}[G(t)]?.trim()??"";return i!==""?i:[e.nameEn,e.nameZhHans,e.nameZhHant,e.nameVi,e.nameTh].map(r=>r?.trim()??"").find(r=>r!=="")??""}function ne(e){return e.icon?.trim()||e.iconSmall?.trim()||e.iconMedium?.trim()||e.iconLarge?.trim()||""}function B(e){return y({domain:e.domain,suffixAddress:e.suffixAddress,h5Url:e.h5Url})}function H(e){return (e.appId?.trim()??"")!==""}function te(e){return e.configType==="float-game"?H(e)&&B(e)!=="":e.configType==="float-link"?x({domain:e.domain,suffixAddress:e.suffixAddress,h5Url:e.h5Url})!=="":false}function re(e){return e.configType==="float-game"?"half":"page"}function ie(e){let t=V(e.rel,e.locale);return {title:e.channelDescription?.trim()??"",tag:t,name:t}}function j(e){return [...e].sort((t,n)=>t.configType===n.configType?0:t.configType==="float-game"?1:n.configType==="float-game"?-1:0)}function oe(e,t){if(e===void 0)return {pinnedGame:null,floatingItems:[]};let n=N[G(t.locale)],i=e.filter(r=>r.configType!=="unknown"&&O(r.langTypes,n)&&O(r.currencyTypes,t.currencyType??""));return {pinnedGame:i.find(r=>r.configType==="pinned-game"&&H(r))??null,floatingItems:j(i.filter(r=>(r.configType==="float-link"||r.configType==="float-game")&&te(r)))}}function ae(e,t){return [e,t.configType,t.appId??"",t.suffixAddress??t.h5Url??""].join("|")}var W=p();function se(e$1,t){let n=t.suppressDraft===true?null:e$1.draft,i=n?.text.trim()??"",r,o="",s="";return n!==null?r=i===""?[]:de(e$1,i,t.locale):me(e$1)?r=I(ue(e$1,t)):e$1.lastMessageSummary?.kind==="channel-moderation-deleted"||e$1.lastMessageDeletedForEveryone!==void 0?r=I(C(e$1,e$1.lastMessageSummary?.kind==="channel-moderation-deleted"?e$1.lastMessageSummary:{kind:"channel-moderation-deleted",by:e$1.lastMessageDeletedForEveryone?.by??""},t)):e$1.lastMessageSummary?.kind==="recalled"||e$1.lastMessageRecalled!==void 0?r=I(C(e$1,e$1.lastMessageSummary?.kind==="recalled"?e$1.lastMessageSummary:{kind:"recalled",by:e$1.lastMessageRecalled?.by??""},t)):(o=fe(e$1,t),s=e$1.mentionUnreadCount>0?t.labels.mentionBadge:"",r=ce(e$1,t)),{preview:`${s}${o}${r.map(l=>l.text).join("")}`||(n===null?t.labels.emptyPreview:""),previewSegments:r,...le(e$1,n!==null),senderPrefix:o,mentionBadge:s,time:e(a$1(n?.updatedAt,e$1.timestamp),{locale:t.locale,...t.now===void 0?{}:{now:t.now}}),hasDraft:n!==null}}function I(e){return [{kind:"text",text:e}]}function le(e,t){let n=e.lastMessageSummary;if(t||e.lastMessageDeletedForEveryone!==void 0||e.lastMessageRecalled!==void 0||e.lastMessageSystemEvent!==void 0||n===void 0)return {};if(n.kind==="mediaAlbum"){let{imageCount:i,videoCount:r,caption:o,firstItemKind:s}=n;return i<=0&&r<=0?{}:o!==void 0&&o!==""&&s!==void 0?{previewMediaKind:s}:i>0&&r>0?{previewMediaKind:"mediaAlbum"}:{previewMediaKind:r>0?"video":"image"}}return n.kind==="image"||n.kind==="video"||n.kind==="gif"||n.kind==="sticker"?{previewMediaKind:n.kind}:{}}function $(e){return e.map(t=>t.kind==="emoji"?{kind:"emoji",text:t.text,code:t.code}:{kind:t.kind,text:t.text})}function de(e,t,n){let i=e.draft?.mentions??[],r=[],o={},s=false;for(let l of i){if(l.userId==="0"){s=true;continue}r.includes(l.userId)||r.push(l.userId),l.displayName.trim()!==""&&(o[l.userId]=l.displayName);}let a=s||r.length>0?{atAll:s,atUserIds:r,...Object.keys(o).length===0?{}:{atUsersName:o}}:void 0;return $(ha(t,{mention:a,resolveName:l=>o[l]??l,atAllDisplay:j$1(n),matchers:[W]}))}function ce(e,t){let n=e.lastMessageSummary;if(n!==void 0&&n.kind!=="text")return I(C(e,n,t));let i=(n?.kind==="text"?n.text:e.lastMessagePreview).trim();if(i==="")return I(t.labels.emptyPreview);let r=e.lastMessageMention?.atUsersName;return $(ha(i,{mention:e.lastMessageMention===void 0?void 0:{...e.lastMessageMention,atUserIds:[...e.lastMessageMention.atUserIds]},resolveName:o=>t.resolveName(e.ref,o,r?.[o]),selfId:t.accountId,atAllDisplay:j$1(t.locale),matchers:[W]}))}function C(e,t,n){return h(pe(t),{locale:n.locale,selfId:n.accountId,resolveName:i=>n.resolveName(e.ref,i)})}function me(e){return e.lastMessageSummary?.kind==="system"||e.lastMessageSenderId==="system"||e.lastMessageSystemEvent!==void 0}function ue(e,t){return e.lastMessageSummary?.kind==="system"?C(e,e.lastMessageSummary,t):e.lastMessageSystemEvent===void 0?e.lastMessagePreview.trim()||t.labels.emptyPreview:C(e,{kind:"system",system:{eventType:e.lastMessageSystemEvent,...e.lastMessageSystemTargetsSelf===true?{targetUserIds:[t.accountId]}:{},...e.lastMessagePreview.trim()===""?{}:{fallbackText:e.lastMessagePreview.trim()}}},t)}function fe(e,t){let n=e.lastMessageSenderId;return e.ref.conversationType!=="group"&&e.ref.conversationType!=="channel"||n===void 0||n===""||n==="system"?"":`${n===t.accountId?t.labels.selfSender:t.resolveName(e.ref,n)}: `}function pe(e){return e.kind!=="system"?e:{kind:"system",system:{eventType:e.system.eventType,...e.system.operatorId===void 0?{}:{operatorId:e.system.operatorId},...e.system.targetUserIds===void 0?{}:{targetUserIds:[...e.system.targetUserIds]},...e.system.fallbackText===void 0?{}:{fallbackText:e.system.fallbackText}}}}var ge=160,he=220;function Me(e){let t=Math.max(0,e.showDelayMs??160),n=Math.max(0,e.minimumVisibleMs??220),i=e.now??Date.now,r=e.setTimer??((c,v)=>setTimeout(c,v)),o=e.clearTimer??(c=>clearTimeout(c)),s="",a=false,l=false,d=0,m,f,p=false;function h(){m!==void 0&&o(m),m=void 0;}function u(){f!==void 0&&o(f),f=void 0;}function M(c){l!==c&&(l=c,d=c?i():0,e.onVisibleChange(c));}function R(c){h(),m=r(()=>{m=void 0,!(p||!a||s!==c)&&M(true);},t);}function Y(){if(h(),!l)return;let c=n-Math.max(0,i()-d);if(c<=0){M(false);return}u(),f=r(()=>{f=void 0,!(p||a)&&M(false);},c);}return {update(c,v){if(p)return;if(s!==v){s=v,a=c,h(),u(),M(false),c&&R(v);return}if(a=c,c){u(),!l&&m===void 0&&R(v);return}Y();},dispose(){p||(p=true,a=false,h(),u(),M(false));}}}var b={placeholder:0,thumbnail:1,local:2,original:3};function ve(e){let t;for(let n of e)n.value!==void 0&&(t===void 0||b[n.quality]>b[t.quality])&&(t=n);return t}function ye(e,t){return b[t]>=b[e]}function xe(e){let t=e.getGeneration();return Object.freeze({isCurrent:()=>e.getGeneration()===t})}function D(e){let t=e.getClient();if(t===null)return null;let n=e.getGeneration();return Object.freeze({client:t,isCurrent:()=>e.getGeneration()===n&&e.getClient()===t})}var Q={};a(Q,{acquireMediaBlob:()=>Pe,detectImageMime:()=>K,detectVideoMime:()=>z,loadCachedImageObjectUrl:()=>Te,loadCachedMediaAlbumItemObjectUrl:()=>Le,loadCachedVideoObjectUrl:()=>Se,loadFileObjectUrl:()=>ke,loadImageObjectUrl:()=>Ae,loadMediaAlbumItemObjectUrl:()=>we,loadVideoObjectUrl:()=>be,loadVoiceBytes:()=>Re,prepareLocalMediaPreview:()=>Ce});function S(e,t){if(e.conversationType!=="supergroup")return {conversation:{conversationType:e.conversationType,conversationId:e.conversationId},messageId:e.id,...t===void 0?{}:{itemIndex:t}}}async function P(e,t,n,i){let r=e.getClient(),o=S(t,i);if(r===null||o===void 0)throw new Error("media download unavailable");let s=n===void 0?void 0:r.media.subscribe(a=>{let l=a.find(d=>d.direction==="download"&&d.messageId===o.messageId&&d.itemIndex===i&&d.ref.conversationType===o.conversation.conversationType&&d.ref.conversationId===o.conversation.conversationId);l!==void 0&&n(l.percent);});try{return await r.media.download(o)}finally{s?.();}}function Ie(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="IM_SDK_MEDIA_DOWNLOAD_CANCELED"}async function Ce(e,t){let n=e.getClient();if(n===null)return null;let i=e.getGeneration(),r=await n.media.prepareLocalPreview(t);return r===null||e.getGeneration()!==i?null:r}function K(e){return e.length>=3&&e[0]===255&&e[1]===216&&e[2]===255?"image/jpeg":e.length>=8&&e[0]===137&&e[1]===80&&e[2]===78&&e[3]===71?"image/png":e.length>=6&&e[0]===71&&e[1]===73&&e[2]===70?"image/gif":e.length>=12&&e[8]===87&&e[9]===69&&e[10]===66&&e[11]===80?"image/webp":null}async function w(e){let t=new Uint8Array(await e.slice(0,12).arrayBuffer()),n=K(t);return n===null?null:URL.createObjectURL(e.type===n?e:e.slice(0,e.size,n))}function z(e){return e.length>=4&&e[0]===26&&e[1]===69&&e[2]===223&&e[3]===163?"video/webm":(e.length>=8&&e[4]===102&&e[5]===116&&e[6]===121&&e[7]===112,"video/mp4")}function Pe(e,t,n){return e.acquireMediaBlob({conversationType:t.conversationType,conversationId:t.conversationId,messageId:t.id,...n===void 0?{}:{itemIndex:n}})}async function Re(e,t,n){let i=e.getClient(),r=t.body.voice;if(i===null||r===void 0)return null;let o=e.getSelfVoiceBytes(t.id);if(o!==void 0)return o;let s=e.getGeneration();try{let a=new Uint8Array(await(await P(e,t)).arrayBuffer());return a.length===0?(e.getGeneration()===s&&n.setNote(n.t("media.voiceLoadEmpty")),null):a}catch(a){return e.getGeneration()===s&&n.setNote(n.t("media.voiceLoadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}async function be(e,t,n,i){let r=e.getClient(),o=t.body.video;if(r===null||o===void 0)return null;let s=e.getGeneration();try{let a=await P(e,t,i);if(a.size===0)return e.getGeneration()===s&&n.setNote(n.t("media.videoOpenEmpty")),null;let l=URL.createObjectURL(a);return e.getGeneration()!==s?(URL.revokeObjectURL(l),null):l}catch(a){return e.getGeneration()===s&&n.setNote(n.t("media.videoLoadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}async function Se(e,t){let n=e.getClient(),i=S(t);if(n===null||i===void 0||t.body.video===void 0)return null;let r=e.getGeneration();try{let o=await n.media.getCached(i);if(o===null||o.size===0||e.getGeneration()!==r)return null;let s=new Uint8Array(await o.slice(0,12).arrayBuffer()),a=o.type||z(s);return e.getGeneration()!==r?null:URL.createObjectURL(o.type===a?o:o.slice(0,o.size,a))}catch{return null}}async function we(e,t,n,i,r){let o=e.getClient(),s=t.body.mediaAlbum?.items[n];if(o===null||s===void 0)return null;let a=s.kind==="video",l=e.getGeneration();try{let d=await P(e,t,r,n);if(a&&d.size===0)return e.getGeneration()===l&&i.setNote(i.t("media.videoOpenEmpty")),null;let m=a?URL.createObjectURL(d):await w(d);return m===null?(e.getGeneration()===l&&i.setNote(i.t("media.imageInvalid",{size:d.size})),null):e.getGeneration()!==l?(URL.revokeObjectURL(m),null):m}catch(d){return e.getGeneration()===l&&!Ie(d)&&i.setNote(i.t(a?"media.videoLoadFailed":"media.imageLoadFailed",{reason:d instanceof Error?d.message:String(d)})),null}}async function Le(e,t,n){let i=e.getClient(),r=t.body.mediaAlbum?.items[n],o=S(t,n);if(i===null||o===void 0||r===void 0||!/^https?:\/\//i.test(r.url))return null;let s=e.getGeneration();try{let a=await i.media.getCached(o);if(a===null||a.size===0||e.getGeneration()!==s)return null;let l=r.kind==="video"?URL.createObjectURL(a):await w(a);return l===null?null:e.getGeneration()!==s?(URL.revokeObjectURL(l),null):l}catch{return null}}async function Ae(e,t,n){let i=e.getClient(),r=t.body.image;if(i===null||r===void 0)return null;let o=e.getGeneration();try{let s=await P(e,t),a=await w(s);return a===null?(e.getGeneration()===o&&n.setNote(n.t("media.imageInvalid",{size:s.size})),null):e.getGeneration()!==o?(URL.revokeObjectURL(a),null):a}catch(s){return e.getGeneration()===o&&n.setNote(n.t("media.imageLoadFailed",{reason:s instanceof Error?s.message:String(s)})),null}}async function Te(e,t){let n=e.getClient(),i=S(t);if(n===null||i===void 0||t.body.image===void 0)return null;let r=e.getGeneration();try{let o=await n.media.getCached(i);if(o===null||o.size===0||e.getGeneration()!==r)return null;let s=await w(o);return s===null?null:e.getGeneration()!==r?(URL.revokeObjectURL(s),null):s}catch{return null}}async function ke(e,t,n,i){let r=e.getClient(),o=t.body.file;if(r===null||o===void 0)return null;let s=e.getGeneration();try{let a=await P(e,t,i);if(a.size===0)return e.getGeneration()===s&&n.setNote(n.t("media.fileDownloadEmpty")),null;let l=URL.createObjectURL(a);return e.getGeneration()!==s?(URL.revokeObjectURL(l),null):l}catch(a){return e.getGeneration()===s&&n.setNote(n.t("media.fileDownloadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}var q={};a(q,{markReadUpTo:()=>Ue});function Ue(e,t,n,i){let r=D(e);if(r===null||t.conversationId===""||n==="")return;let o=r.client.conversations.list().find(a=>a.id===t.conversationId&&a.type===t.conversationType);if(o?.manuallyUnread===true&&o.unreadCount<=0){r.client.conversations.markConversationRead(t).catch(a=>{r.isCurrent()&&e.getDiagnostics().record("warn","chat-kit","conversation","clear-manual-unread-skipped",()=>({conversation:t,error:{message:"\u6E05\u9664\u624B\u5DE5\u672A\u8BFB\u63D0\u9192\u5931\u8D25",data:a}}));});return}if(o?.type==="group"&&o.unreadCount<=0)return;let s=i.getConversationHandle();s===void 0||s.ref.conversationId!==t.conversationId||s.ref.conversationType!==t.conversationType||s.markRead(n).catch(a=>{r.isCurrent()&&i.getConversationHandle()===s&&e.getDiagnostics().record("warn","chat-kit","message","mark-read-skipped",()=>({conversation:t,data:{messageId:n},error:{message:"markRead \u8DF3\u8FC7",data:a}}));});}function Ee(e){return e.deletedForEveryone!==void 0?"hidden":e.recalled!==void 0?"recalled":"content"}function Oe(e,t){if(t.length===0)return [{text:e,hit:false}];let n=[],i=0;for(let[r,o]of t)r>i&&n.push({text:e.slice(i,r),hit:false}),n.push({text:e.slice(r,o),hit:true}),i=o;return i<e.length&&n.push({text:e.slice(i),hit:false}),n}var Ne=/\b(?:https?:\/\/|www\.)[^\s<>"')】]+/gi,De=/\b(?:https?:\/\/|www\.)/i,Fe=/[),.!?;:,。!?;:、)】]+$/u;function J(e){let t=/^www\./i.test(e)?`https://${e}`:e;try{let n=new URL(t);return n.protocol==="http:"||n.protocol==="https:"?n.href:void 0}catch{return}}function _e(e){return De.test(e)}function Ge(){return e=>{let t=[];for(let n of e.matchAll(Ne)){if(n.index===void 0)continue;let i=n[0].replace(Fe,"");if(i==="")continue;let r=J(i);r!==void 0&&t.push({start:n.index,end:n.index+i.length-1,segment:{kind:"link",text:i,href:r}});}return t}}function g(e,t){if(!Number.isFinite(e)||e<=0)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${t} \u5FC5\u987B\u662F\u5927\u4E8E 0 \u7684\u6709\u9650\u6570`)}function Ve(e){if(g(e.fallbackAspectRatio,"fallbackAspectRatio"),!Array.isArray(e.rules)||e.rules.length===0)throw new Error("\u5A92\u4F53\u5C55\u793A\u7B56\u7565 rules \u4E0D\u80FD\u4E3A\u7A7A");let t=new Set;e.rules.forEach((n,i)=>{let r=`rules[${i}]`;if(n.id.trim()==="")throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.id \u4E0D\u80FD\u4E3A\u7A7A`);if(t.has(n.id))throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565\u89C4\u5219 id \u91CD\u590D\uFF1A${n.id}`);if(t.add(n.id),n.minAspectRatio!==void 0&&(!Number.isFinite(n.minAspectRatio)||n.minAspectRatio<0))throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.minAspectRatio \u5FC5\u987B\u662F\u5927\u4E8E\u7B49\u4E8E 0 \u7684\u6709\u9650\u6570`);if(n.maxAspectRatio!==void 0&&g(n.maxAspectRatio,`${r}.maxAspectRatio`),n.minAspectRatio!==void 0&&n.maxAspectRatio!==void 0&&n.minAspectRatio>=n.maxAspectRatio)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r} \u7684\u5BBD\u9AD8\u6BD4\u4E0B\u754C\u5FC5\u987B\u5C0F\u4E8E\u4E0A\u754C`);if(g(n.preferredWidth,`${r}.preferredWidth`),g(n.minWidth,`${r}.minWidth`),g(n.maxWidth,`${r}.maxWidth`),g(n.minHeight,`${r}.minHeight`),g(n.maxHeight,`${r}.maxHeight`),n.minWidth>n.preferredWidth||n.preferredWidth>n.maxWidth)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.preferredWidth \u5FC5\u987B\u4F4D\u4E8E minWidth \u548C maxWidth \u4E4B\u95F4`);if(n.minHeight>n.maxHeight)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.minHeight \u4E0D\u80FD\u5927\u4E8E maxHeight`);if(typeof n.allowUpscale!="boolean")throw new TypeError(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.allowUpscale \u5FC5\u987B\u662F boolean`);if(n.fit!=="cover"&&n.fit!=="contain")throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${r}.fit \u53EA\u652F\u6301 cover \u6216 contain`)});}function Be(e){let{intrinsicWidth:t,intrinsicHeight:n,availableWidth:i,policy:r}=e;g(i,"availableWidth"),Ve(r);let o=Number.isFinite(t)&&Number.isFinite(n)&&t>0&&n>0,s=o?t/n:r.fallbackAspectRatio,a=r.rules.find(u=>{let M=u.minAspectRatio===void 0||s>=u.minAspectRatio,R=u.maxAspectRatio===void 0||s<u.maxAspectRatio;return M&&R});if(a===void 0)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565\u6CA1\u6709\u5339\u914D\u5BBD\u9AD8\u6BD4 ${s}`);let l=!a.allowUpscale&&o?Math.min(a.preferredWidth,t):a.preferredWidth,d=Math.min(i,a.maxWidth,Math.max(a.minWidth,l)),m=Math.max(1,Math.round(d)),f=m/s,p=Math.min(a.maxHeight,Math.max(a.minHeight,f)),h=Math.max(1,Math.round(p));return {width:m,height:h,aspectRatio:m/h,sourceAspectRatio:s,ruleId:a.id,fit:a.fit,aspectClamped:p!==f}}function He(e,t,n,i){if(!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0)return null;let r=Math.min(n/e,i/t,1);return {width:`${Math.max(1,Math.round(e*r))}px`,aspectRatio:`${e} / ${t}`}}function je(e){if(!Number.isFinite(e)||e<=0)return "0:00";let t=Math.floor(e),n=Math.floor(t/3600),i=Math.floor(t%3600/60),r=t%60,o=s=>s.toString().padStart(2,"0");return n>0?`${n}:${o(i)}:${o(r)}`:`${i}:${o(r)}`}function We(e){if(!Number.isFinite(e)||e<=0)return "0 B";let t=["B","KB","MB","GB","TB"],n=Math.min(t.length-1,Math.floor(Math.log(e)/Math.log(1024))),i=e/1024**n;return `${n===0?i:Math.round(i*10)/10} ${t[n]}`}function $e(e){let t=e.lastIndexOf(".");return t>-1&&t<e.length-1?e.slice(t+1).toLowerCase():""}var Ke=4;function ze(e){let t=Math.min(Math.max(e/1e3,0)/10,1);return Math.round(22+24*t)}function Qe(e,t){if(e.length===0)return Array.from({length:t},()=>0);let n=[],i=(e.length-1)/Math.max(1,t-1);for(let r=0;r<t;r+=1){let o=r*i,s=Math.round(o),a=e[Math.max(0,s-1)]??0,l=e[Math.min(e.length-1,s)]??0,d=e[Math.min(e.length-1,s+1)]??0;n.push((a+l+d)/3);}return n}function qe(e,t){let n=2166136261;for(let r=0;r<e.length;r+=1)n^=e.charCodeAt(r),n=Math.imul(n,16777619);let i=[];for(let r=0;r<t;r+=1)n=Math.imul(n^n>>>15,2246822519)>>>0,i.push(90+n%111);return i}
2
2
  export{_e as A,Ge as B,Be as C,He as D,je as E,We as F,$e as G,Ke as H,ze as I,Qe as J,qe as K,y as a,x as b,ee as c,N as d,O as e,V as f,ne as g,B as h,re as i,ie as j,j as k,oe as l,ae as m,se as n,ge as o,he as p,Me as q,ve as r,ye as s,xe as t,D as u,Q as v,q as w,Ee as x,Oe as y,J as z};
@@ -0,0 +1 @@
1
+ import {c as c$1}from'./chunk-R6BJQWPW.js';import {s}from'./chunk-XICYFDN4.js';var w=864e5,P=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"];function u(e){return e!=null&&Number.isFinite(e)&&e>0&&!Number.isNaN(new Date(e).getTime())}function v(e,r){if(u(e))return e;if(u(r))return r}function y(e,r){return v(r,e)}function m(e){if(!u(e))return "";let r=new Date(e);return `${r.getFullYear()}-${r.getMonth()+1}-${r.getDate()}`}function h(e,r){return u(e)?u(r)?m(e)!==m(r):true:false}function F(e,r){return T(e,r,"conversation")}function L(e,r){return T(e,r,"separator")}function T(e,r,n){if(!u(e))return "";let t=r.now??new Date;if(Number.isNaN(t.getTime()))return "";let o=new Date(e),a=b(t)-b(o),i=c$1(r.locale);return o.getFullYear()!==t.getFullYear()?A(o):a===0?n==="conversation"?k(o):i.today:a===1?i.yesterday:a>=2&&a<=6?x(o,i):D(o)}function b(e){return Date.UTC(e.getFullYear(),e.getMonth(),e.getDate())/w}function x(e,r){return r.weekdays[P[e.getDay()]]}function k(e){return `${c(e.getHours())}:${c(e.getMinutes())}`}function A(e){return `${e.getFullYear()}/${c(e.getMonth()+1)}/${c(e.getDate())}`}function D(e){return `${c(e.getMonth()+1)}/${c(e.getDate())}`}function c(e){return String(e).padStart(2,"0")}function O(e){if(e.markers.length===0)return null;let r=e.viewportTop+e.overlayTop;if(e.markers[0].top>r+1)return null;let n=0;for(let d=0;d<e.markers.length&&!(e.markers[d].top>r+1);d+=1)n=d;let t=e.markers[n],o=r+e.overlayHeight,a=e.markers.filter(d=>d.top<o+1&&d.top+d.height>r-1).at(-1),i=a===void 0?0:Math.max(0,Math.min(a.top+a.height,o)-Math.max(a.top,r)),s=a===void 0?1:Math.max(1,Math.min(a.height,e.overlayHeight)),l=Math.min(1,i/s);return {key:t.key,label:t.label,inlineOpacity:1-l,...a===void 0?{}:{inlineDateKey:a.key}}}var C={text:"text",image:"image",video:"video",voice:"voice",file:"file",sticker:"sticker",contact:"contact",miniProgram:"miniProgram",robot:"robot",game:"game",transfer:"transfer",redPacket:"redPacket",call:"call",mediaAlbum:"mediaAlbum",system:"system",unknown:"unknown"};function S(e){switch(e.contentType){case "text":return typeof e.body.text=="string";case "image":return e.body.image!==void 0&&typeof e.body.image.url=="string";case "video":return e.body.video!==void 0&&typeof e.body.video.url=="string";case "voice":return e.body.voice!==void 0;case "file":return e.body.file!==void 0;case "sticker":return e.body.sticker!==void 0;case "contact":return e.body.contact!==void 0;case "miniProgram":return e.body.miniProgram!==void 0&&typeof e.body.miniProgram.appId=="string";case "robot":return e.body.robot!==void 0&&Array.isArray(e.body.robot.modules)&&Array.isArray(e.body.robot.commands);case "transfer":return e.body.transfer!==void 0&&typeof e.body.transfer.serialNumber=="string";case "redPacket":{let r=e.body.redPacket;return r!==void 0&&r.packetId.trim()!==""&&(r.packetType===1||r.packetType===2||r.packetType===3||r.packetType===4)}case "call":return e.body.call!==void 0&&(e.body.call.callKind==="audio"||e.body.call.callKind==="video")&&typeof e.body.call.durationMs=="number";case "game":{let r=e.body.game;return r?.gameType==="dice"?Number.isInteger(r.value)&&r.value>=1&&r.value<=6:r?.gameType==="rock-paper-scissors"&&Number.isInteger(r.value)&&r.value>=1&&r.value<=3}case "mediaAlbum":{let r=e.body.mediaAlbum;return r!==void 0&&r.items.length>0&&r.items.every(n=>typeof n.url=="string"&&n.url!=="")}case "system":return e.body.system!==void 0;case "unknown":return e.body.unknown!==void 0}}function I(e){return e.encryption.decryptFailed===true?"decrypt-failed":S(e)?e.contentType==="sticker"?s(e.body.sticker.imageType):C[e.contentType]:"unknown"}function _(e){let r=[...e.leadingItems??[]],n=e.entryUnread.state==="located"?e.entryUnread:null,t,o=null,a=false;for(let i of e.messages){let s=y(i.createdAt,i.serverTime),l=s!==void 0&&h(s,t);s!==void 0&&l&&r.push({kind:"date-separator",key:`date-${m(s)}-${i.id}`,label:e.formatDate(s)}),t=s,!a&&n!==null&&i.id===n.firstMessageId&&(r.push({kind:"entry-unread",key:`entry-unread-${i.id}`,...n.count===void 0?{}:{count:n.count}}),a=true);let d=e.beforeMessageItems?.(i)??[];if(r.push(...d),I(i)==="system"){r.push({kind:"system",key:i.id,message:i}),o=null;continue}r.push({kind:"message",key:`message-${i.id}`,message:i,firstOfRun:l||i.senderId!==o}),o=i.senderId;}return r}function U(e){let r=e.targetTop-e.viewportTop,n=e.currentScrollTop+r-(e.viewportHeight-e.targetHeight)/2,t=Math.max(0,e.scrollHeight-e.viewportHeight);return Math.min(t,Math.max(0,n))}function j(e){return e!==null&&e.clientWidth>0&&e.clientHeight>0}function G(e){return e.locatedAt<=0||e.duration<0||e.now<e.locatedAt?false:e.now-e.locatedAt<=e.duration}function q(e){return !Number.isFinite(e.topThreshold)||e.topThreshold<0?false:e.currentScrollTop<e.previousScrollTop&&e.currentScrollTop<=e.topThreshold}function H(e,r){return e.find(n=>n.bottom>r.top&&n.top<r.bottom)??e[0]}function f(e){return e.anchorTop??e.top}function B(e,r){let n=H(e,r);return n===void 0?void 0:{id:n.id,offset:f(n)-r.top}}function J(e,r,n){if(e===void 0)return;let t=r.find(o=>o.id===e.id);return t!==void 0&&t.bottom>n.top&&t.top<n.bottom?{id:e.id,offset:f(t)-n.top}:B(r,n)??e}function V(e,r,n){if(e===void 0)return;let t=r.find(o=>o.id===e.id);return t===void 0?void 0:f(t)-n.top-e.offset}function Q(e,r,n=3){return !Number.isFinite(n)||n<=0?[]:e.filter(t=>t.bottom>r.top&&t.top<r.bottom).slice(0,Math.floor(n)).map(t=>({id:t.id,offset:f(t)-r.top}))}function X(e,r,n){for(let t of e){let o=V(t,r,n);if(o!==void 0)return o}}function Z(e){return e.sameConversation&&!e.isHistoryWindow&&!e.isLocating&&!e.isLocateProtected&&e.userKeptLatestIntent}function ee(e){return e.isPageVisible&&!e.isHistoryWindow&&!e.isLocating&&!e.isLocateProtected&&(e.isOwnMessage||e.isAtBottom)}function re(e){return e.isLoadingOlder&&e.previousTailId!==void 0&&e.previousTailId!==e.currentTailId&&e.previousMessageIds.includes(e.currentTailId)}function ne(e,r){return e!==void 0&&!r.has(e)}async function te(e,r){let n=0;for(;e()&&!(await r()<=0);)n+=1;return n}function oe(e){return e.hasMoreHistory&&Number.isFinite(e.scrollHeight)&&Number.isFinite(e.clientHeight)&&e.scrollHeight>0&&e.clientHeight>0&&e.scrollHeight<=e.clientHeight}function ie(e){return e.isHistoryWindow&&!e.isPageSettling&&e.isAtBottom&&(e.currentScrollTop>e.previousScrollTop||e.allowStationaryBoundary===true)}function M(e){return !e.isPageVisible||!e.isAtBottom||e.isHistoryWindow}function ae(e){let r=Math.max(0,e.margin);return e.messageTop<e.viewportBottom-r&&e.messageBottom>e.viewportTop+r}function le(e){let r=new Set;function n(s){return s===r.size?false:(e?.(r.size),true)}function t(s){let l=r.size;for(let d of s)d!==""&&r.add(d);return n(l)}function o(s,l){return M(l)&&t(s)}function a(s){let l=r.size;for(let d of s)r.delete(d);return n(l)}function i(){let s=r.size;return r.clear(),n(s)}return {get count(){return r.size},add:t,trackRemote:o,acknowledgeVisible:a,clear:i}}export{M as A,ae as B,le as C,v as a,y as b,m as c,h as d,F as e,L as f,O as g,I as h,_ as i,U as j,j as k,G as l,q as m,H as n,B as o,J as p,V as q,Q as r,X as s,Z as t,ee as u,re as v,ne as w,te as x,oe as y,ie as z};