@funhub/platform 0.2.14 → 0.2.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
1
 
2
- "use client";import{cn as e}from"../../../../../utils/cn.mjs";import{useUserStore as t}from"../../../../../store/modules/user-store.mjs";import{pContentMatchAds as n}from"../../../../../service/generated/client.mjs";import{pContentMatchAdsKey as r}from"../../../../../service/generated/tanstack.mjs";import{pxToVw as i}from"../../../../../utils/helper.mjs";import{trackVideoEvent as a}from"../../../../../utils/tracking.mjs";import{Image as o}from"../../../../ui/image.mjs";import{Box as s}from"../../../../ui/box.mjs";import{Text as c}from"../../../../ui/text.mjs";import{useRequest as l}from"../../../../../hooks/query/use-query.mjs";import{useBrowseReport as u}from"../../../../../hooks/use-browse-report.mjs";import{MediaPreview as d,useMediaPreview as f}from"../../../../common/media-preview/index.mjs";import ee from"../../../../common/video-player/index.mjs";import p from"../../../../../assets/icons/detail/video_play.mjs";import{UserActivityMediaGrid as m}from"../../../../common/list/user-activity-list/user-activity-list-item.mjs";import{VideoPlayerRefContext as h}from"../../../../common/video-player/video-player-ref-context.mjs";import{VideoBlindAdOverlay as g}from"../../../../common/video-player/video-blind-ad-overlay.mjs";import{VideoPrerollAd as _}from"../../../../common/video-player/video-preroll-ad.mjs";import{VideoPrerollAdOverlay as v}from"../../../../common/video-player/video-preroll-ad-overlay.mjs";import{memo as y,useCallback as b,useEffect as x,useMemo as S,useRef as C,useState as w}from"react";import{jsx as T,jsxs as E}from"react/jsx-runtime";import{useTranslations as D}from"next-intl";function O(e){return T(k,{...e})}const k=y(({mode:i=`renderer`,information:a,isVideo:o,episodeIndex:u=0,resumeProgressSeconds:ee=0,className:p=``})=>{let h=i===`editor`,g=t(e=>e.userId),_=S(()=>({id:a.id,name:a.name,preview_images:a.preview_images,img_y:a.img_y,img_x:a.img_x}),[a.id,a.name,a.preview_images,a.img_y,a.img_x]),v=S(()=>{let e=a?.medias,t=Array.isArray(e)?e.filter(Boolean):[];return t.length>0?t:(_.preview_images?.length?_.preview_images:[_.img_y||_.img_x||``].filter(Boolean)).filter(Boolean).map(e=>({media_url:e,is_video:!1,cover_image:``}))},[_.img_x,_.img_y,_.preview_images,a]),y=f(),x=S(()=>v.filter(Boolean).map(e=>{let t=e?.is_video?`video`:`image`,n=String(e?.media_url||``),r=e?.cover_image||a.img_y||a.img_x;return{src:n,type:t,...r?{cover:String(r)}:{}}}).filter(e=>!!e.src),[a.img_x,a.img_y,v]),C=b(e=>{h||!x.length||y.open(x,e)},[h,y,x]),w=S(()=>({user_id:g,ad_type:`preroll`}),[g]),D=S(()=>{let e=Math.max(0,Number(u)||0),t=a?.links?.[e]?.id;return t?String(t):`ep-${e+1}`},[u,a?.links]),{data:O,isLoading:k,isFetched:j}=l(S(()=>[`detail-preroll-ad`,a.id,D,...r(w)],[a.id,D,w]),()=>n(w),{enabled:!h&&o,staleTime:0,refetchOnMount:`always`,refetchOnWindowFocus:!1}),te=S(()=>({data:O?.data??null,isLoading:k,isFetched:j}),[j,k,O?.data]);return h?T(`img`,{src:`/static/components-thumb/video_player.png`,alt:`video-preview`,className:`w-full block`}):o?k?T(`div`,{className:`aspect-video w-full bg-background`}):T(A,{information:a,episodeIndex:u,resumeProgressSeconds:ee,isEditor:h,prerollState:te}):E(`div`,{className:e(`w-full`,p),children:[E(s,{className:`mt-3 px-[12px] space-y-1`,children:[T(c,{as:`p`,className:`break-all`,dangerouslySetInnerHTML:{__html:a.description}}),T(m,{medias:v,onItemClick:C})]}),T(d,{})]})});O.displayName=`DetailHero`;const A=y(({information:e,episodeIndex:t,resumeProgressSeconds:n,isEditor:r,prerollState:i})=>{let a=S(()=>({id:e.id,mid:e.mid,img_width:e.img_width,img_height:e.img_height,img_y:e.img_y,img_x:e.img_x,preview_images:e.preview_images}),[e.id,e.mid,e.img_width,e.img_height,e.img_y,e.img_x,e.preview_images]);return T(j,{information:{...e,...a},episodeIndex:t,resumeProgressSeconds:n,isEditor:r,prerollState:i})},(e,t)=>{let n=e.information,r=t.information;return n.id===r.id&&n.mid===r.mid&&n.img_width===r.img_width&&n.img_height===r.img_height&&n.img_y===r.img_y&&n.img_x===r.img_x&&e.resumeProgressSeconds===t.resumeProgressSeconds&&e.episodeIndex===t.episodeIndex&&e.isEditor===t.isEditor&&e.prerollState.data===t.prerollState.data&&e.prerollState.isLoading===t.prerollState.isLoading&&e.prerollState.isFetched===t.prerollState.isFetched});A.displayName=`StableDetailPlayerBox`;function j({information:e,episodeIndex:t,resumeProgressSeconds:n,isEditor:r,prerollState:c}){let l=C(null),d=C(null),f=C(null),m=D(`components.biz.business.detail`),y=C(0),O=C(0),k=Math.max(0,Number(t)||0),A=k+1,[j,ie]=w(!1),[M,N]=w(`main`),[ae,P]=w(`auto`),[F,I]=w(!1),[L,R]=w(!1),[oe,z]=w(!1),[se,ce]=w(0),B=S(()=>e?.id,[e?.id]),V=S(()=>({id:e.id,mid:e.mid,img_width:e.img_width,img_height:e.img_height,img_y:e.img_y,img_x:e.img_x,preview_images:e.preview_images,links:e.links}),[e.id,e.mid,e.img_width,e.img_height,e.img_y,e.img_x,e.preview_images,e.links]),le=S(()=>V.mid||V.id,[V.id,V.mid]),H=S(()=>{let e=V.links?.[k]?.id;return e?String(e):`ep-${k+1}`},[k,V.links]),U=S(()=>`__reportData_detail_page__${V.id}:${H}`,[H,V.id]),W=c.data,ue=c.isLoading,de=c.isFetched,fe=W?.materials?.[0],pe=W?.hit===!0,me=!!String(fe?.advertise_video||``).trim(),G=pe&&!!fe&&me,he=S(()=>{if(r||typeof window>`u`)return 0;try{let e=sessionStorage.getItem(U);if(!e)return 0;let t=JSON.parse(e),n=Number(t.currentTime||0),r=Number(t.duration||0);if(!Number.isFinite(n)||!Number.isFinite(r))return 0;if(n>0&&r>0)return n}catch(e){console.error(`读取 sessionStorage 数据失败:`,e)}return 0},[r,U]),K=S(()=>{let e=Number(n||0);return Number.isFinite(e)&&e>0?e:0},[n]),q=S(()=>K>0?K:he,[K,he]),J=S(()=>{let t=re(e),n=t[t.length?Math.max(0,Math.min(k,t.length-1)):0]?.url||``,r=!!t.length;if(!r)return{hasVideo:!1,hlsList:[],videoUrl:``,width:1,height:1,resolution:`0x0`,aspectRatio:1,poster:``};let i=Number(V.img_width||0)||1,a=Number(V.img_height||0)||1;return{hasVideo:r,hlsList:t,videoUrl:n,width:i,height:a,resolution:te(i,a),aspectRatio:(i||1)/(a||1),poster:V.img_y||V.img_x||V.preview_images?.[0]||``}},[e.id,e.links,k,V.img_width,V.img_height,V.img_y,V.img_x,V.preview_images]),ge=b((e,t)=>{y.current=e,O.current=t},[]),_e=S(()=>J.videoUrl.endsWith(`m3u8`)?{startTimeSeconds:q,preload:`none`}:{startTimeSeconds:q},[q,J.videoUrl]);x(()=>{y.current=0,O.current=0},[B,k]),x(()=>{if(ie(!1),R(!1),I(!1),z(!1),P(`auto`),ce(e=>e+1),r){N(`main`);return}if(G){N(`preroll`);return}N(`main`)},[B,H,r,V.id,G]),x(()=>()=>{f.current&&=(window.clearInterval(f.current),null)},[]),x(()=>{if(M!==`preroll`)return;let e=l.current?.getPlayer?.();if(e)try{e.paused||e.pause?.()}catch(e){console.warn(`贴片展示时暂停正片失败:`,e)}},[M,H,V.id]);let Y=b(e=>{let t=l.current?.getPlayer?.();if(!t)return null;try{`muted`in t&&(t.muted=e),`video`in t&&t.video&&(t.video.muted=e),t.volume=e?0:1}catch(e){console.warn(`同步详情页播放器静音状态失败:`,e)}return t},[]),ve=b(()=>{f.current&&=(window.clearInterval(f.current),null);let e=0;f.current=window.setInterval(()=>{e+=1;let t=l.current?.getPlayer?.();if(!t){e>=8&&f.current&&(window.clearInterval(f.current),f.current=null);return}f.current&&=(window.clearInterval(f.current),null),t.play?.().catch(e=>{let t=typeof e==`object`&&e&&`name`in e?String(e.name||``):``,n=typeof e==`object`&&e&&`message`in e?String(e.message||``):String(e||``);if(t===`NotAllowedError`||/user didn't interact|NotAllowedError/i.test(n)){let e=Y(!0);if(!e){z(!0);return}e.play?.().then(()=>{z(!1)}).catch(e=>{console.warn(`详情页静音自动播放失败:`,e),z(!0)});return}console.warn(`详情页恢复正片播放失败:`,e)})},180)},[Y]),X=!r&&de&&!ue&&!L&&(!G||F);x(()=>{!X||!j||(z(!1),ve())},[ve,j,X]);let Z=u({contentId:B,browseEpisode:A,contentType:1,enabled:!r&&!!B,intervalMs:60*1e3,getCurrentTimeSeconds:()=>y.current,getDurationSeconds:()=>O.current}),Q=b(()=>{let t=O.current,n=y.current,r=t>0?Math.round(n/t*100):0;return{media_id:e.id,video_id:H,video_title:e.name,video_type_id:e.cat_id||``,video_type_name:e.cat_name||``,video_content_type:e.content_type===2?`short_video`:`video`,recommend_trace_id:``,video_tag_key:e.tags?.map(e=>e.id).join(`,`)||``,video_tag_name:e.tags?.map(e=>e.name).join(`,`)||``,video_duration:t,play_duration:n,play_progress:r}},[H,e.cat_id,e.cat_name,e.content_type,e.id,e.name,e.tags]);b(()=>{Z.handlePlay(),a({...Q(),video_behavior_key:`video_play`,video_behavior_name:`播放`})},[Z,Q]),b(()=>{Z.handlePause(),a({...Q(),video_behavior_key:`video_pause`,video_behavior_name:`暂停`})},[Z,Q]),b(()=>{Z.handleEnded();let e=O.current,t=y.current;(e>0?t/e:0)>=.95&&a({...Q(),video_behavior_key:`video_complete`,video_behavior_name:`播放完成`})},[Z,Q]);let ye=b(()=>{if(L){let e=l.current?.getPlayer?.();e&&(e.currentTime=0)}I(!0),z(!1),P(`manual`),R(!1),N(`main`)},[L]),be=b(()=>{P(`manual`)},[]),xe=b(()=>{ie(!0)},[]),Se=b(()=>{R(!1),z(!1)},[]),Ce=b(()=>{Se(),Z.handlePlay(),a({...Q(),video_behavior_key:`video_play`,video_behavior_name:`播放`})},[Z,Q,Se]),we=b(()=>{Z.handlePause(),a({...Q(),video_behavior_key:`video_pause`,video_behavior_name:`暂停`})},[Z,Q]),Te=b(()=>{Z.handleEnded();let e=O.current,t=y.current;(e>0?t/e:0)>=.95&&a({...Q(),video_behavior_key:`video_complete`,video_behavior_name:`播放完成`}),G&&(R(!0),z(!1),I(!1),P(`manual`),ce(e=>e+1),N(`main`))},[Z,Q,G]),Ee=G&&M===`main`&&(L||!F&&ae===`manual`),De=M===`main`&&oe,Oe=!r&&!de,ke=Oe,Ae=X,je=!Oe&&(!G||F);async function Me(){G&&(R(!1),I(!1),P(`manual`),N(`preroll`),await d.current?.play?.()||N(`main`))}async function Ne(){let e=Y(!1);if(e)try{await e.play?.(),z(!1)}catch(e){console.warn(`用户点击后启动正片播放失败:`,e)}}if(x(()=>{if(r)return;let e=()=>{if(!(typeof window>`u`)&&!(y.current<=0||O.current<=0))try{sessionStorage.setItem(U,JSON.stringify({episodeId:H,currentTime:y.current,duration:O.current}))}catch(e){console.error(`写入 sessionStorage 失败:`,e)}},t=()=>{e()},n=()=>{document.visibilityState===`hidden`&&e()},i=()=>{e()};return window.addEventListener(`beforeunload`,t),document.addEventListener(`visibilitychange`,n),window.addEventListener(`popstate`,i),()=>{window.removeEventListener(`beforeunload`,t),document.removeEventListener(`visibilitychange`,n),window.removeEventListener(`popstate`,i),e()}},[H,r,U]),!J.hasVideo)return T(`div`,{className:`mt-3 rounded-xl bg-bg1 px-3 py-10 text-center text-text3`,children:m(`videoHero.noVideos`)});let $=ne(430,J.aspectRatio,242),Pe=$.height>0?i($.height):`auto`,Fe=$.height>0?`calc(${Pe} + 0px)`:`auto`,Ie=i(242);return E(h,{value:l,children:[T(s,{suppressHydrationWarning:!0,className:`w-full`,style:{height:Fe,maxWidth:`100%`,maxHeight:`calc(${Ie} + 0px)`}}),E(s,{className:`w-full bg-bg2 !fixed !top-[44px] !left-0 z-[10]`,children:[J.poster&&E(`div`,{className:`w-full h-full bg-bg2 absolute top-0 left-0 z-[1] overflow-hidden`,style:{height:Pe},children:[T(o,{src:J.poster,alt:m(`videoHero.coverAlt`),fill:!0,className:`object-cover`,priority:!0}),T(`div`,{className:`w-full h-full absolute top-0 left-0 z-[1] bg-[rgba(255,255,255,0.2)] backdrop-blur-[4px]`})]}),E(s,{suppressHydrationWarning:!0,"data-aspect-ratio":J.resolution,className:`w-full overflow-hidden flex justify-center relative z-[2]`,style:{height:Pe,maxWidth:`100%`,maxHeight:Ie,backdropFilter:`blur(0)`,WebkitBackdropFilter:`blur(0)`},children:[je&&T(ee,{ref:l,plyerId:`detail-player-${V.id}-${k}`,parentId:le,...Ae?{autoplay:!0}:{autoplay:!1},resolution:J.resolution||`0x0`,videoUrl:J.videoUrl,poster:J.poster,mergeConfig:_e,onProgressUpdate:r?void 0:ge,onPlay:r?void 0:Ce,onPause:r?void 0:we,onEnded:r?void 0:Te,onPlayerReady:xe},`stable-player-${V.id}-${k}-${Ae?`default-autoplay`:`manual`}`),!r&&G&&T(_,{ref:d,adData:W,visible:M===`preroll`,autoStart:M===`preroll`&&ae===`auto`,sessionKey:`${V.id}-${H}-${se}`,onAutoplayBlocked:be,onFinish:ye,onSkip:ye}),Ee&&!De&&T(`button`,{type:`button`,className:`absolute inset-0 z-[10000] flex items-center justify-center bg-black/35 text-white`,onClick:()=>{Me()},children:T(`span`,{className:`flex items-center justify-center w-14 h-14 rounded-full bg-[rgba(0,0,0,0.55)]`,children:T(p,{className:`w-[18px] h-[24px] text-white translate-x-[1px]`})})}),De&&T(`button`,{type:`button`,className:`absolute inset-0 z-[10001] flex items-center justify-center bg-black/35 text-white`,onClick:()=>{Ne()},children:T(`span`,{className:`flex items-center justify-center w-14 h-14 rounded-full bg-[rgba(0,0,0,0.55)]`,children:T(p,{className:`w-[18px] h-[24px] text-white translate-x-[1px]`})})}),ke&&T(`div`,{className:`absolute inset-0 z-[9998] flex items-center justify-center bg-black/20 text-white`,children:T(`span`,{className:`rounded-full bg-[rgba(0,0,0,0.45)] px-5 py-2 text-sm`,children:`加载中`})}),T(g,{videoId:V.id}),T(v,{videoId:V.id})]})]})]})}function te(e,t){return!e||!t?``:`${e}x${t}`}function ne(e,t,n){let r=e/t;return r<=n?{width:e,height:r}:{width:n*t,height:n}}function re(e){let t=e.links||[];return t.length>0?t.map((e,t)=>({text:e.name||String(t+1),url:e.m3u8_url||e.preview_m3u8_url||``,definition:``,isDefault:t===0})).filter(e=>e.url):[]}export{O as DetailHero};
2
+ "use client";import{cn as e}from"../../../../../utils/cn.mjs";import{useUserStore as t}from"../../../../../store/modules/user-store.mjs";import{gUserGetVisitorPermissionConfig as n,pContentMatchAds as r}from"../../../../../service/generated/client.mjs";import{pContentMatchAdsKey as i}from"../../../../../service/generated/tanstack.mjs";import{pxToVw as a}from"../../../../../utils/helper.mjs";import{trackVideoEvent as o}from"../../../../../utils/tracking.mjs";import{Image as s}from"../../../../ui/image.mjs";import{Box as c}from"../../../../ui/box.mjs";import{Text as l}from"../../../../ui/text.mjs";import{useLoginModalStore as ee}from"../../../../../store/modules/login-modal-store.mjs";import{useRequest as te}from"../../../../../hooks/query/use-query.mjs";import{useBrowseReport as ne}from"../../../../../hooks/use-browse-report.mjs";import{MediaPreview as u,useMediaPreview as d}from"../../../../common/media-preview/index.mjs";import f from"../../../../common/video-player/index.mjs";import p from"../../../../../assets/icons/detail/video_play.mjs";import{UserActivityMediaGrid as re}from"../../../../common/list/user-activity-list/user-activity-list-item.mjs";import{VideoPlayerRefContext as m}from"../../../../common/video-player/video-player-ref-context.mjs";import{VideoBlindAdOverlay as h}from"../../../../common/video-player/video-blind-ad-overlay.mjs";import{VideoPrerollAd as ie}from"../../../../common/video-player/video-preroll-ad.mjs";import{VideoPrerollAdOverlay as g}from"../../../../common/video-player/video-preroll-ad-overlay.mjs";import{memo as _,useCallback as v,useEffect as y,useMemo as b,useRef as x,useState as S}from"react";import{jsx as C,jsxs as w}from"react/jsx-runtime";import{useTranslations as T}from"next-intl";function E(e){let t=Number(e);return Number.isFinite(t)&&t>0?t:0}function ae(e){if(!e)return 0;for(let t of[`seconds`,`stay_seconds`,`play_seconds`,`watch_seconds`]){let n=E(e[t]);if(n>0)return n}for(let t of[`内容`,`content`,`video`,`视频`]){let n=e[t],r=E(n?.rule?.seconds);if(r>0)return r}for(let t of Object.values(e)){let e=E(t?.rule?.seconds);if(e>0)return e}return 0}function D(e){return C(oe,{...e})}const oe=_(({mode:n=`renderer`,information:a,isVideo:o,episodeIndex:s=0,resumeProgressSeconds:ee=0,className:ne=``})=>{let f=n===`editor`,p=t(e=>e.userId),m=b(()=>({id:a.id,name:a.name,preview_images:a.preview_images,img_y:a.img_y,img_x:a.img_x}),[a.id,a.name,a.preview_images,a.img_y,a.img_x]),h=b(()=>{let e=a?.medias,t=Array.isArray(e)?e.filter(Boolean):[];return t.length>0?t:(m.preview_images?.length?m.preview_images:[m.img_y||m.img_x||``].filter(Boolean)).filter(Boolean).map(e=>({media_url:e,is_video:!1,cover_image:``}))},[m.img_x,m.img_y,m.preview_images,a]),ie=d(),g=b(()=>h.filter(Boolean).map(e=>{let t=e?.is_video?`video`:`image`,n=String(e?.media_url||``),r=e?.cover_image||a.img_y||a.img_x;return{src:n,type:t,...r?{cover:String(r)}:{}}}).filter(e=>!!e.src),[a.img_x,a.img_y,h]),_=v(e=>{f||!g.length||ie.open(g,e)},[f,ie,g]),y=b(()=>({user_id:p,ad_type:`preroll`}),[p]),x=b(()=>{let e=Math.max(0,Number(s)||0),t=a?.links?.[e]?.id;return t?String(t):`ep-${e+1}`},[s,a?.links]),{data:S,isLoading:T,isFetched:E}=te(b(()=>[`detail-preroll-ad`,a.id,x,...i(y)],[a.id,x,y]),()=>r(y),{enabled:!f&&o,staleTime:0,refetchOnMount:`always`,refetchOnWindowFocus:!1}),ae=b(()=>({data:S?.data??null,isLoading:T,isFetched:E}),[E,T,S?.data]);return f?C(`img`,{src:`/static/components-thumb/video_player.png`,alt:`video-preview`,className:`w-full block`}):o?T?C(`div`,{className:`aspect-video w-full bg-background`}):C(O,{information:a,episodeIndex:s,resumeProgressSeconds:ee,isEditor:f,prerollState:ae}):w(`div`,{className:e(`w-full`,ne),children:[w(c,{className:`mt-3 px-[12px] space-y-1`,children:[C(l,{as:`p`,className:`break-all`,dangerouslySetInnerHTML:{__html:a.description}}),C(re,{medias:h,onItemClick:_})]}),C(u,{})]})});D.displayName=`DetailHero`;const O=_(({information:e,episodeIndex:t,resumeProgressSeconds:n,isEditor:r,prerollState:i})=>{let a=b(()=>({id:e.id,mid:e.mid,img_width:e.img_width,img_height:e.img_height,img_y:e.img_y,img_x:e.img_x,preview_images:e.preview_images}),[e.id,e.mid,e.img_width,e.img_height,e.img_y,e.img_x,e.preview_images]);return C(k,{information:{...e,...a},episodeIndex:t,resumeProgressSeconds:n,isEditor:r,prerollState:i})},(e,t)=>{let n=e.information,r=t.information;return n.id===r.id&&n.mid===r.mid&&n.img_width===r.img_width&&n.img_height===r.img_height&&n.img_y===r.img_y&&n.img_x===r.img_x&&e.resumeProgressSeconds===t.resumeProgressSeconds&&e.episodeIndex===t.episodeIndex&&e.isEditor===t.isEditor&&e.prerollState.data===t.prerollState.data&&e.prerollState.isLoading===t.prerollState.isLoading&&e.prerollState.isFetched===t.prerollState.isFetched});O.displayName=`StableDetailPlayerBox`;function k({information:e,episodeIndex:r,resumeProgressSeconds:i,isEditor:l,prerollState:u}){let d=x(null),re=x(null),_=x(null),E=T(`components.biz.business.detail`),D=t(e=>e.isLogin),oe=t(e=>e.userId),O=ee(e=>e.open),k=ee(e=>e.isOpen),A=x(0),j=x(0),M=x(!1),N=x(!1),P=x(null),ue=x(!1),F=x(!1),de=x(!1),I=Math.max(0,Number(r)||0),fe=I+1,[pe,me]=S(!1),[L,R]=S(`main`),[he,z]=S(`auto`),[ge,B]=S(!1),[V,H]=S(!1),[_e,U]=S(!1),[ve,ye]=S(0),W=b(()=>e?.id,[e?.id]),G=b(()=>({id:e.id,mid:e.mid,img_width:e.img_width,img_height:e.img_height,img_y:e.img_y,img_x:e.img_x,preview_images:e.preview_images,links:e.links}),[e.id,e.mid,e.img_width,e.img_height,e.img_y,e.img_x,e.preview_images,e.links]),be=b(()=>G.mid||G.id,[G.id,G.mid]),K=b(()=>{let e=G.links?.[I]?.id;return e?String(e):`ep-${I+1}`},[I,G.links]),q=b(()=>`__reportData_detail_page__${G.id}:${K}`,[K,G.id]),xe=u.data,Se=u.isLoading,Ce=u.isFetched,we=xe?.materials?.[0],Te=xe?.hit===!0,Ee=!!String(we?.advertise_video||``).trim(),J=Te&&!!we&&Ee,{data:Y}=te(b(()=>[`detail-visitor-permission-config`,oe||`guest`],[oe]),()=>n({user_id:oe||``}),{enabled:!l,staleTime:60*1e3,refetchOnWindowFocus:!1}),X=b(()=>ae(Y?.data?.permission_config),[Y?.data?.permission_config]);y(()=>{ue.current||Y&&(ue.current=!0,console.log(`[visitor-limit] permission config:`,Y?.data?.permission_config||null),console.log(`[visitor-limit] resolved limit: ${X}s`))},[X,Y]);let De=b(()=>{if(l||typeof window>`u`)return 0;try{let e=sessionStorage.getItem(q);if(!e)return 0;let t=JSON.parse(e),n=Number(t.currentTime||0),r=Number(t.duration||0);if(!Number.isFinite(n)||!Number.isFinite(r))return 0;if(n>0&&r>0)return n}catch(e){console.error(`读取 sessionStorage 数据失败:`,e)}return 0},[l,q]),Oe=b(()=>{let e=Number(i||0);return Number.isFinite(e)&&e>0?e:0},[i]),ke=b(()=>Oe>0?Oe:De,[Oe,De]),Z=b(()=>{let t=le(e),n=t[t.length?Math.max(0,Math.min(I,t.length-1)):0]?.url||``,r=!!t.length;if(!r)return{hasVideo:!1,hlsList:[],videoUrl:``,width:1,height:1,resolution:`0x0`,aspectRatio:1,poster:``};let i=Number(G.img_width||0)||1,a=Number(G.img_height||0)||1;return{hasVideo:r,hlsList:t,videoUrl:n,width:i,height:a,resolution:se(i,a),aspectRatio:(i||1)/(a||1),poster:G.img_y||G.img_x||G.preview_images?.[0]||``}},[e.id,e.links,I,G.img_width,G.img_height,G.img_y,G.img_x,G.preview_images]),Ae=v((e,t)=>{if(A.current=e,j.current=t,D||X<=0||M.current){F.current||(F.current=!0,console.log(`[visitor-limit] skip: isLogin=${D}, limit=${X}, triggered=${M.current}`));return}if(e<X){let t=Math.max(0,Math.ceil(X-e));P.current!==t&&(P.current=t,console.log(`[visitor-limit] remaining: ${t}s`));return}M.current=!0,N.current=!0;try{d.current?.getPlayer?.()?.pause?.()}catch(e){console.warn(`暂停视频失败:`,e)}O()},[D,O,X]);y(()=>{D&&(M.current=!1,N.current=!1,P.current=null,F.current=!1)},[D]),y(()=>{let e=de.current;if(de.current=k,!(!e||k||D)&&N.current)try{d.current?.getPlayer?.()?.pause?.()}catch(e){console.warn(`登录弹窗关闭后暂停视频失败:`,e)}},[D,k]);let je=b(()=>Z.videoUrl.endsWith(`m3u8`)?{startTimeSeconds:ke,preload:`none`}:{startTimeSeconds:ke},[ke,Z.videoUrl]);y(()=>{A.current=0,j.current=0,M.current=!1,N.current=!1,P.current=null,F.current=!1,ue.current=!1,de.current=!1},[W,I]),y(()=>{if(me(!1),H(!1),B(!1),U(!1),z(`auto`),ye(e=>e+1),l){R(`main`);return}if(J){R(`preroll`);return}R(`main`)},[W,K,l,G.id,J]),y(()=>()=>{_.current&&=(window.clearInterval(_.current),null)},[]),y(()=>{if(L!==`preroll`)return;let e=d.current?.getPlayer?.();if(e)try{e.paused||e.pause?.()}catch(e){console.warn(`贴片展示时暂停正片失败:`,e)}},[L,K,G.id]);let Me=v(e=>{let t=d.current?.getPlayer?.();if(!t)return null;try{`muted`in t&&(t.muted=e),`video`in t&&t.video&&(t.video.muted=e),t.volume=e?0:1}catch(e){console.warn(`同步详情页播放器静音状态失败:`,e)}return t},[]),Ne=v(()=>{_.current&&=(window.clearInterval(_.current),null);let e=0;_.current=window.setInterval(()=>{e+=1;let t=d.current?.getPlayer?.();if(!t){e>=8&&_.current&&(window.clearInterval(_.current),_.current=null);return}_.current&&=(window.clearInterval(_.current),null),t.play?.().catch(e=>{let t=typeof e==`object`&&e&&`name`in e?String(e.name||``):``,n=typeof e==`object`&&e&&`message`in e?String(e.message||``):String(e||``);if(t===`NotAllowedError`||/user didn't interact|NotAllowedError/i.test(n)){let e=Me(!0);if(!e){U(!0);return}e.play?.().then(()=>{U(!1)}).catch(e=>{console.warn(`详情页静音自动播放失败:`,e),U(!0)});return}console.warn(`详情页恢复正片播放失败:`,e)})},180)},[Me]),Pe=!l&&Ce&&!Se&&!V&&(!J||ge);y(()=>{!Pe||!pe||(U(!1),Ne())},[Ne,pe,Pe]);let Q=ne({contentId:W,browseEpisode:fe,contentType:1,enabled:!l&&!!W,intervalMs:60*1e3,getCurrentTimeSeconds:()=>A.current,getDurationSeconds:()=>j.current}),$=v(()=>{let t=j.current,n=A.current,r=t>0?Math.round(n/t*100):0;return{media_id:e.id,video_id:K,video_title:e.name,video_type_id:e.cat_id||``,video_type_name:e.cat_name||``,video_content_type:e.content_type===2?`short_video`:`video`,recommend_trace_id:``,video_tag_key:e.tags?.map(e=>e.id).join(`,`)||``,video_tag_name:e.tags?.map(e=>e.name).join(`,`)||``,video_duration:t,play_duration:n,play_progress:r}},[K,e.cat_id,e.cat_name,e.content_type,e.id,e.name,e.tags]);v(()=>{Q.handlePlay(),o({...$(),video_behavior_key:`video_play`,video_behavior_name:`播放`})},[Q,$]),v(()=>{Q.handlePause(),o({...$(),video_behavior_key:`video_pause`,video_behavior_name:`暂停`})},[Q,$]),v(()=>{Q.handleEnded();let e=j.current,t=A.current;(e>0?t/e:0)>=.95&&o({...$(),video_behavior_key:`video_complete`,video_behavior_name:`播放完成`})},[Q,$]);let Fe=v(()=>{if(V){let e=d.current?.getPlayer?.();e&&(e.currentTime=0)}B(!0),U(!1),z(`manual`),H(!1),R(`main`)},[V]),Ie=v(()=>{z(`manual`)},[]),Le=v(()=>{me(!0)},[]),Re=v(()=>{H(!1),U(!1)},[]),ze=v(()=>{if(!D&&N.current){try{d.current?.getPlayer?.()?.pause?.()}catch(e){console.warn(`未登录拦截播放时暂停视频失败:`,e)}k||O();return}Re(),Q.handlePlay(),o({...$(),video_behavior_key:`video_play`,video_behavior_name:`播放`})},[Q,$,Re,D,k,O]),Be=v(()=>{Q.handlePause(),o({...$(),video_behavior_key:`video_pause`,video_behavior_name:`暂停`})},[Q,$]),Ve=v(()=>{Q.handleEnded();let e=j.current,t=A.current;(e>0?t/e:0)>=.95&&o({...$(),video_behavior_key:`video_complete`,video_behavior_name:`播放完成`}),J&&(H(!0),U(!1),B(!1),z(`manual`),ye(e=>e+1),R(`main`))},[Q,$,J]),He=J&&L===`main`&&(V||!ge&&he===`manual`),Ue=L===`main`&&_e,We=!l&&!Ce,Ge=We,Ke=Pe,qe=!We&&(!J||ge);async function Je(){J&&(H(!1),B(!1),z(`manual`),R(`preroll`),await re.current?.play?.()||R(`main`))}async function Ye(){let e=Me(!1);if(e)try{await e.play?.(),U(!1)}catch(e){console.warn(`用户点击后启动正片播放失败:`,e)}}if(y(()=>{if(l)return;let e=()=>{if(!(typeof window>`u`)&&!(A.current<=0||j.current<=0))try{sessionStorage.setItem(q,JSON.stringify({episodeId:K,currentTime:A.current,duration:j.current}))}catch(e){console.error(`写入 sessionStorage 失败:`,e)}},t=()=>{e()},n=()=>{document.visibilityState===`hidden`&&e()},r=()=>{e()};return window.addEventListener(`beforeunload`,t),document.addEventListener(`visibilitychange`,n),window.addEventListener(`popstate`,r),()=>{window.removeEventListener(`beforeunload`,t),document.removeEventListener(`visibilitychange`,n),window.removeEventListener(`popstate`,r),e()}},[K,l,q]),!Z.hasVideo)return C(`div`,{className:`mt-3 rounded-xl bg-bg1 px-3 py-10 text-center text-text3`,children:E(`videoHero.noVideos`)});let Xe=ce(430,Z.aspectRatio,242),Ze=Xe.height>0?a(Xe.height):`auto`,Qe=Xe.height>0?`calc(${Ze} + 0px)`:`auto`,$e=a(242);return w(m,{value:d,children:[C(c,{suppressHydrationWarning:!0,className:`w-full`,style:{height:Qe,maxWidth:`100%`,maxHeight:`calc(${$e} + 0px)`}}),w(c,{className:`w-full bg-bg2 !fixed !top-[44px] !left-0 z-[10]`,children:[Z.poster&&w(`div`,{className:`w-full h-full bg-bg2 absolute top-0 left-0 z-[1] overflow-hidden`,style:{height:Ze},children:[C(s,{src:Z.poster,alt:E(`videoHero.coverAlt`),fill:!0,className:`object-cover`,priority:!0}),C(`div`,{className:`w-full h-full absolute top-0 left-0 z-[1] bg-[rgba(255,255,255,0.2)] backdrop-blur-[4px]`})]}),w(c,{suppressHydrationWarning:!0,"data-aspect-ratio":Z.resolution,className:`w-full overflow-hidden flex justify-center relative z-[2]`,style:{height:Ze,maxWidth:`100%`,maxHeight:$e,backdropFilter:`blur(0)`,WebkitBackdropFilter:`blur(0)`},children:[qe&&C(f,{ref:d,plyerId:`detail-player-${G.id}-${I}`,parentId:be,...Ke?{autoplay:!0}:{autoplay:!1},resolution:Z.resolution||`0x0`,videoUrl:Z.videoUrl,poster:Z.poster,mergeConfig:je,onProgressUpdate:l?void 0:Ae,onPlay:l?void 0:ze,onPause:l?void 0:Be,onEnded:l?void 0:Ve,onPlayerReady:Le},`stable-player-${G.id}-${I}-${Ke?`default-autoplay`:`manual`}`),!l&&J&&C(ie,{ref:re,adData:xe,visible:L===`preroll`,autoStart:L===`preroll`&&he===`auto`,sessionKey:`${G.id}-${K}-${ve}`,onAutoplayBlocked:Ie,onFinish:Fe,onSkip:Fe}),He&&!Ue&&C(`button`,{type:`button`,className:`absolute inset-0 z-[10000] flex items-center justify-center bg-black/35 text-white`,onClick:()=>{Je()},children:C(`span`,{className:`flex items-center justify-center w-14 h-14 rounded-full bg-[rgba(0,0,0,0.55)]`,children:C(p,{className:`w-[18px] h-[24px] text-white translate-x-[1px]`})})}),Ue&&C(`button`,{type:`button`,className:`absolute inset-0 z-[10001] flex items-center justify-center bg-black/35 text-white`,onClick:()=>{Ye()},children:C(`span`,{className:`flex items-center justify-center w-14 h-14 rounded-full bg-[rgba(0,0,0,0.55)]`,children:C(p,{className:`w-[18px] h-[24px] text-white translate-x-[1px]`})})}),Ge&&C(`div`,{className:`absolute inset-0 z-[9998] flex items-center justify-center bg-black/20 text-white`,children:C(`span`,{className:`rounded-full bg-[rgba(0,0,0,0.45)] px-5 py-2 text-sm`,children:`加载中`})}),C(h,{videoId:G.id}),C(g,{videoId:G.id})]})]})]})}function se(e,t){return!e||!t?``:`${e}x${t}`}function ce(e,t,n){let r=e/t;return r<=n?{width:e,height:r}:{width:n*t,height:n}}function le(e){let t=e.links||[];return t.length>0?t.map((e,t)=>({text:e.name||String(t+1),url:e.m3u8_url||e.preview_m3u8_url||``,definition:``,isDefault:t===0})).filter(e=>e.url):[]}export{D as DetailHero};
@@ -1,2 +1,2 @@
1
1
 
2
- const e=`absolute left-[8px] top-[12px] z-10 flex min-w-0 items-center`,t=`h-[18px] w-auto max-w-[96px] rounded-[4px] object-contain`;function n(e){return typeof e==`string`?e.trim():``}export{t as RECOMMEND_BADGE_IMAGE_CLASS_NAME,e as RECOMMEND_TOP_LEFT_BADGE_WRAPPER_CLASS_NAME,n as normalizeRecommendBadgeUrl};
2
+ const e=`absolute left-[8px] top-[12px] z-[1] flex min-w-0 items-center`,t=`h-[18px] w-auto max-w-[96px] rounded-[4px] object-contain`;function n(e){return typeof e==`string`?e.trim():``}export{t as RECOMMEND_BADGE_IMAGE_CLASS_NAME,e as RECOMMEND_TOP_LEFT_BADGE_WRAPPER_CLASS_NAME,n as normalizeRecommendBadgeUrl};
@@ -1,2 +1,2 @@
1
1
 
2
- "use client";import{Image as e}from"../../../ui/image.mjs";import{Box as t}from"../../../ui/box.mjs";import{Text as n}from"../../../ui/text.mjs";import r from"../../../ui/link.mjs";import i from"../../../../assets/icons/detail/video_flag.mjs";import{CollectionSelectIcon as a,CollectionSelectedIcon as o}from"../collection-list/collection-select-icon.mjs";import{RECOMMEND_BADGE_IMAGE_CLASS_NAME as s,RECOMMEND_TOP_LEFT_BADGE_WRAPPER_CLASS_NAME as c,normalizeRecommendBadgeUrl as l}from"./recommend-badge-style.mjs";import{WATERFALL_SHORT_CARD_ASPECT_RATIO as u,WATERFALL_TALL_CARD_ASPECT_RATIO as d,buildWaterfallRecommendLegacyDisplay as f}from"./waterfall-recommend-display.mjs";import{Fragment as p,jsx as m,jsxs as h}from"react/jsx-runtime";const g={backgroundImage:`var(--gradient-card-mask-strong)`};function _({title:e,moreHref:i,onMoreClick:a,moreIcon:o,columns:s,sectionClassName:c=`w-full`,headerClassName:l=`mb-[16px] flex items-center justify-between px-[16px]`,titleClassName:u=`flex-1 min-w-0 text-[18px] leading-[24px] font-medium line-clamp-1 text-text2`,moreLinkClassName:d=`ml-[8px] flex size-[24px] shrink-0 items-center justify-center opacity-50`,containerClassName:f=`relative flex w-full gap-[15px] px-[16px]`,overlay:p,footer:g,getItemRef:_,selectionMode:y=!1,selectedIds:b,onToggleSelection:x,onItemClick:S}){return h(t,{className:c,children:[h(t,{className:l,children:[m(n,{className:u,children:e}),o&&i&&m(r,{href:i,"aria-label":`更多`,className:d,onClick:a,children:o}),o&&!i&&a&&m(`button`,{type:`button`,"aria-label":`更多`,className:d,onClick:a,children:o})]}),h(t,{className:f,children:[m(t,{className:`flex-1 min-w-0 flex flex-col`,children:s.left.map((e,t)=>m(`div`,{ref:_?.({item:e,column:`left`,columnIndex:t}),children:m(v,{item:e,selectionMode:y,selectedIds:b,onToggleSelection:x,onItemClick:S})},e.key))}),m(t,{className:`flex-1 min-w-0 flex flex-col`,children:s.right.map((e,t)=>m(`div`,{ref:_?.({item:e,column:`right`,columnIndex:t}),children:m(v,{item:e,selectionMode:y,selectedIds:b,onToggleSelection:x,onItemClick:S})},e.key))}),p]}),g]})}function v({item:_,selectionMode:v=!1,selectedIds:y,onToggleSelection:b,onItemClick:x}){let S=_.cardKind===`short`?u:d,C=_.selectionId??``,w=!!(C&&y?.has(C)),T=f(_),E=l(T.topLeftBadgeImageUrl);function D(){!v||!C||b?.(C)}let O=h(p,{children:[h(t,{className:`relative w-full overflow-hidden rounded-[8px] bg-[#18111f]`,style:{aspectRatio:S},children:[_.coverUrl&&m(e,{src:_.coverUrl,alt:_.title||`推荐封面`,fill:!0,objectFit:`cover`,className:`object-cover`}),m(t,{className:`pointer-events-none absolute inset-0 rounded-[8px]`,style:g,"aria-hidden":!0}),v&&m(t,{className:`pointer-events-none absolute left-[8px] top-[8px] z-20`,children:m(w?o:a,{})}),!v&&h(p,{children:[E&&m(t,{className:c,children:m(e,{src:E,alt:`角标`,width:96,height:18,className:s})}),T.topRightScoreText&&m(n,{as:`span`,className:`absolute right-[8px] top-[8px] z-10 shrink-0 text-[14px] leading-[22px] font-semibold text-[#FFC24B]`,children:T.topRightScoreText}),h(t,{className:`absolute left-[8px] right-[8px] bottom-[10px] z-10 flex items-end justify-between gap-[8px]`,children:[m(t,{className:`flex min-w-0 items-center gap-[4px]`,children:T.bottomLeftHeatText&&h(p,{children:[m(i,{className:`h-[16px] w-[16px] shrink-0 text-white`}),m(n,{as:`span`,className:`min-w-0 truncate text-[14px] leading-[20px] text-white`,children:T.bottomLeftHeatText})]})}),T.bottomRightEpisodeText&&m(n,{as:`span`,className:`shrink-0 text-[14px] leading-[20px] text-white`,children:T.bottomRightEpisodeText})]})]})]}),!v&&m(t,{className:`mt-[8px] overflow-hidden`,children:m(n,{as:`h3`,className:`line-clamp-2 text-[16px] leading-[22px] text-[--color-text-white80]`,children:T.title})})]});return v?m(`button`,{type:`button`,className:`mb-[16px] block w-full cursor-pointer border-0 bg-transparent p-0 text-left`,onClick:D,"aria-pressed":w,disabled:!C,children:O}):m(r,{href:_.href,className:`mb-[16px] block w-full`,onClick:()=>x?.(_),children:O})}export{_ as WaterfallRecommend};
2
+ "use client";import{Image as e}from"../../../ui/image.mjs";import{Box as t}from"../../../ui/box.mjs";import{Text as n}from"../../../ui/text.mjs";import r from"../../../ui/link.mjs";import i from"../../../../assets/icons/detail/video_flag.mjs";import{CollectionSelectIcon as a,CollectionSelectedIcon as o}from"../collection-list/collection-select-icon.mjs";import{RECOMMEND_BADGE_IMAGE_CLASS_NAME as s,RECOMMEND_TOP_LEFT_BADGE_WRAPPER_CLASS_NAME as c,normalizeRecommendBadgeUrl as l}from"./recommend-badge-style.mjs";import{WATERFALL_SHORT_CARD_ASPECT_RATIO as u,WATERFALL_TALL_CARD_ASPECT_RATIO as d,buildWaterfallRecommendLegacyDisplay as f}from"./waterfall-recommend-display.mjs";import{Fragment as p,jsx as m,jsxs as h}from"react/jsx-runtime";const g={backgroundImage:`var(--gradient-card-mask-strong)`};function _({title:e,moreHref:i,onMoreClick:a,moreIcon:o,columns:s,sectionClassName:c=`w-full`,headerClassName:l=`mb-[16px] flex items-center justify-between px-[16px]`,titleClassName:u=`flex-1 min-w-0 text-[18px] leading-[24px] font-medium line-clamp-1 text-text2`,moreLinkClassName:d=`ml-[8px] flex size-[24px] shrink-0 items-center justify-center opacity-50`,containerClassName:f=`relative flex w-full gap-[15px] px-[16px]`,overlay:p,footer:g,getItemRef:_,selectionMode:y=!1,selectedIds:b,onToggleSelection:x,onItemClick:S}){return h(t,{className:c,children:[h(t,{className:l,children:[m(n,{className:u,children:e}),o&&i&&m(r,{href:i,"aria-label":`更多`,className:d,onClick:a,children:o}),o&&!i&&a&&m(`button`,{type:`button`,"aria-label":`更多`,className:d,onClick:a,children:o})]}),h(t,{className:f,children:[m(t,{className:`flex-1 min-w-0 flex flex-col`,children:s.left.map((e,t)=>m(`div`,{ref:_?.({item:e,column:`left`,columnIndex:t}),children:m(v,{item:e,selectionMode:y,selectedIds:b,onToggleSelection:x,onItemClick:S})},e.key))}),m(t,{className:`flex-1 min-w-0 flex flex-col`,children:s.right.map((e,t)=>m(`div`,{ref:_?.({item:e,column:`right`,columnIndex:t}),children:m(v,{item:e,selectionMode:y,selectedIds:b,onToggleSelection:x,onItemClick:S})},e.key))}),p]}),g]})}function v({item:_,selectionMode:v=!1,selectedIds:y,onToggleSelection:b,onItemClick:x}){let S=_.cardKind===`short`?u:d,C=_.selectionId??``,w=!!(C&&y?.has(C)),T=f(_),E=l(T.topLeftBadgeImageUrl);function D(){!v||!C||b?.(C)}let O=h(p,{children:[h(t,{className:`relative w-full overflow-hidden rounded-[8px] bg-[#18111f]`,style:{aspectRatio:S},children:[_.coverUrl&&m(e,{src:_.coverUrl,alt:_.title||`推荐封面`,fill:!0,objectFit:`cover`,className:`object-cover`}),m(t,{className:`pointer-events-none absolute inset-0 rounded-[8px]`,style:g,"aria-hidden":!0}),v&&m(t,{className:`pointer-events-none absolute left-[8px] top-[8px] z-[2]`,children:m(w?o:a,{})}),!v&&h(p,{children:[E&&m(t,{className:c,children:m(e,{src:E,alt:`角标`,width:96,height:18,className:s})}),T.topRightScoreText&&m(n,{as:`span`,className:`absolute right-[8px] top-[8px] z-[1] shrink-0 text-[14px] leading-[22px] font-semibold text-[#FFC24B]`,children:T.topRightScoreText}),h(t,{className:`absolute left-[8px] right-[8px] bottom-[10px] z-[1] flex items-end justify-between gap-[8px]`,children:[m(t,{className:`flex min-w-0 items-center gap-[4px]`,children:T.bottomLeftHeatText&&h(p,{children:[m(i,{className:`h-[16px] w-[16px] shrink-0 text-white`}),m(n,{as:`span`,className:`min-w-0 truncate text-[14px] leading-[20px] text-white`,children:T.bottomLeftHeatText})]})}),T.bottomRightEpisodeText&&m(n,{as:`span`,className:`shrink-0 text-[14px] leading-[20px] text-white`,children:T.bottomRightEpisodeText})]})]})]}),!v&&m(t,{className:`mt-[8px] overflow-hidden`,children:m(n,{as:`h3`,className:`line-clamp-2 text-[16px] leading-[22px] text-[--color-text-white80]`,children:T.title})})]});return v?m(`button`,{type:`button`,className:`mb-[16px] block w-full cursor-pointer border-0 bg-transparent p-0 text-left`,onClick:D,"aria-pressed":w,disabled:!C,children:O}):m(r,{href:_.href,className:`mb-[16px] block w-full`,onClick:()=>x?.(_),children:O})}export{_ as WaterfallRecommend};
@@ -8,7 +8,7 @@ import * as class_variance_authority_types0 from "class-variance-authority/types
8
8
  /** buttonVariants 工具定义。 */
9
9
  declare const buttonVariants: (props?: ({
10
10
  variant?: "link" | "default" | "secondary" | "destructive" | "outline" | "ghost" | null | undefined;
11
- size?: "icon" | "default" | "xs" | "sm" | "lg" | "icon-xs" | "icon-sm" | "icon-lg" | null | undefined;
11
+ size?: "default" | "xs" | "sm" | "lg" | "icon" | "icon-xs" | "icon-sm" | "icon-lg" | null | undefined;
12
12
  } & class_variance_authority_types0.ClassProp) | undefined) => string;
13
13
  /** Button 组件属性。 */
14
14
  type ButtonProps = Button.Props & VariantProps<typeof buttonVariants> & {
@@ -34,7 +34,7 @@ type EmptyStateProps = React.ComponentProps<'div'> & {
34
34
  };
35
35
  /** emptyMediaVariants 工具定义。 */
36
36
  declare const emptyMediaVariants: (props?: ({
37
- variant?: "icon" | "default" | null | undefined;
37
+ variant?: "default" | "icon" | null | undefined;
38
38
  } & class_variance_authority_types0.ClassProp) | undefined) => string;
39
39
  /** EmptyMedia 组件。 */
40
40
  declare function EmptyMedia({
@@ -82,7 +82,7 @@ declare function Item({
82
82
  }: ItemProps): React.ReactElement;
83
83
  /** itemMediaVariants 工具定义。 */
84
84
  declare const itemMediaVariants: (props?: ({
85
- variant?: "icon" | "default" | "image" | null | undefined;
85
+ variant?: "default" | "icon" | "image" | null | undefined;
86
86
  } & class_variance_authority_types0.ClassProp) | undefined) => string;
87
87
  /** ItemMedia 组件。 */
88
88
  declare function ItemMedia({
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@funhub/platform",
3
3
  "type": "module",
4
- "version": "0.2.14",
4
+ "version": "0.2.15",
5
5
  "private": false,
6
6
  "sideEffects": [
7
7
  "**/*.css"