k2-im 0.1.21 → 0.1.22
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.
- package/dist/browser.js +1 -1
- package/dist/chat-kit-pinia.d.ts +177 -86
- package/dist/chat-kit-pinia.js +1 -1
- package/dist/chat-kit-vue.js +1 -1
- package/dist/chat-kit.d.ts +6 -0
- package/dist/chat-kit.js +1 -1
- package/dist/{chunk-P4HOR4XO.js → chunk-75HBZ5NK.js} +1 -1
- package/dist/chunk-GW6QR4SJ.js +2 -0
- package/dist/{chunk-YAM4YHKF.js → chunk-GZEX4V3P.js} +1 -1
- package/dist/{chunk-2GZMQCIP.js → chunk-NA7DHED6.js} +1 -1
- package/dist/{chunk-5I7S6LWE.js → chunk-OQ5FNJVI.js} +1 -1
- package/dist/{chunk-4X7RCGEV.js → chunk-TP32EJAN.js} +1 -1
- package/dist/chunk-VKNZ76EP.js +2 -0
- package/dist/i18n.js +1 -1
- package/dist/index.d.ts +6 -0
- package/dist/index.js +1 -1
- package/dist/sdk.d.ts +6 -0
- package/dist/sdk.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-A2BLOVZ5.js +0 -2
- package/dist/chunk-DN4H5C7G.js +0 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {qa as qa$1,C,F,f,g,i,S,T,W as W$1,X as X$1,Q as Q$1,R as R$1,G,H as H$1,B,E,k,e,D,I,K as K$1,M,L as L$1,N as N$1,O as O$1,P,ca as ca$1,da as da$1,nb,Ba as Ba$1,Aa as Aa$1,za as za$1,aa as aa$1,ea as ea$1,_,ya as ya$1,U,V as V$1,wa as wa$1,va as va$1,Y as Y$1,Z as Z$1}from'./chunk-A2BLOVZ5.js';import*as q from'node-forge';import {deleteDB,openDB}from'idb';function Jo(e,n=async t=>{let{createBrowserApiProtocolClient:r}=await import('./browser-BKCNJDKR.js');return r(t)}){let t=null;function r(){if(t!==null)return t;let o=n(e);return t=o,o.catch(()=>{t===o&&(t=null);}),o}return async(o,i)=>(await r())(o,i)}var H=class extends Error{code;constructor(n,t,r){super(t??n,r),this.name="MediaTransferError",this.code=n;}};function jo(e){return e instanceof H?e.code:void 0}var Vo=3600*1e3,qo=300*1e3;function ue(...e){for(let n of e){if(typeof n!="string"&&typeof n!="number")continue;let t=String(n).trim();if(t!=="")return t}return ""}function zo(e){let n=Number(e);if(!(!Number.isFinite(n)||n<=0))return n>1e12?n/1e3:n}function Wo(e){let n=e.replace(/\/+$/,"");return n===""?"":/^https?:\/\//i.test(n)?n:`https://${n}`}function Ft(e){if(e===null||typeof e!="object")throw new H("credentials-invalid","S3 \u4E0A\u4F20\u51ED\u8BC1\u683C\u5F0F\u65E0\u6548\uFF1A\u56DE\u5305\u4E0D\u662F\u5BF9\u8C61");let n=e,t=ue(n.access_key_id,n.accessKeyId),r=ue(n.secret_key,n.secretKey,n.secretAccessKey),o=ue(n.session_token,n.sessionToken).replace(/\s+/g,""),i=ue(n.bucket),a=ue(n.region),c=Wo(ue(n.dns_point,n.dnsPoint)),s=[t===""?"access_key_id":"",r===""?"secret_key":"",o===""?"session_token":"",i===""?"bucket":"",a===""?"region":"",c===""?"dns_point":""].filter(y=>y!=="");if(s.length>0)throw new H("credentials-invalid",`S3 \u4E0A\u4F20\u51ED\u8BC1\u683C\u5F0F\u65E0\u6548\uFF1A\u7F3A\u5C11 ${s.join("\u3001")}`);let l=zo(n.expiration??n.expiresAtSeconds),g=ue(n.key_prefix,n.keyPrefix),S=ue(n.identity_id,n.identityId);return {accessKeyId:t,secretAccessKey:r,sessionToken:o,bucket:i,region:a,dnsPoint:c,...l===void 0?{}:{expiresAtSeconds:l},...g===""?{}:{keyPrefix:g},...S===""?{}:{identityId:S}}}function Yo(e,n){if(n-e.fetchedAtMs>=Vo)return false;let{expiresAtSeconds:t}=e.credential;return t===void 0?true:t*1e3-qo>n}function $t(e){let n=new Map,t=new Map;async function r(o,i){let a;try{a=await e({bucket:o,forceRefresh:i});}catch(s){let l=s instanceof Error?s.message:String(s);throw new H("credentials-request-failed",`S3 \u4E0A\u4F20\u51ED\u8BC1\u83B7\u53D6\u5931\u8D25\uFF1Abucket=${o}\uFF1B\u539F\u56E0\uFF1A${l}`,{cause:s})}let c=Ft(a);return n.set(o,{credential:c,fetchedAtMs:Date.now()}),c}return {resolve(o,i){if(e===void 0)return Promise.reject(new H("credentials-provider-missing","media upload: \u5BBF\u4E3B\u672A\u6CE8\u5165 getUploadCredentials\uFF0C\u65E0\u6CD5\u7533\u8BF7 S3 \u4E34\u65F6\u51ED\u8BC1"));let a=i?.forceRefresh===true,c=a?void 0:n.get(o);if(c!==void 0&&Yo(c,Date.now()))return Promise.resolve(c.credential);n.delete(o);let s=t.get(o);if(s!==void 0)return s;let l=r(o,a).finally(()=>{t.get(o)===l&&t.delete(o);});return t.set(o,l),l}}}function Qo(){if(typeof window>"u"||typeof document>"u")return {recordingSupported:false,recordingBlockers:["no-media-devices"],playbackSupported:false};let e=[];window.isSecureContext===false&&e.push("insecure-context"),(typeof navigator>"u"||navigator.mediaDevices?.getUserMedia===void 0)&&e.push("no-media-devices"),typeof MediaRecorder>"u"&&e.push("no-media-recorder");let n=window,t=window.AudioContext!==void 0||n.webkitAudioContext!==void 0,r=window.OfflineAudioContext!==void 0||n.webkitOfflineAudioContext!==void 0;return (!t||!r)&&e.push("audio-context-blocked"),{recordingSupported:e.length===0,recordingBlockers:e,playbackSupported:typeof Audio<"u"}}var N=class extends Error{code;constructor(n,t,r){super(t??n,r),this.name="VoiceError",this.code=n;}};function en(e){return e instanceof N?e.code:void 0}function Jt(e){switch(e instanceof DOMException||e instanceof Error?e.name:""){case "NotAllowedError":case "SecurityError":case "PermissionDeniedError":return new N("permission-denied","\u9EA6\u514B\u98CE\u6743\u9650\u88AB\u62D2\u7EDD",{cause:e});case "NotFoundError":case "DevicesNotFoundError":return new N("device-not-found","\u672A\u627E\u5230\u53EF\u7528\u9EA6\u514B\u98CE",{cause:e});case "NotReadableError":case "TrackStartError":case "AbortError":return new N("device-busy","\u9EA6\u514B\u98CE\u88AB\u5360\u7528\u6216\u542F\u52A8\u5931\u8D25",{cause:e});default:return new N("device-busy",e instanceof Error?e.message:"\u9EA6\u514B\u98CE\u542F\u52A8\u5931\u8D25",{cause:e})}}var ne=16e3,Xo=new URL("./speex-runtime.txt",import.meta.url).href,xn=null,Zo=15e3;async function ei(){document.querySelector('script[data-speex-runtime="true"]')?.remove();let e=new AbortController,n=setTimeout(()=>e.abort(new Error("Speex runtime fetch timeout")),Zo),t;try{t=await fetch(Xo,{signal:e.signal});}finally{clearTimeout(n);}if(!t.ok)throw new Error(`Speex runtime fetch failed: ${t.status}`);let r=await t.text();if(r.trimStart().startsWith("<"))throw new Error("Speex runtime fetch returned HTML instead of script");let o=document.createElement("script");o.dataset.speexRuntime="true",o.text=r,document.head.appendChild(o);}async function En(){let e=typeof window>"u"?void 0:window;return e?.__speexInH5!==void 0?e.__speexInH5:(xn??=(async()=>{if(e===void 0||typeof document>"u")throw new N("codec-unavailable","Speex \u8FD0\u884C\u65F6\u4EC5\u53EF\u5728\u6D4F\u89C8\u5668\u73AF\u5883\u52A0\u8F7D");if(await ei(),e.__speexInH5===void 0&&e.initAudio?.(),e.__speexInH5===void 0)throw new N("codec-unavailable","Speex \u8FD0\u884C\u65F6\u521D\u59CB\u5316\u5931\u8D25");return e.__speexInH5})().catch(n=>{throw xn=null,n instanceof N?n:new N("codec-unavailable","Speex \u8FD0\u884C\u65F6\u52A0\u8F7D\u5931\u8D25",{cause:n})}),xn)}function jt(){En().catch(()=>{});}function le(e,n,t){for(let r=0;r<t.length;r+=1)e.setUint8(n+r,t.charCodeAt(r));}function ni(e,n){let r=new ArrayBuffer(44+e.length*2),o=new DataView(r);le(o,0,"RIFF"),o.setUint32(4,36+e.length*2,true),le(o,8,"WAVE"),le(o,12,"fmt "),o.setUint32(16,16,true),o.setUint16(20,1,true),o.setUint16(22,1,true),o.setUint32(24,n,true),o.setUint32(28,n*2,true),o.setUint16(32,2,true),o.setUint16(34,16,true),le(o,36,"data"),o.setUint32(40,e.length*2,true);let i=44;for(let a=0;a<e.length;a+=1){let c=Math.max(-1,Math.min(1,e[a]??0));o.setInt16(i,c<0?c*32768:c*32767,true),i+=2;}return r}function kn(e){if(e instanceof Int16Array)return e;let n=new Int16Array(e.length);for(let t=0;t<e.length;t+=1){let r=Math.max(-1,Math.min(1,e[t]??0));n[t]=r<0?r*32768:r*32767;}return n}var ti=40,Tn=120,ri=40,Rn=80;function oi(e,n){let t=Math.min(Math.floor(n*ti/1e3),Math.floor(e.length/2));for(let r=0;r<t;r+=1){let o=r/t;e[r]=Math.round((e[r]??0)*o);let i=e.length-1-r;e[i]=Math.round((e[i]??0)*o);}return e}function Dn(e,n){if(e.length===0)return e;let t=Math.min(Math.floor(n*Tn/1e3),Math.max(0,e.length-1)),r=t>0?e.subarray(t):e,o=new Float32Array(r),i=Math.min(Math.floor(n*ri/1e3),Math.floor(o.length/2));for(let a=0;a<i;a+=1){let c=a/i;o[a]=(o[a]??0)*c;let s=o.length-1-a;o[s]=(o[s]??0)*c;}return o}function nn(e,n){let r=new ArrayBuffer(44+e.length*2),o=new DataView(r);return le(o,0,"RIFF"),o.setUint32(4,36+e.length*2,true),le(o,8,"WAVE"),le(o,12,"fmt "),o.setUint32(16,16,true),o.setUint16(20,1,true),o.setUint16(22,1,true),o.setUint32(24,n,true),o.setUint32(28,n*2,true),o.setUint16(32,2,true),o.setUint16(34,16,true),le(o,36,"data"),o.setUint32(40,e.length*2,true),new Int16Array(r,44).set(e),new Uint8Array(r)}function ii(e){let n=new Uint8Array(e.length);for(let t=0;t<e.length;t+=1)n[t]=e.charCodeAt(t)&255;return n}function ai(e){let t="";for(let r=0;r<e.length;r+=32768)t+=String.fromCharCode(...e.subarray(r,Math.min(r+32768,e.length)));return t}async function Vt(e,n){let t=await En(),r=Math.floor(n*Rn/1e3),o=new Float32Array(r+e.length);o.set(e,r);let i=ni(o,n);try{return ii(t.encodeFile(i))}catch(a){throw new N("encode-failed","\u8BED\u97F3\u7F16\u7801\u5931\u8D25",{cause:a})}}async function qt(e){let n=await En();try{let[t,r]=n.decodeFile(ai(e));if(t.length===0)throw new Error("decoded empty pcm");let o=oi(kn(t),r.rate>0?r.rate:ne),i=r.rate>0?r.rate:ne;return {samples:o,sampleRate:i,durationMs:Math.round(o.length/i*1e3)}}catch(t){throw t instanceof N?t:new N("decode-failed","\u8BED\u97F3\u89E3\u7801\u5931\u8D25",{cause:t})}}async function zt(e){let n=await qt(e);return {wavData:nn(n.samples,n.sampleRate),durationMs:n.durationMs}}var si=.5,ci=2;function Wt(e){if(typeof e!="number"||!Number.isFinite(e))throw new N("invalid-playback-rate",`\u64AD\u653E\u901F\u7387\u5FC5\u987B\u662F\u6709\u9650\u6570\u5B57\uFF0C\u6536\u5230 ${String(e)}`);return Math.min(Math.max(e,si),ci)}function di(e={}){let n=e.cacheMax??8,t={activeId:"",isPlaying:false,loadingId:"",progress:0,currentTimeMs:0,errorIds:new Set,playbackRate:e.playbackRate===void 0?1:Wt(e.playbackRate)},r=new Set;function o(){for(let m of r)m(t);}let i=null,a=new Map,c=0,s=false,l=false;function g(m){let I=a.get(m);return I!==void 0&&(a.delete(m),a.set(m,I)),I}function S(m,I){if(s)return URL.revokeObjectURL(I.url),I;let x=a.get(m);if(x!==void 0)return URL.revokeObjectURL(I.url),a.delete(m),a.set(m,x),x;for(a.set(m,I);a.size>n;){let E;for(let k of a.keys())if(k!==t.activeId){E=k;break}if(E===void 0)break;let D=a.get(E);a.delete(E),D!==void 0&&URL.revokeObjectURL(D.url);}return I}function y(m){m.paused||m.pause(),m.removeAttribute("src");try{m.load();}catch{}}function u(m,I){return !s&&m===c&&t.activeId===I}function h(m){m.defaultPlaybackRate=t.playbackRate,m.playbackRate=t.playbackRate;}function v(){if(i!==null)return i;let m=new Audio;return m.preload="auto",h(m),m.addEventListener("timeupdate",()=>{t.activeId!==""&&(t.currentTimeMs=m.currentTime*1e3,t.progress=m.duration>0?Math.min(1,m.currentTime/m.duration):0,o());}),m.addEventListener("ended",()=>{T(),y(m),o();}),m.addEventListener("pause",()=>{t.activeId!==""&&(t.isPlaying=false,o());}),i=m,m}function T(){t.activeId="",t.isPlaying=false,t.progress=0,t.currentTimeMs=0;}function d(){c+=1,l=false,t.loadingId="",T(),i!==null&&y(i),o();}function f(m){t.errorIds=new Set([...t.errorIds,m]);}function C(m){if(!t.errorIds.has(m))return;let I=new Set(t.errorIds);I.delete(m),t.errorIds=I;}async function p(m,I){let x=g(m);if(x!==void 0)return {entry:x};let E;try{E=await I();}catch(D){return {entry:null,error:{code:en(D),cause:D}}}if(E===null)return {entry:null};try{let{wavData:D,durationMs:k}=await zt(E),U={url:URL.createObjectURL(new Blob([D],{type:"audio/wav"})),durationMs:k};return {entry:S(m,U)}}catch(D){return {entry:null,error:{code:en(D),cause:D}}}}async function b(m,I){if(s)return;let x=v();if(C(m),t.activeId===m){if(t.isPlaying){x.pause();return}let k=++c;try{await x.play();}catch{if(!u(k,m))return;f(m),o();return}if(!u(k,m))return;t.isPlaying=true,o(),I.onPlayStart?.();return}if(t.loadingId===m)return;d();let E=++c;t.loadingId=m,o();let D=await p(m,I.load);if(E===c){if(t.loadingId="",D.entry===null){f(m),o(),D.error!==void 0&&I.onDecodeError?.(D.error.code,D.error.cause);return}x.src=D.entry.url,h(x),t.activeId=m,t.progress=0,t.currentTimeMs=0,o();try{await x.play();}catch(k){if(!u(E,m))return;T(),y(x),f(m),o(),I.onDecodeError?.(void 0,k);return}u(E,m)&&(t.isPlaying=true,o(),I.onPlayStart?.());}}function M(m,I){i===null||t.activeId!==m||!Number.isFinite(i.duration)||i.duration<=0||(i.currentTime=Math.min(Math.max(I,0),.999)*i.duration);}function _(m){i===null||t.activeId!==m||t.isPlaying&&(l=true,i.pause());}function P(m){if(i===null||t.activeId!==m||!l)return;l=false;let I=++c;i.play().then(()=>{u(I,m)&&(t.isPlaying=true,o());}).catch(()=>{u(I,m)&&(f(m),o());});}function w(m){let I=Wt(m);I!==t.playbackRate&&(t.playbackRate=I,i!==null&&h(i),o());}function A(){if(!s){s=true,d();for(let m of a.values())URL.revokeObjectURL(m.url);a.clear(),r.clear(),i=null;}}return {getState:()=>t,subscribe:m=>(r.add(m),()=>r.delete(m)),toggle:b,seek:M,beginScrub:_,endScrub:P,setPlaybackRate:w,stop:d,dispose:A}}function ui(e){if(e.length===0)return 0;let n=0;for(let t=0;t<e.length;t+=1){let r=((e[t]??128)-128)/128;n+=r*r;}return Math.min(1,Math.sqrt(n/e.length)*Math.SQRT2)}function li(e,n,t){if(e.length===0||n<=0||t<=0)return 0;let r=n/t,o=0,i=0;for(let a=0;a<e.length;a+=1){let c=a*r,s=.2;c<200?s=.15:c<300?s=.4:c<=3400?s=1:c<=6e3&&(s=.45),o+=(e[a]??0)/255*s,i+=s;}return i>0?o/i:0}function Yt(e){let n=ui(e.timeDomain),t=li(e.frequency,e.sampleRate,e.fftSize),r=n*.55+t*.45;return Math.min(1,r*e.boost)**.72}var tn=class{constructor(n=.45,t=.18){this.attack=n;this.release=t;}attack;release;value=0;next(n){let t=Math.min(1,Math.max(0,n));return t>this.value?this.value+=(t-this.value)*this.attack:this.value+=(t-this.value)*this.release,this.value}};var pi=5e3,Un=15e3,fi=25e3;function rn(e,n,t){return new Promise((r,o)=>{let i=setTimeout(()=>o(new Error(t)),n);e.then(a=>{clearTimeout(i),r(a);},a=>{clearTimeout(i),o(a);});})}function mi(){return {channelCount:1,echoCancellation:true,noiseSuppression:true,autoGainControl:true}}var gi=50,yi=.12,hi=2.6,bi=.06,Ci=256;function wi(){return typeof MediaRecorder>"u"?"":["audio/webm","audio/webm;codecs=opus","audio/mp4","audio/aac","audio/ogg;codecs=opus"].find(n=>MediaRecorder.isTypeSupported(n))??""}async function Pi(e,n,t){let r=window.AudioContext??window.webkitAudioContext,o=window.OfflineAudioContext??window.webkitOfflineAudioContext;if(o===void 0||t==null&&r===void 0)throw new N("audio-context-blocked","AudioContext \u4E0D\u53EF\u7528");let i=t??new r,a=t==null;try{i.state==="suspended"&&await rn(i.resume(),Un,"audioContext.resume timeout").catch(()=>{});let c=await rn(i.decodeAudioData(await e.arrayBuffer()),Un,"decodeAudioData timeout"),s=Math.max(1,Math.ceil(c.duration*n)),l=new o(1,s,n),g=l.createBufferSource();return g.buffer=c,g.connect(l.destination),g.start(0),(await rn(l.startRendering(),Un,"offlineAudioContext.startRendering timeout")).getChannelData(0).slice()}catch(c){throw c instanceof N?c:new N("decode-failed","\u5F55\u97F3\u6BB5\u89E3\u7801\u5931\u8D25",{cause:c})}finally{a&&i.close().catch(()=>{});}}function Qt(e){let n=0;for(let o of e)n+=o.length;let t=new Float32Array(n),r=0;for(let o of e)t.set(o,r),r+=o.length;return t}async function Ii(e={}){if(typeof MediaRecorder>"u")throw new N("no-media-recorder","\u5F53\u524D\u6D4F\u89C8\u5668\u4E0D\u652F\u6301\u5F55\u97F3");let n;if(e.stream!==void 0)n=e.stream;else {if(typeof navigator>"u"||navigator.mediaDevices?.getUserMedia===void 0)throw new N("no-media-devices","\u5F53\u524D\u73AF\u5883\u4E0D\u652F\u6301\u9EA6\u514B\u98CE\u91C7\u96C6");try{n=await navigator.mediaDevices.getUserMedia({audio:mi()});}catch(m){throw Jt(m)}}jt();let t=wi(),r=e.maxDurationMs??6e4,o="recording",i=[],a=0,c=[],s=null,l=null,g=null,S=[],y=0,u=false;function h(){try{let m;try{m=t!==""?new MediaRecorder(n,{mimeType:t}):new MediaRecorder(n);}catch{m=new MediaRecorder(n);}return S=[],m.ondataavailable=I=>{I.data.size>0&&S.push(I.data);},m.start(250),y=Date.now(),m}catch(m){throw m instanceof N?m:new N("device-busy","\u5F55\u97F3\u5668\u542F\u52A8\u5931\u8D25",{cause:m})}}let v=e.amplitude?.intervalMs??gi,T=e.amplitude?.boost??hi,d=e.amplitude?.smoothing??yi,f=e.amplitude?.minVolume??bi;function C(){let m=Math.floor(r/1e3*ne),I=0;for(let E of i)I+=E.length;if(I>m){let E=m,D=[];for(let k of i){if(E<=0)break;k.length<=E?(D.push(k),E-=k.length):(D.push(k.slice(0,E)),E=0);}i.length=0,i.push(...D);}a=Math.min(a,r);let x=Math.max(0,Math.ceil(r/v));c.length>x&&(c.length=x);}async function p(){if(o!=="recording"){e.onMaxDuration?.();return}e.onMaxDuration?.(),o="paused";let m=A().then(()=>C());g=m;try{await m;}catch(I){console.warn("[im-browser] pauseAtMaxDuration settle failed",I);}}let b=setInterval(()=>{!u&&o==="recording"&&P()>=r&&(u=true,p());},250),M=null,_=null;try{let m=window.AudioContext??window.webkitAudioContext;if(m!==void 0){M=new m,M.state==="suspended"&&M.resume().catch(()=>{});let I=M.createMediaStreamSource(n),x=M.createAnalyser();x.fftSize=Ci,x.smoothingTimeConstant=d,I.connect(x);let E=new Uint8Array(x.frequencyBinCount),D=new Uint8Array(x.fftSize),k=new tn;_=setInterval(()=>{if(o!=="recording"||s===null)return;x.getByteFrequencyData(E),x.getByteTimeDomainData(D);let U=Yt({timeDomain:D,frequency:E,sampleRate:M.sampleRate,fftSize:x.fftSize,boost:T}),B=k.next(U),F=B<f?0:B;c.push(Math.round(F*255)),e.onAmplitude?.(F);},v);}}catch(m){console.warn("[im-browser] amplitude analyser setup failed",m);}function P(){let m=o==="recording"&&s!==null?Date.now()-y:0;return a+m}function w(){b!==null&&(clearInterval(b),b=null),_!==null&&(clearInterval(_),_=null),M?.close().catch(()=>{}),M=null;for(let m of n.getTracks())m.stop();}function A(){if(l!==null)return l;let m=s;return m===null?Promise.resolve():(s=null,l=(async()=>{await new Promise(E=>{if(m.state==="inactive"){E();return}let D=setTimeout(()=>{console.warn("[im-browser] recorder onstop timed out, settling with received chunks"),E();},pi);m.onstop=()=>{clearTimeout(D),E();},m.stop();});let I=new Blob(S,{type:m.mimeType||t||"audio/webm"});if(S=[],I.size===0)return;let x=await Pi(I,ne,M);x.length!==0&&(i.push(x),a+=x.length/ne*1e3);})().finally(()=>{l=null;}),l)}try{s=h();}catch(m){throw o="closed",w(),m}return {getState:()=>o,recordedMs:P,async pause(){o==="recording"&&(o="paused",await A(),(u||a>=r)&&C());},async resume(){o!=="paused"||u||(s=h(),o="recording");},async finish(){if(o==="closed")throw new N("empty-recording","\u5F55\u97F3\u4F1A\u8BDD\u5DF2\u7ED3\u675F");o="closed";let m=async()=>{try{g!==null?await g:await A(),C();}finally{w();}let I=Qt(i);if(I.length===0)throw new N("empty-recording","\u5F55\u97F3\u5185\u5BB9\u4E3A\u7A7A");let x=Dn(I,ne);if(x.length===0)throw new N("empty-recording","\u5F55\u97F3\u5185\u5BB9\u4E3A\u7A7A");let E=Math.min(c.length,Math.ceil(Tn/v));return {data:await Vt(x,ne),durationMs:Math.round(x.length/ne*1e3)+Rn,waveform:c.slice(E),filename:`AUDIO_${Date.now()}.ogg`,mimeType:"audio/ogg"}};try{return await rn(m(),fi,"\u5F55\u97F3\u5B9A\u7A3F\u8D85\u65F6")}catch(I){throw w(),I instanceof N?I:new N("encode-failed","\u5F55\u97F3\u5B9A\u7A3F\u5931\u8D25",{cause:I})}},cancel(){o="closed";let m=s;if(s=null,m!==null&&(m.ondataavailable=null,m.onstop=null,m.state!=="inactive"))try{m.stop();}catch{}i.length=0,w();},async previewWav(){g!==null?await g:l!==null&&await l,C();let m=Qt(i),I=Dn(m,ne);if(I.length===0)throw new N("empty-recording","\u6682\u65E0\u53EF\u8BD5\u542C\u7684\u5F55\u97F3\u5185\u5BB9");return {wavData:nn(kn(I),ne),durationMs:Math.round(I.length/ne*1e3)}}}}function Ie(e){let n=new Map;return {shouldRenegotiate(t,r,o){if(r===void 0)return true;if(o!==void 0&&!e(o,r))return false;let i=n.get(t);return i!==void 0&&e(i,r)?false:(n.set(t,r),true)},reset(t){n.delete(t);}}}function Xt(e,n){return e.length===n.length&&e.every((t,r)=>t===n[r])}var te=class extends Error{constructor(n,t){super(n,t),this.name="ChannelKeyError";}};function Zt(e){let n=e.trim(),t=n.replace(/-/g,"+").replace(/_/g,"/");if(t===""||!/^[A-Z0-9+/]*={0,2}$/i.test(t)||t.length%4===1)throw new te("channel secret_key \u4E0D\u662F\u5408\u6CD5 Base64");let r=t.replace(/=+$/,""),o=r+"=".repeat((4-r.length%4)%4),i;try{i=atob(o);}catch(l){throw new te("channel secret_key Base64 \u89E3\u7801\u5931\u8D25",{cause:l})}let a=Uint8Array.from(i,l=>l.charCodeAt(0)&255);if(a.length===0)throw new te("channel secret_key Base64 \u89E3\u7801\u7ED3\u679C\u4E3A\u7A7A");let c=new Uint8Array(16);c.set(a.subarray(0,c.length));let s=n.length===16&&/^[\x20-\x7E]+$/.test(n)?Uint8Array.from(n,l=>l.charCodeAt(0)):void 0;return {canonical:c,...s===void 0?{}:{legacyAscii:s},metadata:{channelKeyCharLength:n.length,decodedByteLength:a.length,padByteCount:Math.max(0,16-a.length),legacyAsciiCandidate:s!==void 0}}}function Si(e){let n=new Map,t=new Map,r=new Map,o=new Map,i=Ie(Xt);function a(p){return {canonical:p.canonical.slice(),...p.legacyAscii===void 0?{}:{legacyAscii:p.legacyAscii.slice()},metadata:{...p.metadata}}}function c(p){return [{strategy:"canonical-base64-pad",key:p.canonical.slice()},...p.legacyAscii===void 0?[]:[{strategy:"legacy-ascii16",key:p.legacyAscii.slice()}]]}function s(p){n.delete(p),t.delete(p),r.delete(p),o.set(p,(o.get(p)??0)+1);}function l(p){let b=o.get(p)??0,M=(async()=>{try{let _=await e.loadSecretKey(p);if(_===null||_.trim()==="")throw new te(`channel secret_key \u7F3A\u5931\uFF08channelId=${p}\uFF09`);let P=Zt(_);return (o.get(p)??0)===b&&n.set(p,a(P)),P}catch(_){let P=_ instanceof te?_:new te(`channel secret_key \u52A0\u8F7D\u5931\u8D25\uFF08channelId=${p}\uFF09`,{cause:_});throw e.onError?.(P.message,_),P}})().finally(()=>{t.get(p)===M&&t.delete(p);});return t.set(p,M),M}function g(p,b){let M=t.get(p);if(M!==void 0)return M;i.shouldRenegotiate(p,b.staleKey,n.get(p)?.canonical)&&s(p);}function S(p,b){let M=p.trim();if(M===""){let P=new te("channel id \u4E0D\u80FD\u4E3A\u7A7A");return e.onError?.(P.message),Promise.reject(P)}if(b!==void 0){let P=g(M,b);if(P!==void 0)return P.then(a)}let _=n.get(M);return _!==void 0?Promise.resolve(a(_)):t.get(M)??l(M)}function y(p,b){let M=p.trim();if(M===""){let A=new te("channel id \u4E0D\u80FD\u4E3A\u7A7A");return e.onError?.(A.message),Promise.reject(A)}if(b!==void 0){let A=g(M,b);if(A!==void 0)return A.then(m=>m.canonical.slice())}let _=n.get(M);if(_!==void 0)return Promise.resolve(_.canonical.slice());let P=r.get(M);if(P!==void 0)return P;let w=(t.get(M)??l(M)).then(A=>A.canonical.slice()).finally(()=>{r.get(M)===w&&r.delete(M);});return r.set(M,w),w}function u(p){return n.get(p.trim())?.canonical.slice()??null}async function h(p,b){let M=await S(p,b);return c(M)}function v(p){let b=n.get(p.trim());return b===void 0?[]:c(b)}function T(p){let b=n.get(p.trim());return b===void 0?null:{...b.metadata}}function d(p,b){let M=p.trim();if(M==="")throw new te("channel id \u4E0D\u80FD\u4E3A\u7A7A");let _=Zt(b);s(M),i.reset(M),n.set(M,a(_));}function f(p){let b=p.trim();b!==""&&(s(b),i.reset(b));}function C(){let p=new Set([...n.keys(),...t.keys(),...r.keys(),...o.keys()]);for(let b of p)o.set(b,(o.get(b)??0)+1),i.reset(b);n.clear(),t.clear(),r.clear();}return {getChannelKey:y,getCachedChannelKey:u,getChannelKeyCandidates:h,getCachedChannelKeyCandidates:v,getCachedChannelKeyMetadata:T,primeChannelKey:d,clearChannelKey:f,clearAll:C}}function nr(e){if(e.length<16)throw new Error(`TEA key \u957F\u5EA6\u4E0D\u8DB3\uFF1A${e.length}\uFF0C\u9700 \u2265 16 \u5B57\u8282`);let n=new DataView(e.buffer,e.byteOffset,16);return [n.getUint32(0,true),n.getUint32(4,true),n.getUint32(8,true),n.getUint32(12,true)]}function Bn([e,n],[t,r,o,i]){let a=e>>>0,c=n>>>0,s=Math.imul(2654435769,16)>>>0;for(let l=0;l<16;l++)c=c-(Math.imul(a,16)+o^a+s^(a>>>5)+i)>>>0,a=a-(Math.imul(c,16)+t^c+s^(c>>>5)+r)>>>0,s=s-2654435769>>>0;return [a,c]}function On([e,n],[t,r,o,i]){let a=e>>>0,c=n>>>0,s=0;for(let l=0;l<16;l++)s=s+2654435769>>>0,a=a+(Math.imul(c,16)+t^c+s^(c>>>5)+r)>>>0,c=c+(Math.imul(a,16)+o^a+s^(a>>>5)+i)>>>0;return [a,c]}function De(e,n,t,r){let o=nr(n),i=new Uint8Array(e.length),a=Math.floor(e.length/8),c=r===void 0?a:Math.min(a,Math.floor(r/8)),s=new DataView(e.buffer,e.byteOffset,e.byteLength),l=new DataView(i.buffer);for(let S=0;S<c;S++){let y=S*8,[u,h]=t([s.getUint32(y,true),s.getUint32(y+4,true)],o);l.setUint32(y,u,true),l.setUint32(y+4,h,true);}let g=c*8;return g<e.length&&i.set(e.subarray(g),g),i}function Ue(e,n){return De(n,e,Bn)}function Be(e,n){return De(n,e,On)}function tr(e,n){return De(n,e,On,32)}function rr(e,n){return De(n,e,Bn,32)}var vi=1024*1024;function Mi(){let n=globalThis.scheduler;return typeof n?.yield=="function"?n.yield():new Promise(t=>{setTimeout(t,0);})}function er(e){if(e?.aborted)throw new DOMException("TEA \u5206\u5757\u5904\u7406\u5DF2\u53D6\u6D88","AbortError")}async function Nn(e,n,t,r=vi,o={}){if(!Number.isInteger(r)||r<=0||r%8!==0)throw new RangeError(`TEA \u5206\u5757\u5927\u5C0F\u5FC5\u987B\u662F 8 \u7684\u6B63\u6574\u6570\u500D\uFF1A${r}`);nr(e);let i=t==="encrypt"?On:Bn,a=o.yieldToMain??Mi,c=n.size,s=[],l=0;for(;l<c;){er(o.signal);let g=Math.min(l+r,c),S=new Uint8Array(await n.slice(l,g).arrayBuffer());er(o.signal),s.push(De(S,e,i)),l=g,o.onProgress?.(l,c),l<c&&await a();}return new Blob(s)}var or=8,on=16;function Ai(e){let n=q.md.md5.create();return n.update(e,"utf8"),n.digest().toHex()}function ar(e){return new TextEncoder().encode(e)}function _i(e){let n=e.length;for(;n>0&&e[n-1]===0;)n-=1;return new TextDecoder().decode(e.subarray(0,n))}function xi(e){let n=atob(e),t=new Uint8Array(n.length);for(let r=0;r<n.length;r++)t[r]=n.charCodeAt(r);return t}function Ei(e){let n="";for(let t of e)n+=String.fromCharCode(t);return btoa(n)}function ki(e){let n=Math.ceil(e.length/or)*or;if(n===e.length)return e;let t=new Uint8Array(n);return t.set(e),t}function sr(e,n=Ai){let t=e.trim();if(t==="")throw new Error("collect TEA key: userId \u4E3A\u7A7A");let r=n(t).replace(/[^0-9a-f]/gi,"");if(r.length<on)throw new Error("collect TEA key: MD5 \u957F\u5EA6\u4E0D\u8DB3");let o=ar(r.slice(0,on).toUpperCase());if(o.length<on)throw new Error("collect TEA key: \u6D3E\u751F\u7ED3\u679C\u4E0D\u8DB3 16 \u5B57\u8282");return o.subarray(0,on)}function cr(e,n,t){return Ei(Be(sr(n,t),ki(ar(e))))}function Ti(e,n,t){return _i(Ue(sr(n,t),xi(e)))}function Ri(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)?e:null}function Kn(e){let n=e.trim();if(n===""||!n.startsWith("{"))return null;try{return Ri(JSON.parse(n))}catch{return null}}function Di(e){let n=e.trim(),t=n.indexOf("}");return t>=0?n.slice(0,t+1):n}function dr(e,n,t){let r=Kn(e);if(r!==null)return r;if(e.trim()===""||n.trim()==="")return null;try{let o=Ti(e,n,t);return Kn(o)??Kn(Di(o))}catch{return null}}var Ui="core";var Oe=class extends Error{code=502;constructor(n,t){super(`core JSON \u4F20\u8F93\u5931\u8D25\uFF1A${n||"unknown transport error"}`,t===void 0?void 0:{cause:t}),this.name="CoreJsonTransportError";}},V=class extends Error{businessCode;operation;constructor(n,t,r){super(`${n}\u5931\u8D25\uFF1Acode=${t}${r?` ${r}`:""}`),this.name="CoreJsonBusinessError",this.businessCode=t,this.operation=n;}};async function R(e,n,t,r){let o=r!==void 0&&"responseMode"in r&&r.responseMode==="strict",i;try{i=await e(n,{target:Ui,data:t,...r?.method===void 0?{}:{method:r.method},...r?.headers===void 0?{}:{headers:r.headers},...r?.prefix===void 0?{}:{prefix:r.prefix}});}catch(a){throw o?new Oe(a instanceof Error?a.message:String(a),a):a}if(o){let a=typeof i.msg=="string"?i.msg:"";if(i.code===502)throw new Oe(a);return i.code!==200?{ok:false,code:i.code,message:a,data:i.data}:{ok:true,code:200,message:a,data:i.data}}return {code:i.code,data:i.code===200&&i.data!=null?i.data:null}}function ur(e,n){let t=n.clientType===void 0?{public_key:n.publicKey}:{public_key:n.publicKey,clientType:n.clientType},r=n.clientType===void 0?void 0:{headers:{"Client-type":String(n.clientType)}};return R(e,"/user/encrypt_info/info",t,r)}function Bi(e){let n=e.trim().replace(/-/g,"+").replace(/_/g,"/"),t=n+"=".repeat((4-n.length%4)%4),r=atob(t),o=new Uint8Array(r.length);for(let i=0;i<r.length;i++)o[i]=r.charCodeAt(i)&255;return o}function Oi(e){let n=e.clientType,t=new Map,r=new Map,o=Ie((y,u)=>y===u),i=null,a=null;function c(y,u){e.onError?.(y,u);}function s(){if(i!==null)return Promise.resolve(i);if(a!==null)return a;let y=Promise.resolve().then(()=>e.crypto.generateTempKeyPair()).then(u=>(i=u,u)).finally(()=>{a===y&&(a=null);});return a=y,y}async function l(y){let u;try{u=await s();}catch(d){return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\uFF1A\u751F\u6210\u4E34\u65F6 RSA \u5BC6\u94A5\u5931\u8D25\uFF08userId=${y}\uFF09`,d),null}let h;try{h=await ur(e.client,{publicKey:u.publicKeyBase64,clientType:n});}catch(d){return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\u8BF7\u6C42\u5F02\u5E38\uFF08userId=${y}\uFF09`,d),null}if(h.data===null)return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\u4E1A\u52A1\u5931\u8D25\uFF08userId=${y}\uFF0Ccode=${h.code}\uFF09`),null;let v=h.data.prv_key??h.data.prvKey??"",T=String(h.data.version??"").trim();if(v==="")return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\u54CD\u5E94\u7F3A\u5C11 prv_key\uFF08userId=${y}\uFF09`),null;try{let d=e.crypto.rsaDecryptPkcs1({data:Bi(v),privateKey:u.privateKey}),f=new TextDecoder().decode(d).trim();if(f==="")return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\uFF1A\u89E3\u51FA\u7684\u79C1\u94A5\u4E3A\u7A7A\uFF08userId=${y}\uFF09`),null;let C={privateKey:f,version:T};return t.set(y,C),C}catch(d){return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\uFF1A\u4E34\u65F6\u79C1\u94A5\u89E3 prv_key \u5931\u8D25\uFF08userId=${y}\uFF09`,d),null}}function g(y,u){let h=y.trim();if(h==="")return Promise.resolve(null);if(u!==void 0){let f=r.get(h);if(f!==void 0)return f;o.shouldRenegotiate(h,u.staleKey,t.get(h)?.privateKey)&&t.delete(h);}let v=t.get(h);if(v!==void 0)return Promise.resolve(v);let T=r.get(h);if(T!==void 0)return T;let d=l(h).finally(()=>{r.get(h)===d&&r.delete(h);});return r.set(h,d),d}function S(y){return t.get(y.trim())??null}return {getUserPrivateKey:g,getCachedPrivateKey:S}}function lr(e,n){let t=n.clientType===void 0?{group_id:n.groupId,public_key:n.publicKey}:{group_id:n.groupId,public_key:n.publicKey,clientType:n.clientType},r=n.clientType===void 0?void 0:{headers:{"Client-type":String(n.clientType)}};return R(e,"/user_group/encrypt_info",t,r)}function Ni(e){let n=e.trim().replace(/-/g,"+").replace(/_/g,"/"),t=n+"=".repeat((4-n.length%4)%4),r=atob(t),o=new Uint8Array(r.length);for(let i=0;i<r.length;i++)o[i]=r.charCodeAt(i)&255;return o}function Ki(e){let n=e.clientType,t=new Map,r=new Map,o=new Map,i=Ie((u,h)=>u===h),a=null,c=null;function s(){if(a!==null)return Promise.resolve(a);if(c!==null)return c;let u=Promise.resolve().then(()=>e.crypto.generateTempKeyPair()).then(h=>(a=h,h)).finally(()=>{c===u&&(c=null);});return c=u,u}async function l(u){let h=o.get(u)??0,v;try{v=await s();}catch(b){return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\uFF1A\u751F\u6210\u4E34\u65F6 RSA \u5BC6\u94A5\u5931\u8D25\uFF08groupId=${u}\uFF09`,b),null}let T;try{T=await lr(e.client,{groupId:u,publicKey:v.publicKeyBase64,clientType:n});}catch(b){return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\u8BF7\u6C42\u5F02\u5E38\uFF08groupId=${u}\uFF09`,b),null}if(T.data===null)return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\u4E1A\u52A1\u5931\u8D25\uFF08groupId=${u}\uFF0Ccode=${T.code}\uFF09`),null;let d=T.data,f=String(d.prv_key??d.prvKey??d.private_key??"").trim(),C=String(d.pub_key??d.pubKey??d.public_key??"").trim(),p=String(d.version??"").trim();if(f==="")return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\u54CD\u5E94\u7F3A\u5C11 prv_key\uFF08groupId=${u}\uFF09`),null;try{let b=e.crypto.rsaDecryptPkcs1({data:Ni(f),privateKey:v.privateKey}),M=new TextDecoder().decode(b).trim();if(M==="")return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\uFF1A\u89E3\u51FA\u7684\u7FA4\u79C1\u94A5\u4E3A\u7A7A\uFF08groupId=${u}\uFF09`),null;let _={privateKey:M,publicKey:C,version:p};return (o.get(u)??0)===h&&t.set(u,_),_}catch(b){return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\uFF1A\u4E34\u65F6\u79C1\u94A5\u89E3 prv_key \u5931\u8D25\uFF08groupId=${u}\uFF09`,b),null}}function g(u,h){let v=u.trim();if(v==="")return Promise.resolve(null);if(h!==void 0){let C=r.get(v);if(C!==void 0)return C;i.shouldRenegotiate(v,h.staleKey,t.get(v)?.privateKey)&&t.delete(v);}let T=t.get(v);if(T!==void 0)return Promise.resolve(T);let d=r.get(v);if(d!==void 0)return d;let f=l(v).finally(()=>{r.get(v)===f&&r.delete(v);});return r.set(v,f),f}function S(u){return t.get(u.trim())??null}function y(u){let h=u.trim();t.delete(h),r.delete(h),o.set(h,(o.get(h)??0)+1),i.reset(h);}return {getGroupKeys:g,getCachedGroupKeys:S,getCachedGroupKeyVersion:u=>t.get(u.trim())?.version??null,clearGroupKeys:y}}async function Ne(e,n){let t=n.clientType===void 0?{other_user_openid:n.userId}:{other_user_openid:n.userId,clientType:n.clientType},r=n.clientType===void 0?void 0:{headers:{"Client-type":String(n.clientType)}};return (await R(e,"/user/info/other",t,r)).data}function Gi(e){let n=e.clientType,t=new Map,r=new Map;async function o(a){try{let s=((await Ne(e.client,{userId:a,clientType:n}))?.public_key??"").trim();return s===""?(e.onError?.(`\u53D6\u5BF9\u7AEF\u516C\u94A5\uFF1A/user/info/other \u65E0 public_key\uFF08userId=${a}\uFF09`),null):(t.set(a,s),s)}catch(c){return e.onError?.(`\u53D6\u5BF9\u7AEF\u516C\u94A5\u8BF7\u6C42\u5F02\u5E38\uFF08userId=${a}\uFF09`,c),null}}function i(a,c){let s=a.trim();if(s==="")return Promise.resolve(null);c?.force===true&&t.delete(s);let l=t.get(s);if(l!==void 0)return Promise.resolve(l);let g=r.get(s);if(g!==void 0)return g;let S=o(s).finally(()=>{r.get(s)===S&&r.delete(s);});return r.set(s,S),S}return {getPeerPublicKey:i}}var me=16;function pr(e){let n="";for(let t of e)n+=String.fromCharCode(t);return n}function fr(e){let n=new Uint8Array(e.length);for(let t=0;t<e.length;t++)n[t]=e.charCodeAt(t)&255;return n}function mr(e){return e.replace(/(.{64})/g,`$1
|
|
1
|
+
import {qa as qa$1,C,F,f,g,i,S,T,W as W$1,X as X$1,Q as Q$1,R as R$1,G,H as H$1,B,E,k,e,D,I,K as K$1,M,L as L$1,N as N$1,O as O$1,P,ca as ca$1,da as da$1,nb,Ba as Ba$1,Aa as Aa$1,za as za$1,aa as aa$1,ea as ea$1,_,ya as ya$1,U,V as V$1,wa as wa$1,va as va$1,Y as Y$1,Z as Z$1}from'./chunk-VKNZ76EP.js';import*as q from'node-forge';import {deleteDB,openDB}from'idb';function Jo(e,n=async t=>{let{createBrowserApiProtocolClient:r}=await import('./browser-BKCNJDKR.js');return r(t)}){let t=null;function r(){if(t!==null)return t;let o=n(e);return t=o,o.catch(()=>{t===o&&(t=null);}),o}return async(o,i)=>(await r())(o,i)}var H=class extends Error{code;constructor(n,t,r){super(t??n,r),this.name="MediaTransferError",this.code=n;}};function jo(e){return e instanceof H?e.code:void 0}var Vo=3600*1e3,qo=300*1e3;function ue(...e){for(let n of e){if(typeof n!="string"&&typeof n!="number")continue;let t=String(n).trim();if(t!=="")return t}return ""}function zo(e){let n=Number(e);if(!(!Number.isFinite(n)||n<=0))return n>1e12?n/1e3:n}function Wo(e){let n=e.replace(/\/+$/,"");return n===""?"":/^https?:\/\//i.test(n)?n:`https://${n}`}function Ft(e){if(e===null||typeof e!="object")throw new H("credentials-invalid","S3 \u4E0A\u4F20\u51ED\u8BC1\u683C\u5F0F\u65E0\u6548\uFF1A\u56DE\u5305\u4E0D\u662F\u5BF9\u8C61");let n=e,t=ue(n.access_key_id,n.accessKeyId),r=ue(n.secret_key,n.secretKey,n.secretAccessKey),o=ue(n.session_token,n.sessionToken).replace(/\s+/g,""),i=ue(n.bucket),a=ue(n.region),c=Wo(ue(n.dns_point,n.dnsPoint)),s=[t===""?"access_key_id":"",r===""?"secret_key":"",o===""?"session_token":"",i===""?"bucket":"",a===""?"region":"",c===""?"dns_point":""].filter(y=>y!=="");if(s.length>0)throw new H("credentials-invalid",`S3 \u4E0A\u4F20\u51ED\u8BC1\u683C\u5F0F\u65E0\u6548\uFF1A\u7F3A\u5C11 ${s.join("\u3001")}`);let l=zo(n.expiration??n.expiresAtSeconds),g=ue(n.key_prefix,n.keyPrefix),S=ue(n.identity_id,n.identityId);return {accessKeyId:t,secretAccessKey:r,sessionToken:o,bucket:i,region:a,dnsPoint:c,...l===void 0?{}:{expiresAtSeconds:l},...g===""?{}:{keyPrefix:g},...S===""?{}:{identityId:S}}}function Yo(e,n){if(n-e.fetchedAtMs>=Vo)return false;let{expiresAtSeconds:t}=e.credential;return t===void 0?true:t*1e3-qo>n}function $t(e){let n=new Map,t=new Map;async function r(o,i){let a;try{a=await e({bucket:o,forceRefresh:i});}catch(s){let l=s instanceof Error?s.message:String(s);throw new H("credentials-request-failed",`S3 \u4E0A\u4F20\u51ED\u8BC1\u83B7\u53D6\u5931\u8D25\uFF1Abucket=${o}\uFF1B\u539F\u56E0\uFF1A${l}`,{cause:s})}let c=Ft(a);return n.set(o,{credential:c,fetchedAtMs:Date.now()}),c}return {resolve(o,i){if(e===void 0)return Promise.reject(new H("credentials-provider-missing","media upload: \u5BBF\u4E3B\u672A\u6CE8\u5165 getUploadCredentials\uFF0C\u65E0\u6CD5\u7533\u8BF7 S3 \u4E34\u65F6\u51ED\u8BC1"));let a=i?.forceRefresh===true,c=a?void 0:n.get(o);if(c!==void 0&&Yo(c,Date.now()))return Promise.resolve(c.credential);n.delete(o);let s=t.get(o);if(s!==void 0)return s;let l=r(o,a).finally(()=>{t.get(o)===l&&t.delete(o);});return t.set(o,l),l}}}function Qo(){if(typeof window>"u"||typeof document>"u")return {recordingSupported:false,recordingBlockers:["no-media-devices"],playbackSupported:false};let e=[];window.isSecureContext===false&&e.push("insecure-context"),(typeof navigator>"u"||navigator.mediaDevices?.getUserMedia===void 0)&&e.push("no-media-devices"),typeof MediaRecorder>"u"&&e.push("no-media-recorder");let n=window,t=window.AudioContext!==void 0||n.webkitAudioContext!==void 0,r=window.OfflineAudioContext!==void 0||n.webkitOfflineAudioContext!==void 0;return (!t||!r)&&e.push("audio-context-blocked"),{recordingSupported:e.length===0,recordingBlockers:e,playbackSupported:typeof Audio<"u"}}var N=class extends Error{code;constructor(n,t,r){super(t??n,r),this.name="VoiceError",this.code=n;}};function en(e){return e instanceof N?e.code:void 0}function Jt(e){switch(e instanceof DOMException||e instanceof Error?e.name:""){case "NotAllowedError":case "SecurityError":case "PermissionDeniedError":return new N("permission-denied","\u9EA6\u514B\u98CE\u6743\u9650\u88AB\u62D2\u7EDD",{cause:e});case "NotFoundError":case "DevicesNotFoundError":return new N("device-not-found","\u672A\u627E\u5230\u53EF\u7528\u9EA6\u514B\u98CE",{cause:e});case "NotReadableError":case "TrackStartError":case "AbortError":return new N("device-busy","\u9EA6\u514B\u98CE\u88AB\u5360\u7528\u6216\u542F\u52A8\u5931\u8D25",{cause:e});default:return new N("device-busy",e instanceof Error?e.message:"\u9EA6\u514B\u98CE\u542F\u52A8\u5931\u8D25",{cause:e})}}var ne=16e3,Xo=new URL("./speex-runtime.txt",import.meta.url).href,xn=null,Zo=15e3;async function ei(){document.querySelector('script[data-speex-runtime="true"]')?.remove();let e=new AbortController,n=setTimeout(()=>e.abort(new Error("Speex runtime fetch timeout")),Zo),t;try{t=await fetch(Xo,{signal:e.signal});}finally{clearTimeout(n);}if(!t.ok)throw new Error(`Speex runtime fetch failed: ${t.status}`);let r=await t.text();if(r.trimStart().startsWith("<"))throw new Error("Speex runtime fetch returned HTML instead of script");let o=document.createElement("script");o.dataset.speexRuntime="true",o.text=r,document.head.appendChild(o);}async function En(){let e=typeof window>"u"?void 0:window;return e?.__speexInH5!==void 0?e.__speexInH5:(xn??=(async()=>{if(e===void 0||typeof document>"u")throw new N("codec-unavailable","Speex \u8FD0\u884C\u65F6\u4EC5\u53EF\u5728\u6D4F\u89C8\u5668\u73AF\u5883\u52A0\u8F7D");if(await ei(),e.__speexInH5===void 0&&e.initAudio?.(),e.__speexInH5===void 0)throw new N("codec-unavailable","Speex \u8FD0\u884C\u65F6\u521D\u59CB\u5316\u5931\u8D25");return e.__speexInH5})().catch(n=>{throw xn=null,n instanceof N?n:new N("codec-unavailable","Speex \u8FD0\u884C\u65F6\u52A0\u8F7D\u5931\u8D25",{cause:n})}),xn)}function jt(){En().catch(()=>{});}function le(e,n,t){for(let r=0;r<t.length;r+=1)e.setUint8(n+r,t.charCodeAt(r));}function ni(e,n){let r=new ArrayBuffer(44+e.length*2),o=new DataView(r);le(o,0,"RIFF"),o.setUint32(4,36+e.length*2,true),le(o,8,"WAVE"),le(o,12,"fmt "),o.setUint32(16,16,true),o.setUint16(20,1,true),o.setUint16(22,1,true),o.setUint32(24,n,true),o.setUint32(28,n*2,true),o.setUint16(32,2,true),o.setUint16(34,16,true),le(o,36,"data"),o.setUint32(40,e.length*2,true);let i=44;for(let a=0;a<e.length;a+=1){let c=Math.max(-1,Math.min(1,e[a]??0));o.setInt16(i,c<0?c*32768:c*32767,true),i+=2;}return r}function kn(e){if(e instanceof Int16Array)return e;let n=new Int16Array(e.length);for(let t=0;t<e.length;t+=1){let r=Math.max(-1,Math.min(1,e[t]??0));n[t]=r<0?r*32768:r*32767;}return n}var ti=40,Tn=120,ri=40,Rn=80;function oi(e,n){let t=Math.min(Math.floor(n*ti/1e3),Math.floor(e.length/2));for(let r=0;r<t;r+=1){let o=r/t;e[r]=Math.round((e[r]??0)*o);let i=e.length-1-r;e[i]=Math.round((e[i]??0)*o);}return e}function Dn(e,n){if(e.length===0)return e;let t=Math.min(Math.floor(n*Tn/1e3),Math.max(0,e.length-1)),r=t>0?e.subarray(t):e,o=new Float32Array(r),i=Math.min(Math.floor(n*ri/1e3),Math.floor(o.length/2));for(let a=0;a<i;a+=1){let c=a/i;o[a]=(o[a]??0)*c;let s=o.length-1-a;o[s]=(o[s]??0)*c;}return o}function nn(e,n){let r=new ArrayBuffer(44+e.length*2),o=new DataView(r);return le(o,0,"RIFF"),o.setUint32(4,36+e.length*2,true),le(o,8,"WAVE"),le(o,12,"fmt "),o.setUint32(16,16,true),o.setUint16(20,1,true),o.setUint16(22,1,true),o.setUint32(24,n,true),o.setUint32(28,n*2,true),o.setUint16(32,2,true),o.setUint16(34,16,true),le(o,36,"data"),o.setUint32(40,e.length*2,true),new Int16Array(r,44).set(e),new Uint8Array(r)}function ii(e){let n=new Uint8Array(e.length);for(let t=0;t<e.length;t+=1)n[t]=e.charCodeAt(t)&255;return n}function ai(e){let t="";for(let r=0;r<e.length;r+=32768)t+=String.fromCharCode(...e.subarray(r,Math.min(r+32768,e.length)));return t}async function Vt(e,n){let t=await En(),r=Math.floor(n*Rn/1e3),o=new Float32Array(r+e.length);o.set(e,r);let i=ni(o,n);try{return ii(t.encodeFile(i))}catch(a){throw new N("encode-failed","\u8BED\u97F3\u7F16\u7801\u5931\u8D25",{cause:a})}}async function qt(e){let n=await En();try{let[t,r]=n.decodeFile(ai(e));if(t.length===0)throw new Error("decoded empty pcm");let o=oi(kn(t),r.rate>0?r.rate:ne),i=r.rate>0?r.rate:ne;return {samples:o,sampleRate:i,durationMs:Math.round(o.length/i*1e3)}}catch(t){throw t instanceof N?t:new N("decode-failed","\u8BED\u97F3\u89E3\u7801\u5931\u8D25",{cause:t})}}async function zt(e){let n=await qt(e);return {wavData:nn(n.samples,n.sampleRate),durationMs:n.durationMs}}var si=.5,ci=2;function Wt(e){if(typeof e!="number"||!Number.isFinite(e))throw new N("invalid-playback-rate",`\u64AD\u653E\u901F\u7387\u5FC5\u987B\u662F\u6709\u9650\u6570\u5B57\uFF0C\u6536\u5230 ${String(e)}`);return Math.min(Math.max(e,si),ci)}function di(e={}){let n=e.cacheMax??8,t={activeId:"",isPlaying:false,loadingId:"",progress:0,currentTimeMs:0,errorIds:new Set,playbackRate:e.playbackRate===void 0?1:Wt(e.playbackRate)},r=new Set;function o(){for(let m of r)m(t);}let i=null,a=new Map,c=0,s=false,l=false;function g(m){let I=a.get(m);return I!==void 0&&(a.delete(m),a.set(m,I)),I}function S(m,I){if(s)return URL.revokeObjectURL(I.url),I;let x=a.get(m);if(x!==void 0)return URL.revokeObjectURL(I.url),a.delete(m),a.set(m,x),x;for(a.set(m,I);a.size>n;){let E;for(let k of a.keys())if(k!==t.activeId){E=k;break}if(E===void 0)break;let D=a.get(E);a.delete(E),D!==void 0&&URL.revokeObjectURL(D.url);}return I}function y(m){m.paused||m.pause(),m.removeAttribute("src");try{m.load();}catch{}}function u(m,I){return !s&&m===c&&t.activeId===I}function h(m){m.defaultPlaybackRate=t.playbackRate,m.playbackRate=t.playbackRate;}function v(){if(i!==null)return i;let m=new Audio;return m.preload="auto",h(m),m.addEventListener("timeupdate",()=>{t.activeId!==""&&(t.currentTimeMs=m.currentTime*1e3,t.progress=m.duration>0?Math.min(1,m.currentTime/m.duration):0,o());}),m.addEventListener("ended",()=>{T(),y(m),o();}),m.addEventListener("pause",()=>{t.activeId!==""&&(t.isPlaying=false,o());}),i=m,m}function T(){t.activeId="",t.isPlaying=false,t.progress=0,t.currentTimeMs=0;}function d(){c+=1,l=false,t.loadingId="",T(),i!==null&&y(i),o();}function f(m){t.errorIds=new Set([...t.errorIds,m]);}function C(m){if(!t.errorIds.has(m))return;let I=new Set(t.errorIds);I.delete(m),t.errorIds=I;}async function p(m,I){let x=g(m);if(x!==void 0)return {entry:x};let E;try{E=await I();}catch(D){return {entry:null,error:{code:en(D),cause:D}}}if(E===null)return {entry:null};try{let{wavData:D,durationMs:k}=await zt(E),U={url:URL.createObjectURL(new Blob([D],{type:"audio/wav"})),durationMs:k};return {entry:S(m,U)}}catch(D){return {entry:null,error:{code:en(D),cause:D}}}}async function b(m,I){if(s)return;let x=v();if(C(m),t.activeId===m){if(t.isPlaying){x.pause();return}let k=++c;try{await x.play();}catch{if(!u(k,m))return;f(m),o();return}if(!u(k,m))return;t.isPlaying=true,o(),I.onPlayStart?.();return}if(t.loadingId===m)return;d();let E=++c;t.loadingId=m,o();let D=await p(m,I.load);if(E===c){if(t.loadingId="",D.entry===null){f(m),o(),D.error!==void 0&&I.onDecodeError?.(D.error.code,D.error.cause);return}x.src=D.entry.url,h(x),t.activeId=m,t.progress=0,t.currentTimeMs=0,o();try{await x.play();}catch(k){if(!u(E,m))return;T(),y(x),f(m),o(),I.onDecodeError?.(void 0,k);return}u(E,m)&&(t.isPlaying=true,o(),I.onPlayStart?.());}}function M(m,I){i===null||t.activeId!==m||!Number.isFinite(i.duration)||i.duration<=0||(i.currentTime=Math.min(Math.max(I,0),.999)*i.duration);}function _(m){i===null||t.activeId!==m||t.isPlaying&&(l=true,i.pause());}function P(m){if(i===null||t.activeId!==m||!l)return;l=false;let I=++c;i.play().then(()=>{u(I,m)&&(t.isPlaying=true,o());}).catch(()=>{u(I,m)&&(f(m),o());});}function w(m){let I=Wt(m);I!==t.playbackRate&&(t.playbackRate=I,i!==null&&h(i),o());}function A(){if(!s){s=true,d();for(let m of a.values())URL.revokeObjectURL(m.url);a.clear(),r.clear(),i=null;}}return {getState:()=>t,subscribe:m=>(r.add(m),()=>r.delete(m)),toggle:b,seek:M,beginScrub:_,endScrub:P,setPlaybackRate:w,stop:d,dispose:A}}function ui(e){if(e.length===0)return 0;let n=0;for(let t=0;t<e.length;t+=1){let r=((e[t]??128)-128)/128;n+=r*r;}return Math.min(1,Math.sqrt(n/e.length)*Math.SQRT2)}function li(e,n,t){if(e.length===0||n<=0||t<=0)return 0;let r=n/t,o=0,i=0;for(let a=0;a<e.length;a+=1){let c=a*r,s=.2;c<200?s=.15:c<300?s=.4:c<=3400?s=1:c<=6e3&&(s=.45),o+=(e[a]??0)/255*s,i+=s;}return i>0?o/i:0}function Yt(e){let n=ui(e.timeDomain),t=li(e.frequency,e.sampleRate,e.fftSize),r=n*.55+t*.45;return Math.min(1,r*e.boost)**.72}var tn=class{constructor(n=.45,t=.18){this.attack=n;this.release=t;}attack;release;value=0;next(n){let t=Math.min(1,Math.max(0,n));return t>this.value?this.value+=(t-this.value)*this.attack:this.value+=(t-this.value)*this.release,this.value}};var pi=5e3,Un=15e3,fi=25e3;function rn(e,n,t){return new Promise((r,o)=>{let i=setTimeout(()=>o(new Error(t)),n);e.then(a=>{clearTimeout(i),r(a);},a=>{clearTimeout(i),o(a);});})}function mi(){return {channelCount:1,echoCancellation:true,noiseSuppression:true,autoGainControl:true}}var gi=50,yi=.12,hi=2.6,bi=.06,Ci=256;function wi(){return typeof MediaRecorder>"u"?"":["audio/webm","audio/webm;codecs=opus","audio/mp4","audio/aac","audio/ogg;codecs=opus"].find(n=>MediaRecorder.isTypeSupported(n))??""}async function Pi(e,n,t){let r=window.AudioContext??window.webkitAudioContext,o=window.OfflineAudioContext??window.webkitOfflineAudioContext;if(o===void 0||t==null&&r===void 0)throw new N("audio-context-blocked","AudioContext \u4E0D\u53EF\u7528");let i=t??new r,a=t==null;try{i.state==="suspended"&&await rn(i.resume(),Un,"audioContext.resume timeout").catch(()=>{});let c=await rn(i.decodeAudioData(await e.arrayBuffer()),Un,"decodeAudioData timeout"),s=Math.max(1,Math.ceil(c.duration*n)),l=new o(1,s,n),g=l.createBufferSource();return g.buffer=c,g.connect(l.destination),g.start(0),(await rn(l.startRendering(),Un,"offlineAudioContext.startRendering timeout")).getChannelData(0).slice()}catch(c){throw c instanceof N?c:new N("decode-failed","\u5F55\u97F3\u6BB5\u89E3\u7801\u5931\u8D25",{cause:c})}finally{a&&i.close().catch(()=>{});}}function Qt(e){let n=0;for(let o of e)n+=o.length;let t=new Float32Array(n),r=0;for(let o of e)t.set(o,r),r+=o.length;return t}async function Ii(e={}){if(typeof MediaRecorder>"u")throw new N("no-media-recorder","\u5F53\u524D\u6D4F\u89C8\u5668\u4E0D\u652F\u6301\u5F55\u97F3");let n;if(e.stream!==void 0)n=e.stream;else {if(typeof navigator>"u"||navigator.mediaDevices?.getUserMedia===void 0)throw new N("no-media-devices","\u5F53\u524D\u73AF\u5883\u4E0D\u652F\u6301\u9EA6\u514B\u98CE\u91C7\u96C6");try{n=await navigator.mediaDevices.getUserMedia({audio:mi()});}catch(m){throw Jt(m)}}jt();let t=wi(),r=e.maxDurationMs??6e4,o="recording",i=[],a=0,c=[],s=null,l=null,g=null,S=[],y=0,u=false;function h(){try{let m;try{m=t!==""?new MediaRecorder(n,{mimeType:t}):new MediaRecorder(n);}catch{m=new MediaRecorder(n);}return S=[],m.ondataavailable=I=>{I.data.size>0&&S.push(I.data);},m.start(250),y=Date.now(),m}catch(m){throw m instanceof N?m:new N("device-busy","\u5F55\u97F3\u5668\u542F\u52A8\u5931\u8D25",{cause:m})}}let v=e.amplitude?.intervalMs??gi,T=e.amplitude?.boost??hi,d=e.amplitude?.smoothing??yi,f=e.amplitude?.minVolume??bi;function C(){let m=Math.floor(r/1e3*ne),I=0;for(let E of i)I+=E.length;if(I>m){let E=m,D=[];for(let k of i){if(E<=0)break;k.length<=E?(D.push(k),E-=k.length):(D.push(k.slice(0,E)),E=0);}i.length=0,i.push(...D);}a=Math.min(a,r);let x=Math.max(0,Math.ceil(r/v));c.length>x&&(c.length=x);}async function p(){if(o!=="recording"){e.onMaxDuration?.();return}e.onMaxDuration?.(),o="paused";let m=A().then(()=>C());g=m;try{await m;}catch(I){console.warn("[im-browser] pauseAtMaxDuration settle failed",I);}}let b=setInterval(()=>{!u&&o==="recording"&&P()>=r&&(u=true,p());},250),M=null,_=null;try{let m=window.AudioContext??window.webkitAudioContext;if(m!==void 0){M=new m,M.state==="suspended"&&M.resume().catch(()=>{});let I=M.createMediaStreamSource(n),x=M.createAnalyser();x.fftSize=Ci,x.smoothingTimeConstant=d,I.connect(x);let E=new Uint8Array(x.frequencyBinCount),D=new Uint8Array(x.fftSize),k=new tn;_=setInterval(()=>{if(o!=="recording"||s===null)return;x.getByteFrequencyData(E),x.getByteTimeDomainData(D);let U=Yt({timeDomain:D,frequency:E,sampleRate:M.sampleRate,fftSize:x.fftSize,boost:T}),B=k.next(U),F=B<f?0:B;c.push(Math.round(F*255)),e.onAmplitude?.(F);},v);}}catch(m){console.warn("[im-browser] amplitude analyser setup failed",m);}function P(){let m=o==="recording"&&s!==null?Date.now()-y:0;return a+m}function w(){b!==null&&(clearInterval(b),b=null),_!==null&&(clearInterval(_),_=null),M?.close().catch(()=>{}),M=null;for(let m of n.getTracks())m.stop();}function A(){if(l!==null)return l;let m=s;return m===null?Promise.resolve():(s=null,l=(async()=>{await new Promise(E=>{if(m.state==="inactive"){E();return}let D=setTimeout(()=>{console.warn("[im-browser] recorder onstop timed out, settling with received chunks"),E();},pi);m.onstop=()=>{clearTimeout(D),E();},m.stop();});let I=new Blob(S,{type:m.mimeType||t||"audio/webm"});if(S=[],I.size===0)return;let x=await Pi(I,ne,M);x.length!==0&&(i.push(x),a+=x.length/ne*1e3);})().finally(()=>{l=null;}),l)}try{s=h();}catch(m){throw o="closed",w(),m}return {getState:()=>o,recordedMs:P,async pause(){o==="recording"&&(o="paused",await A(),(u||a>=r)&&C());},async resume(){o!=="paused"||u||(s=h(),o="recording");},async finish(){if(o==="closed")throw new N("empty-recording","\u5F55\u97F3\u4F1A\u8BDD\u5DF2\u7ED3\u675F");o="closed";let m=async()=>{try{g!==null?await g:await A(),C();}finally{w();}let I=Qt(i);if(I.length===0)throw new N("empty-recording","\u5F55\u97F3\u5185\u5BB9\u4E3A\u7A7A");let x=Dn(I,ne);if(x.length===0)throw new N("empty-recording","\u5F55\u97F3\u5185\u5BB9\u4E3A\u7A7A");let E=Math.min(c.length,Math.ceil(Tn/v));return {data:await Vt(x,ne),durationMs:Math.round(x.length/ne*1e3)+Rn,waveform:c.slice(E),filename:`AUDIO_${Date.now()}.ogg`,mimeType:"audio/ogg"}};try{return await rn(m(),fi,"\u5F55\u97F3\u5B9A\u7A3F\u8D85\u65F6")}catch(I){throw w(),I instanceof N?I:new N("encode-failed","\u5F55\u97F3\u5B9A\u7A3F\u5931\u8D25",{cause:I})}},cancel(){o="closed";let m=s;if(s=null,m!==null&&(m.ondataavailable=null,m.onstop=null,m.state!=="inactive"))try{m.stop();}catch{}i.length=0,w();},async previewWav(){g!==null?await g:l!==null&&await l,C();let m=Qt(i),I=Dn(m,ne);if(I.length===0)throw new N("empty-recording","\u6682\u65E0\u53EF\u8BD5\u542C\u7684\u5F55\u97F3\u5185\u5BB9");return {wavData:nn(kn(I),ne),durationMs:Math.round(I.length/ne*1e3)}}}}function Ie(e){let n=new Map;return {shouldRenegotiate(t,r,o){if(r===void 0)return true;if(o!==void 0&&!e(o,r))return false;let i=n.get(t);return i!==void 0&&e(i,r)?false:(n.set(t,r),true)},reset(t){n.delete(t);}}}function Xt(e,n){return e.length===n.length&&e.every((t,r)=>t===n[r])}var te=class extends Error{constructor(n,t){super(n,t),this.name="ChannelKeyError";}};function Zt(e){let n=e.trim(),t=n.replace(/-/g,"+").replace(/_/g,"/");if(t===""||!/^[A-Z0-9+/]*={0,2}$/i.test(t)||t.length%4===1)throw new te("channel secret_key \u4E0D\u662F\u5408\u6CD5 Base64");let r=t.replace(/=+$/,""),o=r+"=".repeat((4-r.length%4)%4),i;try{i=atob(o);}catch(l){throw new te("channel secret_key Base64 \u89E3\u7801\u5931\u8D25",{cause:l})}let a=Uint8Array.from(i,l=>l.charCodeAt(0)&255);if(a.length===0)throw new te("channel secret_key Base64 \u89E3\u7801\u7ED3\u679C\u4E3A\u7A7A");let c=new Uint8Array(16);c.set(a.subarray(0,c.length));let s=n.length===16&&/^[\x20-\x7E]+$/.test(n)?Uint8Array.from(n,l=>l.charCodeAt(0)):void 0;return {canonical:c,...s===void 0?{}:{legacyAscii:s},metadata:{channelKeyCharLength:n.length,decodedByteLength:a.length,padByteCount:Math.max(0,16-a.length),legacyAsciiCandidate:s!==void 0}}}function Si(e){let n=new Map,t=new Map,r=new Map,o=new Map,i=Ie(Xt);function a(p){return {canonical:p.canonical.slice(),...p.legacyAscii===void 0?{}:{legacyAscii:p.legacyAscii.slice()},metadata:{...p.metadata}}}function c(p){return [{strategy:"canonical-base64-pad",key:p.canonical.slice()},...p.legacyAscii===void 0?[]:[{strategy:"legacy-ascii16",key:p.legacyAscii.slice()}]]}function s(p){n.delete(p),t.delete(p),r.delete(p),o.set(p,(o.get(p)??0)+1);}function l(p){let b=o.get(p)??0,M=(async()=>{try{let _=await e.loadSecretKey(p);if(_===null||_.trim()==="")throw new te(`channel secret_key \u7F3A\u5931\uFF08channelId=${p}\uFF09`);let P=Zt(_);return (o.get(p)??0)===b&&n.set(p,a(P)),P}catch(_){let P=_ instanceof te?_:new te(`channel secret_key \u52A0\u8F7D\u5931\u8D25\uFF08channelId=${p}\uFF09`,{cause:_});throw e.onError?.(P.message,_),P}})().finally(()=>{t.get(p)===M&&t.delete(p);});return t.set(p,M),M}function g(p,b){let M=t.get(p);if(M!==void 0)return M;i.shouldRenegotiate(p,b.staleKey,n.get(p)?.canonical)&&s(p);}function S(p,b){let M=p.trim();if(M===""){let P=new te("channel id \u4E0D\u80FD\u4E3A\u7A7A");return e.onError?.(P.message),Promise.reject(P)}if(b!==void 0){let P=g(M,b);if(P!==void 0)return P.then(a)}let _=n.get(M);return _!==void 0?Promise.resolve(a(_)):t.get(M)??l(M)}function y(p,b){let M=p.trim();if(M===""){let A=new te("channel id \u4E0D\u80FD\u4E3A\u7A7A");return e.onError?.(A.message),Promise.reject(A)}if(b!==void 0){let A=g(M,b);if(A!==void 0)return A.then(m=>m.canonical.slice())}let _=n.get(M);if(_!==void 0)return Promise.resolve(_.canonical.slice());let P=r.get(M);if(P!==void 0)return P;let w=(t.get(M)??l(M)).then(A=>A.canonical.slice()).finally(()=>{r.get(M)===w&&r.delete(M);});return r.set(M,w),w}function u(p){return n.get(p.trim())?.canonical.slice()??null}async function h(p,b){let M=await S(p,b);return c(M)}function v(p){let b=n.get(p.trim());return b===void 0?[]:c(b)}function T(p){let b=n.get(p.trim());return b===void 0?null:{...b.metadata}}function d(p,b){let M=p.trim();if(M==="")throw new te("channel id \u4E0D\u80FD\u4E3A\u7A7A");let _=Zt(b);s(M),i.reset(M),n.set(M,a(_));}function f(p){let b=p.trim();b!==""&&(s(b),i.reset(b));}function C(){let p=new Set([...n.keys(),...t.keys(),...r.keys(),...o.keys()]);for(let b of p)o.set(b,(o.get(b)??0)+1),i.reset(b);n.clear(),t.clear(),r.clear();}return {getChannelKey:y,getCachedChannelKey:u,getChannelKeyCandidates:h,getCachedChannelKeyCandidates:v,getCachedChannelKeyMetadata:T,primeChannelKey:d,clearChannelKey:f,clearAll:C}}function nr(e){if(e.length<16)throw new Error(`TEA key \u957F\u5EA6\u4E0D\u8DB3\uFF1A${e.length}\uFF0C\u9700 \u2265 16 \u5B57\u8282`);let n=new DataView(e.buffer,e.byteOffset,16);return [n.getUint32(0,true),n.getUint32(4,true),n.getUint32(8,true),n.getUint32(12,true)]}function Bn([e,n],[t,r,o,i]){let a=e>>>0,c=n>>>0,s=Math.imul(2654435769,16)>>>0;for(let l=0;l<16;l++)c=c-(Math.imul(a,16)+o^a+s^(a>>>5)+i)>>>0,a=a-(Math.imul(c,16)+t^c+s^(c>>>5)+r)>>>0,s=s-2654435769>>>0;return [a,c]}function On([e,n],[t,r,o,i]){let a=e>>>0,c=n>>>0,s=0;for(let l=0;l<16;l++)s=s+2654435769>>>0,a=a+(Math.imul(c,16)+t^c+s^(c>>>5)+r)>>>0,c=c+(Math.imul(a,16)+o^a+s^(a>>>5)+i)>>>0;return [a,c]}function De(e,n,t,r){let o=nr(n),i=new Uint8Array(e.length),a=Math.floor(e.length/8),c=r===void 0?a:Math.min(a,Math.floor(r/8)),s=new DataView(e.buffer,e.byteOffset,e.byteLength),l=new DataView(i.buffer);for(let S=0;S<c;S++){let y=S*8,[u,h]=t([s.getUint32(y,true),s.getUint32(y+4,true)],o);l.setUint32(y,u,true),l.setUint32(y+4,h,true);}let g=c*8;return g<e.length&&i.set(e.subarray(g),g),i}function Ue(e,n){return De(n,e,Bn)}function Be(e,n){return De(n,e,On)}function tr(e,n){return De(n,e,On,32)}function rr(e,n){return De(n,e,Bn,32)}var vi=1024*1024;function Mi(){let n=globalThis.scheduler;return typeof n?.yield=="function"?n.yield():new Promise(t=>{setTimeout(t,0);})}function er(e){if(e?.aborted)throw new DOMException("TEA \u5206\u5757\u5904\u7406\u5DF2\u53D6\u6D88","AbortError")}async function Nn(e,n,t,r=vi,o={}){if(!Number.isInteger(r)||r<=0||r%8!==0)throw new RangeError(`TEA \u5206\u5757\u5927\u5C0F\u5FC5\u987B\u662F 8 \u7684\u6B63\u6574\u6570\u500D\uFF1A${r}`);nr(e);let i=t==="encrypt"?On:Bn,a=o.yieldToMain??Mi,c=n.size,s=[],l=0;for(;l<c;){er(o.signal);let g=Math.min(l+r,c),S=new Uint8Array(await n.slice(l,g).arrayBuffer());er(o.signal),s.push(De(S,e,i)),l=g,o.onProgress?.(l,c),l<c&&await a();}return new Blob(s)}var or=8,on=16;function Ai(e){let n=q.md.md5.create();return n.update(e,"utf8"),n.digest().toHex()}function ar(e){return new TextEncoder().encode(e)}function _i(e){let n=e.length;for(;n>0&&e[n-1]===0;)n-=1;return new TextDecoder().decode(e.subarray(0,n))}function xi(e){let n=atob(e),t=new Uint8Array(n.length);for(let r=0;r<n.length;r++)t[r]=n.charCodeAt(r);return t}function Ei(e){let n="";for(let t of e)n+=String.fromCharCode(t);return btoa(n)}function ki(e){let n=Math.ceil(e.length/or)*or;if(n===e.length)return e;let t=new Uint8Array(n);return t.set(e),t}function sr(e,n=Ai){let t=e.trim();if(t==="")throw new Error("collect TEA key: userId \u4E3A\u7A7A");let r=n(t).replace(/[^0-9a-f]/gi,"");if(r.length<on)throw new Error("collect TEA key: MD5 \u957F\u5EA6\u4E0D\u8DB3");let o=ar(r.slice(0,on).toUpperCase());if(o.length<on)throw new Error("collect TEA key: \u6D3E\u751F\u7ED3\u679C\u4E0D\u8DB3 16 \u5B57\u8282");return o.subarray(0,on)}function cr(e,n,t){return Ei(Be(sr(n,t),ki(ar(e))))}function Ti(e,n,t){return _i(Ue(sr(n,t),xi(e)))}function Ri(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)?e:null}function Kn(e){let n=e.trim();if(n===""||!n.startsWith("{"))return null;try{return Ri(JSON.parse(n))}catch{return null}}function Di(e){let n=e.trim(),t=n.indexOf("}");return t>=0?n.slice(0,t+1):n}function dr(e,n,t){let r=Kn(e);if(r!==null)return r;if(e.trim()===""||n.trim()==="")return null;try{let o=Ti(e,n,t);return Kn(o)??Kn(Di(o))}catch{return null}}var Ui="core";var Oe=class extends Error{code=502;constructor(n,t){super(`core JSON \u4F20\u8F93\u5931\u8D25\uFF1A${n||"unknown transport error"}`,t===void 0?void 0:{cause:t}),this.name="CoreJsonTransportError";}},V=class extends Error{businessCode;operation;constructor(n,t,r){super(`${n}\u5931\u8D25\uFF1Acode=${t}${r?` ${r}`:""}`),this.name="CoreJsonBusinessError",this.businessCode=t,this.operation=n;}};async function R(e,n,t,r){let o=r!==void 0&&"responseMode"in r&&r.responseMode==="strict",i;try{i=await e(n,{target:Ui,data:t,...r?.method===void 0?{}:{method:r.method},...r?.headers===void 0?{}:{headers:r.headers},...r?.prefix===void 0?{}:{prefix:r.prefix}});}catch(a){throw o?new Oe(a instanceof Error?a.message:String(a),a):a}if(o){let a=typeof i.msg=="string"?i.msg:"";if(i.code===502)throw new Oe(a);return i.code!==200?{ok:false,code:i.code,message:a,data:i.data}:{ok:true,code:200,message:a,data:i.data}}return {code:i.code,data:i.code===200&&i.data!=null?i.data:null}}function ur(e,n){let t=n.clientType===void 0?{public_key:n.publicKey}:{public_key:n.publicKey,clientType:n.clientType},r=n.clientType===void 0?void 0:{headers:{"Client-type":String(n.clientType)}};return R(e,"/user/encrypt_info/info",t,r)}function Bi(e){let n=e.trim().replace(/-/g,"+").replace(/_/g,"/"),t=n+"=".repeat((4-n.length%4)%4),r=atob(t),o=new Uint8Array(r.length);for(let i=0;i<r.length;i++)o[i]=r.charCodeAt(i)&255;return o}function Oi(e){let n=e.clientType,t=new Map,r=new Map,o=Ie((y,u)=>y===u),i=null,a=null;function c(y,u){e.onError?.(y,u);}function s(){if(i!==null)return Promise.resolve(i);if(a!==null)return a;let y=Promise.resolve().then(()=>e.crypto.generateTempKeyPair()).then(u=>(i=u,u)).finally(()=>{a===y&&(a=null);});return a=y,y}async function l(y){let u;try{u=await s();}catch(d){return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\uFF1A\u751F\u6210\u4E34\u65F6 RSA \u5BC6\u94A5\u5931\u8D25\uFF08userId=${y}\uFF09`,d),null}let h;try{h=await ur(e.client,{publicKey:u.publicKeyBase64,clientType:n});}catch(d){return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\u8BF7\u6C42\u5F02\u5E38\uFF08userId=${y}\uFF09`,d),null}if(h.data===null)return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\u4E1A\u52A1\u5931\u8D25\uFF08userId=${y}\uFF0Ccode=${h.code}\uFF09`),null;let v=h.data.prv_key??h.data.prvKey??"",T=String(h.data.version??"").trim();if(v==="")return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\u54CD\u5E94\u7F3A\u5C11 prv_key\uFF08userId=${y}\uFF09`),null;try{let d=e.crypto.rsaDecryptPkcs1({data:Bi(v),privateKey:u.privateKey}),f=new TextDecoder().decode(d).trim();if(f==="")return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\uFF1A\u89E3\u51FA\u7684\u79C1\u94A5\u4E3A\u7A7A\uFF08userId=${y}\uFF09`),null;let C={privateKey:f,version:T};return t.set(y,C),C}catch(d){return c(`\u7528\u6237\u5BC6\u94A5\u534F\u5546\uFF1A\u4E34\u65F6\u79C1\u94A5\u89E3 prv_key \u5931\u8D25\uFF08userId=${y}\uFF09`,d),null}}function g(y,u){let h=y.trim();if(h==="")return Promise.resolve(null);if(u!==void 0){let f=r.get(h);if(f!==void 0)return f;o.shouldRenegotiate(h,u.staleKey,t.get(h)?.privateKey)&&t.delete(h);}let v=t.get(h);if(v!==void 0)return Promise.resolve(v);let T=r.get(h);if(T!==void 0)return T;let d=l(h).finally(()=>{r.get(h)===d&&r.delete(h);});return r.set(h,d),d}function S(y){return t.get(y.trim())??null}return {getUserPrivateKey:g,getCachedPrivateKey:S}}function lr(e,n){let t=n.clientType===void 0?{group_id:n.groupId,public_key:n.publicKey}:{group_id:n.groupId,public_key:n.publicKey,clientType:n.clientType},r=n.clientType===void 0?void 0:{headers:{"Client-type":String(n.clientType)}};return R(e,"/user_group/encrypt_info",t,r)}function Ni(e){let n=e.trim().replace(/-/g,"+").replace(/_/g,"/"),t=n+"=".repeat((4-n.length%4)%4),r=atob(t),o=new Uint8Array(r.length);for(let i=0;i<r.length;i++)o[i]=r.charCodeAt(i)&255;return o}function Ki(e){let n=e.clientType,t=new Map,r=new Map,o=new Map,i=Ie((u,h)=>u===h),a=null,c=null;function s(){if(a!==null)return Promise.resolve(a);if(c!==null)return c;let u=Promise.resolve().then(()=>e.crypto.generateTempKeyPair()).then(h=>(a=h,h)).finally(()=>{c===u&&(c=null);});return c=u,u}async function l(u){let h=o.get(u)??0,v;try{v=await s();}catch(b){return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\uFF1A\u751F\u6210\u4E34\u65F6 RSA \u5BC6\u94A5\u5931\u8D25\uFF08groupId=${u}\uFF09`,b),null}let T;try{T=await lr(e.client,{groupId:u,publicKey:v.publicKeyBase64,clientType:n});}catch(b){return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\u8BF7\u6C42\u5F02\u5E38\uFF08groupId=${u}\uFF09`,b),null}if(T.data===null)return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\u4E1A\u52A1\u5931\u8D25\uFF08groupId=${u}\uFF0Ccode=${T.code}\uFF09`),null;let d=T.data,f=String(d.prv_key??d.prvKey??d.private_key??"").trim(),C=String(d.pub_key??d.pubKey??d.public_key??"").trim(),p=String(d.version??"").trim();if(f==="")return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\u54CD\u5E94\u7F3A\u5C11 prv_key\uFF08groupId=${u}\uFF09`),null;try{let b=e.crypto.rsaDecryptPkcs1({data:Ni(f),privateKey:v.privateKey}),M=new TextDecoder().decode(b).trim();if(M==="")return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\uFF1A\u89E3\u51FA\u7684\u7FA4\u79C1\u94A5\u4E3A\u7A7A\uFF08groupId=${u}\uFF09`),null;let _={privateKey:M,publicKey:C,version:p};return (o.get(u)??0)===h&&t.set(u,_),_}catch(b){return e.onError?.(`\u7FA4\u5BC6\u94A5\u534F\u5546\uFF1A\u4E34\u65F6\u79C1\u94A5\u89E3 prv_key \u5931\u8D25\uFF08groupId=${u}\uFF09`,b),null}}function g(u,h){let v=u.trim();if(v==="")return Promise.resolve(null);if(h!==void 0){let C=r.get(v);if(C!==void 0)return C;i.shouldRenegotiate(v,h.staleKey,t.get(v)?.privateKey)&&t.delete(v);}let T=t.get(v);if(T!==void 0)return Promise.resolve(T);let d=r.get(v);if(d!==void 0)return d;let f=l(v).finally(()=>{r.get(v)===f&&r.delete(v);});return r.set(v,f),f}function S(u){return t.get(u.trim())??null}function y(u){let h=u.trim();t.delete(h),r.delete(h),o.set(h,(o.get(h)??0)+1),i.reset(h);}return {getGroupKeys:g,getCachedGroupKeys:S,getCachedGroupKeyVersion:u=>t.get(u.trim())?.version??null,clearGroupKeys:y}}async function Ne(e,n){let t=n.clientType===void 0?{other_user_openid:n.userId}:{other_user_openid:n.userId,clientType:n.clientType},r=n.clientType===void 0?void 0:{headers:{"Client-type":String(n.clientType)}};return (await R(e,"/user/info/other",t,r)).data}function Gi(e){let n=e.clientType,t=new Map,r=new Map;async function o(a){try{let s=((await Ne(e.client,{userId:a,clientType:n}))?.public_key??"").trim();return s===""?(e.onError?.(`\u53D6\u5BF9\u7AEF\u516C\u94A5\uFF1A/user/info/other \u65E0 public_key\uFF08userId=${a}\uFF09`),null):(t.set(a,s),s)}catch(c){return e.onError?.(`\u53D6\u5BF9\u7AEF\u516C\u94A5\u8BF7\u6C42\u5F02\u5E38\uFF08userId=${a}\uFF09`,c),null}}function i(a,c){let s=a.trim();if(s==="")return Promise.resolve(null);c?.force===true&&t.delete(s);let l=t.get(s);if(l!==void 0)return Promise.resolve(l);let g=r.get(s);if(g!==void 0)return g;let S=o(s).finally(()=>{r.get(s)===S&&r.delete(s);});return r.set(s,S),S}return {getPeerPublicKey:i}}var me=16;function pr(e){let n="";for(let t of e)n+=String.fromCharCode(t);return n}function fr(e){let n=new Uint8Array(e.length);for(let t=0;t<e.length;t++)n[t]=e.charCodeAt(t)&255;return n}function mr(e){return e.replace(/(.{64})/g,`$1
|
|
2
2
|
`).trim()}function Li(e){return e.replace(/-----BEGIN[^-]+-----/g,"").replace(/-----END[^-]+-----/g,"").replace(/\s+/g,"")}function Hi(e){let n=(e??"").trim();if(n==="")throw new Error("RSA \u79C1\u94A5\u4E3A\u7A7A");if(n.includes("-----BEGIN"))return q.pki.privateKeyFromPem(n);let t=n.replace(/\s+/g,""),r=[];try{return q.pki.privateKeyFromAsn1(q.asn1.fromDer(q.util.decode64(t)))}catch(i){r.push(i);}let o=mr(t);for(let i of ["PRIVATE KEY","RSA PRIVATE KEY"])try{return q.pki.privateKeyFromPem(`-----BEGIN ${i}-----
|
|
3
3
|
${o}
|
|
4
4
|
-----END ${i}-----`)}catch(a){r.push(a);}throw new Error(`RSA \u79C1\u94A5\u89E3\u6790\u5931\u8D25\uFF08\u5DF2\u8BD5 PKCS1-DER / PKCS8-PEM / PKCS1-PEM\uFF09\uFF1A${r[0]instanceof Error?r[0].message:String(r[0])}`)}function gr(e){let n=Hi(e.privateKey),t=Math.ceil(n.n.bitLength()/8),{data:r}=e;if(r.length===0)throw new Error("RSA \u89E3\u5BC6\uFF1A\u5BC6\u6587\u4E3A\u7A7A");let o=[];for(let s=0;s<r.length;s+=t){let l=Math.min(s+t,r.length);try{let g=n.decrypt(pr(r.subarray(s,l)),"RSAES-PKCS1-V1_5");o.push(fr(g));}catch(g){let S=g instanceof Error?g.message:String(g);throw new Error(`RSA-PKCS1 \u89E3\u5BC6\u5931\u8D25\uFF08\u5BC6\u6587 ${r.length}B\uFF0C\u5757 ${s}..${l}\uFF0CkeySize ${t}B\uFF0C\u79C1\u94A5 ${n.n.bitLength()}bit\uFF09\uFF1A${S}`)}}let i=o.reduce((s,l)=>s+l.length,0),a=new Uint8Array(i),c=0;for(let s of o)a.set(s,c),c+=s.length;return a}function Fi(e){let n=gr({data:e.secretKey,privateKey:e.privateKey});if(n.length<me)throw new Error(`\u7AEF\u5230\u7AEF\u89E3\u5BC6\u5931\u8D25\uFF1ARSA \u89E3\u51FA\u7684 teaKey \u957F\u5EA6 ${n.length} < ${me}`);return Ue(n,e.cipherData)}function $i(e){let n=(e??"").trim();if(n==="")throw new Error("RSA \u516C\u94A5\u4E3A\u7A7A");if(n.includes("-----BEGIN"))return q.pki.publicKeyFromPem(n);let t=n.replace(/\s+/g,""),r=[];try{return q.pki.publicKeyFromAsn1(q.asn1.fromDer(q.util.decode64(t)))}catch(i){r.push(i);}let o=mr(t);for(let i of ["PUBLIC KEY","RSA PUBLIC KEY"])try{return q.pki.publicKeyFromPem(`-----BEGIN ${i}-----
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import {c as c$1}from'./chunk-
|
|
1
|
+
import {c as c$1}from'./chunk-75HBZ5NK.js';import {q as q$1}from'./chunk-VKNZ76EP.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,n){if(u(e))return e;if(u(n))return n}function b(e,n){return v(e,n)}function m(e){if(!u(e))return "";let n=new Date(e);return `${n.getFullYear()}-${n.getMonth()+1}-${n.getDate()}`}function h(e,n){return u(e)?u(n)?m(e)!==m(n):true:false}function F(e,n){return T(e,n,"conversation")}function L(e,n){return T(e,n,"separator")}function T(e,n,r){if(!u(e))return "";let t=n.now??new Date;if(Number.isNaN(t.getTime()))return "";let o=new Date(e),a=y(t)-y(o),i=c$1(n.locale);return o.getFullYear()!==t.getFullYear()?A(o):a===0?r==="conversation"?k(o):i.today:a===1?i.yesterday:a>=2&&a<=6?x(o,i):D(o)}function y(e){return Date.UTC(e.getFullYear(),e.getMonth(),e.getDate())/w}function x(e,n){return n.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 n=e.viewportTop+e.overlayTop;if(e.markers[0].top>n+1)return null;let r=0;for(let d=0;d<e.markers.length&&!(e.markers[d].top>n+1);d+=1)r=d;let t=e.markers[r],o=n+e.overlayHeight,a=e.markers.filter(d=>d.top<o+1&&d.top+d.height>n-1).at(-1),i=a===void 0?0:Math.max(0,Math.min(a.top+a.height,o)-Math.max(a.top,n)),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",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 "transfer":return e.body.transfer!==void 0&&typeof e.body.transfer.serialNumber=="string";case "redPacket":{let n=e.body.redPacket;return n!==void 0&&n.packetId.trim()!==""&&(n.packetType===1||n.packetType===2||n.packetType===3||n.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 n=e.body.game;return n?.gameType==="dice"?Number.isInteger(n.value)&&n.value>=1&&n.value<=6:n?.gameType==="rock-paper-scissors"&&Number.isInteger(n.value)&&n.value>=1&&n.value<=3}case "mediaAlbum":{let n=e.body.mediaAlbum;return n!==void 0&&n.items.length>0&&n.items.every(r=>typeof r.url=="string"&&r.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"?q$1(e.body.sticker.imageType):C[e.contentType]:"unknown"}function _(e){let n=[...e.leadingItems??[]],r=e.entryUnread.state==="located"?e.entryUnread:null,t,o=null,a=false;for(let i of e.messages){let s=b(i.createdAt,i.serverTime),l=s!==void 0&&h(s,t);s!==void 0&&l&&n.push({kind:"date-separator",key:`date-${m(s)}-${i.id}`,label:e.formatDate(s)}),t=s,!a&&r!==null&&i.id===r.firstMessageId&&(n.push({kind:"entry-unread",key:`entry-unread-${i.id}`,...r.count===void 0?{}:{count:r.count}}),a=true);let d=e.beforeMessageItems?.(i)??[];if(n.push(...d),I(i)==="system"){n.push({kind:"system",key:i.id,message:i}),o=null;continue}n.push({kind:"message",key:`message-${i.id}`,message:i,firstOfRun:l||i.senderId!==o}),o=i.senderId;}return n}function U(e){let n=e.targetTop-e.viewportTop,r=e.currentScrollTop+n-(e.viewportHeight-e.targetHeight)/2,t=Math.max(0,e.scrollHeight-e.viewportHeight);return Math.min(t,Math.max(0,r))}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,n){return e.find(r=>r.bottom>n.top&&r.top<n.bottom)??e[0]}function f(e){return e.anchorTop??e.top}function B(e,n){let r=H(e,n);return r===void 0?void 0:{id:r.id,offset:f(r)-n.top}}function J(e,n,r){if(e===void 0)return;let t=n.find(o=>o.id===e.id);return t!==void 0&&t.bottom>r.top&&t.top<r.bottom?{id:e.id,offset:f(t)-r.top}:B(n,r)??e}function V(e,n,r){if(e===void 0)return;let t=n.find(o=>o.id===e.id);return t===void 0?void 0:f(t)-r.top-e.offset}function Q(e,n,r=3){return !Number.isFinite(r)||r<=0?[]:e.filter(t=>t.bottom>n.top&&t.top<n.bottom).slice(0,Math.floor(r)).map(t=>({id:t.id,offset:f(t)-n.top}))}function X(e,n,r){for(let t of e){let o=V(t,n,r);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 ne(e){return e.isLoadingOlder&&e.previousTailId!==void 0&&e.previousTailId!==e.currentTailId&&e.previousMessageIds.includes(e.currentTailId)}function re(e,n){return e!==void 0&&!n.has(e)}async function te(e,n){let r=0;for(;e()&&!(await n()<=0);)r+=1;return r}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 n=Math.max(0,e.margin);return e.messageTop<e.viewportBottom-n&&e.messageBottom>e.viewportTop+n}function le(e){let n=new Set;function r(s){return s===n.size?false:(e?.(n.size),true)}function t(s){let l=n.size;for(let d of s)d!==""&&n.add(d);return r(l)}function o(s,l){return M(l)&&t(s)}function a(s){let l=n.size;for(let d of s)n.delete(d);return r(l)}function i(){let s=n.size;return n.clear(),r(s)}return {get count(){return n.size},add:t,trackRemote:o,acknowledgeVisible:a,clear:i}}export{M as A,ae as B,le as C,v as a,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,ne as v,re as w,te as x,oe as y,ie as z};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {p}from'./chunk-4X7RCGEV.js';import {e,a as a$1}from'./chunk-2GZMQCIP.js';import {j,h}from'./chunk-P4HOR4XO.js';import {fa}from'./chunk-A2BLOVZ5.js';import {a}from'./chunk-WOT6VMZA.js';var O=p();function G(e$1,n){let t=n.suppressDraft===true?null:e$1.draft,r=t?.text.trim()??"",i,o="",s="";return t!==null?i=r===""?[]:W(e$1,r,n.locale):$(e$1)?i=y(z(e$1,n)):e$1.lastMessageSummary?.kind==="channel-moderation-deleted"||e$1.lastMessageDeletedForEveryone!==void 0?i=y(x(e$1,e$1.lastMessageSummary?.kind==="channel-moderation-deleted"?e$1.lastMessageSummary:{kind:"channel-moderation-deleted",by:e$1.lastMessageDeletedForEveryone?.by??""},n)):e$1.lastMessageSummary?.kind==="recalled"||e$1.lastMessageRecalled!==void 0?i=y(x(e$1,e$1.lastMessageSummary?.kind==="recalled"?e$1.lastMessageSummary:{kind:"recalled",by:e$1.lastMessageRecalled?.by??""},n)):(o=Q(e$1,n),s=e$1.mentionUnreadCount>0?n.labels.mentionBadge:"",i=K(e$1,n)),{preview:`${s}${o}${i.map(d=>d.text).join("")}`||(t===null?n.labels.emptyPreview:""),previewSegments:i,...H(e$1,t!==null),senderPrefix:o,mentionBadge:s,time:e(a$1(t?.updatedAt,e$1.timestamp),{locale:n.locale,...n.now===void 0?{}:{now:n.now}}),hasDraft:t!==null}}function y(e){return [{kind:"text",text:e}]}function H(e,n){let t=e.lastMessageSummary;if(n||e.lastMessageDeletedForEveryone!==void 0||e.lastMessageRecalled!==void 0||e.lastMessageSystemEvent!==void 0||t===void 0)return {};if(t.kind==="mediaAlbum"){let{imageCount:r,videoCount:i,caption:o,firstItemKind:s}=t;return r<=0&&i<=0?{}:o!==void 0&&o!==""&&s!==void 0?{previewMediaKind:s}:r>0&&i>0?{previewMediaKind:"mediaAlbum"}:{previewMediaKind:i>0?"video":"image"}}return t.kind==="image"||t.kind==="video"||t.kind==="gif"||t.kind==="sticker"?{previewMediaKind:t.kind}:{}}function D(e){return e.map(n=>n.kind==="emoji"?{kind:"emoji",text:n.text,code:n.code}:{kind:n.kind,text:n.text})}function W(e,n,t){let r=e.draft?.mentions??[],i=[],o={},s=false;for(let d of r){if(d.userId==="0"){s=true;continue}i.includes(d.userId)||i.push(d.userId),d.displayName.trim()!==""&&(o[d.userId]=d.displayName);}let a=s||i.length>0?{atAll:s,atUserIds:i,...Object.keys(o).length===0?{}:{atUsersName:o}}:void 0;return D(fa(n,{mention:a,resolveName:d=>o[d]??d,atAllDisplay:j(t),matchers:[O]}))}function K(e,n){let t=e.lastMessageSummary;if(t!==void 0&&t.kind!=="text")return y(x(e,t,n));let r=(t?.kind==="text"?t.text:e.lastMessagePreview).trim();if(r==="")return y(n.labels.emptyPreview);let i=e.lastMessageMention?.atUsersName;return D(fa(r,{mention:e.lastMessageMention===void 0?void 0:{...e.lastMessageMention,atUserIds:[...e.lastMessageMention.atUserIds]},resolveName:o=>n.resolveName(e.ref,o,i?.[o]),selfId:n.accountId,atAllDisplay:j(n.locale),matchers:[O]}))}function x(e,n,t){return h(q(n),{locale:t.locale,selfId:t.accountId,resolveName:r=>t.resolveName(e.ref,r)})}function $(e){return e.lastMessageSummary?.kind==="system"||e.lastMessageSenderId==="system"||e.lastMessageSystemEvent!==void 0}function z(e,n){return e.lastMessageSummary?.kind==="system"?x(e,e.lastMessageSummary,n):e.lastMessageSystemEvent===void 0?e.lastMessagePreview.trim()||n.labels.emptyPreview:x(e,{kind:"system",system:{eventType:e.lastMessageSystemEvent,...e.lastMessageSystemTargetsSelf===true?{targetUserIds:[n.accountId]}:{},...e.lastMessagePreview.trim()===""?{}:{fallbackText:e.lastMessagePreview.trim()}}},n)}function Q(e,n){let t=e.lastMessageSenderId;return e.ref.conversationType!=="group"&&e.ref.conversationType!=="channel"||t===void 0||t===""||t==="system"?"":`${t===n.accountId?n.labels.selfSender:n.resolveName(e.ref,t)}: `}function q(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 J=160,Y=220;function X(e){let n=Math.max(0,e.showDelayMs??160),t=Math.max(0,e.minimumVisibleMs??220),r=e.now??Date.now,i=e.setTimer??((c,M)=>setTimeout(c,M)),o=e.clearTimer??(c=>clearTimeout(c)),s="",a=false,d=false,l=0,u,f,p=false;function h(){u!==void 0&&o(u),u=void 0;}function m(){f!==void 0&&o(f),f=void 0;}function v(c){d!==c&&(d=c,l=c?r():0,e.onVisibleChange(c));}function C(c){h(),u=i(()=>{u=void 0,!(p||!a||s!==c)&&v(true);},n);}function j(){if(h(),!d)return;let c=t-Math.max(0,r()-l);if(c<=0){v(false);return}m(),f=i(()=>{f=void 0,!(p||a)&&v(false);},c);}return {update(c,M){if(p)return;if(s!==M){s=M,a=c,h(),m(),v(false),c&&C(M);return}if(a=c,c){m(),!d&&u===void 0&&C(M);return}j();},dispose(){p||(p=true,a=false,h(),m(),v(false));}}}var S={placeholder:0,thumbnail:1,local:2,original:3};function Z(e){let n;for(let t of e)t.value!==void 0&&(n===void 0||S[t.quality]>S[n.quality])&&(n=t);return n}function ee(e,n){return S[n]>=S[e]}function te(e){let n=e.getGeneration();return Object.freeze({isCurrent:()=>e.getGeneration()===n})}function E(e){let n=e.getClient();if(n===null)return null;let t=e.getGeneration();return Object.freeze({client:n,isCurrent:()=>e.getGeneration()===t&&e.getClient()===n})}var _={};a(_,{acquireMediaBlob:()=>re,detectImageMime:()=>U,detectVideoMime:()=>F,loadCachedImageObjectUrl:()=>ue,loadCachedMediaAlbumItemObjectUrl:()=>le,loadCachedVideoObjectUrl:()=>se,loadFileObjectUrl:()=>me,loadImageObjectUrl:()=>ce,loadMediaAlbumItemObjectUrl:()=>de,loadVideoObjectUrl:()=>ae,loadVoiceBytes:()=>oe,prepareLocalMediaPreview:()=>ie});function b(e,n){if(e.conversationType!=="supergroup")return {conversation:{conversationType:e.conversationType,conversationId:e.conversationId},messageId:e.id,...n===void 0?{}:{itemIndex:n}}}async function I(e,n,t,r){let i=e.getClient(),o=b(n,r);if(i===null||o===void 0)throw new Error("media download unavailable");let s=t===void 0?void 0:i.media.subscribe(a=>{let d=a.find(l=>l.direction==="download"&&l.messageId===o.messageId&&l.itemIndex===r&&l.ref.conversationType===o.conversation.conversationType&&l.ref.conversationId===o.conversation.conversationId);d!==void 0&&t(d.percent);});try{return await i.media.download(o)}finally{s?.();}}function ne(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="IM_SDK_MEDIA_DOWNLOAD_CANCELED"}async function ie(e,n){let t=e.getClient();if(t===null)return null;let r=e.getGeneration(),i=await t.media.prepareLocalPreview(n);return i===null||e.getGeneration()!==r?null:i}function U(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 n=new Uint8Array(await e.slice(0,12).arrayBuffer()),t=U(n);return t===null?null:URL.createObjectURL(e.type===t?e:e.slice(0,e.size,t))}function F(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 re(e,n,t){return e.acquireMediaBlob({conversationType:n.conversationType,conversationId:n.conversationId,messageId:n.id,...t===void 0?{}:{itemIndex:t}})}async function oe(e,n,t){let r=e.getClient(),i=n.body.voice;if(r===null||i===void 0)return null;let o=e.getSelfVoiceBytes(n.id);if(o!==void 0)return o;let s=e.getGeneration();try{let a=new Uint8Array(await(await I(e,n)).arrayBuffer());return a.length===0?(e.getGeneration()===s&&t.setNote(t.t("media.voiceLoadEmpty")),null):a}catch(a){return e.getGeneration()===s&&t.setNote(t.t("media.voiceLoadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}async function ae(e,n,t,r){let i=e.getClient(),o=n.body.video;if(i===null||o===void 0)return null;let s=e.getGeneration();try{let a=await I(e,n,r);if(a.size===0)return e.getGeneration()===s&&t.setNote(t.t("media.videoOpenEmpty")),null;let d=URL.createObjectURL(a);return e.getGeneration()!==s?(URL.revokeObjectURL(d),null):d}catch(a){return e.getGeneration()===s&&t.setNote(t.t("media.videoLoadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}async function se(e,n){let t=e.getClient(),r=b(n);if(t===null||r===void 0||n.body.video===void 0)return null;let i=e.getGeneration();try{let o=await t.media.getCached(r);if(o===null||o.size===0||e.getGeneration()!==i)return null;let s=new Uint8Array(await o.slice(0,12).arrayBuffer()),a=o.type||F(s);return e.getGeneration()!==i?null:URL.createObjectURL(o.type===a?o:o.slice(0,o.size,a))}catch{return null}}async function de(e,n,t,r,i){let o=e.getClient(),s=n.body.mediaAlbum?.items[t];if(o===null||s===void 0)return null;let a=s.kind==="video",d=e.getGeneration();try{let l=await I(e,n,i,t);if(a&&l.size===0)return e.getGeneration()===d&&r.setNote(r.t("media.videoOpenEmpty")),null;let u=a?URL.createObjectURL(l):await w(l);return u===null?(e.getGeneration()===d&&r.setNote(r.t("media.imageInvalid",{size:l.size})),null):e.getGeneration()!==d?(URL.revokeObjectURL(u),null):u}catch(l){return e.getGeneration()===d&&!ne(l)&&r.setNote(r.t(a?"media.videoLoadFailed":"media.imageLoadFailed",{reason:l instanceof Error?l.message:String(l)})),null}}async function le(e,n,t){let r=e.getClient(),i=n.body.mediaAlbum?.items[t],o=b(n,t);if(r===null||o===void 0||i===void 0||!/^https?:\/\//i.test(i.url))return null;let s=e.getGeneration();try{let a=await r.media.getCached(o);if(a===null||a.size===0||e.getGeneration()!==s)return null;let d=i.kind==="video"?URL.createObjectURL(a):await w(a);return d===null?null:e.getGeneration()!==s?(URL.revokeObjectURL(d),null):d}catch{return null}}async function ce(e,n,t){let r=e.getClient(),i=n.body.image;if(r===null||i===void 0)return null;let o=e.getGeneration();try{let s=await I(e,n),a=await w(s);return a===null?(e.getGeneration()===o&&t.setNote(t.t("media.imageInvalid",{size:s.size})),null):e.getGeneration()!==o?(URL.revokeObjectURL(a),null):a}catch(s){return e.getGeneration()===o&&t.setNote(t.t("media.imageLoadFailed",{reason:s instanceof Error?s.message:String(s)})),null}}async function ue(e,n){let t=e.getClient(),r=b(n);if(t===null||r===void 0||n.body.image===void 0)return null;let i=e.getGeneration();try{let o=await t.media.getCached(r);if(o===null||o.size===0||e.getGeneration()!==i)return null;let s=await w(o);return s===null?null:e.getGeneration()!==i?(URL.revokeObjectURL(s),null):s}catch{return null}}async function me(e,n,t,r){let i=e.getClient(),o=n.body.file;if(i===null||o===void 0)return null;let s=e.getGeneration();try{let a=await I(e,n,r);if(a.size===0)return e.getGeneration()===s&&t.setNote(t.t("media.fileDownloadEmpty")),null;let d=URL.createObjectURL(a);return e.getGeneration()!==s?(URL.revokeObjectURL(d),null):d}catch(a){return e.getGeneration()===s&&t.setNote(t.t("media.fileDownloadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}var B={};a(B,{markReadUpTo:()=>fe});function fe(e,n,t,r){let i=E(e);if(i===null||n.conversationId===""||t==="")return;let o=i.client.conversations.list().find(a=>a.id===n.conversationId&&a.type===n.conversationType);if(o?.manuallyUnread===true&&o.unreadCount<=0){i.client.conversations.markConversationRead(n).catch(a=>{i.isCurrent()&&e.getDiagnostics().record("warn","chat-kit","conversation","clear-manual-unread-skipped",()=>({conversation:n,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=r.getConversationHandle();s===void 0||s.ref.conversationId!==n.conversationId||s.ref.conversationType!==n.conversationType||s.markRead(t).catch(a=>{i.isCurrent()&&r.getConversationHandle()===s&&e.getDiagnostics().record("warn","chat-kit","message","mark-read-skipped",()=>({conversation:n,data:{messageId:t},error:{message:"markRead \u8DF3\u8FC7",data:a}}));});}function pe(e){return e.deletedForEveryone!==void 0?"hidden":e.recalled!==void 0?"recalled":"content"}function ge(e,n){if(n.length===0)return [{text:e,hit:false}];let t=[],r=0;for(let[i,o]of n)i>r&&t.push({text:e.slice(r,i),hit:false}),t.push({text:e.slice(i,o),hit:true}),r=o;return r<e.length&&t.push({text:e.slice(r),hit:false}),t}var he=/\b(?:https?:\/\/|www\.)[^\s<>"')】]+/gi,ve=/\b(?:https?:\/\/|www\.)/i,Me=/[),.!?;:,。!?;:、)】]+$/u;function V(e){let n=/^www\./i.test(e)?`https://${e}`:e;try{let t=new URL(n);return t.protocol==="http:"||t.protocol==="https:"?t.href:void 0}catch{return}}function ye(e){return ve.test(e)}function xe(){return e=>{let n=[];for(let t of e.matchAll(he)){if(t.index===void 0)continue;let r=t[0].replace(Me,"");if(r==="")continue;let i=V(r);i!==void 0&&n.push({start:t.index,end:t.index+r.length-1,segment:{kind:"link",text:r,href:i}});}return n}}function g(e,n){if(!Number.isFinite(e)||e<=0)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${n} \u5FC5\u987B\u662F\u5927\u4E8E 0 \u7684\u6709\u9650\u6570`)}function Ie(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 n=new Set;e.rules.forEach((t,r)=>{let i=`rules[${r}]`;if(t.id.trim()==="")throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.id \u4E0D\u80FD\u4E3A\u7A7A`);if(n.has(t.id))throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565\u89C4\u5219 id \u91CD\u590D\uFF1A${t.id}`);if(n.add(t.id),t.minAspectRatio!==void 0&&(!Number.isFinite(t.minAspectRatio)||t.minAspectRatio<0))throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.minAspectRatio \u5FC5\u987B\u662F\u5927\u4E8E\u7B49\u4E8E 0 \u7684\u6709\u9650\u6570`);if(t.maxAspectRatio!==void 0&&g(t.maxAspectRatio,`${i}.maxAspectRatio`),t.minAspectRatio!==void 0&&t.maxAspectRatio!==void 0&&t.minAspectRatio>=t.maxAspectRatio)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i} \u7684\u5BBD\u9AD8\u6BD4\u4E0B\u754C\u5FC5\u987B\u5C0F\u4E8E\u4E0A\u754C`);if(g(t.preferredWidth,`${i}.preferredWidth`),g(t.minWidth,`${i}.minWidth`),g(t.maxWidth,`${i}.maxWidth`),g(t.minHeight,`${i}.minHeight`),g(t.maxHeight,`${i}.maxHeight`),t.minWidth>t.preferredWidth||t.preferredWidth>t.maxWidth)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.preferredWidth \u5FC5\u987B\u4F4D\u4E8E minWidth \u548C maxWidth \u4E4B\u95F4`);if(t.minHeight>t.maxHeight)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.minHeight \u4E0D\u80FD\u5927\u4E8E maxHeight`);if(typeof t.allowUpscale!="boolean")throw new TypeError(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.allowUpscale \u5FC5\u987B\u662F boolean`);if(t.fit!=="cover"&&t.fit!=="contain")throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.fit \u53EA\u652F\u6301 cover \u6216 contain`)});}function Ce(e){let{intrinsicWidth:n,intrinsicHeight:t,availableWidth:r,policy:i}=e;g(r,"availableWidth"),Ie(i);let o=Number.isFinite(n)&&Number.isFinite(t)&&n>0&&t>0,s=o?n/t:i.fallbackAspectRatio,a=i.rules.find(m=>{let v=m.minAspectRatio===void 0||s>=m.minAspectRatio,C=m.maxAspectRatio===void 0||s<m.maxAspectRatio;return v&&C});if(a===void 0)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565\u6CA1\u6709\u5339\u914D\u5BBD\u9AD8\u6BD4 ${s}`);let d=!a.allowUpscale&&o?Math.min(a.preferredWidth,n):a.preferredWidth,l=Math.min(r,a.maxWidth,Math.max(a.minWidth,d)),u=Math.max(1,Math.round(l)),f=u/s,p=Math.min(a.maxHeight,Math.max(a.minHeight,f)),h=Math.max(1,Math.round(p));return {width:u,height:h,aspectRatio:u/h,sourceAspectRatio:s,ruleId:a.id,fit:a.fit,aspectClamped:p!==f}}function Se(e,n,t,r){if(!Number.isFinite(e)||!Number.isFinite(n)||e<=0||n<=0)return null;let i=Math.min(t/e,r/n,1);return {width:`${Math.max(1,Math.round(e*i))}px`,aspectRatio:`${e} / ${n}`}}function be(e){if(!Number.isFinite(e)||e<=0)return "0:00";let n=Math.floor(e),t=Math.floor(n/3600),r=Math.floor(n%3600/60),i=n%60,o=s=>s.toString().padStart(2,"0");return t>0?`${t}:${o(r)}:${o(i)}`:`${r}:${o(i)}`}function we(e){if(!Number.isFinite(e)||e<=0)return "0 B";let n=["B","KB","MB","GB","TB"],t=Math.min(n.length-1,Math.floor(Math.log(e)/Math.log(1024))),r=e/1024**t;return `${t===0?r:Math.round(r*10)/10} ${n[t]}`}function Pe(e){let n=e.lastIndexOf(".");return n>-1&&n<e.length-1?e.slice(n+1).toLowerCase():""}var Re=4;function Le(e){let n=Math.min(Math.max(e/1e3,0)/10,1);return Math.round(22+24*n)}function Ae(e,n){if(e.length===0)return Array.from({length:n},()=>0);let t=[],r=(e.length-1)/Math.max(1,n-1);for(let i=0;i<n;i+=1){let o=i*r,s=Math.round(o),a=e[Math.max(0,s-1)]??0,d=e[Math.min(e.length-1,s)]??0,l=e[Math.min(e.length-1,s+1)]??0;t.push((a+d+l)/3);}return t}function Te(e,n){let t=2166136261;for(let i=0;i<e.length;i+=1)t^=e.charCodeAt(i),t=Math.imul(t,16777619);let r=[];for(let i=0;i<n;i+=1)t=Math.imul(t^t>>>15,2246822519)>>>0,r.push(90+t%111);return r}
|
|
1
|
+
import {p}from'./chunk-TP32EJAN.js';import {e,a as a$1}from'./chunk-NA7DHED6.js';import {j,h}from'./chunk-75HBZ5NK.js';import {fa}from'./chunk-VKNZ76EP.js';import {a}from'./chunk-WOT6VMZA.js';var O=p();function G(e$1,n){let t=n.suppressDraft===true?null:e$1.draft,r=t?.text.trim()??"",i,o="",s="";return t!==null?i=r===""?[]:W(e$1,r,n.locale):$(e$1)?i=y(z(e$1,n)):e$1.lastMessageSummary?.kind==="channel-moderation-deleted"||e$1.lastMessageDeletedForEveryone!==void 0?i=y(x(e$1,e$1.lastMessageSummary?.kind==="channel-moderation-deleted"?e$1.lastMessageSummary:{kind:"channel-moderation-deleted",by:e$1.lastMessageDeletedForEveryone?.by??""},n)):e$1.lastMessageSummary?.kind==="recalled"||e$1.lastMessageRecalled!==void 0?i=y(x(e$1,e$1.lastMessageSummary?.kind==="recalled"?e$1.lastMessageSummary:{kind:"recalled",by:e$1.lastMessageRecalled?.by??""},n)):(o=Q(e$1,n),s=e$1.mentionUnreadCount>0?n.labels.mentionBadge:"",i=K(e$1,n)),{preview:`${s}${o}${i.map(d=>d.text).join("")}`||(t===null?n.labels.emptyPreview:""),previewSegments:i,...H(e$1,t!==null),senderPrefix:o,mentionBadge:s,time:e(a$1(t?.updatedAt,e$1.timestamp),{locale:n.locale,...n.now===void 0?{}:{now:n.now}}),hasDraft:t!==null}}function y(e){return [{kind:"text",text:e}]}function H(e,n){let t=e.lastMessageSummary;if(n||e.lastMessageDeletedForEveryone!==void 0||e.lastMessageRecalled!==void 0||e.lastMessageSystemEvent!==void 0||t===void 0)return {};if(t.kind==="mediaAlbum"){let{imageCount:r,videoCount:i,caption:o,firstItemKind:s}=t;return r<=0&&i<=0?{}:o!==void 0&&o!==""&&s!==void 0?{previewMediaKind:s}:r>0&&i>0?{previewMediaKind:"mediaAlbum"}:{previewMediaKind:i>0?"video":"image"}}return t.kind==="image"||t.kind==="video"||t.kind==="gif"||t.kind==="sticker"?{previewMediaKind:t.kind}:{}}function D(e){return e.map(n=>n.kind==="emoji"?{kind:"emoji",text:n.text,code:n.code}:{kind:n.kind,text:n.text})}function W(e,n,t){let r=e.draft?.mentions??[],i=[],o={},s=false;for(let d of r){if(d.userId==="0"){s=true;continue}i.includes(d.userId)||i.push(d.userId),d.displayName.trim()!==""&&(o[d.userId]=d.displayName);}let a=s||i.length>0?{atAll:s,atUserIds:i,...Object.keys(o).length===0?{}:{atUsersName:o}}:void 0;return D(fa(n,{mention:a,resolveName:d=>o[d]??d,atAllDisplay:j(t),matchers:[O]}))}function K(e,n){let t=e.lastMessageSummary;if(t!==void 0&&t.kind!=="text")return y(x(e,t,n));let r=(t?.kind==="text"?t.text:e.lastMessagePreview).trim();if(r==="")return y(n.labels.emptyPreview);let i=e.lastMessageMention?.atUsersName;return D(fa(r,{mention:e.lastMessageMention===void 0?void 0:{...e.lastMessageMention,atUserIds:[...e.lastMessageMention.atUserIds]},resolveName:o=>n.resolveName(e.ref,o,i?.[o]),selfId:n.accountId,atAllDisplay:j(n.locale),matchers:[O]}))}function x(e,n,t){return h(q(n),{locale:t.locale,selfId:t.accountId,resolveName:r=>t.resolveName(e.ref,r)})}function $(e){return e.lastMessageSummary?.kind==="system"||e.lastMessageSenderId==="system"||e.lastMessageSystemEvent!==void 0}function z(e,n){return e.lastMessageSummary?.kind==="system"?x(e,e.lastMessageSummary,n):e.lastMessageSystemEvent===void 0?e.lastMessagePreview.trim()||n.labels.emptyPreview:x(e,{kind:"system",system:{eventType:e.lastMessageSystemEvent,...e.lastMessageSystemTargetsSelf===true?{targetUserIds:[n.accountId]}:{},...e.lastMessagePreview.trim()===""?{}:{fallbackText:e.lastMessagePreview.trim()}}},n)}function Q(e,n){let t=e.lastMessageSenderId;return e.ref.conversationType!=="group"&&e.ref.conversationType!=="channel"||t===void 0||t===""||t==="system"?"":`${t===n.accountId?n.labels.selfSender:n.resolveName(e.ref,t)}: `}function q(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 J=160,Y=220;function X(e){let n=Math.max(0,e.showDelayMs??160),t=Math.max(0,e.minimumVisibleMs??220),r=e.now??Date.now,i=e.setTimer??((c,M)=>setTimeout(c,M)),o=e.clearTimer??(c=>clearTimeout(c)),s="",a=false,d=false,l=0,u,f,p=false;function h(){u!==void 0&&o(u),u=void 0;}function m(){f!==void 0&&o(f),f=void 0;}function v(c){d!==c&&(d=c,l=c?r():0,e.onVisibleChange(c));}function C(c){h(),u=i(()=>{u=void 0,!(p||!a||s!==c)&&v(true);},n);}function j(){if(h(),!d)return;let c=t-Math.max(0,r()-l);if(c<=0){v(false);return}m(),f=i(()=>{f=void 0,!(p||a)&&v(false);},c);}return {update(c,M){if(p)return;if(s!==M){s=M,a=c,h(),m(),v(false),c&&C(M);return}if(a=c,c){m(),!d&&u===void 0&&C(M);return}j();},dispose(){p||(p=true,a=false,h(),m(),v(false));}}}var S={placeholder:0,thumbnail:1,local:2,original:3};function Z(e){let n;for(let t of e)t.value!==void 0&&(n===void 0||S[t.quality]>S[n.quality])&&(n=t);return n}function ee(e,n){return S[n]>=S[e]}function te(e){let n=e.getGeneration();return Object.freeze({isCurrent:()=>e.getGeneration()===n})}function E(e){let n=e.getClient();if(n===null)return null;let t=e.getGeneration();return Object.freeze({client:n,isCurrent:()=>e.getGeneration()===t&&e.getClient()===n})}var _={};a(_,{acquireMediaBlob:()=>re,detectImageMime:()=>U,detectVideoMime:()=>F,loadCachedImageObjectUrl:()=>ue,loadCachedMediaAlbumItemObjectUrl:()=>le,loadCachedVideoObjectUrl:()=>se,loadFileObjectUrl:()=>me,loadImageObjectUrl:()=>ce,loadMediaAlbumItemObjectUrl:()=>de,loadVideoObjectUrl:()=>ae,loadVoiceBytes:()=>oe,prepareLocalMediaPreview:()=>ie});function b(e,n){if(e.conversationType!=="supergroup")return {conversation:{conversationType:e.conversationType,conversationId:e.conversationId},messageId:e.id,...n===void 0?{}:{itemIndex:n}}}async function I(e,n,t,r){let i=e.getClient(),o=b(n,r);if(i===null||o===void 0)throw new Error("media download unavailable");let s=t===void 0?void 0:i.media.subscribe(a=>{let d=a.find(l=>l.direction==="download"&&l.messageId===o.messageId&&l.itemIndex===r&&l.ref.conversationType===o.conversation.conversationType&&l.ref.conversationId===o.conversation.conversationId);d!==void 0&&t(d.percent);});try{return await i.media.download(o)}finally{s?.();}}function ne(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="IM_SDK_MEDIA_DOWNLOAD_CANCELED"}async function ie(e,n){let t=e.getClient();if(t===null)return null;let r=e.getGeneration(),i=await t.media.prepareLocalPreview(n);return i===null||e.getGeneration()!==r?null:i}function U(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 n=new Uint8Array(await e.slice(0,12).arrayBuffer()),t=U(n);return t===null?null:URL.createObjectURL(e.type===t?e:e.slice(0,e.size,t))}function F(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 re(e,n,t){return e.acquireMediaBlob({conversationType:n.conversationType,conversationId:n.conversationId,messageId:n.id,...t===void 0?{}:{itemIndex:t}})}async function oe(e,n,t){let r=e.getClient(),i=n.body.voice;if(r===null||i===void 0)return null;let o=e.getSelfVoiceBytes(n.id);if(o!==void 0)return o;let s=e.getGeneration();try{let a=new Uint8Array(await(await I(e,n)).arrayBuffer());return a.length===0?(e.getGeneration()===s&&t.setNote(t.t("media.voiceLoadEmpty")),null):a}catch(a){return e.getGeneration()===s&&t.setNote(t.t("media.voiceLoadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}async function ae(e,n,t,r){let i=e.getClient(),o=n.body.video;if(i===null||o===void 0)return null;let s=e.getGeneration();try{let a=await I(e,n,r);if(a.size===0)return e.getGeneration()===s&&t.setNote(t.t("media.videoOpenEmpty")),null;let d=URL.createObjectURL(a);return e.getGeneration()!==s?(URL.revokeObjectURL(d),null):d}catch(a){return e.getGeneration()===s&&t.setNote(t.t("media.videoLoadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}async function se(e,n){let t=e.getClient(),r=b(n);if(t===null||r===void 0||n.body.video===void 0)return null;let i=e.getGeneration();try{let o=await t.media.getCached(r);if(o===null||o.size===0||e.getGeneration()!==i)return null;let s=new Uint8Array(await o.slice(0,12).arrayBuffer()),a=o.type||F(s);return e.getGeneration()!==i?null:URL.createObjectURL(o.type===a?o:o.slice(0,o.size,a))}catch{return null}}async function de(e,n,t,r,i){let o=e.getClient(),s=n.body.mediaAlbum?.items[t];if(o===null||s===void 0)return null;let a=s.kind==="video",d=e.getGeneration();try{let l=await I(e,n,i,t);if(a&&l.size===0)return e.getGeneration()===d&&r.setNote(r.t("media.videoOpenEmpty")),null;let u=a?URL.createObjectURL(l):await w(l);return u===null?(e.getGeneration()===d&&r.setNote(r.t("media.imageInvalid",{size:l.size})),null):e.getGeneration()!==d?(URL.revokeObjectURL(u),null):u}catch(l){return e.getGeneration()===d&&!ne(l)&&r.setNote(r.t(a?"media.videoLoadFailed":"media.imageLoadFailed",{reason:l instanceof Error?l.message:String(l)})),null}}async function le(e,n,t){let r=e.getClient(),i=n.body.mediaAlbum?.items[t],o=b(n,t);if(r===null||o===void 0||i===void 0||!/^https?:\/\//i.test(i.url))return null;let s=e.getGeneration();try{let a=await r.media.getCached(o);if(a===null||a.size===0||e.getGeneration()!==s)return null;let d=i.kind==="video"?URL.createObjectURL(a):await w(a);return d===null?null:e.getGeneration()!==s?(URL.revokeObjectURL(d),null):d}catch{return null}}async function ce(e,n,t){let r=e.getClient(),i=n.body.image;if(r===null||i===void 0)return null;let o=e.getGeneration();try{let s=await I(e,n),a=await w(s);return a===null?(e.getGeneration()===o&&t.setNote(t.t("media.imageInvalid",{size:s.size})),null):e.getGeneration()!==o?(URL.revokeObjectURL(a),null):a}catch(s){return e.getGeneration()===o&&t.setNote(t.t("media.imageLoadFailed",{reason:s instanceof Error?s.message:String(s)})),null}}async function ue(e,n){let t=e.getClient(),r=b(n);if(t===null||r===void 0||n.body.image===void 0)return null;let i=e.getGeneration();try{let o=await t.media.getCached(r);if(o===null||o.size===0||e.getGeneration()!==i)return null;let s=await w(o);return s===null?null:e.getGeneration()!==i?(URL.revokeObjectURL(s),null):s}catch{return null}}async function me(e,n,t,r){let i=e.getClient(),o=n.body.file;if(i===null||o===void 0)return null;let s=e.getGeneration();try{let a=await I(e,n,r);if(a.size===0)return e.getGeneration()===s&&t.setNote(t.t("media.fileDownloadEmpty")),null;let d=URL.createObjectURL(a);return e.getGeneration()!==s?(URL.revokeObjectURL(d),null):d}catch(a){return e.getGeneration()===s&&t.setNote(t.t("media.fileDownloadFailed",{reason:a instanceof Error?a.message:String(a)})),null}}var B={};a(B,{markReadUpTo:()=>fe});function fe(e,n,t,r){let i=E(e);if(i===null||n.conversationId===""||t==="")return;let o=i.client.conversations.list().find(a=>a.id===n.conversationId&&a.type===n.conversationType);if(o?.manuallyUnread===true&&o.unreadCount<=0){i.client.conversations.markConversationRead(n).catch(a=>{i.isCurrent()&&e.getDiagnostics().record("warn","chat-kit","conversation","clear-manual-unread-skipped",()=>({conversation:n,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=r.getConversationHandle();s===void 0||s.ref.conversationId!==n.conversationId||s.ref.conversationType!==n.conversationType||s.markRead(t).catch(a=>{i.isCurrent()&&r.getConversationHandle()===s&&e.getDiagnostics().record("warn","chat-kit","message","mark-read-skipped",()=>({conversation:n,data:{messageId:t},error:{message:"markRead \u8DF3\u8FC7",data:a}}));});}function pe(e){return e.deletedForEveryone!==void 0?"hidden":e.recalled!==void 0?"recalled":"content"}function ge(e,n){if(n.length===0)return [{text:e,hit:false}];let t=[],r=0;for(let[i,o]of n)i>r&&t.push({text:e.slice(r,i),hit:false}),t.push({text:e.slice(i,o),hit:true}),r=o;return r<e.length&&t.push({text:e.slice(r),hit:false}),t}var he=/\b(?:https?:\/\/|www\.)[^\s<>"')】]+/gi,ve=/\b(?:https?:\/\/|www\.)/i,Me=/[),.!?;:,。!?;:、)】]+$/u;function V(e){let n=/^www\./i.test(e)?`https://${e}`:e;try{let t=new URL(n);return t.protocol==="http:"||t.protocol==="https:"?t.href:void 0}catch{return}}function ye(e){return ve.test(e)}function xe(){return e=>{let n=[];for(let t of e.matchAll(he)){if(t.index===void 0)continue;let r=t[0].replace(Me,"");if(r==="")continue;let i=V(r);i!==void 0&&n.push({start:t.index,end:t.index+r.length-1,segment:{kind:"link",text:r,href:i}});}return n}}function g(e,n){if(!Number.isFinite(e)||e<=0)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${n} \u5FC5\u987B\u662F\u5927\u4E8E 0 \u7684\u6709\u9650\u6570`)}function Ie(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 n=new Set;e.rules.forEach((t,r)=>{let i=`rules[${r}]`;if(t.id.trim()==="")throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.id \u4E0D\u80FD\u4E3A\u7A7A`);if(n.has(t.id))throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565\u89C4\u5219 id \u91CD\u590D\uFF1A${t.id}`);if(n.add(t.id),t.minAspectRatio!==void 0&&(!Number.isFinite(t.minAspectRatio)||t.minAspectRatio<0))throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.minAspectRatio \u5FC5\u987B\u662F\u5927\u4E8E\u7B49\u4E8E 0 \u7684\u6709\u9650\u6570`);if(t.maxAspectRatio!==void 0&&g(t.maxAspectRatio,`${i}.maxAspectRatio`),t.minAspectRatio!==void 0&&t.maxAspectRatio!==void 0&&t.minAspectRatio>=t.maxAspectRatio)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i} \u7684\u5BBD\u9AD8\u6BD4\u4E0B\u754C\u5FC5\u987B\u5C0F\u4E8E\u4E0A\u754C`);if(g(t.preferredWidth,`${i}.preferredWidth`),g(t.minWidth,`${i}.minWidth`),g(t.maxWidth,`${i}.maxWidth`),g(t.minHeight,`${i}.minHeight`),g(t.maxHeight,`${i}.maxHeight`),t.minWidth>t.preferredWidth||t.preferredWidth>t.maxWidth)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.preferredWidth \u5FC5\u987B\u4F4D\u4E8E minWidth \u548C maxWidth \u4E4B\u95F4`);if(t.minHeight>t.maxHeight)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.minHeight \u4E0D\u80FD\u5927\u4E8E maxHeight`);if(typeof t.allowUpscale!="boolean")throw new TypeError(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.allowUpscale \u5FC5\u987B\u662F boolean`);if(t.fit!=="cover"&&t.fit!=="contain")throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565 ${i}.fit \u53EA\u652F\u6301 cover \u6216 contain`)});}function Ce(e){let{intrinsicWidth:n,intrinsicHeight:t,availableWidth:r,policy:i}=e;g(r,"availableWidth"),Ie(i);let o=Number.isFinite(n)&&Number.isFinite(t)&&n>0&&t>0,s=o?n/t:i.fallbackAspectRatio,a=i.rules.find(m=>{let v=m.minAspectRatio===void 0||s>=m.minAspectRatio,C=m.maxAspectRatio===void 0||s<m.maxAspectRatio;return v&&C});if(a===void 0)throw new Error(`\u5A92\u4F53\u5C55\u793A\u7B56\u7565\u6CA1\u6709\u5339\u914D\u5BBD\u9AD8\u6BD4 ${s}`);let d=!a.allowUpscale&&o?Math.min(a.preferredWidth,n):a.preferredWidth,l=Math.min(r,a.maxWidth,Math.max(a.minWidth,d)),u=Math.max(1,Math.round(l)),f=u/s,p=Math.min(a.maxHeight,Math.max(a.minHeight,f)),h=Math.max(1,Math.round(p));return {width:u,height:h,aspectRatio:u/h,sourceAspectRatio:s,ruleId:a.id,fit:a.fit,aspectClamped:p!==f}}function Se(e,n,t,r){if(!Number.isFinite(e)||!Number.isFinite(n)||e<=0||n<=0)return null;let i=Math.min(t/e,r/n,1);return {width:`${Math.max(1,Math.round(e*i))}px`,aspectRatio:`${e} / ${n}`}}function be(e){if(!Number.isFinite(e)||e<=0)return "0:00";let n=Math.floor(e),t=Math.floor(n/3600),r=Math.floor(n%3600/60),i=n%60,o=s=>s.toString().padStart(2,"0");return t>0?`${t}:${o(r)}:${o(i)}`:`${r}:${o(i)}`}function we(e){if(!Number.isFinite(e)||e<=0)return "0 B";let n=["B","KB","MB","GB","TB"],t=Math.min(n.length-1,Math.floor(Math.log(e)/Math.log(1024))),r=e/1024**t;return `${t===0?r:Math.round(r*10)/10} ${n[t]}`}function Pe(e){let n=e.lastIndexOf(".");return n>-1&&n<e.length-1?e.slice(n+1).toLowerCase():""}var Re=4;function Le(e){let n=Math.min(Math.max(e/1e3,0)/10,1);return Math.round(22+24*n)}function Ae(e,n){if(e.length===0)return Array.from({length:n},()=>0);let t=[],r=(e.length-1)/Math.max(1,n-1);for(let i=0;i<n;i+=1){let o=i*r,s=Math.round(o),a=e[Math.max(0,s-1)]??0,d=e[Math.min(e.length-1,s)]??0,l=e[Math.min(e.length-1,s+1)]??0;t.push((a+d+l)/3);}return t}function Te(e,n){let t=2166136261;for(let i=0;i<e.length;i+=1)t^=e.charCodeAt(i),t=Math.imul(t,16777619);let r=[];for(let i=0;i<n;i+=1)t=Math.imul(t^t>>>15,2246822519)>>>0,r.push(90+t%111);return r}
|
|
2
2
|
export{G as a,J as b,Y as c,X as d,Z as e,ee as f,te as g,E as h,_ as i,B as j,pe as k,ge as l,V as m,ye as n,xe as o,Ce as p,Se as q,be as r,we as s,Pe as t,Re as u,Le as v,Ae as w,Te as x};
|