@funhub/platform 0.1.35 → 0.1.37

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.
Files changed (136) hide show
  1. package/dist/assets/images/frame.mjs +2 -0
  2. package/dist/biz.d.mts +13 -13
  3. package/dist/biz.mjs +1 -1
  4. package/dist/components/biz/basics/logo/variants/basic-logo/runtime/client.mjs +1 -1
  5. package/dist/components/biz/business/channel-list/client.mjs +1 -1
  6. package/dist/components/biz/business/detail/detail-operate.mjs +1 -1
  7. package/dist/components/biz/business/detail/materials/editor-preview.mjs +2 -0
  8. package/dist/components/biz/business/detail/materials/video-detail-actions/client.mjs +1 -1
  9. package/dist/components/biz/business/detail/materials/video-detail-info/client.d.mts +1 -1
  10. package/dist/components/biz/business/detail/materials/video-detail-info/client.mjs +1 -1
  11. package/dist/components/biz/business/detail/materials/video-detail-info/material.mjs +1 -1
  12. package/dist/components/biz/business/detail/materials/video-detail-info/schema.d.mts +2 -2
  13. package/dist/components/biz/business/detail/materials/video-detail-info/server.d.mts +1 -1
  14. package/dist/components/biz/business/detail/materials/video-detail-info-title/client.d.mts +1 -1
  15. package/dist/components/biz/business/detail/materials/video-detail-info-title/client.mjs +1 -1
  16. package/dist/components/biz/business/detail/materials/video-detail-info-title/material.mjs +1 -1
  17. package/dist/components/biz/business/detail/materials/video-detail-info-title/schema.d.mts +2 -2
  18. package/dist/components/biz/business/detail/materials/video-detail-info-title/server.d.mts +1 -1
  19. package/dist/components/biz/business/detail/materials/video-detail-info-title-tags-episodes/client.d.mts +1 -1
  20. package/dist/components/biz/business/detail/materials/video-detail-info-title-tags-episodes/client.mjs +1 -1
  21. package/dist/components/biz/business/detail/materials/video-detail-info-title-tags-episodes/material.mjs +1 -1
  22. package/dist/components/biz/business/detail/materials/video-detail-info-title-tags-episodes/schema.d.mts +2 -2
  23. package/dist/components/biz/business/detail/materials/video-detail-info-title-tags-episodes/server.d.mts +1 -1
  24. package/dist/components/biz/business/detail/materials/video-detail-player/client.mjs +1 -1
  25. package/dist/components/biz/business/detail/materials/video-detail-recommend/client.mjs +1 -1
  26. package/dist/components/biz/business/detail/materials/video-detail-recommend/material.mjs +1 -1
  27. package/dist/components/biz/business/detail/materials/video-detail-recommend/schema.mjs +1 -1
  28. package/dist/components/biz/business/detail/video-hero.mjs +1 -1
  29. package/dist/components/biz/business/home-recommend/shared/home-recommend-base.mjs +1 -1
  30. package/dist/components/biz/business/home-recommend/shared/home-recommend-preview.mjs +2 -0
  31. package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/inspector-schema.d.mts +4 -0
  32. package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/inspector-schema.mjs +1 -1
  33. package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/material.d.mts +2 -0
  34. package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/material.mjs +1 -1
  35. package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/runtime/client.mjs +1 -1
  36. package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/schema/component.mjs +1 -1
  37. package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/server.mjs +1 -1
  38. package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/defaults/default-props.d.mts +1 -3
  39. package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/defaults/default-props.mjs +1 -1
  40. package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/inspector-schema.d.mts +4 -2
  41. package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/inspector-schema.mjs +1 -1
  42. package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/material.d.mts +2 -1
  43. package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/material.mjs +1 -1
  44. package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/runtime/client.mjs +1 -1
  45. package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/schema/component.mjs +1 -1
  46. package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/schema/props.schema.mjs +1 -1
  47. package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/server.mjs +1 -1
  48. package/dist/components/biz/business/index.d.mts +12 -12
  49. package/dist/components/biz/business/index.mjs +1 -1
  50. package/dist/components/biz/business/large-feature-grid/client.mjs +1 -1
  51. package/dist/components/biz/business/large-feature-grid/material.d.mts +4 -3
  52. package/dist/components/biz/business/large-feature-grid/material.mjs +1 -1
  53. package/dist/components/biz/business/large-feature-grid/schema.mjs +1 -1
  54. package/dist/components/biz/business/marquee/client.d.mts +7 -9
  55. package/dist/components/biz/business/marquee/client.mjs +1 -1
  56. package/dist/components/biz/business/marquee/index.d.mts +2 -2
  57. package/dist/components/biz/business/marquee/material.d.mts +15 -6
  58. package/dist/components/biz/business/marquee/schema.d.mts +23 -28
  59. package/dist/components/biz/business/marquee/schema.mjs +1 -1
  60. package/dist/components/biz/business/marquee/server.d.mts +1 -1
  61. package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/runtime/client.mjs +1 -1
  62. package/dist/components/biz/business/profile/profile-main/tabs/collect-tab/client.mjs +1 -1
  63. package/dist/components/biz/business/profile/profile-main/tabs/collect-tab/server.mjs +1 -1
  64. package/dist/components/biz/business/profile/profile-main/tabs/history-tab/client.mjs +1 -1
  65. package/dist/components/biz/business/profile/profile-main/tabs/history-tab/server.mjs +1 -1
  66. package/dist/components/biz/business/profile/profile-main/tabs/like-tab/client.mjs +1 -1
  67. package/dist/components/biz/business/profile/profile-main/tabs/like-tab/server.mjs +1 -1
  68. package/dist/components/biz/business/search-history/client.d.mts +10 -12
  69. package/dist/components/biz/business/search-history/client.mjs +1 -1
  70. package/dist/components/biz/business/search-history/index.d.mts +2 -2
  71. package/dist/components/biz/business/search-history/material.d.mts +1 -1
  72. package/dist/components/biz/business/search-history/schema.d.mts +7 -15
  73. package/dist/components/biz/business/search-history/schema.mjs +1 -1
  74. package/dist/components/biz/business/search-history/server.d.mts +6 -2
  75. package/dist/components/biz/business/search-input/client.d.mts +11 -9
  76. package/dist/components/biz/business/search-input/client.mjs +1 -1
  77. package/dist/components/biz/business/search-input/index.d.mts +2 -2
  78. package/dist/components/biz/business/search-input/schema.d.mts +6 -10
  79. package/dist/components/biz/business/search-input/schema.mjs +1 -1
  80. package/dist/components/biz/business/search-input/server.d.mts +1 -1
  81. package/dist/components/biz/business/shortcut-grid/material.d.mts +1 -1
  82. package/dist/components/biz/business/shortcut-grid/schema.d.mts +1 -1
  83. package/dist/components/biz/business/shortcut-grid/schema.mjs +1 -1
  84. package/dist/components/biz/business/tab-bar/client.d.mts +6 -5
  85. package/dist/components/biz/business/tab-bar/client.mjs +1 -1
  86. package/dist/components/biz/business/tab-bar/index.d.mts +2 -2
  87. package/dist/components/biz/business/tab-bar/schema.d.mts +10 -18
  88. package/dist/components/biz/business/tab-bar/schema.mjs +1 -1
  89. package/dist/components/biz/business/tab-bar/server.d.mts +1 -1
  90. package/dist/components/biz/business/text-recommend/client.d.mts +10 -14
  91. package/dist/components/biz/business/text-recommend/client.mjs +1 -1
  92. package/dist/components/biz/business/text-recommend/index.d.mts +2 -2
  93. package/dist/components/biz/business/text-recommend/material.d.mts +4 -1
  94. package/dist/components/biz/business/text-recommend/schema.d.mts +9 -12
  95. package/dist/components/biz/business/text-recommend/schema.mjs +1 -1
  96. package/dist/components/biz/business/text-recommend/server.d.mts +1 -1
  97. package/dist/components/biz/business/text-recommend/server.mjs +1 -1
  98. package/dist/components/biz/business/video-horizontal-list/client.d.mts +5 -2
  99. package/dist/components/biz/business/video-horizontal-list/client.mjs +1 -1
  100. package/dist/components/biz/business/video-horizontal-list/index.d.mts +2 -2
  101. package/dist/components/biz/business/video-horizontal-list/material.d.mts +19 -8
  102. package/dist/components/biz/business/video-horizontal-list/schema.d.mts +20 -24
  103. package/dist/components/biz/business/video-horizontal-list/schema.mjs +1 -1
  104. package/dist/components/biz/business/video-horizontal-list/server.d.mts +1 -1
  105. package/dist/components/common/delete-confirm-dialog/delete-confirm-dialog.mjs +1 -1
  106. package/dist/components/common/list/collection-list/collection-list-item.d.mts +1 -0
  107. package/dist/components/common/list/collection-list/collection-list-item.mjs +1 -1
  108. package/dist/components/common/popup-video/index.mjs +1 -1
  109. package/dist/components/pages/feed-series/feed-series-client.mjs +1 -1
  110. package/dist/components/pages/home/client.mjs +1 -1
  111. package/dist/components/pages/post-detail/post-detail-client.mjs +1 -1
  112. package/dist/components/pages/publish/page-client.mjs +1 -1
  113. package/dist/components/pages/search/hot-recommend.mjs +1 -1
  114. package/dist/components/pages/search/page-client.mjs +1 -1
  115. package/dist/components/pages/search/search-result/search-all.mjs +1 -1
  116. package/dist/components/pages/user-follow/page.mjs +1 -1
  117. package/dist/components/pages/video-detail/page.mjs +1 -1
  118. package/dist/components/pages/video-detail/video-detail-client.mjs +1 -1
  119. package/dist/components/ui/button.d.mts +1 -1
  120. package/dist/components/ui/image.d.mts +4 -4
  121. package/dist/constants/event-key.mjs +1 -1
  122. package/dist/hooks/use-search-history.mjs +1 -1
  123. package/dist/i18n/locales/en.mjs +1 -1
  124. package/dist/i18n/locales/zh-CN.mjs +1 -1
  125. package/dist/utils/schema/index.d.mts +1 -1
  126. package/dist/utils/schema/inspector.d.mts +31 -1
  127. package/dist/utils/schema/material.d.mts +1 -1
  128. package/dist/utils/schema/schema.d.mts +31 -2
  129. package/dist/utils/schema/schema.mjs +1 -1
  130. package/dist/utils.d.mts +2 -2
  131. package/dist/utils.mjs +1 -1
  132. package/package.json +1 -1
  133. package/dist/components/biz/business/large-feature-grid/client.d.mts +0 -15
  134. package/dist/components/biz/business/large-feature-grid/default.mjs +0 -2
  135. package/dist/components/biz/business/large-feature-grid/server.d.mts +0 -13
  136. package/dist/components/biz/business/large-feature-grid/types.d.mts +0 -53
@@ -7,14 +7,14 @@ import * as zod_v4_core0 from "zod/v4/core";
7
7
 
8
8
  //#region components/biz/business/detail/materials/video-detail-info-title-tags-episodes/schema.d.ts
9
9
  /**
10
- * 标题+标签+选集变体物料暂不对外开放配置。
10
+ * 媒体信息-选集物料暂不对外开放配置。
11
11
  */
12
12
  declare const videoDetailInfoTitleTagsEpisodesInspectorPropsSchema: zod.ZodObject<{
13
13
  showTags: zod.ZodBoolean & SchemaHasDefaultValue;
14
14
  showEpisodes: zod.ZodBoolean & SchemaHasDefaultValue;
15
15
  }, zod_v4_core0.$strip>;
16
16
  type VideoDetailInfoTitleTagsEpisodesInspectorProps = InferSchemaProps<typeof videoDetailInfoTitleTagsEpisodesInspectorPropsSchema>;
