k2-im 0.1.25 → 0.1.26

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/index.js CHANGED
@@ -1 +1 @@
1
- import'./chunk-IDECJJXC.js';import'./chunk-SXY56EVC.js';export{c as DEFAULT_LOADING_MINIMUM_VISIBLE_MS,b as DEFAULT_LOADING_SHOW_DELAY_MS,u as SPIKE_STEP,q as calculateMediaBox,f as canPromoteMediaPresentationSource,h as captureRuntimeClientOperation,g as captureRuntimeOperation,d as createDelayedLoadingIndicator,o as createLinkMatcher,s as formatFileSize,r as formatMediaDuration,t as getFileExtension,n as hasLinkCandidate,l as highlightSegments,i as mediaService,m as normalizeLinkHref,x as placeholderWaveform,j as readService,w as resampleWaveform,e as resolveBestMediaPresentationSource,a as resolveConversationListPresentation,p as resolveMediaPresentation,k as resolveQuotedMessagePresentation,v as spikeCountForDuration}from'./chunk-F5GJAS6A.js';export{j as DEFAULT_EMOJI_ASSET_BASE,i as EMOJI_CATALOG,c as EMOJI_GAME_DICE_STABLE_KEY,b as EMOJI_GAME_RPS_STABLE_KEY,m as EMOJI_TOKEN_RE,L as MAX_BATCH_FILES,a as MAX_RECENT_EMOJI_COUNT,g as UNICODE_EMOJI_CATALOG,K as blockReasonForChannelSession,J as blockReasonForChannelState,Q as blockReasonForGroupState,T as blockReasonForSession,E as canEditMessage,u as canPinChannelMessage,t as canPinGroupMessage,v as canPinMessage,D as canRecallMessage,aa as cancelMediaUpload,O as classifyGifFile,s as createChatRuntime,p as createEmojiMatcher,G as decideConversationAction,I as decideMemberTargetAction,H as decideMessageAction,l as emojiAssetUrl,n as emojiUrlByCode,Aa as fetchConversationFileBatch,Ba as fetchConversationImageBatch,ya as fetchConversationMessageBatch,Ca as fetchConversationVideoBatch,Da as fetchConversationVoiceBatch,Ea as fetchNextConversationSearchBatch,da as forwardService,o as hasEmojiCandidate,P as isGifFile,w as isPinnedMessageProtected,X as isVoiceStorageConfigured,M as mediaBatchBudgetBytes,ia as messageService,e as parseUnicodeEmojiCode,na as pinnedMessageService,d as prependRecentEmoji,xa as profileService,W as replaceInterruptedMediaFile,R as requiresConversationEncryption,z as resolveChannelMemberAvatarUrl,y as resolveChannelMemberDisplayName,k as resolveEmojiToken,C as resolveFriendDisplayName,oa as resolveImProfileAccessDestination,x as resolveMemberDisplayName,r as resolveMessageNotificationDecision,B as resolvePublicNickname,A as resolveSenderAvatarUrl,q as resolveStandaloneEmojiMessage,h as resolveUnicodeEmoji,ba as retryMessage,N as runMediaSendBatch,$ as sendAsFilesBatch,F as sendBlockReasonForDecision,Z as sendMediaAlbum,V as sendMediaFile,_ as sendMediaFilesBatch,U as sendText,Y as sendVoice,S as supportsConversationMention,f as unicodeEmojiTextFromCode}from'./chunk-V7ULSSTZ.js';export{C as createNewMessageBadgeController,i as createThreadItems,f as formatChatDateSeparator,e as formatConversationDisplayTime,c as getLocalDayKey,l as isMessageLocateScrollProtected,v as isMessageTailChangeFromOlderWindowTrim,k as isMessageViewportMeasurable,B as isMessageVisibleForNewMessageBadge,x as loadOlderUntilBoundary,p as refreshPrependMessageAnchorPosition,j as resolveCenteredMessageScrollTop,a as resolveDisplayTimestamp,g as resolveImThreadActiveDate,h as resolveMessageBodyKind,b as resolveMessageTimelineTimestamp,n as resolvePrependMessageAnchor,q as resolvePrependMessageAnchorAdjustment,o as resolvePrependMessageAnchorPosition,s as resolveSurvivingMessageAnchorAdjustment,r as resolveVisibleMessageAnchorPositions,t as shouldCompleteInitialViewport,y as shouldFillInitialHistoryViewport,u as shouldFollowIncomingMessage,z as shouldLoadNewerHistoryPage,m as shouldPrefetchOlderHistory,w as shouldRestoreMessageViewportFocus,d as shouldShowChatDateSeparator,A as shouldTrackRemoteMessageForBadge}from'./chunk-UNGWXAYA.js';export{a as DEFAULT_LOCALE,k as createImI18n,f as formatFailure,h as formatLastMessageSummary,i as formatMediaPlaceholder,j as formatMentionAll,l as formatServiceText,g as formatSystemMessage,c as getImTimeCatalog,b as normalizeImLocale,d as registerImCatalogOverrides,e as resetImCatalogOverrides}from'./chunk-VMKTMZ3K.js';export{l as IM_CHAT_FONT_SCALES,e as IM_DIAGNOSTIC_CATEGORIES,h as IM_EMOJI_CATALOG,c as ImPinnedMessageOperationError,k as buildSessionFavoritePlainBody,d as createFaceToFaceGroupQrPayload,m as createImClient,f as createImConsoleDiagnosticSink,p as createImDiagnosticMemoryBuffer,g as createSdkDiagnosticWriter,a as migrateImCachePrefix,i as resolveImEmojiToken,j as resolveSessionFavoriteKindFromMessage}from'./chunk-SVJGRV4M.js';export{Ra as MediaTransferError,$a as createVoicePlayer,ab as createVoiceRecordingSession,Za as detectVoiceCapabilities,Sa as mediaTransferErrorCodeOf,Ta as normalizeMediaUploadCredentials,_a as voiceErrorCodeOf}from'./chunk-GMVR64GN.js';export{na as EDIT_WINDOW_MS,o as MEDIA_ALBUM_CAPTION_MAX_LENGTH,p as MEDIA_ALBUM_MAX_ITEMS,va as REACTION_SUPPORTED_CONTENT_TYPES,wa as canReactToMessage,ra as canTransmit,pa as canTransmitByType,qa as canTransmitContent,s as classifyStickerImageType,ca as createImTextSearchMatcher,aa as extractSearchText,ba as getImTextSearchInitial,ob as parseSessionFavoriteAlbumItems,oa as requiresForwardTypeConfirmation,ya as resolveChannelAccess,q as resolveMediaAlbumSendContentType,pb as resolveSessionFavoriteAlbumCaption,nb as resolveSessionFavoriteAlbumItemPreviewUrl,ha as resolveTextSegments,Fa as sortSessions,Ga as sumSessionsUnread}from'./chunk-LX7YEO5G.js';import'./chunk-WOT6VMZA.js';
1
+ import'./chunk-IDECJJXC.js';import'./chunk-SXY56EVC.js';export{p as DEFAULT_LOADING_MINIMUM_VISIBLE_MS,o as DEFAULT_LOADING_SHOW_DELAY_MS,d as MINI_PROGRAM_LANG_NUMBERS,H as SPIKE_STEP,D as calculateMediaBox,s as canPromoteMediaPresentationSource,u as captureRuntimeClientOperation,t as captureRuntimeOperation,m as channelMiniProgramRelKey,q as createDelayedLoadingIndicator,B as createLinkMatcher,e as csvIncludes,c as decideChannelMiniProgramRelOpen,F as formatFileSize,E as formatMediaDuration,G as getFileExtension,A as hasLinkCandidate,y as highlightSegments,v as mediaService,z as normalizeLinkHref,K as placeholderWaveform,w as readService,J as resampleWaveform,r as resolveBestMediaPresentationSource,g as resolveChannelMiniProgramRelIcon,f as resolveChannelMiniProgramRelName,i as resolveChannelMiniProgramRelOpenSurface,h as resolveChannelMiniProgramRelUrl,j as resolveChannelPinnedGameCopy,n as resolveConversationListPresentation,C as resolveMediaPresentation,b as resolveMiniProgramFloatLinkUrl,a as resolveMiniProgramOpenUrl,x as resolveQuotedMessagePresentation,l as resolveVisibleChannelMiniProgramRels,k as sortChannelMiniProgramFloatingItems,I as spikeCountForDuration}from'./chunk-WYQXQOLW.js';export{j as DEFAULT_EMOJI_ASSET_BASE,i as EMOJI_CATALOG,c as EMOJI_GAME_DICE_STABLE_KEY,b as EMOJI_GAME_RPS_STABLE_KEY,m as EMOJI_TOKEN_RE,L as MAX_BATCH_FILES,a as MAX_RECENT_EMOJI_COUNT,g as UNICODE_EMOJI_CATALOG,K as blockReasonForChannelSession,J as blockReasonForChannelState,Q as blockReasonForGroupState,T as blockReasonForSession,E as canEditMessage,u as canPinChannelMessage,t as canPinGroupMessage,v as canPinMessage,D as canRecallMessage,aa as cancelMediaUpload,O as classifyGifFile,s as createChatRuntime,p as createEmojiMatcher,G as decideConversationAction,I as decideMemberTargetAction,H as decideMessageAction,l as emojiAssetUrl,n as emojiUrlByCode,Aa as fetchConversationFileBatch,Ba as fetchConversationImageBatch,ya as fetchConversationMessageBatch,Ca as fetchConversationVideoBatch,Da as fetchConversationVoiceBatch,Ea as fetchNextConversationSearchBatch,da as forwardService,o as hasEmojiCandidate,P as isGifFile,w as isPinnedMessageProtected,X as isVoiceStorageConfigured,M as mediaBatchBudgetBytes,ia as messageService,e as parseUnicodeEmojiCode,na as pinnedMessageService,d as prependRecentEmoji,xa as profileService,W as replaceInterruptedMediaFile,R as requiresConversationEncryption,z as resolveChannelMemberAvatarUrl,y as resolveChannelMemberDisplayName,k as resolveEmojiToken,C as resolveFriendDisplayName,oa as resolveImProfileAccessDestination,x as resolveMemberDisplayName,r as resolveMessageNotificationDecision,B as resolvePublicNickname,A as resolveSenderAvatarUrl,q as resolveStandaloneEmojiMessage,h as resolveUnicodeEmoji,ba as retryMessage,N as runMediaSendBatch,$ as sendAsFilesBatch,F as sendBlockReasonForDecision,Z as sendMediaAlbum,V as sendMediaFile,_ as sendMediaFilesBatch,U as sendText,Y as sendVoice,S as supportsConversationMention,f as unicodeEmojiTextFromCode}from'./chunk-V7ULSSTZ.js';export{C as createNewMessageBadgeController,i as createThreadItems,f as formatChatDateSeparator,e as formatConversationDisplayTime,c as getLocalDayKey,l as isMessageLocateScrollProtected,v as isMessageTailChangeFromOlderWindowTrim,k as isMessageViewportMeasurable,B as isMessageVisibleForNewMessageBadge,x as loadOlderUntilBoundary,p as refreshPrependMessageAnchorPosition,j as resolveCenteredMessageScrollTop,a as resolveDisplayTimestamp,g as resolveImThreadActiveDate,h as resolveMessageBodyKind,b as resolveMessageTimelineTimestamp,n as resolvePrependMessageAnchor,q as resolvePrependMessageAnchorAdjustment,o as resolvePrependMessageAnchorPosition,s as resolveSurvivingMessageAnchorAdjustment,r as resolveVisibleMessageAnchorPositions,t as shouldCompleteInitialViewport,y as shouldFillInitialHistoryViewport,u as shouldFollowIncomingMessage,z as shouldLoadNewerHistoryPage,m as shouldPrefetchOlderHistory,w as shouldRestoreMessageViewportFocus,d as shouldShowChatDateSeparator,A as shouldTrackRemoteMessageForBadge}from'./chunk-UNGWXAYA.js';export{a as DEFAULT_LOCALE,k as createImI18n,f as formatFailure,h as formatLastMessageSummary,i as formatMediaPlaceholder,j as formatMentionAll,l as formatServiceText,g as formatSystemMessage,c as getImTimeCatalog,b as normalizeImLocale,d as registerImCatalogOverrides,e as resetImCatalogOverrides}from'./chunk-VMKTMZ3K.js';export{l as IM_CHAT_FONT_SCALES,e as IM_DIAGNOSTIC_CATEGORIES,h as IM_EMOJI_CATALOG,c as ImPinnedMessageOperationError,k as buildSessionFavoritePlainBody,d as createFaceToFaceGroupQrPayload,m as createImClient,f as createImConsoleDiagnosticSink,p as createImDiagnosticMemoryBuffer,g as createSdkDiagnosticWriter,a as migrateImCachePrefix,i as resolveImEmojiToken,j as resolveSessionFavoriteKindFromMessage}from'./chunk-SVJGRV4M.js';export{Ra as MediaTransferError,$a as createVoicePlayer,ab as createVoiceRecordingSession,Za as detectVoiceCapabilities,Sa as mediaTransferErrorCodeOf,Ta as normalizeMediaUploadCredentials,_a as voiceErrorCodeOf}from'./chunk-GMVR64GN.js';export{na as EDIT_WINDOW_MS,o as MEDIA_ALBUM_CAPTION_MAX_LENGTH,p as MEDIA_ALBUM_MAX_ITEMS,va as REACTION_SUPPORTED_CONTENT_TYPES,wa as canReactToMessage,ra as canTransmit,pa as canTransmitByType,qa as canTransmitContent,s as classifyStickerImageType,ca as createImTextSearchMatcher,aa as extractSearchText,ba as getImTextSearchInitial,ob as parseSessionFavoriteAlbumItems,oa as requiresForwardTypeConfirmation,ya as resolveChannelAccess,q as resolveMediaAlbumSendContentType,pb as resolveSessionFavoriteAlbumCaption,nb as resolveSessionFavoriteAlbumItemPreviewUrl,ha as resolveTextSegments,Fa as sortSessions,Ga as sumSessionsUnread}from'./chunk-LX7YEO5G.js';import'./chunk-WOT6VMZA.js';
package/dist/sdk.d.ts CHANGED
@@ -1025,8 +1025,8 @@ type ChannelMiniProgramRelConfigType = 'pinned-game' | 'float-link' | 'float-gam
1025
1025
  /**
1026
1026
  * 频道资料上的关联小程序(`/user_radio/info` 的 `mini_program_rel_list`)。
1027
1027
  *
1028
- * @remarks 这不是消息 22。语言/币种 CSV 原样保留,由宿主按大厅状态过滤。
1029
- * 打开小程序、半屏 iframe 与鉴权属于宿主,不进本 DTO。
1028
+ * @remarks 这不是消息 22。语言/币种 CSV 原样保留,SDK 不过滤;可见性与打开资格由 Chat Kit 纯函数处理。
1029
+ * 打开器、半屏 iframe 与鉴权属于宿主,不进本 DTO。
1030
1030
  */
1031
1031
  interface ChannelMiniProgramRel {
1032
1032
  configType: ChannelMiniProgramRelConfigType;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "k2-im",
3
3
  "type": "module",
4
- "version": "0.1.25",
4
+ "version": "0.1.26",
5
5
  "private": false,
6
6
  "license": "MIT",
7
7
  "publishConfig": {
@@ -1,2 +0,0 @@
1
- import {p}from'./chunk-V7ULSSTZ.js';import {e,a as a$1}from'./chunk-UNGWXAYA.js';import {j,h}from'./chunk-VMKTMZ3K.js';import {ha}from'./chunk-LX7YEO5G.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(ha(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(ha(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
- 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};