17
- /** 标题+标签+选集变体物料 props。 */
17
+ /** 媒体信息-选集物料 props。 */
18
18
  type VideoDetailInfoTitleTagsEpisodesProps = VideoDetailInfoTitleTagsEpisodesInspectorProps & {
19
19
  /** 视频详情信息。 */information: SafeInformationType; /** 当前选集数。 */
20
20
  currentSeriesNum: number; /** 选集变更回调。 */
@@ -4,7 +4,7 @@ import * as react_jsx_runtime0 from "react/jsx-runtime";
4
4
 
5
5
  //#region components/biz/business/detail/materials/video-detail-info-title-tags-episodes/server.d.ts
6
6
  /**
7
- * 标题+标签+选集变体物料服务端组件。
7
+ * 媒体信息-选集物料服务端组件。
8
8
  */
9
9
  declare function VideoDetailInfoTitleTagsEpisodes(props: VideoDetailInfoTitleTagsEpisodesProps): react_jsx_runtime0.JSX.Element;
10
10
  //#endregion
@@ -1,2 +1,2 @@
1
1
 
2
- "use client";import{useAppContext as e}from"../../../../../../hooks/use-app-context/index.mjs";import{DetailHero as t}from"../../video-hero.mjs";import{jsx as n}from"react/jsx-runtime";function r({information:r,episodeIndex:i,resumeProgressSeconds:a}){return e()===`editor`?n(`div`,{children:`占位`}):n(t,{isVideo:!0,information:r,episodeIndex:i,resumeProgressSeconds:a})}export{r as VideoDetailPlayerClient};
2
+ "use client";import{useAppContext as e}from"../../../../../../hooks/use-app-context/index.mjs";import{editorPreviewInformation as t}from"../editor-preview.mjs";import{DetailHero as n}from"../../video-hero.mjs";import{jsx as r}from"react/jsx-runtime";function i({information:i,episodeIndex:a,resumeProgressSeconds:o}){let s=e()===`editor`||!i,c=s?{...t,id:``,mid:``}:i;return r(`div`,{className:s?`pointer-events-none`:void 0,children:r(n,{isVideo:!0,information:c,episodeIndex:s?0:a,resumeProgressSeconds:s?0:o})})}export{i as VideoDetailPlayerClient};
@@ -1,2 +1,2 @@
1
1
 
2
- "use client";import{gContentGetGuessYouLikeVideos as e}from"../../../../../../service/generated/client.mjs";import{Box as t}from"../../../../../ui/box.mjs";import{Text as n}from"../../../../../ui/text.mjs";import{useRequest as r}from"../../../../../../hooks/query/use-query.mjs";import{useAppContext as i}from"../../../../../../hooks/use-app-context/index.mjs";import a from"../../../../../../assets/icons/detail/video_flag.mjs";import{MiniThreeCard as o}from"../../../../../common/cards/mini-three-card.mjs";import{useCardDecoration as s}from"../../../../../../hooks/use-card-decoration.mjs";import{applyPlayCountDelta as c,buildEpisodeLabel as l,clampColumns as u,mergeManualAndPool as d,mockPagedList as f,resolveRows as p}from"./utils.mjs";import{useEffect as m,useMemo as h,useRef as g,useState as _}from"react";import{jsx as v,jsxs as y}from"react/jsx-runtime";import{useTranslations as b}from"next-intl";function x({detailId:x,rows:w,columns:T,smartTagEnabled:E,smartTagIds:D,title:O,showPlayCount:k,playCountDelta:A,showEpisode:j,enableInfinite:M,items:N}){let P=i()===`editor`,te=b(`components.biz.business.detail`),{getVerticalHoCoverImageUrl:F,getTitleText:I}=s(),[L,R]=_(1),z=g(null),B=h(()=>D??[],[D]),V=h(()=>N??[],[N]),{data:H}=r([`video-detail-recommend`,x],async()=>!x||P?null:await e(),{enabled:!P&&!!x}),U=h(()=>{let e=H?.data?.videos;return Array.isArray(e)?e.map(e=>S(e)).filter(e=>!x||!e.id||e.id!==x):[]},[H?.data?.videos,x]),W=p(w,M),G=u(T),K=W*G,q=h(()=>new Set(V.map(e=>e.contentId)),[V]),J=h(()=>{let e=U.filter(e=>!q.has(e.id));if(!E||B.length===0)return e;let t=new Set(B.map(String));return e.filter(e=>(Array.isArray(e.source_tags)?e.source_tags:String(e.source_tags||``).split(`,`).filter(Boolean)).some(e=>t.has(String(e?.id??e))))},[q,U,E,B]),Y=h(()=>{if(!V.length)return[];let e=new Map(J.map(e=>[e.id,e]));return V.map(t=>{let n=e.get(t.contentId);if(!n)return null;let r=t.titleMode===`custom`?t.title:I(n),i=t.coverMode===`upload`?t.coverUrl:F(n);return{info:{...n,name:r||n.name,img_y:i||n.img_y,img_x:i||n.img_x},config:{showPlayCount:t.showPlayCount,playCountDelta:t.playCountDelta,showEpisode:t.showEpisode}}}).filter(Boolean)},[J,I,F,V]),X=h(()=>J.map(e=>({info:e})),[J]),Z=h(()=>d(Y,X,K),[Y,K,X]),Q=h(()=>{if(!M)return Z;let e=f(X,L,K,5);return L===1?Z:Z.concat(e)},[Z,M,L,K,X]),$=M&&L<5&&X.length>0;return m(()=>{M&&R(1)},[x,M]),m(()=>{if(!M)return;let e=z.current;if(!e||!$)return;let t=new IntersectionObserver(e=>{e[0]?.isIntersecting&&R(e=>Math.min(e+1,5))});return t.observe(e),()=>{t.disconnect()}},[M,$]),P?v(`div`,{children:`占位`}):Q.length?y(t,{className:`w-full mt-[16px]`,children:[v(n,{className:`block pl-[12px] mb-[8px] text-text1 text-[18px] leading-[26px] font-bold`,children:O||te(`detailGuessLike.title`)}),v(t,{className:`w-full flex flex-wrap px-[12px]`,children:Q.map((e,t)=>{let n=e.config?.showPlayCount??k,r=e.config?.playCountDelta??A,i=e.config?.showEpisode??j,s=C(c(e.info.play_count||0,r)),u=l(Number(e.info.update_status)===1?`done`:`updating`,e.info.episode_cnt||e.info.links?.length,e.info.episode_cnt||e.info.links?.length),d=Number.isFinite(G)&&G>0?`${100/G}%`:`33.333333%`;return v(o,{url:F(e.info),text:I(e.info),style:{width:d},bottomLeftChild:n?y(`div`,{className:`h-[20px] leading-[20px] text-[#fff] text-[12px] px-[4px] rounded-[4px] bg-[#333] ml-[4px] flex items-center`,children:[v(a,{className:`w-[16px] h-[auto] text-[#fff] mr-[4px]`}),s]}):null,bottomRightChild:i&&u?v(`div`,{className:`text-[#F59E0B] text-[12px] font-bold leading-[20px] pr-[8px]`,children:u}):null,linkPath:ee(e.info)},`guess-like-${t}`)})}),M&&v(`div`,{ref:z,className:`h-[1px] w-full`})]}):null}function S(e){return{id:e.video_id||``,mid:``,name:e.name||``,cat_id:``,cat_name:``,status:`1`,status_text:``,create_time:``,content_type:0,episode_cnt:e.episode_count||0,show_at:e.show_at??``,position:``,img_type:e.img_type??``,img_x:e.img_x??``,img_y:e.img_y??``,img_width:``,img_height:``,play_count:e.play_count,preview_images:[],duration:String(e.duration??``),score:String(e.score??``),is_more_link:e.is_more_link?`y`:`n`,update_status:String(e.update_status??``),description:e.description??``,language:``,director:``,actor:``,area:``,issue_date:``,publisher:``,series:``,number:``,tags:[],source_tags:e.source_tags??``,source_actor:[],links:Array.isArray(e.episodes)?e.episodes.map(e=>({id:e.id??``,name:e.name??``,preview_m3u8_url:e.preview_m3u8_url??``,m3u8_url:e.m3u8_url??``})):[],money:``,up_user:``,source_username:``,task_id:``,file_status:``}}function C(e){let t=Number(e||`0`);return Number.isNaN(t)||t<=0?`0`:t>=1e4?`${(t/1e4).toFixed(1)}w`:t>=1e3?`${(t/1e3).toFixed(1)}k`:String(t)}function ee(e){if(e.content_type===0){let t=encodeURIComponent(e.name||``);return`/video/${e.id}/${t}/episode/1`}return`/post/${e.id}`}export{x as VideoDetailRecommendClient};
2
+ "use client";import{gContentGetGuessYouLikeVideos as e}from"../../../../../../service/generated/client.mjs";import{Box as t}from"../../../../../ui/box.mjs";import{Text as n}from"../../../../../ui/text.mjs";import{useRequest as r}from"../../../../../../hooks/query/use-query.mjs";import{useAppContext as i}from"../../../../../../hooks/use-app-context/index.mjs";import a from"../../../../../../assets/icons/detail/video_flag.mjs";import{MiniThreeCard as o}from"../../../../../common/cards/mini-three-card.mjs";import{useCardDecoration as s}from"../../../../../../hooks/use-card-decoration.mjs";import{buildEditorPreviewRecommendList as c}from"../editor-preview.mjs";import{applyPlayCountDelta as ee,buildEpisodeLabel as l,clampColumns as u,mergeManualAndPool as d,mockPagedList as f,resolveRows as p}from"./utils.mjs";import{useEffect as m,useMemo as h,useRef as g,useState as te}from"react";import{jsx as _,jsxs as v}from"react/jsx-runtime";import{useTranslations as y}from"next-intl";function b({detailId:b,rows:re,columns:ie,smartTagEnabled:C,smartTagIds:w,title:T,showPlayCount:E,playCountDelta:D,showEpisode:O,enableInfinite:k,items:A}){let j=i()===`editor`,M=j||!b,ae=y(`components.biz.business.detail`),{getVerticalHoCoverImageUrl:N,getTitleText:P}=s(),[F,I]=te(1),L=g(null),R=h(()=>w??[],[w]),z=h(()=>A??[],[A]),B=!!k&&!j,V=p(re,B),H=u(ie),U=V*H,W=h(()=>c(U),[U]),{data:G}=r([`video-detail-recommend`,b],async()=>!b||M?null:await e(),{enabled:!M&&!!b}),K=h(()=>{if(M)return W;let e=G?.data?.videos;return Array.isArray(e)?e.map(e=>x(e)).filter(e=>!b||!e.id||e.id!==b):[]},[G?.data?.videos,b,W,M]),q=h(()=>new Set(z.map(e=>e.contentId)),[z]),J=h(()=>{if(M)return K;let e=K.filter(e=>!q.has(e.id));if(!C||R.length===0)return e;let t=new Set(R.map(String));return e.filter(e=>(Array.isArray(e.source_tags)?e.source_tags:String(e.source_tags||``).split(`,`).filter(Boolean)).some(e=>t.has(String(e?.id??e))))},[M,q,K,C,R]),Y=h(()=>{if(!z.length)return[];let e=new Map(J.map(e=>[e.id,e]));return z.map((t,n)=>{let r=W[n%Math.max(1,W.length)],i=e.get(t.contentId)??(M?{...r,id:t.contentId||r.id||`preview-manual-${n+1}`,name:r.name||`猜你喜欢 ${n+1}`}:null);if(!i)return null;let a=t.titleMode===`custom`?t.title:P(i),o=t.coverMode===`upload`?t.coverUrl:N(i);return{info:{...i,name:a||i.name,img_y:o||i.img_y,img_x:o||i.img_x},config:{showPlayCount:t.showPlayCount,playCountDelta:t.playCountDelta,showEpisode:t.showEpisode}}}).filter(Boolean)},[W,J,P,N,M,z]),X=h(()=>J.map(e=>({info:e})),[J]),Z=h(()=>d(Y,X,U),[Y,U,X]),Q=h(()=>{if(!B)return Z;let e=f(X,F,U,5);return F===1?Z:Z.concat(e)},[Z,F,U,X,B]),$=B&&F<5&&X.length>0;return m(()=>{B&&I(1)},[b,B]),m(()=>{if(!B)return;let e=L.current;if(!e||!$)return;let t=new IntersectionObserver(e=>{e[0]?.isIntersecting&&I(e=>Math.min(e+1,5))});return t.observe(e),()=>{t.disconnect()}},[$,B]),Q.length?v(t,{className:`w-full mt-[16px] ${M?`pointer-events-none`:``}`,children:[_(n,{className:`block pl-[12px] mb-[8px] text-text1 text-[18px] leading-[26px] font-bold`,children:T||ae(`detailGuessLike.title`)}),_(t,{className:`w-full flex flex-wrap px-[12px]`,children:Q.map((e,t)=>{let n=e.config?.showPlayCount??E,r=e.config?.playCountDelta??D,i=e.config?.showEpisode??O,s=S(ee(e.info.play_count||0,r)),c=l(Number(e.info.update_status)===1?`done`:`updating`,e.info.episode_cnt||e.info.links?.length,e.info.episode_cnt||e.info.links?.length),u=Number.isFinite(H)&&H>0?`${100/H}%`:`33.333333%`;return _(o,{url:N(e.info),text:P(e.info),style:{width:u},bottomLeftChild:n?v(`div`,{className:`h-[20px] leading-[20px] text-[#fff] text-[12px] px-[4px] rounded-[4px] bg-[#333] ml-[4px] flex items-center`,children:[_(a,{className:`w-[16px] h-[auto] text-[#fff] mr-[4px]`}),s]}):null,bottomRightChild:i&&c?_(`div`,{className:`text-[#F59E0B] text-[12px] font-bold leading-[20px] pr-[8px]`,children:c}):null,linkPath:M?``:ne(e.info)},`guess-like-${t}`)})}),B&&_(`div`,{ref:L,className:`h-[1px] w-full`})]}):null}function x(e){return{id:e.video_id||``,mid:``,name:e.name||``,cat_id:``,cat_name:``,status:`1`,status_text:``,create_time:``,content_type:0,episode_cnt:e.episode_count||0,show_at:e.show_at??``,position:``,img_type:e.img_type??``,img_x:e.img_x??``,img_y:e.img_y??``,img_width:``,img_height:``,play_count:e.play_count,preview_images:[],duration:String(e.duration??``),score:String(e.score??``),is_more_link:e.is_more_link?`y`:`n`,update_status:String(e.update_status??``),description:e.description??``,language:``,director:``,actor:``,area:``,issue_date:``,publisher:``,series:``,number:``,tags:[],source_tags:e.source_tags??``,source_actor:[],links:Array.isArray(e.episodes)?e.episodes.map(e=>({id:e.id??``,name:e.name??``,preview_m3u8_url:e.preview_m3u8_url??``,m3u8_url:e.m3u8_url??``})):[],money:``,up_user:``,source_username:``,task_id:``,file_status:``}}function S(e){let t=Number(e||`0`);return Number.isNaN(t)||t<=0?`0`:t>=1e4?`${(t/1e4).toFixed(1)}w`:t>=1e3?`${(t/1e3).toFixed(1)}k`:String(t)}function ne(e){if(e.content_type===0){let t=encodeURIComponent(e.name||``);return`/video/${e.id}/${t}/episode/1`}return`/post/${e.id}`}export{b as VideoDetailRecommendClient};
@@ -1,2 +1,2 @@
1
1
 
2
- import{defineMaterial as e}from"../../../../../../utils/schema/material.mjs";import{VideoDetailRecommendClient as t}from"./client.mjs";import{videoDetailRecommendInspectorPropsSchema as n}from"./schema.mjs";import{VideoDetailRecommend as r}from"./server.mjs";const i=e({type:`video-detail-recommend`,name:`猜你喜欢`,icon:`/static/components-thumb/search_recommend_media.png`,category:`内容组件`,serverComponent:r,clientComponent:t,propsSchema:n});export{i as videoDetailRecommendMaterial};
2
+ import{defineMaterial as e}from"../../../../../../utils/schema/material.mjs";import{VideoDetailRecommendClient as t}from"./client.mjs";import{videoDetailRecommendInspectorPropsSchema as n}from"./schema.mjs";import{VideoDetailRecommend as r}from"./server.mjs";const i=e({type:`video-detail-recommend`,name:`详情页-推荐模块`,icon:`/static/components-thumb/video_guess_you_like.png`,category:`详情页`,serverComponent:r,clientComponent:t,propsSchema:n});export{i as videoDetailRecommendMaterial};
@@ -1,2 +1,2 @@
1
1
 
2
- import{defineComponentPropsSchema as e,defineNumberPropSchema as t,defineSwitchPropSchema as n,defineTextPropSchema as r,getSchemaDefaultProps as i}from"../../../../../../utils/schema/schema.mjs";import a from"zod";const o=e({rows:t({label:`行数`,defaultValue:2}),columns:t({label:`列数`,defaultValue:3}),smartTagEnabled:n({label:`智能铺设`,defaultValue:!1}),title:r({label:`推荐位名称`,defaultValue:`猜你喜欢`}),showPlayCount:n({label:`显示播放量`,defaultValue:!0}),playCountDelta:t({label:`播放量浮动`,defaultValue:0}),showEpisode:n({label:`显示集数`,defaultValue:!0}),enableInfinite:n({label:`无限下拉`,defaultValue:!1}),smartTagIds:a.array(a.string()).optional(),items:a.array(a.object({contentId:a.string(),coverMode:a.enum([`upload`,`content`]).optional(),coverUrl:a.string().optional(),titleMode:a.enum([`custom`,`content`]).optional(),title:a.string().optional(),showPlayCount:a.boolean().optional(),playCountDelta:a.number().optional(),showEpisode:a.boolean().optional()})).optional()});({...i(o)});export{o as videoDetailRecommendInspectorPropsSchema};
2
+ import{defineComponentPropsSchema as e,defineNumberPropSchema as t,defineSwitchPropSchema as n,defineTextPropSchema as r,getSchemaDefaultProps as i}from"../../../../../../utils/schema/schema.mjs";import a from"zod";const o=e({rows:t({label:`行数`,defaultValue:1}),columns:t({label:`列数`,defaultValue:2}),smartTagEnabled:n({label:`智能铺设`,defaultValue:!1}),title:r({label:`推荐位名称`,defaultValue:`猜你喜欢`}),showPlayCount:n({label:`显示播放量`,defaultValue:!0}),playCountDelta:t({label:`播放量浮动`,defaultValue:0}),showEpisode:n({label:`显示集数`,defaultValue:!0}),enableInfinite:n({label:`无限下拉`,defaultValue:!1}),smartTagIds:a.array(a.string()).optional(),items:a.array(a.object({contentId:a.string(),coverMode:a.enum([`upload`,`content`]).optional(),coverUrl:a.string().optional(),titleMode:a.enum([`custom`,`content`]).optional(),title:a.string().optional(),showPlayCount:a.boolean().optional(),playCountDelta:a.number().optional(),showEpisode:a.boolean().optional()})).optional()});({...i(o)});export{o as videoDetailRecommendInspectorPropsSchema};
@@ -1,2 +1,2 @@
1
1
 
2
- "use client";import{cn as e}from"../../../../utils/cn.mjs";import{pxToVw as t}from"../../../../utils/helper.mjs";import{Image as n}from"../../../ui/image.mjs";import{Box as r}from"../../../ui/box.mjs";import{Text as i}from"../../../ui/text.mjs";import{useBrowseReport as a}from"../../../../hooks/use-browse-report.mjs";import{MediaPreview as o,useMediaPreview as s}from"../../../common/media-preview/index.mjs";import c from"../../../common/video-player/index.mjs";import{UserActivityMediaGrid as l}from"../../../common/list/user-activity-list/user-activity-list-item.mjs";import{memo as u,useCallback as d,useEffect as f,useMemo as p,useRef as m}from"react";import{Fragment as h,jsx as g,jsxs as _}from"react/jsx-runtime";import{useTranslations as v}from"next-intl";const y=u(({information:t,isVideo:n,episodeIndex:a=0,resumeProgressSeconds:c=0,className:u=``})=>{let d=p(()=>({id:t.id,name:t.name,preview_images:t.preview_images,img_y:t.img_y,img_x:t.img_x}),[t.id,t.name,t.preview_images,t.img_y,t.img_x]),f=p(()=>{let e=t?.medias,n=Array.isArray(e)?e.filter(Boolean):[];return n.length>0?n:(d.preview_images?.length?d.preview_images:[d.img_y||d.img_x||``].filter(Boolean)).filter(Boolean).map(e=>({media_url:e,is_video:!1,cover_image:``}))},[d.img_x,d.img_y,d.preview_images,t]),m=s(),h=p(()=>f.filter(Boolean).map(e=>{let n=e?.is_video?`video`:`image`,r=String(e?.media_url||``),i=e?.cover_image||t.img_y||t.img_x;return{src:r,type:n,...i?{cover:String(i)}:{}}}).filter(e=>!!e.src),[t.img_x,t.img_y,f]);return n?g(b,{information:t,episodeIndex:a,resumeProgressSeconds:c}):_(`div`,{className:e(`w-full`,u),children:[_(r,{className:`mt-3 px-[12px] space-y-1`,children:[g(i,{as:`p`,className:`break-all`,dangerouslySetInnerHTML:{__html:t.description}}),g(l,{medias:f,onItemClick:e=>{h.length&&m.open(h,e)}})]}),g(o,{})]})});y.displayName=`DetailHero`;const b=u(({information:e,episodeIndex:t,resumeProgressSeconds:n})=>{let r=p(()=>({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 g(x,{information:{...e,...r},episodeIndex:t,resumeProgressSeconds:n})},(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});b.displayName=`StableDetailPlayerBox`;function x({information:e,episodeIndex:i,resumeProgressSeconds:o}){let s=v(`components.biz.business.detail`),l=m(0),u=m(0),y=Math.max(0,Number(i)||0),b=y+1,x=p(()=>e?.id,[e?.id]),T=p(()=>({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]),E=p(()=>T.mid||T.id,[T.id,T.mid]),D=p(()=>{let e=T.links?.[y]?.id;return e?String(e):`ep-${y+1}`},[y,T.links]),O=p(()=>`__reportData_detail_page__${T.id}:${D}`,[D,T.id]),k=p(()=>{if(typeof window>`u`)return 0;try{let e=sessionStorage.getItem(O);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},[O]),A=p(()=>{let e=Number(o||0);return Number.isFinite(e)&&e>0?e:0},[o]),j=p(()=>A>0?A:k,[A,k]),M=p(()=>{let t=w(e),n=t[t.length?Math.max(0,Math.min(y,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(T.img_width||0)||1,a=Number(T.img_height||0)||1;return{hasVideo:r,hlsList:t,videoUrl:n,width:i,height:a,resolution:S(i,a),aspectRatio:(i||1)/(a||1),poster:T.img_y||T.img_x||T.preview_images?.[0]||``}},[e.id,e.links,y,T.img_width,T.img_height,T.img_y,T.img_x,T.preview_images]),N=d((e,t)=>{l.current=e,u.current=t},[]),P=p(()=>M.videoUrl.endsWith(`m3u8`)?{startTimeSeconds:j,preload:`none`}:{startTimeSeconds:j},[j,M.videoUrl]);f(()=>{l.current=0,u.current=0},[x,y]);let F=a({contentId:x,browseEpisode:b,contentType:1,enabled:!!x,intervalMs:60*1e3,getCurrentTimeSeconds:()=>l.current,getDurationSeconds:()=>u.current});if(f(()=>{let e=()=>{if(!(typeof window>`u`)&&!(l.current<=0||u.current<=0))try{sessionStorage.setItem(O,JSON.stringify({episodeId:D,currentTime:l.current,duration:u.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()}},[D,O]),!M.hasVideo)return g(`div`,{className:`mt-3 rounded-xl bg-bg1 px-3 py-10 text-center text-text3`,children:s(`videoHero.noVideos`)});let I=C(430,M.aspectRatio,242),L=I.height>0?t(I.height):`auto`,R=t(242);return _(h,{children:[g(r,{suppressHydrationWarning:!0,className:`w-full`,style:{height:L,maxWidth:`100%`,maxHeight:R}}),_(r,{className:`w-full relative bg-bg2 !fixed !top-[44px] !left-0 z-[10]`,children:[M.poster&&_(`div`,{className:`w-full h-full bg-bg2 absolute top-0 left-0 z-[1] overflow-hidden`,style:{height:L},children:[g(n,{src:M.poster,alt:s(`videoHero.coverAlt`),fill:!0,className:`object-cover`,priority:!0}),g(`div`,{className:`w-full h-full absolute top-0 left-0 z-[1] bg-[rgba(255,255,255,0.2)] backdrop-blur-[4px]`})]}),g(r,{suppressHydrationWarning:!0,"data-aspect-ratio":M.resolution,className:`w-full overflow-hidden flex justify-center relative z-[2]`,style:{height:L,maxWidth:`100%`,maxHeight:R,backdropFilter:`blur(0)`,WebkitBackdropFilter:`blur(0)`},children:g(c,{plyerId:`detail-player-${T.id}-${y}`,parentId:E,resolution:M.resolution||`0x0`,videoUrl:M.videoUrl,poster:M.poster,mergeConfig:P,onProgressUpdate:N,onPlay:F.handlePlay,onPause:F.handlePause,onEnded:F.handleEnded},`stable-player-${T.id}-${y}`)})]})]})}function S(e,t){return!e||!t?``:`${e}x${t}`}function C(e,t,n){let r=e/t;return r<=n?{width:e,height:r}:{width:n*t,height:n}}function w(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{y as DetailHero};
2
+ "use client";import{cn as e}from"../../../../utils/cn.mjs";import{pxToVw as t}from"../../../../utils/helper.mjs";import{Image as n}from"../../../ui/image.mjs";import{Box as r}from"../../../ui/box.mjs";import{Text as i}from"../../../ui/text.mjs";import{useAppContext as a}from"../../../../hooks/use-app-context/index.mjs";import{useBrowseReport as o}from"../../../../hooks/use-browse-report.mjs";import{MediaPreview as s,useMediaPreview as c}from"../../../common/media-preview/index.mjs";import l from"../../../common/video-player/index.mjs";import{UserActivityMediaGrid as u}from"../../../common/list/user-activity-list/user-activity-list-item.mjs";import{memo as d,useCallback as f,useEffect as p,useMemo as m,useRef as h}from"react";import{Fragment as g,jsx as _,jsxs as v}from"react/jsx-runtime";import{useTranslations as y}from"next-intl";const b=d(({information:t,isVideo:n,episodeIndex:o=0,resumeProgressSeconds:l=0,className:d=``})=>{let p=a()===`editor`,h=m(()=>({id:t.id,name:t.name,preview_images:t.preview_images,img_y:t.img_y,img_x:t.img_x}),[t.id,t.name,t.preview_images,t.img_y,t.img_x]),g=m(()=>{let e=t?.medias,n=Array.isArray(e)?e.filter(Boolean):[];return n.length>0?n:(h.preview_images?.length?h.preview_images:[h.img_y||h.img_x||``].filter(Boolean)).filter(Boolean).map(e=>({media_url:e,is_video:!1,cover_image:``}))},[h.img_x,h.img_y,h.preview_images,t]),y=c(),b=m(()=>g.filter(Boolean).map(e=>{let n=e?.is_video?`video`:`image`,r=String(e?.media_url||``),i=e?.cover_image||t.img_y||t.img_x;return{src:r,type:n,...i?{cover:String(i)}:{}}}).filter(e=>!!e.src),[t.img_x,t.img_y,g]),S=f(e=>{p||!b.length||y.open(b,e)},[p,y,b]);return p?_(`img`,{src:`/static/components-thumb/video_player.png`,alt:`video-preview`,className:`w-full block`}):n?_(x,{information:t,episodeIndex:o,resumeProgressSeconds:l,isEditor:p}):v(`div`,{className:e(`w-full`,d),children:[v(r,{className:`mt-3 px-[12px] space-y-1`,children:[_(i,{as:`p`,className:`break-all`,dangerouslySetInnerHTML:{__html:t.description}}),_(u,{medias:g,onItemClick:S})]}),_(s,{})]})});b.displayName=`DetailHero`;const x=d(({information:e,episodeIndex:t,resumeProgressSeconds:n,isEditor:r})=>{let i=m(()=>({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 _(S,{information:{...e,...i},episodeIndex:t,resumeProgressSeconds:n,isEditor:r})},(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});x.displayName=`StableDetailPlayerBox`;function S({information:e,episodeIndex:i,resumeProgressSeconds:a,isEditor:s}){let c=y(`components.biz.business.detail`),u=h(0),d=h(0),b=Math.max(0,Number(i)||0),x=b+1,S=m(()=>e?.id,[e?.id]),E=m(()=>({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]),D=m(()=>E.mid||E.id,[E.id,E.mid]),O=m(()=>{let e=E.links?.[b]?.id;return e?String(e):`ep-${b+1}`},[b,E.links]),k=m(()=>`__reportData_detail_page__${E.id}:${O}`,[O,E.id]),A=m(()=>{if(s||typeof window>`u`)return 0;try{let e=sessionStorage.getItem(k);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},[s,k]),j=m(()=>{let e=Number(a||0);return Number.isFinite(e)&&e>0?e:0},[a]),M=m(()=>j>0?j:A,[j,A]),N=m(()=>{let t=T(e),n=t[t.length?Math.max(0,Math.min(b,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(E.img_width||0)||1,a=Number(E.img_height||0)||1;return{hasVideo:r,hlsList:t,videoUrl:n,width:i,height:a,resolution:C(i,a),aspectRatio:(i||1)/(a||1),poster:E.img_y||E.img_x||E.preview_images?.[0]||``}},[e.id,e.links,b,E.img_width,E.img_height,E.img_y,E.img_x,E.preview_images]),P=f((e,t)=>{u.current=e,d.current=t},[]),F=m(()=>N.videoUrl.endsWith(`m3u8`)?{startTimeSeconds:M,preload:`none`}:{startTimeSeconds:M},[M,N.videoUrl]);p(()=>{u.current=0,d.current=0},[S,b]);let I=o({contentId:S,browseEpisode:x,contentType:1,enabled:!s&&!!S,intervalMs:60*1e3,getCurrentTimeSeconds:()=>u.current,getDurationSeconds:()=>d.current});if(p(()=>{if(s)return;let e=()=>{if(!(typeof window>`u`)&&!(u.current<=0||d.current<=0))try{sessionStorage.setItem(k,JSON.stringify({episodeId:O,currentTime:u.current,duration:d.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()}},[O,s,k]),!N.hasVideo)return _(`div`,{className:`mt-3 rounded-xl bg-bg1 px-3 py-10 text-center text-text3`,children:c(`videoHero.noVideos`)});let L=w(430,N.aspectRatio,242),R=L.height>0?t(L.height):`auto`,z=t(242);return v(g,{children:[_(r,{suppressHydrationWarning:!0,className:`w-full`,style:{height:R,maxWidth:`100%`,maxHeight:z}}),v(r,{className:`w-full relative bg-bg2 !fixed !top-[44px] !left-0 z-[10]`,children:[N.poster&&v(`div`,{className:`w-full h-full bg-bg2 absolute top-0 left-0 z-[1] overflow-hidden`,style:{height:R},children:[_(n,{src:N.poster,alt:c(`videoHero.coverAlt`),fill:!0,className:`object-cover`,priority:!0}),_(`div`,{className:`w-full h-full absolute top-0 left-0 z-[1] bg-[rgba(255,255,255,0.2)] backdrop-blur-[4px]`})]}),_(r,{suppressHydrationWarning:!0,"data-aspect-ratio":N.resolution,className:`w-full overflow-hidden flex justify-center relative z-[2]`,style:{height:R,maxWidth:`100%`,maxHeight:z,backdropFilter:`blur(0)`,WebkitBackdropFilter:`blur(0)`},children:_(l,{plyerId:`detail-player-${E.id}-${b}`,parentId:D,resolution:N.resolution||`0x0`,videoUrl:N.videoUrl,poster:N.poster,mergeConfig:F,onProgressUpdate:s?void 0:P,onPlay:s?void 0:I.handlePlay,onPause:s?void 0:I.handlePause,onEnded:s?void 0:I.handleEnded},`stable-player-${E.id}-${b}`)})]})]})}function C(e,t){return!e||!t?``:`${e}x${t}`}function w(e,t,n){let r=e/t;return r<=n?{width:e,height:r}:{width:n*t,height:n}}function T(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{b as DetailHero};
@@ -1,2 +1,2 @@
1
1
 
2
- "use client";import{gContentGetAppChannelBlockData as e}from"../../../../../service/generated/client.mjs";import{Image as t}from"../../../../ui/image.mjs";import{Box as n}from"../../../../ui/box.mjs";import{Text as r}from"../../../../ui/text.mjs";import{usePaginated as i}from"../../../../../hooks/query/use-query.mjs";import{useAppContext as a}from"../../../../../hooks/use-app-context/index.mjs";import o from"../../../../../assets/icons/detail/video_flag.mjs";import{MiniThreeCard as s}from"../../../../common/cards/mini-three-card.mjs";import{useCallback as c,useEffect as l,useLayoutEffect as u,useMemo as d,useRef as f,useState as p}from"react";import{jsx as m,jsxs as h}from"react/jsx-runtime";import{useRouter as g}from"next/navigation";const _={},v={list:[]};function y({variant:e,props:t=_,data:i=v}){let o=a(),s=g(),{list:y,title:x,cursor:S,block_id:w,channel_id:T}=i,E=Array.isArray(i.icons)?i.icons:[],{moreLink:D}=t,[O,k]=p(0),j=f(null),{items:P,icons:F,hasNextPage:I,isFetchingNextPage:L,fetchNextPage:R}=N({blockId:w||``,initialCursor:S||``,initialIcons:E,initialList:y,pageSize:16,enabled:o===`renderer`}),z=e===`waterfall`?6:4,B=P.length>=z?P.length-z:-1,V=f(null),H=f(!1),U=x||``,W=C(D,w||``,T||``),G=!!(S&&S.trim()),K=o===`renderer`&&(G||I===!0),q=c(()=>{W&&(W.startsWith(`http`)?window.location.href=W:s.push(W))},[W,s]);u(()=>{let t=j.current;if(!t||e!==`waterfall`)return;let n=()=>{let e=t.clientWidth||0;k(e>0?(e-12)/2:0)};n();let r=new ResizeObserver(n);return r.observe(t),()=>{r.disconnect()}},[e]),l(()=>{let e=V.current;if(!e||!K||P.length<16)return;let t=document.getElementById(`app-scroll-container`)||null,n=new IntersectionObserver(e=>{e[0]?.isIntersecting&&(L||H.current||(H.current=!0,R().finally(()=>{H.current=!1})))},{root:t,threshold:0});return n.observe(e),()=>{n.disconnect()}},[K,R,L,P.length,B]);let J=d(()=>e===`waterfall`?A(P,F,O):{left:[],right:[]},[O,P,F,e]);return P.length?h(n,{className:`w-full mt-[16px]`,children:[h(n,{className:`flex items-center justify-between px-[12px] mb-[8px]`,children:[m(r,{className:`text-text1 text-[18px] leading-[26px] font-bold line-clamp-1`,children:U}),m(r,{className:`text-text3 text-[12px] leading-[18px] ${W?`cursor-pointer`:``}`,onClick:q,children:`更多`})]}),e===`grid`&&m(n,{className:`w-full flex flex-wrap px-[12px]`,children:P.map((e,t)=>{let n=F[t];return m(`div`,{ref:t===B?V:void 0,className:`w-1/2 px-[6px]`,children:m(b,{item:e,icon:n,index:t,widthStyle:{width:`100%`}})},M(e,t))})}),e===`waterfall`&&h(n,{ref:j,className:`w-full px-[12px] flex gap-[12px]`,children:[m(n,{className:`flex-1 min-w-0 flex flex-col`,children:J.left.map(e=>m(`div`,{ref:e.index===B?V:void 0,children:m(b,{item:e.item,icon:e.icon,index:e.index,widthStyle:{width:`100%`}})},M(e.item,e.index)))}),m(n,{className:`flex-1 min-w-0 flex flex-col`,children:J.right.map(e=>m(`div`,{ref:e.index===B?V:void 0,children:m(b,{item:e.item,icon:e.icon,index:e.index,widthStyle:{width:`100%`}})},M(e.item,e.index)))})]})]}):null}function b({item:e,icon:t,index:i,widthStyle:a}){let c=w(e),l=e.name||``,u=E(e.static?.browse_cnt??0),d=T(e),f=k(e,t,i);return m(s,{url:c,text:l,className:`w-full`,style:a,topRightChild:f?m(x,{url:f}):void 0,bottomLeftChild:h(n,{className:`h-[20px] leading-[20px] text-[#fff] text-[12px] px-[4px] rounded-[4px] bg-[#333] ml-[4px] flex items-center`,children:[m(o,{className:`w-[16px] h-[auto] text-[#fff] mr-[4px]`}),u]}),textChild:h(n,{className:`mt-[4px]`,children:[m(r,{as:`h3`,className:`text-text1 text-[14px] leading-[20px] line-clamp-1`,children:l}),d&&m(r,{className:`text-text3 text-[12px] leading-[18px]`,children:d})]}),linkPath:S(e)})}function x({url:e}){return m(n,{className:`relative w-[40px] h-[20px] mr-[6px] mt-[6px]`,children:m(t,{src:e,alt:`corner`,fill:!0,objectFit:`contain`})})}function S(e){let t=encodeURIComponent(e.name||``);return`/video/${e.id||``}/${t}/episode/1`}function C(e,t,n){if(e)return e;if(!t)return``;let r=new URLSearchParams({blockId:t});return n&&r.set(`channelId`,n),`/featured?${r.toString()}`}function w(e){return e.img_y||e.img_x||``}function T(e){if((e.type??0)===2){let t=Number(e.episode_cnt||e.links?.length||0);return t>0?`全${t}集`:``}return O(Number(e.duration||0))}function E(e){return!Number.isFinite(e)||e<=0?`0`:e>=1e6?`${D(e/1e6)}M`:e>=1e3?`${D(e/1e3)}k`:Math.floor(e).toString()}function D(e){let t=e.toFixed(1);return t.endsWith(`.0`)?t.slice(0,-2):t}function O(e){if(!Number.isFinite(e)||e<=0)return``;let t=Math.floor(e),n=Math.floor(t/3600),r=Math.floor(t%3600/60),i=t%60,a=e=>String(e).padStart(2,`0`);return n>0?`${a(n)}:${a(r)}:${a(i)}`:`${a(r)}:${a(i)}`}function k(e,t,n){let r=e;return r.corner_icon_url||r.corner_icon||r.icon_url||t?.material_url||``}function A(e,t,n){let r=[],i=[],a=0,o=0;return e.forEach((e,s)=>{let c=t[s],l=j(n,e);a<=o?(r.push({item:e,icon:c,index:s}),a+=l):(i.push({item:e,icon:c,index:s}),o+=l)}),{left:r,right:i}}function j(e,t){if(!e)return 0;let n=e*1.3461538461538463,r=T(t)?18:0;return n+20+r+6+16}function M(e,t){return e.id?`home-recommend-${e.id}`:`home-recommend-${t}`}function N({blockId:t,initialList:n,initialCursor:r,initialIcons:a,pageSize:o,enabled:s}){let m=n.length>0,h=f(n),g=f(a),[_,v]=p(!1);l(()=>{h.current=n,g.current=a},[a,n]);let y=d(()=>{if(!m)return;let e=r&&r.trim()?r:void 0;return{pages:[{data:{block:{data:{videos:n,icons:a,cursor:r||``}}}}],pageParams:[e]}},[m,r,a,n]),{data:b,fetchNextPage:x,hasNextPage:S,isFetchingNextPage:C}=i({key:[`home-recommend`,t],queryFn:n=>e({block_id:t,cursor:n||void 0,page_size:o}),getNextPageParam:e=>{let t=e.data?.block?.data?.cursor;return t&&t.trim()?t:void 0},options:{enabled:s&&!!t,initialData:y,refetchOnMount:!1,refetchOnWindowFocus:!1,refetchOnReconnect:!1},initialPageParam:m&&r&&r.trim()?r:void 0});u(()=>{v(!0)},[]);let w=d(()=>{if(!_)return{items:m?[...h.current]:[],icons:m?[...g.current]:[]};let e=b?.pages||[],t=[],n=[],r=m?1:0;m&&(t.push(...h.current),n.push(...g.current));for(let i=r;i<e.length;i++){let r=e[i].data?.block?.data,a=r?.videos||[],o=r?.icons||[];t.push(...a),n.push(...o)}return{items:t,icons:n}},[m,_,b?.pages]),T=c(async()=>{await x()},[x]);return{items:w.items,icons:w.icons,hasNextPage:S,isFetchingNextPage:C,fetchNextPage:T}}export{y as default};
2
+ "use client";import{gContentGetAppChannelBlockData as e}from"../../../../../service/generated/client.mjs";import{Image as t}from"../../../../ui/image.mjs";import{Box as n}from"../../../../ui/box.mjs";import{Text as r}from"../../../../ui/text.mjs";import{usePaginated as i}from"../../../../../hooks/query/use-query.mjs";import{useAppContext as a}from"../../../../../hooks/use-app-context/index.mjs";import o from"../../../../../assets/icons/detail/video_flag.mjs";import{MiniThreeCard as s}from"../../../../common/cards/mini-three-card.mjs";import{useCallback as c,useEffect as l,useLayoutEffect as u,useMemo as d,useRef as f,useState as p}from"react";import{jsx as m,jsxs as h}from"react/jsx-runtime";import{useRouter as g}from"next/navigation";const _={},v={list:[]};function y({variant:e,props:t=_,data:i=v}){let o=a(),s=g(),{list:y,title:x,cursor:S,block_id:w,channel_id:T}=i,E=Array.isArray(i.icons)?i.icons:[],{moreLink:D,title:O,enableInfinite:k}=t,[j,P]=p(0),F=f(null),I=k===!0,{items:L,icons:R,hasNextPage:z,isFetchingNextPage:B,fetchNextPage:V}=N({blockId:w||``,initialCursor:S||``,initialIcons:E,initialList:y,pageSize:16,enabled:o===`renderer`&&I}),H=e===`waterfall`?6:4,U=L.length>=H?L.length-H:-1,W=f(null),G=f(!1),K=O&&O.trim()||x||``,q=e!==`waterfall`&&!I,J=q?C(D,w||``,T||``):``,Y=!!(S&&S.trim()),X=o===`renderer`&&I&&(Y||z===!0),Z=c(()=>{J&&(J.startsWith(`http`)?window.location.href=J:s.push(J))},[J,s]);u(()=>{let t=F.current;if(!t||e!==`waterfall`)return;let n=()=>{let e=t.clientWidth||0;P(e>0?(e-12)/2:0)};n();let r=new ResizeObserver(n);return r.observe(t),()=>{r.disconnect()}},[e]),l(()=>{let e=W.current;if(!e||!X||L.length<16)return;let t=document.getElementById(`app-scroll-container`)||null,n=new IntersectionObserver(e=>{e[0]?.isIntersecting&&(B||G.current||(G.current=!0,V().finally(()=>{G.current=!1})))},{root:t,threshold:0});return n.observe(e),()=>{n.disconnect()}},[X,V,B,L.length,U]);let Q=d(()=>e===`waterfall`?A(L,R,j):{left:[],right:[]},[j,L,R,e]);return L.length?h(n,{className:`w-full mt-[16px]`,children:[h(n,{className:`flex items-center justify-between px-[12px] mb-[8px]`,children:[m(r,{className:`text-text1 text-[18px] leading-[26px] font-bold line-clamp-1`,children:K}),q&&m(r,{className:`text-text3 text-[12px] leading-[18px] ${J?`cursor-pointer`:``}`,onClick:Z,children:`更多`})]}),e===`grid`&&m(n,{className:`w-full flex flex-wrap px-[12px]`,children:L.map((e,t)=>{let n=R[t];return m(`div`,{ref:t===U?W:void 0,className:`w-1/2 px-[6px]`,children:m(b,{item:e,icon:n,index:t,widthStyle:{width:`100%`}})},M(e,t))})}),e===`waterfall`&&h(n,{ref:F,className:`w-full px-[12px] flex gap-[12px]`,children:[m(n,{className:`flex-1 min-w-0 flex flex-col`,children:Q.left.map(e=>m(`div`,{ref:e.index===U?W:void 0,children:m(b,{item:e.item,icon:e.icon,index:e.index,widthStyle:{width:`100%`}})},M(e.item,e.index)))}),m(n,{className:`flex-1 min-w-0 flex flex-col`,children:Q.right.map(e=>m(`div`,{ref:e.index===U?W:void 0,children:m(b,{item:e.item,icon:e.icon,index:e.index,widthStyle:{width:`100%`}})},M(e.item,e.index)))})]})]}):null}function b({item:e,icon:t,index:i,widthStyle:a}){let c=w(e),l=e.name||``,u=E(e.static?.browse_cnt??0),d=T(e),f=k(e,t,i);return m(s,{url:c,text:l,className:`w-full`,style:a,topRightChild:f?m(x,{url:f}):void 0,bottomLeftChild:h(n,{className:`h-[20px] leading-[20px] text-[#fff] text-[12px] px-[4px] rounded-[4px] bg-[#333] ml-[4px] flex items-center`,children:[m(o,{className:`w-[16px] h-[auto] text-[#fff] mr-[4px]`}),u]}),textChild:h(n,{className:`mt-[4px]`,children:[m(r,{as:`h3`,className:`text-text1 text-[14px] leading-[20px] line-clamp-1`,children:l}),d&&m(r,{className:`text-text3 text-[12px] leading-[18px]`,children:d})]}),linkPath:S(e)})}function x({url:e}){return m(n,{className:`relative w-[40px] h-[20px] mr-[6px] mt-[6px]`,children:m(t,{src:e,alt:`corner`,fill:!0,objectFit:`contain`})})}function S(e){let t=encodeURIComponent(e.name||``);return`/video/${e.id||``}/${t}/episode/1`}function C(e,t,n){if(e)return e;if(!t)return``;let r=new URLSearchParams({blockId:t});return n&&r.set(`channelId`,n),`/featured?${r.toString()}`}function w(e){return e.img_y||e.img_x||``}function T(e){if((e.type??0)===2){let t=Number(e.episode_cnt||e.links?.length||0);return t>0?`全${t}集`:``}return O(Number(e.duration||0))}function E(e){return!Number.isFinite(e)||e<=0?`0`:e>=1e6?`${D(e/1e6)}M`:e>=1e3?`${D(e/1e3)}k`:Math.floor(e).toString()}function D(e){let t=e.toFixed(1);return t.endsWith(`.0`)?t.slice(0,-2):t}function O(e){if(!Number.isFinite(e)||e<=0)return``;let t=Math.floor(e),n=Math.floor(t/3600),r=Math.floor(t%3600/60),i=t%60,a=e=>String(e).padStart(2,`0`);return n>0?`${a(n)}:${a(r)}:${a(i)}`:`${a(r)}:${a(i)}`}function k(e,t,n){let r=e;return r.corner_icon_url||r.corner_icon||r.icon_url||t?.material_url||``}function A(e,t,n){let r=[],i=[],a=0,o=0;return e.forEach((e,s)=>{let c=t[s],l=j(n,e);a<=o?(r.push({item:e,icon:c,index:s}),a+=l):(i.push({item:e,icon:c,index:s}),o+=l)}),{left:r,right:i}}function j(e,t){if(!e)return 0;let n=e*1.3461538461538463,r=T(t)?18:0;return n+20+r+6+16}function M(e,t){return e.id?`home-recommend-${e.id}`:`home-recommend-${t}`}function N({blockId:t,initialList:n,initialCursor:r,initialIcons:a,pageSize:o,enabled:s}){let m=n.length>0,h=f(n),g=f(a),[_,v]=p(!1);l(()=>{h.current=n,g.current=a},[a,n]);let y=d(()=>{if(!m)return;let e=r&&r.trim()?r:void 0;return{pages:[{data:{block:{data:{videos:n,icons:a,cursor:r||``}}}}],pageParams:[e]}},[m,r,a,n]),{data:b,fetchNextPage:x,hasNextPage:S,isFetchingNextPage:C}=i({key:[`home-recommend`,t],queryFn:n=>e({block_id:t,cursor:n||void 0,page_size:o}),getNextPageParam:e=>{let t=e.data?.block?.data?.cursor;return t&&t.trim()?t:void 0},options:{enabled:s&&!!t,initialData:y,refetchOnMount:!1,refetchOnWindowFocus:!1,refetchOnReconnect:!1},initialPageParam:m&&r&&r.trim()?r:void 0});u(()=>{v(!0)},[]);let w=d(()=>{if(!_)return{items:m?[...h.current]:[],icons:m?[...g.current]:[]};let e=b?.pages||[],t=[],n=[],r=m?1:0;m&&(t.push(...h.current),n.push(...g.current));for(let i=r;i<e.length;i++){let r=e[i].data?.block?.data,a=r?.videos||[],o=r?.icons||[];t.push(...a),n.push(...o)}return{items:t,icons:n}},[m,_,b?.pages]),T=c(async()=>{await x()},[x]);return{items:w.items,icons:w.icons,hasNextPage:S,isFetchingNextPage:C,fetchNextPage:T}}export{y as default};
@@ -0,0 +1,2 @@
1
+
2
+ const e=`/static/components-thumb/video_player.png`,t=Array.from({length:12},(t,n)=>{let r=n%2==1,i={browse_cnt:12345+n*731};return{id:`preview-recommend-${n+1}`,name:`媒资标题 ${n+1}`,img_y:e,img_x:e,type:r?2:1,duration:r?0:60*(18+n),episode_cnt:r?12+n%3*6:0,static:i}});function n(e,t){return t?8:e===`waterfall`?4:2}function r(e){let n=Math.max(1,Math.floor(e));return Array.from({length:n},(e,n)=>({...t[n%t.length],id:`preview-recommend-${n+1}`,name:`媒资标题 ${n+1}`}))}function i({variant:e,schemaTitle:t,enableInfinite:i,data:a}){let o=Array.isArray(a?.list)?a.list.filter(Boolean):[],s=n(e,i);return{title:t&&t.trim()||a?.title||`推荐位名称`,list:o.length?o:r(s),icons:Array.isArray(a?.icons)?a.icons:[],cursor:a?.cursor||``,block_id:a?.block_id||``,channel_id:a?.channel_id||``,show_style:a?.show_style}}export{i as buildHomeRecommendEditorPreviewData};
@@ -8,9 +8,13 @@ import z$1 from "zod";
8
8
  * HomeRecommendGrid 物料属性 schema 定义。
9
9
  */
10
10
  declare const homeRecommendGridInspectorPropsSchema: z$1.ZodObject<{
11
+ title: z$1.ZodOptional<z$1.ZodString> & SchemaHasDefaultValue;
12
+ enableInfinite: z$1.ZodOptional<z$1.ZodBoolean> & SchemaHasDefaultValue;
11
13
  moreLink: z$1.ZodOptional<z$1.ZodString> & SchemaHasDefaultValue;
12
14
  }, z$1.core.$strip>;
13
15
  declare const homeRecommendGridInspectorDefaultProps: {
16
+ title: string;
17
+ enableInfinite: boolean;
14
18
  moreLink: string;
15
19
  };
16
20
  type HomeRecommendGridInspectorProps = z$1.infer<typeof homeRecommendGridInspectorPropsSchema>;
@@ -1,2 +1,2 @@
1
1
 
2
- import{defineComponentPropsSchema as e,defineTextPropSchema as t,getSchemaDefaultProps as n}from"../../../../../../utils/schema/schema.mjs";const r=e({moreLink:t({label:`更多`,description:``,required:!1,defaultValue:``})}),i=n(r);export{i as homeRecommendGridInspectorDefaultProps,r as homeRecommendGridInspectorPropsSchema};
2
+ import{defineComponentPropsSchema as e,defineSwitchPropSchema as t,defineTextPropSchema as n,getSchemaDefaultProps as r}from"../../../../../../utils/schema/schema.mjs";const i=e({title:n({label:`推荐位名称`,description:``,required:!1,defaultValue:``}),enableInfinite:t({label:`无限下拉`,defaultValue:!1,required:!1}),moreLink:n({label:`更多`,description:``,required:!1,defaultValue:``})}),a=r(i);export{a as homeRecommendGridInspectorDefaultProps,i as homeRecommendGridInspectorPropsSchema};
@@ -8,6 +8,8 @@ import * as zod_v4_core0 from "zod/v4/core";
8
8
 
9
9
  //#region components/biz/business/home-recommend/variants/home-recommend-grid/material.d.ts
10
10
  declare const homeRecommendGridMaterial: DefineMaterialOption<typeof HomeRecommendGrid, typeof HomeRecommendGrid, zod.ZodObject<{
11
+ title: zod.ZodOptional<zod.ZodString> & SchemaHasDefaultValue;
12
+ enableInfinite: zod.ZodOptional<zod.ZodBoolean> & SchemaHasDefaultValue;
11
13
  moreLink: zod.ZodOptional<zod.ZodString> & SchemaHasDefaultValue;
12
14
  }, zod_v4_core0.$strip>, "home-recommend-grid">;
13
15
  //#endregion
@@ -1,2 +1,2 @@
1
1
 
2
- import{defineMaterial as e}from"../../../../../../utils/schema/material.mjs";import{homeRecommendGridInspectorPropsSchema as t}from"./inspector-schema.mjs";import{HomeRecommendGrid as n}from"./server.mjs";const r=e({type:`home-recommend-grid`,name:`两列宫格`,icon:`/static/components-thumb/grid_two_column_single_row.png`,category:`频道`,serverComponent:n,clientComponent:n,propsSchema:t});export{r as homeRecommendGridMaterial};
2
+ import{defineMaterial as e}from"../../../../../../utils/schema/material.mjs";import{homeRecommendGridInspectorPropsSchema as t}from"./inspector-schema.mjs";import{HomeRecommendGrid as n}from"./server.mjs";const r=e({type:`home-recommend-grid`,name:`两列宫格`,icon:`/static/components-thumb/grid_two_column_single_row.png`,category:`内容组件`,serverComponent:n,clientComponent:n,propsSchema:t});export{r as homeRecommendGridMaterial};
@@ -1,2 +1,2 @@
1
1
 
2
- "use client";import{useAppContext as e}from"../../../../../../../hooks/use-app-context/index.mjs";import t from"../../../shared/home-recommend-base.mjs";import{jsx as n}from"react/jsx-runtime";function r(r){return e()===`editor`?n(`div`,{children:`占位`}):n(t,{variant:`grid`,...r})}export{r as default};
2
+ "use client";import{useAppContext as e}from"../../../../../../../hooks/use-app-context/index.mjs";import t from"../../../shared/home-recommend-base.mjs";import{buildHomeRecommendEditorPreviewData as n}from"../../../shared/home-recommend-preview.mjs";import{useMemo as r}from"react";import{jsx as i}from"react/jsx-runtime";function a(a){let o=e()===`editor`,s=a.props||{},c=r(()=>o?n({variant:`grid`,schemaTitle:s.title,enableInfinite:s.enableInfinite,data:a.data}):a.data,[o,a.data,s.enableInfinite,s.title]);return i(`div`,{className:o?`pointer-events-none`:void 0,children:i(t,{variant:`grid`,...a,data:c})})}export{a as default};
@@ -1,2 +1,2 @@
1
1
 
2
- const e={componentName:`HomeRecommendGrid`,displayName:`两列宫格推荐位`,category:`HomeRecommend`,categoryName:`频道`,enabled:!0};export{e as componentMeta};
2
+ const e={componentName:`HomeRecommendGrid`,displayName:`两列宫格推荐位`,category:`HomeRecommend`,categoryName:`内容组件`,enabled:!0};export{e as componentMeta};
@@ -1,2 +1,2 @@
1
1
 
2
- import{defaultProps as e}from"./defaults/default-props.mjs";import t from"./runtime/client.mjs";import{jsx as n}from"react/jsx-runtime";function r(r){let{moreLink:i=e.moreLink,data:a}=r;return n(t,{props:{moreLink:i},data:a})}export{r as HomeRecommendGrid};
2
+ import{defaultProps as e}from"./defaults/default-props.mjs";import t from"./runtime/client.mjs";import{jsx as n}from"react/jsx-runtime";function r(r){let{moreLink:i=e.moreLink,title:a,enableInfinite:o,data:s}=r;return n(t,{props:{moreLink:i,title:a,enableInfinite:o},data:s})}export{r as HomeRecommendGrid};
@@ -3,8 +3,6 @@
3
3
  /**
4
4
  * HomeRecommendWaterfall 组件默认 Props 配置。
5
5
  */
6
- declare const defaultProps: {
7
- /** 更多跳转链接(空字符串表示使用默认规则)。 */moreLink: string;
8
- };
6
+ declare const defaultProps: {};
9
7
  //#endregion
10
8
  export { defaultProps };
@@ -1,2 +1,2 @@
1
1
 
2
- const e={moreLink:``};export{e as defaultProps};
2
+ const e={};export{e as defaultProps};
@@ -8,10 +8,12 @@ import z$1 from "zod";
8
8
  * HomeRecommendWaterfall 物料属性 schema 定义。
9
9
  */
10
10
  declare const homeRecommendWaterfallInspectorPropsSchema: z$1.ZodObject<{
11
- moreLink: z$1.ZodOptional<z$1.ZodString> & SchemaHasDefaultValue;
11
+ title: z$1.ZodOptional<z$1.ZodString> & SchemaHasDefaultValue;
12
+ enableInfinite: z$1.ZodOptional<z$1.ZodBoolean> & SchemaHasDefaultValue;
12
13
  }, z$1.core.$strip>;
13
14
  declare const homeRecommendWaterfallInspectorDefaultProps: {
14
- moreLink: string;
15
+ title: string;
16
+ enableInfinite: boolean;
15
17
  };
16
18
  type HomeRecommendWaterfallInspectorProps = z$1.infer<typeof homeRecommendWaterfallInspectorPropsSchema>;
17
19
  //#endregion
@@ -1,2 +1,2 @@
1
1
 
2
- import{defineComponentPropsSchema as e,defineTextPropSchema as t,getSchemaDefaultProps as n}from"../../../../../../utils/schema/schema.mjs";const r=e({moreLink:t({label:`更多`,description:``,required:!1,defaultValue:``})}),i=n(r);export{i as homeRecommendWaterfallInspectorDefaultProps,r as homeRecommendWaterfallInspectorPropsSchema};
2
+ import{defineComponentPropsSchema as e,defineSwitchPropSchema as t,defineTextPropSchema as n,getSchemaDefaultProps as r}from"../../../../../../utils/schema/schema.mjs";const i=e({title:n({label:`推荐位名称`,description:``,required:!1,defaultValue:``}),enableInfinite:t({label:`无限下拉`,defaultValue:!1,required:!1})}),a=r(i);export{a as homeRecommendWaterfallInspectorDefaultProps,i as homeRecommendWaterfallInspectorPropsSchema};
@@ -8,7 +8,8 @@ import * as zod_v4_core0 from "zod/v4/core";
8
8
 
9
9
  //#region components/biz/business/home-recommend/variants/home-recommend-waterfall/material.d.ts
10
10
  declare const homeRecommendWaterfallMaterial: DefineMaterialOption<typeof HomeRecommendWaterfall, typeof HomeRecommendWaterfall, zod.ZodObject<{
11
- moreLink: zod.ZodOptional<zod.ZodString> & SchemaHasDefaultValue;
11
+ title: zod.ZodOptional<zod.ZodString> & SchemaHasDefaultValue;
12
+ enableInfinite: zod.ZodOptional<zod.ZodBoolean> & SchemaHasDefaultValue;
12
13
  }, zod_v4_core0.$strip>, "home-recommend-waterfall">;
13
14
  //#endregion
14
15
  export { homeRecommendWaterfallMaterial };
@@ -1,2 +1,2 @@
1
1
 
2
- import{defineMaterial as e}from"../../../../../../utils/schema/material.mjs";import{homeRecommendWaterfallInspectorPropsSchema as t}from"./inspector-schema.mjs";import{HomeRecommendWaterfall as n}from"./server.mjs";const r=e({type:`home-recommend-waterfall`,name:`瀑布流`,icon:`/static/components-thumb/grid_waterfall_two_column.png`,category:`频道`,serverComponent:n,clientComponent:n,propsSchema:t});export{r as homeRecommendWaterfallMaterial};
2
+ import{defineMaterial as e}from"../../../../../../utils/schema/material.mjs";import{homeRecommendWaterfallInspectorPropsSchema as t}from"./inspector-schema.mjs";import{HomeRecommendWaterfall as n}from"./server.mjs";const r=e({type:`home-recommend-waterfall`,name:`瀑布流`,icon:`/static/components-thumb/grid_waterfall_two_column.png`,category:`内容组件`,serverComponent:n,clientComponent:n,propsSchema:t});export{r as homeRecommendWaterfallMaterial};
@@ -1,2 +1,2 @@
1
1
 
2
- "use client";import{useAppContext as e}from"../../../../../../../hooks/use-app-context/index.mjs";import t from"../../../shared/home-recommend-base.mjs";import{jsx as n}from"react/jsx-runtime";function r(r){return e()===`editor`?n(`div`,{children:`占位`}):n(t,{variant:`waterfall`,...r})}export{r as default};
2
+ "use client";import{useAppContext as e}from"../../../../../../../hooks/use-app-context/index.mjs";import t from"../../../shared/home-recommend-base.mjs";import{buildHomeRecommendEditorPreviewData as n}from"../../../shared/home-recommend-preview.mjs";import{useMemo as r}from"react";import{jsx as i}from"react/jsx-runtime";function a(a){let o=e()===`editor`,s=a.props||{},c=r(()=>o?n({variant:`waterfall`,schemaTitle:s.title,enableInfinite:s.enableInfinite,data:a.data}):a.data,[o,a.data,s.enableInfinite,s.title]);return i(`div`,{className:o?`pointer-events-none`:void 0,children:i(t,{variant:`waterfall`,...a,data:c})})}export{a as default};
@@ -1,2 +1,2 @@
1
1
 
2
- const e={componentName:`HomeRecommendWaterfall`,displayName:`瀑布流推荐位`,category:`HomeRecommend`,categoryName:`首页推荐`,enabled:!0};export{e as componentMeta};
2
+ const e={componentName:`HomeRecommendWaterfall`,displayName:`瀑布流`,category:`HomeRecommend`,categoryName:`内容组件`,enabled:!0};export{e as componentMeta};
@@ -1,2 +1,2 @@
1
1
 
2
- const e={moreLink:{type:`string`,title:`更多`,description:``,default:``}};export{e as propsSchema};
2
+ const e={};export{e as propsSchema};
@@ -1,2 +1,2 @@
1
1
 
2
- import{defaultProps as e}from"./defaults/default-props.mjs";import t from"./runtime/client.mjs";import{jsx as n}from"react/jsx-runtime";function r(r){let{moreLink:i=e.moreLink,data:a}=r;return n(t,{props:{moreLink:i},data:a})}export{r as HomeRecommendWaterfall};
2
+ import e from"./runtime/client.mjs";import{jsx as t}from"react/jsx-runtime";function n(n){let{title:r,enableInfinite:i,data:a}=n;return t(e,{props:{title:r,enableInfinite:i},data:a})}export{n as HomeRecommendWaterfall};
@@ -54,8 +54,8 @@ import { homeRecommendWaterfallInspectorDefaultProps, homeRecommendWaterfallInsp
54
54
  import { HomeRecommendWaterfall } from "./home-recommend/variants/home-recommend-waterfall/server.mjs";
55
55
  import { homeRecommendWaterfallMaterial } from "./home-recommend/variants/home-recommend-waterfall/material.mjs";
56
56
  import "./home-recommend/index.mjs";
57
- import { MarqueeInspectorProps, MarqueeProps, marqueeInspectorDefaultProps, marqueeInspectorPropsSchema } from "./marquee/schema.mjs";
58
- import { MarqueeClient } from "./marquee/client.mjs";
57
+ import { marqueeInspectorPropsSchema } from "./marquee/schema.mjs";
58
+ import { MarqueeClient, MarqueeProps } from "./marquee/client.mjs";
59
59
  import { MarqueeServer } from "./marquee/server.mjs";
60
60
  import { marqueeMaterial } from "./marquee/material.mjs";
61
61
  import "./marquee/index.mjs";
@@ -103,28 +103,28 @@ import { defaultProps as defaultProps$18 } from "./search-bar/variants/tag-searc
103
103
  import { TagSearchBarClient } from "./search-bar/variants/tag-search-bar/runtime/client.mjs";
104
104
  import { schema as schema$18 } from "./search-bar/variants/tag-search-bar/schema/index.mjs";
105
105
  import "./search-bar/index.mjs";
106
- import { SearchHistoryInspectorProps, SearchHistoryProps, searchHistoryInspectorDefaultProps, searchHistoryInspectorPropsSchema } from "./search-history/schema.mjs";
107
- import { SearchHistoryClient } from "./search-history/client.mjs";
106
+ import { searchHistoryInspectorPropsSchema } from "./search-history/schema.mjs";
107
+ import { SearchHistoryClient, SearchHistoryProps } from "./search-history/client.mjs";
108
108
  import { SearchHistoryServer } from "./search-history/server.mjs";
109
109
  import { searchHistoryMaterial } from "./search-history/material.mjs";
110
110
  import "./search-history/index.mjs";
111
- import { SearchInputClient } from "./search-input/client.mjs";
112
- import { SearchInputInspectorProps, SearchInputProps, searchInputInspectorDefaultProps, searchInputInspectorPropsSchema } from "./search-input/schema.mjs";
111
+ import { searchInputInspectorPropsSchema } from "./search-input/schema.mjs";
112
+ import { SearchInputClient, SearchInputProps } from "./search-input/client.mjs";
113
113
  import { SearchInputServer } from "./search-input/server.mjs";
114
114
  import { searchInputMaterial } from "./search-input/material.mjs";
115
115
  import "./search-input/index.mjs";
116
- import { TabBarInspectorProps, TabBarProps, tabBarInspectorDefaultProps, tabBarInspectorPropsSchema } from "./tab-bar/schema.mjs";
117
- import { TabBarClient } from "./tab-bar/client.mjs";
116
+ import { tabBarInspectorPropsSchema } from "./tab-bar/schema.mjs";
117
+ import { TabBarClient, TabBarProps } from "./tab-bar/client.mjs";
118
118
  import { TabBarServer } from "./tab-bar/server.mjs";
119
119
  import { tabBarMaterial } from "./tab-bar/material.mjs";
120
120
  import "./tab-bar/index.mjs";
121
- import { TextRecommendClient } from "./text-recommend/client.mjs";
122
- import { TextRecommendInspectorProps, TextRecommendProps, textRecommendInspectorDefaultProps, textRecommendInspectorPropsSchema } from "./text-recommend/schema.mjs";
121
+ import { textRecommendInspectorPropsSchema } from "./text-recommend/schema.mjs";
122
+ import { TextRecommendClient, TextRecommendProps } from "./text-recommend/client.mjs";
123
123
  import { TextRecommendServer } from "./text-recommend/server.mjs";
124
124
  import { textRecommendMaterial } from "./text-recommend/material.mjs";
125
125
  import "./text-recommend/index.mjs";
126
- import { VideoHorizontalListInspectorProps, VideoHorizontalListProps, videoHorizontalListInspectorDefaultProps, videoHorizontalListInspectorPropsSchema } from "./video-horizontal-list/schema.mjs";
127
- import { VideoHorizontalListClient } from "./video-horizontal-list/client.mjs";
126
+ import { videoHorizontalListInspectorPropsSchema } from "./video-horizontal-list/schema.mjs";
127
+ import { VideoHorizontalListClient, VideoHorizontalListProps } from "./video-horizontal-list/client.mjs";
128
128
  import { VideoHorizontalListServer } from "./video-horizontal-list/server.mjs";
129
129
  import { videoHorizontalListMaterial } from "./video-horizontal-list/material.mjs";
130
130
  import "./video-horizontal-list/index.mjs";
@@ -1,2 +1,2 @@
1
1
 
2
- import{__exportAll as e}from"../../../_virtual/_rolldown/runtime.mjs";import{defaultProps as t}from"./banner/variants/basic-banner/defaults/default-props.mjs";import{schema as n}from"./banner/variants/basic-banner/schema/index.mjs";import{basicBannerInspectorDefaultProps as r,basicBannerInspectorPropsSchema as i}from"./banner/variants/basic-banner/inspector-schema.mjs";import{BasicBanner as a}from"./banner/variants/basic-banner/server.mjs";import{basicBannerMaterial as o}from"./banner/variants/basic-banner/material.mjs";import s from"./banner/variants/basic-banner/index.mjs";import{defaultProps as c}from"./card-grid/variants/card-grid-2x3/defaults/default-props.mjs";import{schema as l}from"./card-grid/variants/card-grid-2x3/schema/index.mjs";import u from"./card-grid/variants/card-grid-2x3/index.mjs";import{defaultProps as d}from"./card-grid/variants/card-grid-2x3-infinite/defaults/default-props.mjs";import{schema as f}from"./card-grid/variants/card-grid-2x3-infinite/schema/index.mjs";import p from"./card-grid/variants/card-grid-2x3-infinite/index.mjs";import{defaultProps as m}from"./card-grid/variants/card-grid-2x4/defaults/default-props.mjs";import{schema as h}from"./card-grid/variants/card-grid-2x4/schema/index.mjs";import g from"./card-grid/variants/card-grid-2x4/index.mjs";import{defaultProps as _}from"./card-grid/variants/card-grid-3x3/defaults/default-props.mjs";import{schema as v}from"./card-grid/variants/card-grid-3x3/schema/index.mjs";import y from"./card-grid/variants/card-grid-3x3/index.mjs";import{defaultProps as b}from"./card-grid/variants/card-grid-3x3-infinite/defaults/default-props.mjs";import{schema as x}from"./card-grid/variants/card-grid-3x3-infinite/schema/index.mjs";import S from"./card-grid/variants/card-grid-3x3-infinite/index.mjs";import{defaultProps as C}from"./feature-grid/variants/basic-feature-grid/defaults/default-props.mjs";import{schema as w}from"./feature-grid/variants/basic-feature-grid/schema/index.mjs";import T from"./feature-grid/variants/basic-feature-grid/index.mjs";import{FloatingBallClient as E}from"./floating-ball/client.mjs";import{floatingBallInspectorDefaultProps as D,floatingBallInspectorPropsSchema as O}from"./floating-ball/schema.mjs";import{FloatingBall as k}from"./floating-ball/server.mjs";import{floatingBallMaterial as A}from"./floating-ball/material.mjs";import{defaultProps as j}from"../basics/fullscreen-feed/defaults/default-props.mjs";import{schema as M}from"../basics/fullscreen-feed/schema/index.mjs";import N from"../basics/fullscreen-feed/index.mjs";import{defaultProps as P}from"./fullscreen-feed/variants/fullscreen-post-feed/defaults/default-props.mjs";import{schema as F}from"./fullscreen-feed/variants/fullscreen-post-feed/schema/index.mjs";import I from"./fullscreen-feed/variants/fullscreen-post-feed/index.mjs";import{defaultProps as L}from"./fullscreen-feed/variants/fullscreen-video-feed/defaults/default-props.mjs";import{schema as R}from"./fullscreen-feed/variants/fullscreen-video-feed/schema/index.mjs";import z from"./fullscreen-feed/variants/fullscreen-video-feed/index.mjs";import{defaultProps as B}from"./home-recommend/variants/home-recommend-grid/defaults/default-props.mjs";import{defaultProps as V}from"./search-bar/variants/detail-search-bar/defaults/default-props.mjs";import{schema as H}from"./search-bar/variants/detail-search-bar/schema/index.mjs";import U from"./search-bar/variants/detail-search-bar/index.mjs";import{schema as W}from"./home-recommend/variants/home-recommend-grid/schema/index.mjs";import{homeRecommendGridInspectorDefaultProps as G,homeRecommendGridInspectorPropsSchema as K}from"./home-recommend/variants/home-recommend-grid/inspector-schema.mjs";import{HomeRecommendGrid as q}from"./home-recommend/variants/home-recommend-grid/server.mjs";import{homeRecommendGridMaterial as J}from"./home-recommend/variants/home-recommend-grid/material.mjs";import Y from"./home-recommend/variants/home-recommend-grid/index.mjs";import{defaultProps as X}from"./home-recommend/variants/home-recommend-waterfall/defaults/default-props.mjs";import{schema as Z}from"./home-recommend/variants/home-recommend-waterfall/schema/index.mjs";import{homeRecommendWaterfallInspectorDefaultProps as Q,homeRecommendWaterfallInspectorPropsSchema as $}from"./home-recommend/variants/home-recommend-waterfall/inspector-schema.mjs";import{HomeRecommendWaterfall as ee}from"./home-recommend/variants/home-recommend-waterfall/server.mjs";import{homeRecommendWaterfallMaterial as te}from"./home-recommend/variants/home-recommend-waterfall/material.mjs";import ne from"./home-recommend/variants/home-recommend-waterfall/index.mjs";import{MarqueeClient as re}from"./marquee/client.mjs";import{marqueeInspectorDefaultProps as ie,marqueeInspectorPropsSchema as ae}from"./marquee/schema.mjs";import{MarqueeServer as oe}from"./marquee/server.mjs";import{marqueeMaterial as se}from"./marquee/material.mjs";import{defaultProps as ce}from"./nav-bar/variants/basic-nav-bar/defaults/default-props.mjs";import{schema as le}from"./nav-bar/variants/basic-nav-bar/schema/index.mjs";import ue from"./nav-bar/variants/basic-nav-bar/index.mjs";import{defaultProps as de}from"./post-card/variants/basic-post-card/defaults/default-props.mjs";import{schema as fe}from"./post-card/variants/basic-post-card/schema/index.mjs";import pe from"./post-card/variants/basic-post-card/index.mjs";import{UserProfileHeaderClient as me}from"./profile/profile-header/client.mjs";import{profileHeaderInspectorDefaultProps as he,profileHeaderInspectorPropsSchema as ge}from"./profile/profile-header/schema.mjs";import{UserProfileHeader as _e,buildUserProfileHeaderPrefetch as ve}from"./profile/profile-header/server.mjs";import{profileHeaderMaterial as ye,profileHeaderMaterialWithDisabledBackground as be}from"./profile/profile-header/material.mjs";import{profileMainCollectCollectionTabOptions as xe,profileMainCollectTabOptions as Se,profileMainHistoryTabOptions as Ce,profileMainLikeTabOptions as we,profileMainMineTabOptions as Te,profileMainProfileTabOptions as Ee,profileMainTabOptions as De}from"./profile/profile-main/variants.mjs";import{UserProfileMainShell as Oe}from"./profile/profile-main/shell.mjs";import{UserProfileMainClient as ke}from"./profile/profile-main/client.mjs";import{profileMainInspectorDefaultProps as Ae,profileMainInspectorPropsSchema as je}from"./profile/profile-main/schema.mjs";import{CollectTab as Me}from"./profile/profile-main/tabs/collect-tab/client.mjs";import{CollectTabServer as Ne,buildCollectTabPrefetch as Pe}from"./profile/profile-main/tabs/collect-tab/server.mjs";import{HistoryTab as Fe}from"./profile/profile-main/tabs/history-tab/client.mjs";import{HistoryTabServer as Ie,buildHistoryTabPrefetch as Le}from"./profile/profile-main/tabs/history-tab/server.mjs";import{LikeTab as Re}from"./profile/profile-main/tabs/like-tab/client.mjs";import{LikeTabServer as ze,buildLikeTabPrefetch as Be}from"./profile/profile-main/tabs/like-tab/server.mjs";import{PublishTab as Ve}from"./profile/profile-main/tabs/publish-tab/client.mjs";import{PublishTabServer as He,buildPublishTabPrefetch as Ue}from"./profile/profile-main/tabs/publish-tab/server.mjs";import{UserProfileMain as We}from"./profile/profile-main/server.mjs";import{profileMainMaterial as Ge}from"./profile/profile-main/material.mjs";import{defaultProps as Ke}from"./recommended-users/variants/basic-recommended-users/defaults/default-props.mjs";import{schema as qe}from"./recommended-users/variants/basic-recommended-users/schema/index.mjs";import Je from"./recommended-users/variants/basic-recommended-users/index.mjs";import{defaultProps as Ye}from"./search-bar/variants/basic-search-bar/defaults/default-props.mjs";import{schema as Xe}from"./search-bar/variants/basic-search-bar/schema/index.mjs";import Ze from"./search-bar/variants/basic-search-bar/index.mjs";import{defaultProps as Qe}from"./search-bar/variants/filter-search-bar/defaults/default-props.mjs";import{schema as $e}from"./search-bar/variants/filter-search-bar/schema/index.mjs";import et from"./search-bar/variants/filter-search-bar/index.mjs";import{defaultProps as tt}from"./search-bar/variants/tag-search-bar/defaults/default-props.mjs";import{schema as nt}from"./search-bar/variants/tag-search-bar/schema/index.mjs";import rt from"./search-bar/variants/tag-search-bar/index.mjs";import{SearchHistoryClient as it}from"./search-history/client.mjs";import{searchHistoryInspectorDefaultProps as at,searchHistoryInspectorPropsSchema as ot}from"./search-history/schema.mjs";import{SearchHistoryServer as st}from"./search-history/server.mjs";import{searchHistoryMaterial as ct}from"./search-history/material.mjs";import{SearchInputClient as lt}from"./search-input/client.mjs";import{searchInputInspectorDefaultProps as ut,searchInputInspectorPropsSchema as dt}from"./search-input/schema.mjs";import{SearchInputServer as ft}from"./search-input/server.mjs";import{searchInputMaterial as pt}from"./search-input/material.mjs";import{TabBarClient as mt}from"./tab-bar/client.mjs";import{tabBarInspectorDefaultProps as ht,tabBarInspectorPropsSchema as gt}from"./tab-bar/schema.mjs";import{TabBarServer as _t}from"./tab-bar/server.mjs";import{tabBarMaterial as vt}from"./tab-bar/material.mjs";import{TextRecommendClient as yt}from"./text-recommend/client.mjs";import{textRecommendInspectorDefaultProps as bt,textRecommendInspectorPropsSchema as xt}from"./text-recommend/schema.mjs";import{TextRecommendServer as St}from"./text-recommend/server.mjs";import{textRecommendMaterial as Ct}from"./text-recommend/material.mjs";import{VideoHorizontalListClient as wt}from"./video-horizontal-list/client.mjs";import{videoHorizontalListInspectorDefaultProps as Tt,videoHorizontalListInspectorPropsSchema as Et}from"./video-horizontal-list/schema.mjs";import{VideoHorizontalListServer as Dt}from"./video-horizontal-list/server.mjs";import{videoHorizontalListMaterial as Ot}from"./video-horizontal-list/material.mjs";var kt=e({BasicBanner:()=>s,BasicBannerDefaultData:()=>t,BasicBannerMaterialComponent:()=>a,BasicBannerSchema:()=>n,BasicFeatureGrid:()=>T,BasicFeatureGridDefaultData:()=>C,BasicFeatureGridSchema:()=>w,BasicFullscreenFeed:()=>N,BasicFullscreenFeedDefaultData:()=>j,BasicFullscreenFeedSchema:()=>M,BasicNavBar:()=>ue,BasicNavBarDefaultData:()=>ce,BasicNavBarSchema:()=>le,BasicPostCard:()=>pe,BasicPostCardDefaultData:()=>de,BasicPostCardSchema:()=>fe,BasicRecommendedUsers:()=>Je,BasicRecommendedUsersDefaultData:()=>Ke,BasicRecommendedUsersSchema:()=>qe,BasicSearchBar:()=>Ze,BasicSearchBarDefaultData:()=>Ye,BasicSearchBarSchema:()=>Xe,CardGrid2x3:()=>u,CardGrid2x3DefaultData:()=>c,CardGrid2x3Infinite:()=>p,CardGrid2x3InfiniteDefaultData:()=>d,CardGrid2x3InfiniteSchema:()=>f,CardGrid2x3Schema:()=>l,CardGrid2x4:()=>g,CardGrid2x4DefaultData:()=>m,CardGrid2x4Schema:()=>h,CardGrid3x3:()=>y,CardGrid3x3DefaultData:()=>_,CardGrid3x3Infinite:()=>S,CardGrid3x3InfiniteDefaultData:()=>b,CardGrid3x3InfiniteSchema:()=>x,CardGrid3x3Schema:()=>v,CollectTab:()=>Me,CollectTabServer:()=>Ne,DetailSearchBar:()=>U,DetailSearchBarDefaultData:()=>V,DetailSearchBarSchema:()=>H,FilterSearchBar:()=>et,FilterSearchBarDefaultData:()=>Qe,FilterSearchBarSchema:()=>$e,FloatingBall:()=>k,FloatingBallClient:()=>E,FullscreenFeedClient:()=>I,FullscreenPostFeedDefaultData:()=>P,FullscreenPostFeedSchema:()=>F,FullscreenVideoClient:()=>z,FullscreenVideoFeedDefaultData:()=>L,FullscreenVideoFeedSchema:()=>R,HistoryTab:()=>Fe,HistoryTabServer:()=>Ie,HomeRecommendGrid:()=>Y,HomeRecommendGridDefaultData:()=>B,HomeRecommendGridMaterialComponent:()=>q,HomeRecommendGridSchema:()=>W,HomeRecommendWaterfall:()=>ne,HomeRecommendWaterfallDefaultData:()=>X,HomeRecommendWaterfallMaterialComponent:()=>ee,HomeRecommendWaterfallSchema:()=>Z,LikeTab:()=>Re,LikeTabServer:()=>ze,MarqueeClient:()=>re,MarqueeServer:()=>oe,PublishTab:()=>Ve,PublishTabServer:()=>He,SearchHistoryClient:()=>it,SearchHistoryServer:()=>st,SearchInputClient:()=>lt,SearchInputServer:()=>ft,TabBarClient:()=>mt,TabBarServer:()=>_t,TagSearchBar:()=>rt,TagSearchBarDefaultData:()=>tt,TagSearchBarSchema:()=>nt,TextRecommendClient:()=>yt,TextRecommendServer:()=>St,UserProfileHeader:()=>_e,UserProfileHeaderClient:()=>me,UserProfileMain:()=>We,UserProfileMainClient:()=>ke,UserProfileMainShell:()=>Oe,VideoHorizontalListClient:()=>wt,VideoHorizontalListServer:()=>Dt,basicBannerInspectorDefaultProps:()=>r,basicBannerInspectorPropsSchema:()=>i,basicBannerMaterial:()=>o,buildCollectTabPrefetch:()=>Pe,buildHistoryTabPrefetch:()=>Le,buildLikeTabPrefetch:()=>Be,buildPublishTabPrefetch:()=>Ue,buildUserProfileHeaderPrefetch:()=>ve,floatingBallInspectorDefaultProps:()=>D,floatingBallInspectorPropsSchema:()=>O,floatingBallMaterial:()=>A,homeRecommendGridInspectorDefaultProps:()=>G,homeRecommendGridInspectorPropsSchema:()=>K,homeRecommendGridMaterial:()=>J,homeRecommendWaterfallInspectorDefaultProps:()=>Q,homeRecommendWaterfallInspectorPropsSchema:()=>$,homeRecommendWaterfallMaterial:()=>te,marqueeInspectorDefaultProps:()=>ie,marqueeInspectorPropsSchema:()=>ae,marqueeMaterial:()=>se,profileHeaderInspectorDefaultProps:()=>he,profileHeaderInspectorPropsSchema:()=>ge,profileHeaderMaterial:()=>ye,profileHeaderMaterialWithDisabledBackground:()=>be,profileMainCollectCollectionTabOptions:()=>xe,profileMainCollectTabOptions:()=>Se,profileMainHistoryTabOptions:()=>Ce,profileMainInspectorDefaultProps:()=>Ae,profileMainInspectorPropsSchema:()=>je,profileMainLikeTabOptions:()=>we,profileMainMaterial:()=>Ge,profileMainMineTabOptions:()=>Te,profileMainProfileTabOptions:()=>Ee,profileMainTabOptions:()=>De,searchHistoryInspectorDefaultProps:()=>at,searchHistoryInspectorPropsSchema:()=>ot,searchHistoryMaterial:()=>ct,searchInputInspectorDefaultProps:()=>ut,searchInputInspectorPropsSchema:()=>dt,searchInputMaterial:()=>pt,tabBarInspectorDefaultProps:()=>ht,tabBarInspectorPropsSchema:()=>gt,tabBarMaterial:()=>vt,textRecommendInspectorDefaultProps:()=>bt,textRecommendInspectorPropsSchema:()=>xt,textRecommendMaterial:()=>Ct,videoHorizontalListInspectorDefaultProps:()=>Tt,videoHorizontalListInspectorPropsSchema:()=>Et,videoHorizontalListMaterial:()=>Ot});export{kt as business_exports};
2
+ import{__exportAll as e}from"../../../_virtual/_rolldown/runtime.mjs";import{defaultProps as t}from"./banner/variants/basic-banner/defaults/default-props.mjs";import{schema as n}from"./banner/variants/basic-banner/schema/index.mjs";import{basicBannerInspectorDefaultProps as r,basicBannerInspectorPropsSchema as i}from"./banner/variants/basic-banner/inspector-schema.mjs";import{BasicBanner as a}from"./banner/variants/basic-banner/server.mjs";import{basicBannerMaterial as o}from"./banner/variants/basic-banner/material.mjs";import s from"./banner/variants/basic-banner/index.mjs";import{defaultProps as c}from"./card-grid/variants/card-grid-2x3/defaults/default-props.mjs";import{schema as l}from"./card-grid/variants/card-grid-2x3/schema/index.mjs";import u from"./card-grid/variants/card-grid-2x3/index.mjs";import{defaultProps as d}from"./card-grid/variants/card-grid-2x3-infinite/defaults/default-props.mjs";import{schema as f}from"./card-grid/variants/card-grid-2x3-infinite/schema/index.mjs";import p from"./card-grid/variants/card-grid-2x3-infinite/index.mjs";import{defaultProps as m}from"./card-grid/variants/card-grid-2x4/defaults/default-props.mjs";import{schema as h}from"./card-grid/variants/card-grid-2x4/schema/index.mjs";import g from"./card-grid/variants/card-grid-2x4/index.mjs";import{defaultProps as _}from"./card-grid/variants/card-grid-3x3/defaults/default-props.mjs";import{schema as v}from"./card-grid/variants/card-grid-3x3/schema/index.mjs";import y from"./card-grid/variants/card-grid-3x3/index.mjs";import{defaultProps as b}from"./card-grid/variants/card-grid-3x3-infinite/defaults/default-props.mjs";import{schema as x}from"./card-grid/variants/card-grid-3x3-infinite/schema/index.mjs";import S from"./card-grid/variants/card-grid-3x3-infinite/index.mjs";import{defaultProps as C}from"./feature-grid/variants/basic-feature-grid/defaults/default-props.mjs";import{schema as w}from"./feature-grid/variants/basic-feature-grid/schema/index.mjs";import T from"./feature-grid/variants/basic-feature-grid/index.mjs";import{FloatingBallClient as E}from"./floating-ball/client.mjs";import{floatingBallInspectorDefaultProps as D,floatingBallInspectorPropsSchema as O}from"./floating-ball/schema.mjs";import{FloatingBall as k}from"./floating-ball/server.mjs";import{floatingBallMaterial as A}from"./floating-ball/material.mjs";import{defaultProps as j}from"../basics/fullscreen-feed/defaults/default-props.mjs";import{schema as M}from"../basics/fullscreen-feed/schema/index.mjs";import N from"../basics/fullscreen-feed/index.mjs";import{defaultProps as P}from"./fullscreen-feed/variants/fullscreen-post-feed/defaults/default-props.mjs";import{schema as F}from"./fullscreen-feed/variants/fullscreen-post-feed/schema/index.mjs";import I from"./fullscreen-feed/variants/fullscreen-post-feed/index.mjs";import{defaultProps as L}from"./fullscreen-feed/variants/fullscreen-video-feed/defaults/default-props.mjs";import{schema as R}from"./fullscreen-feed/variants/fullscreen-video-feed/schema/index.mjs";import z from"./fullscreen-feed/variants/fullscreen-video-feed/index.mjs";import{defaultProps as B}from"./home-recommend/variants/home-recommend-grid/defaults/default-props.mjs";import{defaultProps as V}from"./search-bar/variants/detail-search-bar/defaults/default-props.mjs";import{schema as H}from"./search-bar/variants/detail-search-bar/schema/index.mjs";import U from"./search-bar/variants/detail-search-bar/index.mjs";import{schema as W}from"./home-recommend/variants/home-recommend-grid/schema/index.mjs";import{homeRecommendGridInspectorDefaultProps as G,homeRecommendGridInspectorPropsSchema as K}from"./home-recommend/variants/home-recommend-grid/inspector-schema.mjs";import{HomeRecommendGrid as q}from"./home-recommend/variants/home-recommend-grid/server.mjs";import{homeRecommendGridMaterial as J}from"./home-recommend/variants/home-recommend-grid/material.mjs";import Y from"./home-recommend/variants/home-recommend-grid/index.mjs";import{defaultProps as X}from"./home-recommend/variants/home-recommend-waterfall/defaults/default-props.mjs";import{schema as Z}from"./home-recommend/variants/home-recommend-waterfall/schema/index.mjs";import{homeRecommendWaterfallInspectorDefaultProps as Q,homeRecommendWaterfallInspectorPropsSchema as $}from"./home-recommend/variants/home-recommend-waterfall/inspector-schema.mjs";import{HomeRecommendWaterfall as ee}from"./home-recommend/variants/home-recommend-waterfall/server.mjs";import{homeRecommendWaterfallMaterial as te}from"./home-recommend/variants/home-recommend-waterfall/material.mjs";import ne from"./home-recommend/variants/home-recommend-waterfall/index.mjs";import{MarqueeClient as re}from"./marquee/client.mjs";import{marqueeInspectorPropsSchema as ie}from"./marquee/schema.mjs";import{MarqueeServer as ae}from"./marquee/server.mjs";import{marqueeMaterial as oe}from"./marquee/material.mjs";import{defaultProps as se}from"./nav-bar/variants/basic-nav-bar/defaults/default-props.mjs";import{schema as ce}from"./nav-bar/variants/basic-nav-bar/schema/index.mjs";import le from"./nav-bar/variants/basic-nav-bar/index.mjs";import{defaultProps as ue}from"./post-card/variants/basic-post-card/defaults/default-props.mjs";import{schema as de}from"./post-card/variants/basic-post-card/schema/index.mjs";import fe from"./post-card/variants/basic-post-card/index.mjs";import{UserProfileHeaderClient as pe}from"./profile/profile-header/client.mjs";import{profileHeaderInspectorDefaultProps as me,profileHeaderInspectorPropsSchema as he}from"./profile/profile-header/schema.mjs";import{UserProfileHeader as ge,buildUserProfileHeaderPrefetch as _e}from"./profile/profile-header/server.mjs";import{profileHeaderMaterial as ve,profileHeaderMaterialWithDisabledBackground as ye}from"./profile/profile-header/material.mjs";import{profileMainCollectCollectionTabOptions as be,profileMainCollectTabOptions as xe,profileMainHistoryTabOptions as Se,profileMainLikeTabOptions as Ce,profileMainMineTabOptions as we,profileMainProfileTabOptions as Te,profileMainTabOptions as Ee}from"./profile/profile-main/variants.mjs";import{UserProfileMainShell as De}from"./profile/profile-main/shell.mjs";import{UserProfileMainClient as Oe}from"./profile/profile-main/client.mjs";import{profileMainInspectorDefaultProps as ke,profileMainInspectorPropsSchema as Ae}from"./profile/profile-main/schema.mjs";import{CollectTab as je}from"./profile/profile-main/tabs/collect-tab/client.mjs";import{CollectTabServer as Me,buildCollectTabPrefetch as Ne}from"./profile/profile-main/tabs/collect-tab/server.mjs";import{HistoryTab as Pe}from"./profile/profile-main/tabs/history-tab/client.mjs";import{HistoryTabServer as Fe,buildHistoryTabPrefetch as Ie}from"./profile/profile-main/tabs/history-tab/server.mjs";import{LikeTab as Le}from"./profile/profile-main/tabs/like-tab/client.mjs";import{LikeTabServer as Re,buildLikeTabPrefetch as ze}from"./profile/profile-main/tabs/like-tab/server.mjs";import{PublishTab as Be}from"./profile/profile-main/tabs/publish-tab/client.mjs";import{PublishTabServer as Ve,buildPublishTabPrefetch as He}from"./profile/profile-main/tabs/publish-tab/server.mjs";import{UserProfileMain as Ue}from"./profile/profile-main/server.mjs";import{profileMainMaterial as We}from"./profile/profile-main/material.mjs";import{defaultProps as Ge}from"./recommended-users/variants/basic-recommended-users/defaults/default-props.mjs";import{schema as Ke}from"./recommended-users/variants/basic-recommended-users/schema/index.mjs";import qe from"./recommended-users/variants/basic-recommended-users/index.mjs";import{defaultProps as Je}from"./search-bar/variants/basic-search-bar/defaults/default-props.mjs";import{schema as Ye}from"./search-bar/variants/basic-search-bar/schema/index.mjs";import Xe from"./search-bar/variants/basic-search-bar/index.mjs";import{defaultProps as Ze}from"./search-bar/variants/filter-search-bar/defaults/default-props.mjs";import{schema as Qe}from"./search-bar/variants/filter-search-bar/schema/index.mjs";import $e from"./search-bar/variants/filter-search-bar/index.mjs";import{defaultProps as et}from"./search-bar/variants/tag-search-bar/defaults/default-props.mjs";import{schema as tt}from"./search-bar/variants/tag-search-bar/schema/index.mjs";import nt from"./search-bar/variants/tag-search-bar/index.mjs";import{SearchHistoryClient as rt}from"./search-history/client.mjs";import{searchHistoryInspectorPropsSchema as it}from"./search-history/schema.mjs";import{SearchHistoryServer as at}from"./search-history/server.mjs";import{searchHistoryMaterial as ot}from"./search-history/material.mjs";import{SearchInputClient as st}from"./search-input/client.mjs";import{searchInputInspectorPropsSchema as ct}from"./search-input/schema.mjs";import{SearchInputServer as lt}from"./search-input/server.mjs";import{searchInputMaterial as ut}from"./search-input/material.mjs";import{TabBarClient as dt}from"./tab-bar/client.mjs";import{tabBarInspectorPropsSchema as ft}from"./tab-bar/schema.mjs";import{TabBarServer as pt}from"./tab-bar/server.mjs";import{tabBarMaterial as mt}from"./tab-bar/material.mjs";import{TextRecommendClient as ht}from"./text-recommend/client.mjs";import{textRecommendInspectorPropsSchema as gt}from"./text-recommend/schema.mjs";import{TextRecommendServer as _t}from"./text-recommend/server.mjs";import{textRecommendMaterial as vt}from"./text-recommend/material.mjs";import{VideoHorizontalListClient as yt}from"./video-horizontal-list/client.mjs";import{videoHorizontalListInspectorPropsSchema as bt}from"./video-horizontal-list/schema.mjs";import{VideoHorizontalListServer as xt}from"./video-horizontal-list/server.mjs";import{videoHorizontalListMaterial as St}from"./video-horizontal-list/material.mjs";var Ct=e({BasicBanner:()=>s,BasicBannerDefaultData:()=>t,BasicBannerMaterialComponent:()=>a,BasicBannerSchema:()=>n,BasicFeatureGrid:()=>T,BasicFeatureGridDefaultData:()=>C,BasicFeatureGridSchema:()=>w,BasicFullscreenFeed:()=>N,BasicFullscreenFeedDefaultData:()=>j,BasicFullscreenFeedSchema:()=>M,BasicNavBar:()=>le,BasicNavBarDefaultData:()=>se,BasicNavBarSchema:()=>ce,BasicPostCard:()=>fe,BasicPostCardDefaultData:()=>ue,BasicPostCardSchema:()=>de,BasicRecommendedUsers:()=>qe,BasicRecommendedUsersDefaultData:()=>Ge,BasicRecommendedUsersSchema:()=>Ke,BasicSearchBar:()=>Xe,BasicSearchBarDefaultData:()=>Je,BasicSearchBarSchema:()=>Ye,CardGrid2x3:()=>u,CardGrid2x3DefaultData:()=>c,CardGrid2x3Infinite:()=>p,CardGrid2x3InfiniteDefaultData:()=>d,CardGrid2x3InfiniteSchema:()=>f,CardGrid2x3Schema:()=>l,CardGrid2x4:()=>g,CardGrid2x4DefaultData:()=>m,CardGrid2x4Schema:()=>h,CardGrid3x3:()=>y,CardGrid3x3DefaultData:()=>_,CardGrid3x3Infinite:()=>S,CardGrid3x3InfiniteDefaultData:()=>b,CardGrid3x3InfiniteSchema:()=>x,CardGrid3x3Schema:()=>v,CollectTab:()=>je,CollectTabServer:()=>Me,DetailSearchBar:()=>U,DetailSearchBarDefaultData:()=>V,DetailSearchBarSchema:()=>H,FilterSearchBar:()=>$e,FilterSearchBarDefaultData:()=>Ze,FilterSearchBarSchema:()=>Qe,FloatingBall:()=>k,FloatingBallClient:()=>E,FullscreenFeedClient:()=>I,FullscreenPostFeedDefaultData:()=>P,FullscreenPostFeedSchema:()=>F,FullscreenVideoClient:()=>z,FullscreenVideoFeedDefaultData:()=>L,FullscreenVideoFeedSchema:()=>R,HistoryTab:()=>Pe,HistoryTabServer:()=>Fe,HomeRecommendGrid:()=>Y,HomeRecommendGridDefaultData:()=>B,HomeRecommendGridMaterialComponent:()=>q,HomeRecommendGridSchema:()=>W,HomeRecommendWaterfall:()=>ne,HomeRecommendWaterfallDefaultData:()=>X,HomeRecommendWaterfallMaterialComponent:()=>ee,HomeRecommendWaterfallSchema:()=>Z,LikeTab:()=>Le,LikeTabServer:()=>Re,MarqueeClient:()=>re,MarqueeServer:()=>ae,PublishTab:()=>Be,PublishTabServer:()=>Ve,SearchHistoryClient:()=>rt,SearchHistoryServer:()=>at,SearchInputClient:()=>st,SearchInputServer:()=>lt,TabBarClient:()=>dt,TabBarServer:()=>pt,TagSearchBar:()=>nt,TagSearchBarDefaultData:()=>et,TagSearchBarSchema:()=>tt,TextRecommendClient:()=>ht,TextRecommendServer:()=>_t,UserProfileHeader:()=>ge,UserProfileHeaderClient:()=>pe,UserProfileMain:()=>Ue,UserProfileMainClient:()=>Oe,UserProfileMainShell:()=>De,VideoHorizontalListClient:()=>yt,VideoHorizontalListServer:()=>xt,basicBannerInspectorDefaultProps:()=>r,basicBannerInspectorPropsSchema:()=>i,basicBannerMaterial:()=>o,buildCollectTabPrefetch:()=>Ne,buildHistoryTabPrefetch:()=>Ie,buildLikeTabPrefetch:()=>ze,buildPublishTabPrefetch:()=>He,buildUserProfileHeaderPrefetch:()=>_e,floatingBallInspectorDefaultProps:()=>D,floatingBallInspectorPropsSchema:()=>O,floatingBallMaterial:()=>A,homeRecommendGridInspectorDefaultProps:()=>G,homeRecommendGridInspectorPropsSchema:()=>K,homeRecommendGridMaterial:()=>J,homeRecommendWaterfallInspectorDefaultProps:()=>Q,homeRecommendWaterfallInspectorPropsSchema:()=>$,homeRecommendWaterfallMaterial:()=>te,marqueeInspectorPropsSchema:()=>ie,marqueeMaterial:()=>oe,profileHeaderInspectorDefaultProps:()=>me,profileHeaderInspectorPropsSchema:()=>he,profileHeaderMaterial:()=>ve,profileHeaderMaterialWithDisabledBackground:()=>ye,profileMainCollectCollectionTabOptions:()=>be,profileMainCollectTabOptions:()=>xe,profileMainHistoryTabOptions:()=>Se,profileMainInspectorDefaultProps:()=>ke,profileMainInspectorPropsSchema:()=>Ae,profileMainLikeTabOptions:()=>Ce,profileMainMaterial:()=>We,profileMainMineTabOptions:()=>we,profileMainProfileTabOptions:()=>Te,profileMainTabOptions:()=>Ee,searchHistoryInspectorPropsSchema:()=>it,searchHistoryMaterial:()=>ot,searchInputInspectorPropsSchema:()=>ct,searchInputMaterial:()=>ut,tabBarInspectorPropsSchema:()=>ft,tabBarMaterial:()=>mt,textRecommendInspectorPropsSchema:()=>gt,textRecommendMaterial:()=>vt,videoHorizontalListInspectorPropsSchema:()=>bt,videoHorizontalListMaterial:()=>St});export{Ct as business_exports};
@@ -1,2 +1,2 @@
1
1
 
2
- "use client";import{Box as e}from"../../../ui/box.mjs";import{Text as t}from"../../../ui/text.mjs";import n from"../../../ui/link.mjs";import r from"../../../../assets/icons/common/right_arrow.mjs";import{LargeGridItemClient as i}from"./card-item.mjs";import{defaultData as a}from"./default.mjs";import{jsx as o,jsxs as s}from"react/jsx-runtime";const c=[];function l(e){return e==null||e===``}function u(e,t){return l(e)?t:e}function d(e,t){return t?{...e,...t,id:u(t.id,e.id),cover:u(t.cover,e.cover),title:u(t.title,e.title),desc:u(t.desc,e.desc),tag:u(t.tag,e.tag),superscript:t.superscript??e.superscript,playCount:u(t.playCount,e.playCount),playCountDelta:t.playCountDelta??e.playCountDelta,showPlayCount:t.showPlayCount??e.showPlayCount,duration:u(t.duration,e.duration),showEpisode:t.showEpisode??e.showEpisode,useContentCover:t.useContentCover??e.useContentCover,tagImageUrl:u(t.tagImageUrl,e.tagImageUrl),tag_image:u(t.tag_image,e.tag_image),tag_image_url:u(t.tag_image_url,e.tag_image_url),tagImage:u(t.tagImage,e.tagImage)}:e}function f(e,t){if(!t)return e;let n=e.items;return{...e,...t,title:u(t.title,e.title),moreUrl:u(t.moreUrl,e.moreUrl),moreLinkType:t.moreLinkType??e.moreLinkType,recommendMode:t.recommendMode??e.recommendMode,items:n?d(n,t.items):t.items}}function p({data:l=c}){let u=Array.isArray(l)&&l.length>0?[f(a[0],l[0])]:a;if(!u||u.length===0)return null;let d=u[0],p=d?.title,m=d?.moreUrl;return s(e,{className:`p-3`,children:[s(e,{className:`flex items-center justify-between mb-[10px] h-[24px]`,children:[p&&o(t,{as:`h2`,className:`text-[18px] font-bold text-text1 line-clamp-1 flex-1 min-w-0 mr-[12px]`,children:p}),m&&s(n,{href:m,className:`flex items-center text-[14px] text-text2 ml-auto`,children:[`更多`,o(r,{className:`ml-[2px] h-[12px] w-[12px] text-text2`})]})]}),u.map((t,n)=>{let{items:r}=t;return r?o(e,{className:n>0?`mt-3`:``,children:o(i,{data:r})},`large-feature-grid-items-${n}`):null})]})}export{p as LargeFeatureGridClient};
2
+ "use client";import{Box as e}from"../../../ui/box.mjs";import{Text as t}from"../../../ui/text.mjs";import n from"../../../ui/link.mjs";import r from"../../../../assets/icons/common/right_arrow.mjs";import{LargeGridItemClient as i}from"./card-item.mjs";import{largeFeatureGridInspectorDefaultProps as a}from"./schema.mjs";import{jsx as o,jsxs as s}from"react/jsx-runtime";const c=[],l=a.data??[];function u(e){return e==null||e===``}function d(e,t){return u(e)?t:e}function f(e,t){return t?{...e,...t,id:d(t.id,e.id),cover:d(t.cover,e.cover),title:d(t.title,e.title),desc:d(t.desc,e.desc),tag:d(t.tag,e.tag),superscript:t.superscript??e.superscript,playCount:d(t.playCount,e.playCount),playCountDelta:t.playCountDelta??e.playCountDelta,showPlayCount:t.showPlayCount??e.showPlayCount,duration:d(t.duration,e.duration),showEpisode:t.showEpisode??e.showEpisode,useContentCover:t.useContentCover??e.useContentCover,tagImageUrl:d(t.tagImageUrl,e.tagImageUrl),tag_image:d(t.tag_image,e.tag_image),tag_image_url:d(t.tag_image_url,e.tag_image_url),tagImage:d(t.tagImage,e.tagImage)}:e}function p(e,t){if(!t)return e;let n=e.items;return{...e,...t,title:d(t.title,e.title),moreUrl:d(t.moreUrl,e.moreUrl),moreLinkType:t.moreLinkType??e.moreLinkType,recommendMode:t.recommendMode??e.recommendMode,items:n?f(n,t.items):t.items}}function m({data:a=c}){let u=Array.isArray(a)&&a.length>0?[p(l[0],a[0])]:l;if(!u||u.length===0)return null;let d=u[0],f=d?.title,m=d?.moreUrl;return s(e,{className:`p-3`,children:[s(e,{className:`flex items-center justify-between mb-[10px] h-[24px]`,children:[f&&o(t,{as:`h2`,className:`text-[18px] font-bold text-text1 line-clamp-1 flex-1 min-w-0 mr-[12px]`,children:f}),m&&s(n,{href:m,className:`flex items-center text-[14px] text-text2 ml-auto`,children:[`更多`,o(r,{className:`ml-[2px] h-[12px] w-[12px] text-text2`})]})]}),u.map((t,n)=>{let{items:r}=t;return r?o(e,{className:n>0?`mt-3`:``,children:o(i,{data:r})},`large-feature-grid-items-${n}`):null})]})}export{m as LargeFeatureGridClient};
@@ -1,11 +1,12 @@
1
1
 
2
2
  import { DefineMaterialOption } from "../../../../utils/schema/material.mjs";
3
- import { LargeFeatureGridClient } from "./client.mjs";
4
- import { LargeFeatureGrid } from "./server.mjs";
3
+ import * as react from "react";
5
4
  import * as zod from "zod";
6
5
  import * as zod_v4_core0 from "zod/v4/core";
7
6
 
8
7
  //#region components/biz/business/large-feature-grid/material.d.ts
9
- declare const largeFeatureGridMaterial: DefineMaterialOption<typeof LargeFeatureGrid, typeof LargeFeatureGridClient, zod.ZodObject<{}, zod_v4_core0.$strip>, "large-feature-grid">;
8
+ declare const largeFeatureGridMaterial: DefineMaterialOption<react.ComponentType<any>, react.ComponentType<any>, zod.ZodObject<Readonly<{
9
+ [k: string]: zod_v4_core0.$ZodType<unknown, unknown, zod_v4_core0.$ZodTypeInternals<unknown, unknown>>;
10
+ }>, zod_v4_core0.$strip>, string>;
10
11
  //#endregion
11
12
  export { largeFeatureGridMaterial };
@@ -1,2 +1,2 @@
1
1
 
2
- import{defineMaterial as e}from"../../../../utils/schema/material.mjs";import{LargeFeatureGridClient as t}from"./client.mjs";import{largeFeatureGridInspectorPropsSchema as n}from"./schema.mjs";import{LargeFeatureGrid as r}from"./server.mjs";const i=e({type:`large-feature-grid`,name:`大图推荐`,icon:`/static/components-thumb/grid_large_feature.png`,category:`大图宫格`,serverComponent:r,clientComponent:t,propsSchema:n});export{i as largeFeatureGridMaterial};
2
+ import{defineMaterial as e}from"../../../../utils/schema/material.mjs";import{largeFeatureGridInspectorPropsSchema as t}from"./schema.mjs";import{LargeFeatureGridClient as n}from"./client.mjs";import{LargeFeatureGrid as r}from"./server.mjs";const i=e({type:`large-feature-grid`,name:`大图推荐`,icon:`/static/components-thumb/grid_large_feature.png`,category:`内容组件`,serverComponent:r,clientComponent:n,propsSchema:t});export{i as largeFeatureGridMaterial};
@@ -1,2 +1,2 @@
1
1
 
2
- import{defineComponentPropsSchema as e,getSchemaDefaultProps as t}from"../../../../utils/schema/schema.mjs";const n=e({});t(n);export{n as largeFeatureGridInspectorPropsSchema};
2
+ import{defineArrayItemPropSchema as e,defineComponentPropsSchema as t,defineNumberPropSchema as n,defineSwitchPropSchema as r,defineTextPropSchema as i,getSchemaDefaultProps as a}from"../../../../utils/schema/schema.mjs";import o from"zod";const s=t({data:e(o.object({title:i({label:`推荐位名称`,required:!1}),moreUrl:i({label:`更多链接`,required:!1}),moreLinkType:i({label:`更多链接类型`,required:!1,defaultValue:`content-list`}),recommendMode:i({label:`推荐位内容类型`,required:!1,defaultValue:`content`}),items:t({id:i({label:`内容ID`}),cover:i({label:`封面`}),tag:i({label:`角标文案`,required:!1}),playCount:i({label:`播放量`,required:!1}),playCountDelta:n({label:`播放量增量`,required:!1,defaultValue:0}),showPlayCount:r({label:`展示播放量`,required:!1,defaultValue:!0}),duration:i({label:`时长/集数`,required:!1}),showEpisode:r({label:`展示集数`,required:!1,defaultValue:!0}),useContentCover:r({label:`沿用内容海报`,required:!1,defaultValue:!0}),title:i({label:`内容标题`}),desc:i({label:`内容简介`,required:!1}),tagImageUrl:i({label:`角标图`,required:!1})})}),{label:`大图推荐数据`,required:!1,defaultValue:[{title:`推荐位名称`,moreUrl:`/channel`,moreLinkType:`content-list`,recommendMode:`content`,items:{id:`22edc8693ebbdaf1`,cover:`https://base-resources.guadd.fun/md-204/dcc-file/f7/f70a9f9f0c17aa9aff6c3a3e03a822db-small.jpg`,tag:`独家`,playCount:`11111`,playCountDelta:0,showPlayCount:!0,duration:`3600`,showEpisode:!0,useContentCover:!0,title:`穷小伙一睁眼穿越古代,娶个老婆就能得到奖励,后宫3000宠都宠不过来!谁料女帝主动送上门来,征服女帝可以直接开终极宝箱,不用选择全都可以!`,desc:`穷小伙一睁眼穿越古代,娶个老婆就能得到奖励,后宫3000宠都宠不过来!谁料女帝主动送上门来,征服女帝可以直接开终极宝箱,不用选择全都可以!`}}]})}),c=a(s);export{c as largeFeatureGridInspectorDefaultProps,s as largeFeatureGridInspectorPropsSchema};
@@ -1,17 +1,15 @@
1
1
 
2
- import { MarqueeProps } from "./schema.mjs";
2
+ import { InferSchemaProps } from "../../../../utils/schema/schema.mjs";
3
+ import "../../../../utils/schema/index.mjs";
4
+ import { marqueeInspectorPropsSchema } from "./schema.mjs";
3
5
  import * as react_jsx_runtime0 from "react/jsx-runtime";
4
6
 
5
7
  //#region components/biz/business/marquee/client.d.ts
8
+ type MarqueeProps = InferSchemaProps<typeof marqueeInspectorPropsSchema>;
6
9
  /**
7
10
  * 跑马灯物料组件 - 客户端交互部分
11
+ * 适配嵌套配置结构
8
12
  */
9
- declare function MarqueeClient({
10
- contents,
11
- showClose,
12
- startTime,
13
- endTime,
14
- displayStrategy
15
- }: MarqueeProps): react_jsx_runtime0.JSX.Element | null;
13
+ declare function MarqueeClient(props: MarqueeProps): react_jsx_runtime0.JSX.Element | null;
16
14
  //#endregion
17
- export { MarqueeClient };
15
+ export { MarqueeClient, MarqueeProps };
@@ -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"../../../../assets/icons/clear.mjs";import i from"../../../../assets/icons/right_arrow.mjs";import a from"../../../../assets/images/marquee.mjs";import{useEffect as o,useMemo as s,useState as c}from"react";import{jsx as l,jsxs as u}from"react/jsx-runtime";import{useRouter as d}from"next/navigation";function f({contents:f,showClose:p,startTime:m,endTime:h,displayStrategy:g}){let _=d(),[v,y]=c(!0),[b,x]=c(0),[S,C]=c(!1);o(()=>{C(!0)},[]);let w=s(()=>{if(!m&&!h)return!0;let e=Date.now(),t=m?new Date(m).getTime():0,n=h?new Date(h).getTime():2**53-1;return e>=t&&e<=n},[m,h]);if(o(()=>{if(!S)return;let e=`marquee_closed_${g}`,t=localStorage.getItem(e);t&&(g===`once`||g===`daily`&&new Date(Number(t)).toLocaleDateString()===new Date().toLocaleDateString())&&y(!1)},[S,g]),o(()=>{if(!f||f.length<=1)return;let e=setInterval(()=>{x(e=>(e+1)%f.length)},3e3);return()=>clearInterval(e)},[f]),!S||!v||!w||!f||f.length===0)return null;let T=f[b],E=T.enableClick&&!!T.link;return l(t,{className:`px-[12px] py-[8px] w-full bg-bg1`,children:u(t,{className:`flex items-center pl-[2px] pr-[12px] py-[2px] rounded-[8px] w-full cursor-pointer relative overflow-hidden`,style:{backgroundImage:`linear-gradient(154deg, rgba(255, 228, 133, 0.2) 9.14%, rgba(207, 129, 37, 0.05) 90.86%)`},onClick:()=>{E&&T.link&&_.push(T.link)},children:[l(t,{className:`relative shrink-0 w-[36px] h-[36px]`,children:l(e,{src:typeof a==`string`?a:a.src,alt:`notice`,fill:!0,className:`object-cover`,unoptimized:!0})}),l(t,{className:`flex-1 overflow-hidden relative h-[22px]`,children:l(t,{className:`absolute inset-0 flex items-center transition-transform duration-500 ease-in-out`,style:{transform:`translateY(0)`},children:l(n,{className:`text-[14px] text-[#f59e0b] leading-[22px] truncate w-full`,children:T.text})})}),u(t,{className:`flex items-center gap-[12px] shrink-0 ml-[4px]`,children:[E&&l(i,{className:`w-[16px] h-[16px] text-[#f59e0b]`}),p&&l(t,{className:`opacity-30 hover:opacity-100 transition-opacity p-1`,onClick:e=>{e.stopPropagation(),y(!1);let t=`marquee_closed_${g}`;localStorage.setItem(t,Date.now().toString())},children:l(r,{className:`w-[12px] h-[12px] text-[#999]`})})]})]})})}export{f as MarqueeClient};
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"../../../../assets/icons/clear.mjs";import i from"../../../../assets/icons/right_arrow.mjs";import a from"../../../../assets/images/marquee.mjs";import{useEffect as o,useMemo as s,useState as c}from"react";import{jsx as l,jsxs as u}from"react/jsx-runtime";import{useRouter as d}from"next/navigation";const f=[];function p(p){let{contents:m=f,click:h,close:g,displayStrategy:_}=p,v=d(),[y,b]=c(!0),[x,S]=c(0),[C,w]=c(!1);o(()=>{w(!0)},[]);let T=s(()=>{let e=_?.period?.start,t=_?.period?.end;if(!e&&!t)return!0;let n=Date.now(),r=e?new Date(e).getTime():0,i=t?new Date(t).getTime():2**53-1;return n>=r&&n<=i},[_?.period]);if(o(()=>{if(!C||!_?.rule)return;let e=`marquee_closed_${_.rule}`,t=localStorage.getItem(e);t&&(_.rule===`once`||_.rule===`daily`&&new Date(Number(t)).toLocaleDateString()===new Date().toLocaleDateString())&&b(!1)},[C,_?.rule]),o(()=>{if(!m||m.length<=1)return;let e=setInterval(()=>{S(e=>(e+1)%m.length)},3e3);return()=>clearInterval(e)},[m]),!C||!y||!T||!m||m.length===0)return null;let E=m[x],D=h?.enabled,O=h?.link||E.link,k=D&&!!O;return l(t,{className:`px-[12px] py-[8px] w-full bg-bg1`,children:u(t,{className:`flex items-center pl-[2px] pr-[12px] py-[2px] rounded-[8px] w-full cursor-pointer relative overflow-hidden`,style:{backgroundImage:`linear-gradient(154deg, rgba(255, 228, 133, 0.2) 9.14%, rgba(207, 129, 37, 0.05) 90.86%)`},onClick:()=>{k&&O&&v.push(O)},children:[l(t,{className:`relative shrink-0 w-[36px] h-[36px]`,children:l(e,{src:typeof a==`string`?a:a.src,alt:`notice`,fill:!0,className:`object-cover`,unoptimized:!0})}),l(t,{className:`flex-1 overflow-hidden relative h-[22px] ml-1`,children:l(t,{className:`absolute inset-0 flex items-center transition-transform duration-500 ease-in-out`,style:{transform:`translateY(0)`},children:l(n,{className:`text-[14px] text-[#f59e0b] leading-[22px] truncate w-full font-medium`,children:E.text})})}),u(t,{className:`flex items-center gap-[12px] shrink-0 ml-[4px]`,children:[k&&l(i,{className:`w-[16px] h-[16px] text-[#f59e0b]`}),g?.enabled&&l(t,{className:`opacity-30 hover:opacity-100 transition-opacity p-1`,onClick:e=>{if(e.stopPropagation(),b(!1),_?.rule){let e=`marquee_closed_${_.rule}`;localStorage.setItem(e,Date.now().toString())}},children:l(r,{className:`w-[12px] h-[12px] text-[#999]`})})]})]})})}export{p as MarqueeClient};
@@ -1,5 +1,5 @@
1
1
 
2
- import { MarqueeInspectorProps, MarqueeProps, marqueeInspectorDefaultProps, marqueeInspectorPropsSchema } from "./schema.mjs";
3
- import { MarqueeClient } from "./client.mjs";
2
+ import { marqueeInspectorPropsSchema } from "./schema.mjs";
3
+ import { MarqueeClient, MarqueeProps } from "./client.mjs";
4
4
  import { MarqueeServer } from "./server.mjs";
5
5
  import { marqueeMaterial } from "./material.mjs";