@funhub/platform 0.1.22 → 0.1.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/biz.d.mts +17 -10
- package/dist/biz.mjs +1 -1
- package/dist/common.d.mts +3 -1
- package/dist/common.mjs +1 -1
- package/dist/components/biz/basics/logo/variants/basic-logo/runtime/client.mjs +1 -1
- package/dist/components/biz/basics/search/variants/simple-search/runtime/client.mjs +1 -1
- package/dist/components/biz/business/banner/variants/basic-banner/material.mjs +1 -1
- package/dist/components/biz/business/comment/reply-detail.mjs +1 -1
- package/dist/components/biz/business/detail/detail-follow-action.mjs +1 -1
- package/dist/components/biz/business/detail/detail-info-title.mjs +1 -1
- package/dist/components/biz/business/detail/detail-introduction.mjs +1 -1
- package/dist/components/biz/business/detail/detail-operate.mjs +1 -1
- package/dist/components/biz/business/detail/materials/registry.d.mts +39 -45
- package/dist/components/biz/business/detail/materials/registry.mjs +1 -1
- package/dist/components/biz/business/detail/materials/video-detail-actions/client.d.mts +2 -9
- package/dist/components/biz/business/detail/materials/video-detail-actions/index.d.mts +3 -3
- package/dist/components/biz/business/detail/materials/video-detail-actions/material.d.mts +9 -3
- package/dist/components/biz/business/detail/materials/video-detail-actions/schema.d.mts +7 -1
- package/dist/components/biz/business/detail/materials/video-detail-actions/server.d.mts +1 -1
- package/dist/components/biz/business/detail/materials/video-detail-info/client.d.mts +2 -13
- package/dist/components/biz/business/detail/materials/video-detail-info/index.d.mts +3 -3
- package/dist/components/biz/business/detail/materials/video-detail-info/material.d.mts +13 -3
- package/dist/components/biz/business/detail/materials/video-detail-info/schema.d.mts +9 -1
- package/dist/components/biz/business/detail/materials/video-detail-info/server.d.mts +1 -1
- package/dist/components/biz/business/detail/materials/video-detail-info-title/client.d.mts +2 -7
- package/dist/components/biz/business/detail/materials/video-detail-info-title/index.d.mts +3 -3
- package/dist/components/biz/business/detail/materials/video-detail-info-title/material.d.mts +9 -3
- package/dist/components/biz/business/detail/materials/video-detail-info-title/schema.d.mts +6 -1
- package/dist/components/biz/business/detail/materials/video-detail-info-title/server.d.mts +1 -1
- package/dist/components/biz/business/detail/materials/video-detail-info-title-tags-episodes/client.d.mts +2 -11
- package/dist/components/biz/business/detail/materials/video-detail-info-title-tags-episodes/index.d.mts +3 -3
- package/dist/components/biz/business/detail/materials/video-detail-info-title-tags-episodes/material.d.mts +13 -3
- package/dist/components/biz/business/detail/materials/video-detail-info-title-tags-episodes/schema.d.mts +8 -1
- package/dist/components/biz/business/detail/materials/video-detail-info-title-tags-episodes/server.d.mts +1 -1
- package/dist/components/biz/business/detail/materials/video-detail-player/client.d.mts +2 -11
- package/dist/components/biz/business/detail/materials/video-detail-player/index.d.mts +3 -3
- package/dist/components/biz/business/detail/materials/video-detail-player/material.d.mts +9 -3
- package/dist/components/biz/business/detail/materials/video-detail-player/schema.d.mts +8 -1
- package/dist/components/biz/business/detail/materials/video-detail-player/server.d.mts +1 -1
- package/dist/components/biz/business/detail/materials/video-detail-recommend/client.d.mts +2 -6
- package/dist/components/biz/business/detail/materials/video-detail-recommend/client.mjs +1 -1
- package/dist/components/biz/business/detail/materials/video-detail-recommend/index.d.mts +3 -3
- package/dist/components/biz/business/detail/materials/video-detail-recommend/material.d.mts +36 -3
- package/dist/components/biz/business/detail/materials/video-detail-recommend/schema.d.mts +5 -1
- package/dist/components/biz/business/detail/materials/video-detail-recommend/server.d.mts +1 -1
- package/dist/components/biz/business/detail/post-recommend-list.mjs +1 -1
- package/dist/components/biz/business/floating-ball/client.d.mts +12 -0
- package/dist/components/biz/business/floating-ball/client.mjs +2 -0
- package/dist/components/biz/business/floating-ball/material.d.mts +10 -0
- package/dist/components/biz/business/floating-ball/material.mjs +2 -0
- package/dist/components/biz/business/floating-ball/schema.d.mts +14 -0
- package/dist/components/biz/business/floating-ball/schema.mjs +2 -0
- package/dist/components/biz/business/floating-ball/server.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-icon/client.d.mts +12 -0
- package/dist/components/biz/business/header-search/header-avatar-icon/client.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-icon/index.d.mts +5 -0
- package/dist/components/biz/business/header-search/header-avatar-icon/material.d.mts +10 -0
- package/dist/components/biz/business/header-search/header-avatar-icon/material.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-icon/schema.d.mts +14 -0
- package/dist/components/biz/business/header-search/header-avatar-icon/schema.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-icon/server.d.mts +3 -0
- package/dist/components/biz/business/header-search/header-avatar-icon/server.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search/client.d.mts +12 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search/client.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search/index.d.mts +5 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search/material.d.mts +10 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search/material.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search/schema.d.mts +14 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search/schema.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search/server.d.mts +3 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search/server.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/client.d.mts +12 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/client.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/index.d.mts +5 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/material.d.mts +10 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/material.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/schema.d.mts +14 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/schema.mjs +2 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/server.d.mts +3 -0
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/server.mjs +2 -0
- package/dist/components/biz/business/header-search/header-logo-search/client.d.mts +12 -0
- package/dist/components/biz/business/header-search/header-logo-search/client.mjs +2 -0
- package/dist/components/biz/business/header-search/header-logo-search/index.d.mts +5 -0
- package/dist/components/biz/business/header-search/header-logo-search/material.d.mts +10 -0
- package/dist/components/biz/business/header-search/header-logo-search/material.mjs +2 -0
- package/dist/components/biz/business/header-search/header-logo-search/schema.d.mts +14 -0
- package/dist/components/biz/business/header-search/header-logo-search/schema.mjs +2 -0
- package/dist/components/biz/business/header-search/header-logo-search/server.d.mts +3 -0
- package/dist/components/biz/business/header-search/header-logo-search/server.mjs +2 -0
- package/dist/components/biz/business/header-search/header-search/client.d.mts +12 -0
- package/dist/components/biz/business/header-search/header-search/client.mjs +2 -0
- package/dist/components/biz/business/header-search/header-search/index.d.mts +5 -0
- package/dist/components/biz/business/header-search/header-search/material.d.mts +10 -0
- package/dist/components/biz/business/header-search/header-search/material.mjs +2 -0
- package/dist/components/biz/business/header-search/header-search/schema.d.mts +14 -0
- package/dist/components/biz/business/header-search/header-search/schema.mjs +2 -0
- package/dist/components/biz/business/header-search/header-search/server.d.mts +3 -0
- package/dist/components/biz/business/header-search/header-search/server.mjs +2 -0
- package/dist/components/biz/business/header-search/index.d.mts +11 -0
- package/dist/components/biz/business/home-recommend/index.d.mts +9 -0
- package/dist/components/biz/business/home-recommend/shared/home-recommend-base.mjs +2 -0
- package/dist/components/biz/business/home-recommend/types.d.mts +25 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/defaults/default-props.d.mts +10 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/defaults/default-props.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/index.d.mts +4 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/index.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/runtime/client.d.mts +13 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/runtime/client.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/schema/component.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/schema/data.schema.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/schema/event.schema.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/schema/index.d.mts +8 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/schema/index.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/schema/props.schema.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-grid/schema/style.schema.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/defaults/default-props.d.mts +10 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/defaults/default-props.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/index.d.mts +4 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/index.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/runtime/client.d.mts +13 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/runtime/client.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/schema/component.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/schema/data.schema.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/schema/event.schema.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/schema/index.d.mts +8 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/schema/index.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/schema/props.schema.mjs +2 -0
- package/dist/components/biz/business/home-recommend/variants/home-recommend-waterfall/schema/style.schema.mjs +2 -0
- package/dist/components/biz/business/index.d.mts +21 -14
- package/dist/components/biz/business/index.mjs +1 -1
- package/dist/components/biz/business/large-feature-grid/client.d.mts +12 -0
- package/dist/components/biz/business/large-feature-grid/client.mjs +2 -0
- package/dist/components/biz/business/large-feature-grid/material.d.mts +10 -0
- package/dist/components/biz/business/large-feature-grid/material.mjs +2 -0
- package/dist/components/biz/business/large-feature-grid/schema.d.mts +14 -0
- package/dist/components/biz/business/large-feature-grid/schema.mjs +2 -0
- package/dist/components/biz/business/large-feature-grid/server.mjs +2 -0
- package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/runtime/client.mjs +1 -1
- package/dist/components/biz/business/profile/profile-header/material.d.mts +9 -0
- package/dist/components/biz/business/profile/profile-header/material.mjs +2 -0
- package/dist/components/biz/business/profile/profile-main/material.d.mts +9 -0
- package/dist/components/biz/business/profile/profile-main/material.mjs +2 -0
- package/dist/components/biz/business/shortcut-grid/client.d.mts +12 -0
- package/dist/components/biz/business/shortcut-grid/client.mjs +2 -0
- package/dist/components/biz/business/shortcut-grid/material.d.mts +10 -0
- package/dist/components/biz/business/shortcut-grid/material.mjs +2 -0
- package/dist/components/biz/business/shortcut-grid/schema.d.mts +14 -0
- package/dist/components/biz/business/shortcut-grid/schema.mjs +2 -0
- package/dist/components/biz/business/shortcut-grid/server.mjs +2 -0
- package/dist/components/biz/renderer/renderer.d.mts +2 -1
- package/dist/components/biz/utils/helpers/get-channel-list.d.mts +20 -0
- package/dist/components/biz/utils/helpers/get-channel-list.mjs +2 -0
- package/dist/components/biz/utils/index.d.mts +5 -4
- package/dist/components/biz/utils/schema/component.d.mts +1 -1
- package/dist/components/biz/utils/transformers/data.d.mts +3 -0
- package/dist/components/biz/utils/transformers/data.mjs +1 -1
- package/dist/components/common/blocked-dialog/blocked-dialog.d.mts +10 -0
- package/dist/components/common/blocked-dialog/blocked-dialog.mjs +2 -0
- package/dist/components/common/blocked-dialog/index.d.mts +2 -0
- package/dist/components/common/follow-button/index.mjs +1 -1
- package/dist/components/common/funhub-provider/funhub-provider.mjs +1 -1
- package/dist/components/common/icons/video.mjs +2 -0
- package/dist/components/common/list/video-list/video-list-item.d.mts +1 -1
- package/dist/components/common/list/video-list/video-list-item.mjs +1 -1
- package/dist/components/common/photo-grid/index.mjs +1 -1
- package/dist/components/common/top-nav-bar/client.mjs +1 -1
- package/dist/components/common/top-nav-bar/index.mjs +1 -1
- package/dist/components/pages/(follow)/_components/follow-button/index.mjs +1 -1
- package/dist/components/pages/feed-series/feed-series-client.mjs +1 -1
- package/dist/components/pages/feedback/_components/feedback-form.mjs +1 -1
- package/dist/components/pages/home/index.mjs +1 -1
- package/dist/components/pages/post-detail/post-detail-client.mjs +1 -1
- package/dist/components/pages/profile/_components/tabs/collect-tab/client.mjs +1 -1
- package/dist/components/pages/profile/_components/tabs/collect-tab/server.mjs +1 -1
- package/dist/components/pages/profile/_components/tabs/history-tab/client.mjs +1 -1
- package/dist/components/pages/profile/_components/tabs/like-tab/client.mjs +1 -1
- package/dist/components/pages/profile/_components/user-profile-container/client.mjs +1 -1
- package/dist/components/pages/profile/_components/user-profile-header/client.mjs +1 -1
- package/dist/components/pages/profile/utils.mjs +1 -1
- package/dist/components/pages/search/search-result/search-all.mjs +1 -1
- package/dist/components/pages/search/search-result/search-video-info.mjs +1 -1
- package/dist/components/pages/search/top-header.mjs +1 -1
- package/dist/components/pages/user-follow/_components/follow-top-header.mjs +1 -1
- package/dist/components/pages/video-detail/video-detail-client.mjs +1 -1
- package/dist/components/pages/video-list/index.d.mts +16 -0
- package/dist/components/pages/video-list/index.mjs +2 -0
- package/dist/components/pages/video-list/types.mjs +2 -0
- package/dist/components/pages/video-list/video-list-client.mjs +2 -0
- package/dist/components/pages/video-list/video-list-item.mjs +2 -0
- package/dist/components/ui/badge.d.mts +1 -1
- package/dist/components/ui/button.d.mts +1 -1
- package/dist/components/ui/image.d.mts +4 -4
- package/dist/hooks/use-content-operate.mjs +1 -1
- package/dist/i18n/locales/en.mjs +3 -1
- package/dist/i18n/locales/zh-CN.mjs +3 -1
- package/dist/materials.d.mts +24 -1
- package/dist/materials.mjs +1 -1
- package/dist/pages.d.mts +2 -1
- package/dist/pages.mjs +1 -1
- package/dist/service/generated/client.d.mts +28 -12
- package/dist/service/generated/client.mjs +1 -1
- package/dist/service/generated/tanstack.d.mts +34 -14
- package/dist/service/generated/tanstack.mjs +1 -1
- package/dist/service.d.mts +3 -3
- package/dist/service.mjs +1 -1
- package/dist/store/create-store.mjs +1 -1
- package/dist/store/modules/blocked-modal-store.d.mts +26 -0
- package/dist/store/modules/blocked-modal-store.mjs +2 -0
- package/dist/store/modules/user-store.d.mts +1 -1
- package/dist/store/modules/user-store.mjs +1 -1
- package/dist/store.d.mts +2 -1
- package/dist/store.mjs +1 -1
- package/dist/types.d.mts +1348 -129
- package/dist/utils/http.mjs +1 -1
- package/dist/utils/schema/index.d.mts +1 -1
- package/dist/utils/schema/material.d.mts +5 -0
- package/dist/utils/schema/utils.d.mts +1 -1
- package/dist/utils.d.mts +2 -2
- package/package.json +1 -1
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
|
|
2
|
-
import "../../../../../../utils/schema/material.mjs";
|
|
3
|
-
import "./client.mjs";
|
|
4
|
-
import "zod";
|
|
2
|
+
import { DefineMaterialOption } from "../../../../../../utils/schema/material.mjs";
|
|
3
|
+
import { VideoDetailActionsClient } from "./client.mjs";
|
|
4
|
+
import * as zod from "zod";
|
|
5
|
+
import * as zod_v4_core0 from "zod/v4/core";
|
|
6
|
+
|
|
7
|
+
//#region components/biz/business/detail/materials/video-detail-actions/material.d.ts
|
|
8
|
+
declare const videoDetailActionsMaterial: DefineMaterialOption<typeof VideoDetailActionsClient, zod.ZodObject<{}, zod_v4_core0.$strip>, "video-detail-actions">;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { videoDetailActionsMaterial };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import { InferSchemaProps } from "../../../../../../utils/schema/schema.mjs";
|
|
3
3
|
import "../../../../../../utils/schema/index.mjs";
|
|
4
|
+
import { SafeInformationType } from "../../../../../../types/safe-information.mjs";
|
|
4
5
|
import * as zod from "zod";
|
|
5
6
|
import * as zod_v4_core0 from "zod/v4/core";
|
|
6
7
|
|
|
@@ -10,5 +11,10 @@ import * as zod_v4_core0 from "zod/v4/core";
|
|
|
10
11
|
*/
|
|
11
12
|
declare const videoDetailActionsInspectorPropsSchema: zod.ZodObject<{}, zod_v4_core0.$strip>;
|
|
12
13
|
type VideoDetailActionsInspectorProps = InferSchemaProps<typeof videoDetailActionsInspectorPropsSchema>;
|
|
14
|
+
/** 视频详情行为模块物料 props。 */
|
|
15
|
+
type VideoDetailActionsProps = VideoDetailActionsInspectorProps & {
|
|
16
|
+
/** 视频详情信息。 */information: SafeInformationType; /** 操作回写。 */
|
|
17
|
+
onUpdate: (data: Partial<SafeInformationType>) => void;
|
|
18
|
+
};
|
|
13
19
|
//#endregion
|
|
14
|
-
export { VideoDetailActionsInspectorProps, videoDetailActionsInspectorPropsSchema };
|
|
20
|
+
export { VideoDetailActionsInspectorProps, VideoDetailActionsProps, videoDetailActionsInspectorPropsSchema };
|
|
@@ -1,19 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
3
|
-
import { VideoDetailInfoInspectorProps } from "./schema.mjs";
|
|
2
|
+
import { VideoDetailInfoProps } from "./schema.mjs";
|
|
4
3
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
4
|
|
|
6
5
|
//#region components/biz/business/detail/materials/video-detail-info/client.d.ts
|
|
7
|
-
interface VideoDetailInfoProps extends VideoDetailInfoInspectorProps {
|
|
8
|
-
/** 视频详情信息。 */
|
|
9
|
-
information: SafeInformationType;
|
|
10
|
-
/** 当前选集数。 */
|
|
11
|
-
currentSeriesNum: number;
|
|
12
|
-
/** 选集变更回调。 */
|
|
13
|
-
onEpisodeChange: (nextSeriesNum: number) => void;
|
|
14
|
-
/** 是否展示。 */
|
|
15
|
-
isShow?: boolean;
|
|
16
|
-
}
|
|
17
6
|
/**
|
|
18
7
|
* 视频详情信息模块客户端组件。
|
|
19
8
|
*/
|
|
@@ -26,4 +15,4 @@ declare function VideoDetailInfoClient({
|
|
|
26
15
|
isShow
|
|
27
16
|
}: VideoDetailInfoProps): react_jsx_runtime0.JSX.Element | null;
|
|
28
17
|
//#endregion
|
|
29
|
-
export { VideoDetailInfoClient
|
|
18
|
+
export { VideoDetailInfoClient };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { VideoDetailInfoInspectorProps, videoDetailInfoInspectorPropsSchema } from "./schema.mjs";
|
|
3
|
-
import { VideoDetailInfoClient
|
|
4
|
-
import "./material.mjs";
|
|
2
|
+
import { VideoDetailInfoInspectorProps, VideoDetailInfoProps, videoDetailInfoInspectorPropsSchema } from "./schema.mjs";
|
|
3
|
+
import { VideoDetailInfoClient } from "./client.mjs";
|
|
4
|
+
import { videoDetailInfoMaterial } from "./material.mjs";
|
|
5
5
|
import "./server.mjs";
|
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
|
|
2
|
-
import "../../../../../../utils/schema/
|
|
2
|
+
import { SchemaHasDefaultValue } from "../../../../../../utils/schema/schema.mjs";
|
|
3
|
+
import { DefineMaterialOption } from "../../../../../../utils/schema/material.mjs";
|
|
3
4
|
import "../../../../../../utils/schema/index.mjs";
|
|
4
|
-
import "./client.mjs";
|
|
5
|
-
import "zod";
|
|
5
|
+
import { VideoDetailInfoClient } from "./client.mjs";
|
|
6
|
+
import * as zod from "zod";
|
|
7
|
+
import * as zod_v4_core0 from "zod/v4/core";
|
|
8
|
+
|
|
9
|
+
//#region components/biz/business/detail/materials/video-detail-info/material.d.ts
|
|
10
|
+
declare const videoDetailInfoMaterial: DefineMaterialOption<typeof VideoDetailInfoClient, zod.ZodObject<{
|
|
11
|
+
showTags: zod.ZodBoolean & SchemaHasDefaultValue;
|
|
12
|
+
showEpisodes: zod.ZodBoolean & SchemaHasDefaultValue;
|
|
13
|
+
}, zod_v4_core0.$strip>, "video-detail-info">;
|
|
14
|
+
//#endregion
|
|
15
|
+
export { videoDetailInfoMaterial };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import { InferSchemaProps, SchemaHasDefaultValue } from "../../../../../../utils/schema/schema.mjs";
|
|
3
3
|
import "../../../../../../utils/schema/index.mjs";
|
|
4
|
+
import { SafeInformationType } from "../../../../../../types/safe-information.mjs";
|
|
4
5
|
import * as zod from "zod";
|
|
5
6
|
import * as zod_v4_core0 from "zod/v4/core";
|
|
6
7
|
|
|
@@ -13,5 +14,12 @@ declare const videoDetailInfoInspectorPropsSchema: zod.ZodObject<{
|
|
|
13
14
|
showEpisodes: zod.ZodBoolean & SchemaHasDefaultValue;
|
|
14
15
|
}, zod_v4_core0.$strip>;
|
|
15
16
|
type VideoDetailInfoInspectorProps = InferSchemaProps<typeof videoDetailInfoInspectorPropsSchema>;
|
|
17
|
+
/** 视频详情信息模块物料 props。 */
|
|
18
|
+
type VideoDetailInfoProps = VideoDetailInfoInspectorProps & {
|
|
19
|
+
/** 视频详情信息。 */information: SafeInformationType; /** 当前选集数。 */
|
|
20
|
+
currentSeriesNum: number; /** 选集变更回调。 */
|
|
21
|
+
onEpisodeChange: (nextSeriesNum: number) => void; /** 是否展示。 */
|
|
22
|
+
isShow?: boolean;
|
|
23
|
+
};
|
|
16
24
|
//#endregion
|
|
17
|
-
export { VideoDetailInfoInspectorProps, videoDetailInfoInspectorPropsSchema };
|
|
25
|
+
export { VideoDetailInfoInspectorProps, VideoDetailInfoProps, videoDetailInfoInspectorPropsSchema };
|
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
3
|
-
import { VideoDetailInfoTitleInspectorProps } from "./schema.mjs";
|
|
2
|
+
import { VideoDetailInfoTitleProps } from "./schema.mjs";
|
|
4
3
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
4
|
|
|
6
5
|
//#region components/biz/business/detail/materials/video-detail-info-title/client.d.ts
|
|
7
|
-
interface VideoDetailInfoTitleProps extends VideoDetailInfoTitleInspectorProps {
|
|
8
|
-
/** 视频详情信息。 */
|
|
9
|
-
information: SafeInformationType;
|
|
10
|
-
}
|
|
11
6
|
/**
|
|
12
7
|
* 标题变体物料客户端组件。
|
|
13
8
|
*/
|
|
@@ -15,4 +10,4 @@ declare function VideoDetailInfoTitleClient({
|
|
|
15
10
|
information
|
|
16
11
|
}: VideoDetailInfoTitleProps): react_jsx_runtime0.JSX.Element | null;
|
|
17
12
|
//#endregion
|
|
18
|
-
export { VideoDetailInfoTitleClient
|
|
13
|
+
export { VideoDetailInfoTitleClient };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { VideoDetailInfoTitleInspectorProps, videoDetailInfoTitleInspectorPropsSchema } from "./schema.mjs";
|
|
3
|
-
import { VideoDetailInfoTitleClient
|
|
4
|
-
import "./material.mjs";
|
|
2
|
+
import { VideoDetailInfoTitleInspectorProps, VideoDetailInfoTitleProps, videoDetailInfoTitleInspectorPropsSchema } from "./schema.mjs";
|
|
3
|
+
import { VideoDetailInfoTitleClient } from "./client.mjs";
|
|
4
|
+
import { videoDetailInfoTitleMaterial } from "./material.mjs";
|
|
5
5
|
import "./server.mjs";
|
package/dist/components/biz/business/detail/materials/video-detail-info-title/material.d.mts
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
|
|
2
|
-
import "../../../../../../utils/schema/material.mjs";
|
|
3
|
-
import "./client.mjs";
|
|
4
|
-
import "zod";
|
|
2
|
+
import { DefineMaterialOption } from "../../../../../../utils/schema/material.mjs";
|
|
3
|
+
import { VideoDetailInfoTitleClient } from "./client.mjs";
|
|
4
|
+
import * as zod from "zod";
|
|
5
|
+
import * as zod_v4_core0 from "zod/v4/core";
|
|
6
|
+
|
|
7
|
+
//#region components/biz/business/detail/materials/video-detail-info-title/material.d.ts
|
|
8
|
+
declare const videoDetailInfoTitleMaterial: DefineMaterialOption<typeof VideoDetailInfoTitleClient, zod.ZodObject<{}, zod_v4_core0.$strip>, "video-detail-info-title">;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { videoDetailInfoTitleMaterial };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import { InferSchemaProps } from "../../../../../../utils/schema/schema.mjs";
|
|
3
3
|
import "../../../../../../utils/schema/index.mjs";
|
|
4
|
+
import { SafeInformationType } from "../../../../../../types/safe-information.mjs";
|
|
4
5
|
import * as zod from "zod";
|
|
5
6
|
import * as zod_v4_core0 from "zod/v4/core";
|
|
6
7
|
|
|
@@ -10,5 +11,9 @@ import * as zod_v4_core0 from "zod/v4/core";
|
|
|
10
11
|
*/
|
|
11
12
|
declare const videoDetailInfoTitleInspectorPropsSchema: zod.ZodObject<{}, zod_v4_core0.$strip>;
|
|
12
13
|
type VideoDetailInfoTitleInspectorProps = InferSchemaProps<typeof videoDetailInfoTitleInspectorPropsSchema>;
|
|
14
|
+
/** 标题变体物料 props。 */
|
|
15
|
+
type VideoDetailInfoTitleProps = VideoDetailInfoTitleInspectorProps & {
|
|
16
|
+
/** 视频详情信息。 */information: SafeInformationType;
|
|
17
|
+
};
|
|
13
18
|
//#endregion
|
|
14
|
-
export { VideoDetailInfoTitleInspectorProps, videoDetailInfoTitleInspectorPropsSchema };
|
|
19
|
+
export { VideoDetailInfoTitleInspectorProps, VideoDetailInfoTitleProps, videoDetailInfoTitleInspectorPropsSchema };
|
|
@@ -1,17 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
3
|
-
import { VideoDetailInfoTitleTagsEpisodesInspectorProps } from "./schema.mjs";
|
|
2
|
+
import { VideoDetailInfoTitleTagsEpisodesProps } from "./schema.mjs";
|
|
4
3
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
4
|
|
|
6
5
|
//#region components/biz/business/detail/materials/video-detail-info-title-tags-episodes/client.d.ts
|
|
7
|
-
interface VideoDetailInfoTitleTagsEpisodesProps extends VideoDetailInfoTitleTagsEpisodesInspectorProps {
|
|
8
|
-
/** 视频详情信息。 */
|
|
9
|
-
information: SafeInformationType;
|
|
10
|
-
/** 当前选集数。 */
|
|
11
|
-
currentSeriesNum: number;
|
|
12
|
-
/** 选集变更回调。 */
|
|
13
|
-
onEpisodeChange: (nextSeriesNum: number) => void;
|
|
14
|
-
}
|
|
15
6
|
/**
|
|
16
7
|
* 标题+标签+选集变体物料客户端组件。
|
|
17
8
|
*/
|
|
@@ -23,4 +14,4 @@ declare function VideoDetailInfoTitleTagsEpisodesClient({
|
|
|
23
14
|
showEpisodes
|
|
24
15
|
}: VideoDetailInfoTitleTagsEpisodesProps): react_jsx_runtime0.JSX.Element | null;
|
|
25
16
|
//#endregion
|
|
26
|
-
export { VideoDetailInfoTitleTagsEpisodesClient
|
|
17
|
+
export { VideoDetailInfoTitleTagsEpisodesClient };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { VideoDetailInfoTitleTagsEpisodesInspectorProps, videoDetailInfoTitleTagsEpisodesInspectorPropsSchema } from "./schema.mjs";
|
|
3
|
-
import { VideoDetailInfoTitleTagsEpisodesClient
|
|
4
|
-
import "./material.mjs";
|
|
2
|
+
import { VideoDetailInfoTitleTagsEpisodesInspectorProps, VideoDetailInfoTitleTagsEpisodesProps, videoDetailInfoTitleTagsEpisodesInspectorPropsSchema } from "./schema.mjs";
|
|
3
|
+
import { VideoDetailInfoTitleTagsEpisodesClient } from "./client.mjs";
|
|
4
|
+
import { videoDetailInfoTitleTagsEpisodesMaterial } from "./material.mjs";
|
|
5
5
|
import "./server.mjs";
|
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
|
|
2
|
-
import "../../../../../../utils/schema/
|
|
2
|
+
import { SchemaHasDefaultValue } from "../../../../../../utils/schema/schema.mjs";
|
|
3
|
+
import { DefineMaterialOption } from "../../../../../../utils/schema/material.mjs";
|
|
3
4
|
import "../../../../../../utils/schema/index.mjs";
|
|
4
|
-
import "./client.mjs";
|
|
5
|
-
import "zod";
|
|
5
|
+
import { VideoDetailInfoTitleTagsEpisodesClient } from "./client.mjs";
|
|
6
|
+
import * as zod from "zod";
|
|
7
|
+
import * as zod_v4_core0 from "zod/v4/core";
|
|
8
|
+
|
|
9
|
+
//#region components/biz/business/detail/materials/video-detail-info-title-tags-episodes/material.d.ts
|
|
10
|
+
declare const videoDetailInfoTitleTagsEpisodesMaterial: DefineMaterialOption<typeof VideoDetailInfoTitleTagsEpisodesClient, zod.ZodObject<{
|
|
11
|
+
showTags: zod.ZodBoolean & SchemaHasDefaultValue;
|
|
12
|
+
showEpisodes: zod.ZodBoolean & SchemaHasDefaultValue;
|
|
13
|
+
}, zod_v4_core0.$strip>, "video-detail-info-title-tags-episodes">;
|
|
14
|
+
//#endregion
|
|
15
|
+
export { videoDetailInfoTitleTagsEpisodesMaterial };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import { InferSchemaProps, SchemaHasDefaultValue } from "../../../../../../utils/schema/schema.mjs";
|
|
3
3
|
import "../../../../../../utils/schema/index.mjs";
|
|
4
|
+
import { SafeInformationType } from "../../../../../../types/safe-information.mjs";
|
|
4
5
|
import * as zod from "zod";
|
|
5
6
|
import * as zod_v4_core0 from "zod/v4/core";
|
|
6
7
|
|
|
@@ -13,5 +14,11 @@ declare const videoDetailInfoTitleTagsEpisodesInspectorPropsSchema: zod.ZodObjec
|
|
|
13
14
|
showEpisodes: zod.ZodBoolean & SchemaHasDefaultValue;
|
|
14
15
|
}, zod_v4_core0.$strip>;
|
|
15
16
|
type VideoDetailInfoTitleTagsEpisodesInspectorProps = InferSchemaProps<typeof videoDetailInfoTitleTagsEpisodesInspectorPropsSchema>;
|
|
17
|
+
/** 标题+标签+选集变体物料 props。 */
|
|
18
|
+
type VideoDetailInfoTitleTagsEpisodesProps = VideoDetailInfoTitleTagsEpisodesInspectorProps & {
|
|
19
|
+
/** 视频详情信息。 */information: SafeInformationType; /** 当前选集数。 */
|
|
20
|
+
currentSeriesNum: number; /** 选集变更回调。 */
|
|
21
|
+
onEpisodeChange: (nextSeriesNum: number) => void;
|
|
22
|
+
};
|
|
16
23
|
//#endregion
|
|
17
|
-
export { VideoDetailInfoTitleTagsEpisodesInspectorProps, videoDetailInfoTitleTagsEpisodesInspectorPropsSchema };
|
|
24
|
+
export { VideoDetailInfoTitleTagsEpisodesInspectorProps, VideoDetailInfoTitleTagsEpisodesProps, videoDetailInfoTitleTagsEpisodesInspectorPropsSchema };
|
|
@@ -1,17 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
3
|
-
import { VideoDetailPlayerInspectorProps } from "./schema.mjs";
|
|
2
|
+
import { VideoDetailPlayerProps } from "./schema.mjs";
|
|
4
3
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
4
|
|
|
6
5
|
//#region components/biz/business/detail/materials/video-detail-player/client.d.ts
|
|
7
|
-
interface VideoDetailPlayerProps extends VideoDetailPlayerInspectorProps {
|
|
8
|
-
/** 视频详情信息。 */
|
|
9
|
-
information: SafeInformationType;
|
|
10
|
-
/** 分集下标。 */
|
|
11
|
-
episodeIndex: number;
|
|
12
|
-
/** 续播秒数。 */
|
|
13
|
-
resumeProgressSeconds: number;
|
|
14
|
-
}
|
|
15
6
|
/**
|
|
16
7
|
* 视频播放器物料客户端组件。
|
|
17
8
|
*/
|
|
@@ -21,4 +12,4 @@ declare function VideoDetailPlayerClient({
|
|
|
21
12
|
resumeProgressSeconds
|
|
22
13
|
}: VideoDetailPlayerProps): react_jsx_runtime0.JSX.Element | null;
|
|
23
14
|
//#endregion
|
|
24
|
-
export { VideoDetailPlayerClient
|
|
15
|
+
export { VideoDetailPlayerClient };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { VideoDetailPlayerInspectorProps, videoDetailPlayerInspectorPropsSchema } from "./schema.mjs";
|
|
3
|
-
import { VideoDetailPlayerClient
|
|
4
|
-
import "./material.mjs";
|
|
2
|
+
import { VideoDetailPlayerInspectorProps, VideoDetailPlayerProps, videoDetailPlayerInspectorPropsSchema } from "./schema.mjs";
|
|
3
|
+
import { VideoDetailPlayerClient } from "./client.mjs";
|
|
4
|
+
import { videoDetailPlayerMaterial } from "./material.mjs";
|
|
5
5
|
import "./server.mjs";
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
|
|
2
|
-
import "../../../../../../utils/schema/material.mjs";
|
|
3
|
-
import "./client.mjs";
|
|
4
|
-
import "zod";
|
|
2
|
+
import { DefineMaterialOption } from "../../../../../../utils/schema/material.mjs";
|
|
3
|
+
import { VideoDetailPlayerClient } from "./client.mjs";
|
|
4
|
+
import * as zod from "zod";
|
|
5
|
+
import * as zod_v4_core0 from "zod/v4/core";
|
|
6
|
+
|
|
7
|
+
//#region components/biz/business/detail/materials/video-detail-player/material.d.ts
|
|
8
|
+
declare const videoDetailPlayerMaterial: DefineMaterialOption<typeof VideoDetailPlayerClient, zod.ZodObject<{}, zod_v4_core0.$strip>, "video-detail-player">;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { videoDetailPlayerMaterial };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import { InferSchemaProps } from "../../../../../../utils/schema/schema.mjs";
|
|
3
3
|
import "../../../../../../utils/schema/index.mjs";
|
|
4
|
+
import { SafeInformationType } from "../../../../../../types/safe-information.mjs";
|
|
4
5
|
import * as zod from "zod";
|
|
5
6
|
import * as zod_v4_core0 from "zod/v4/core";
|
|
6
7
|
|
|
@@ -10,5 +11,11 @@ import * as zod_v4_core0 from "zod/v4/core";
|
|
|
10
11
|
*/
|
|
11
12
|
declare const videoDetailPlayerInspectorPropsSchema: zod.ZodObject<{}, zod_v4_core0.$strip>;
|
|
12
13
|
type VideoDetailPlayerInspectorProps = InferSchemaProps<typeof videoDetailPlayerInspectorPropsSchema>;
|
|
14
|
+
/** 播放器物料 props。 */
|
|
15
|
+
type VideoDetailPlayerProps = VideoDetailPlayerInspectorProps & {
|
|
16
|
+
/** 视频详情信息。 */information: SafeInformationType; /** 分集下标。 */
|
|
17
|
+
episodeIndex: number; /** 续播秒数。 */
|
|
18
|
+
resumeProgressSeconds: number;
|
|
19
|
+
};
|
|
13
20
|
//#endregion
|
|
14
|
-
export { VideoDetailPlayerInspectorProps, videoDetailPlayerInspectorPropsSchema };
|
|
21
|
+
export { VideoDetailPlayerInspectorProps, VideoDetailPlayerProps, videoDetailPlayerInspectorPropsSchema };
|
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
2
|
+
import { VideoDetailRecommendProps } from "./schema.mjs";
|
|
3
3
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
4
|
|
|
5
5
|
//#region components/biz/business/detail/materials/video-detail-recommend/client.d.ts
|
|
6
|
-
interface VideoDetailRecommendProps extends VideoDetailRecommendInspectorProps {
|
|
7
|
-
/** 当前视频 id,用于过滤。 */
|
|
8
|
-
detailId: string;
|
|
9
|
-
}
|
|
10
6
|
/**
|
|
11
7
|
* 推荐模块客户端组件。
|
|
12
8
|
*/
|
|
@@ -24,4 +20,4 @@ declare function VideoDetailRecommendClient({
|
|
|
24
20
|
items
|
|
25
21
|
}: VideoDetailRecommendProps): react_jsx_runtime0.JSX.Element | null;
|
|
26
22
|
//#endregion
|
|
27
|
-
export { VideoDetailRecommendClient
|
|
23
|
+
export { VideoDetailRecommendClient };
|
|
@@ -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{MiniThreeCard as
|
|
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 ee,buildEpisodeLabel as c,clampColumns as l,mergeManualAndPool as u,mockPagedList as d,resolveRows as f}from"./utils.mjs";import{useEffect as p,useMemo as m,useRef as h,useState as g}from"react";import{jsx as _,jsxs as v}from"react/jsx-runtime";import{useTranslations as y}from"next-intl";function b({detailId:b,rows:w,columns:T,smartTagEnabled:E,smartTagIds:D,title:O,showPlayCount:k,playCountDelta:A,showEpisode:j,enableInfinite:M,items:N}){let P=i(),te=y(`components.biz.business.detail`),{getVerticalHoCoverImageUrl:F,getTitleText:I}=s(),[L,R]=g(1),z=h(null),B=m(()=>D??[],[D]),V=m(()=>N??[],[N]),{data:H}=r([`video-detail-recommend`,b],async()=>!b||P===`editor`?null:await e(),{enabled:P===`renderer`&&!!b}),U=m(()=>{let e=H?.data?.videos;return Array.isArray(e)?e.map(e=>x(e)).filter(e=>!b||!e.id||e.id!==b):[]},[H?.data?.videos,b]),W=f(w,M),G=l(T),K=W*G,q=m(()=>new Set(V.map(e=>e.contentId)),[V]),J=m(()=>{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=m(()=>{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=m(()=>J.map(e=>({info:e})),[J]),Z=m(()=>u(Y,X,K),[Y,K,X]),Q=m(()=>{if(!M)return Z;let e=d(X,L,K,5);return L===1?Z:Z.concat(e)},[Z,M,L,K,X]),$=M&&L<5&&X.length>0;return p(()=>{M&&R(1)},[b,M]),p(()=>{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,$]),Q.length?v(t,{className:`w-full mt-[16px]`,children:[_(n,{className:`block pl-[12px] mb-[8px] text-text1 text-[18px] leading-[26px] font-bold`,children:O||te(`detailGuessLike.title`)}),_(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=S(ee(e.info.play_count||0,r)),l=c(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(G)&&G>0?`${100/G}%`:`33.333333%`;return _(o,{url:F(e.info),text:I(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&&l?_(`div`,{className:`text-[#F59E0B] text-[12px] font-bold leading-[20px] pr-[8px]`,children:l}):null,linkPath:C(e.info)},`guess-like-${t}`)})}),M&&_(`div`,{ref:z,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 C(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,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { VideoDetailRecommendInspectorProps, videoDetailRecommendInspectorPropsSchema } from "./schema.mjs";
|
|
3
|
-
import { VideoDetailRecommendClient
|
|
4
|
-
import "./material.mjs";
|
|
2
|
+
import { VideoDetailRecommendInspectorProps, VideoDetailRecommendProps, videoDetailRecommendInspectorPropsSchema } from "./schema.mjs";
|
|
3
|
+
import { VideoDetailRecommendClient } from "./client.mjs";
|
|
4
|
+
import { videoDetailRecommendMaterial } from "./material.mjs";
|
|
5
5
|
import "./server.mjs";
|
|
@@ -1,5 +1,38 @@
|
|
|
1
1
|
|
|
2
|
-
import "../../../../../../utils/schema/
|
|
2
|
+
import { SchemaHasDefaultValue } from "../../../../../../utils/schema/schema.mjs";
|
|
3
|
+
import { DefineMaterialOption } from "../../../../../../utils/schema/material.mjs";
|
|
3
4
|
import "../../../../../../utils/schema/index.mjs";
|
|
4
|
-
import "./client.mjs";
|
|
5
|
-
import "zod";
|
|
5
|
+
import { VideoDetailRecommendClient } from "./client.mjs";
|
|
6
|
+
import * as zod from "zod";
|
|
7
|
+
import * as zod_v4_core0 from "zod/v4/core";
|
|
8
|
+
|
|
9
|
+
//#region components/biz/business/detail/materials/video-detail-recommend/material.d.ts
|
|
10
|
+
declare const videoDetailRecommendMaterial: DefineMaterialOption<typeof VideoDetailRecommendClient, zod.ZodObject<{
|
|
11
|
+
rows: zod.ZodNumber & SchemaHasDefaultValue;
|
|
12
|
+
columns: zod.ZodNumber & SchemaHasDefaultValue;
|
|
13
|
+
smartTagEnabled: zod.ZodBoolean & SchemaHasDefaultValue;
|
|
14
|
+
title: zod.ZodString & SchemaHasDefaultValue;
|
|
15
|
+
showPlayCount: zod.ZodBoolean & SchemaHasDefaultValue;
|
|
16
|
+
playCountDelta: zod.ZodNumber & SchemaHasDefaultValue;
|
|
17
|
+
showEpisode: zod.ZodBoolean & SchemaHasDefaultValue;
|
|
18
|
+
enableInfinite: zod.ZodBoolean & SchemaHasDefaultValue;
|
|
19
|
+
smartTagIds: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
|
|
20
|
+
items: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
|
|
21
|
+
contentId: zod.ZodString;
|
|
22
|
+
coverMode: zod.ZodOptional<zod.ZodEnum<{
|
|
23
|
+
content: "content";
|
|
24
|
+
upload: "upload";
|
|
25
|
+
}>>;
|
|
26
|
+
coverUrl: zod.ZodOptional<zod.ZodString>;
|
|
27
|
+
titleMode: zod.ZodOptional<zod.ZodEnum<{
|
|
28
|
+
content: "content";
|
|
29
|
+
custom: "custom";
|
|
30
|
+
}>>;
|
|
31
|
+
title: zod.ZodOptional<zod.ZodString>;
|
|
32
|
+
showPlayCount: zod.ZodOptional<zod.ZodBoolean>;
|
|
33
|
+
playCountDelta: zod.ZodOptional<zod.ZodNumber>;
|
|
34
|
+
showEpisode: zod.ZodOptional<zod.ZodBoolean>;
|
|
35
|
+
}, zod_v4_core0.$strip>>>;
|
|
36
|
+
}, zod_v4_core0.$strip>, "video-detail-recommend">;
|
|
37
|
+
//#endregion
|
|
38
|
+
export { videoDetailRecommendMaterial };
|
|
@@ -32,5 +32,9 @@ declare const videoDetailRecommendInspectorPropsSchema: z.ZodObject<{
|
|
|
32
32
|
}, z.core.$strip>>>;
|
|
33
33
|
}, z.core.$strip>;
|
|
34
34
|
type VideoDetailRecommendInspectorProps = z.infer<typeof videoDetailRecommendInspectorPropsSchema>;
|
|
35
|
+
/** 推荐模块物料 props。 */
|
|
36
|
+
type VideoDetailRecommendProps = VideoDetailRecommendInspectorProps & {
|
|
37
|
+
/** 当前视频 id,用于过滤。 */detailId: string;
|
|
38
|
+
};
|
|
35
39
|
//#endregion
|
|
36
|
-
export { VideoDetailRecommendInspectorProps, videoDetailRecommendInspectorPropsSchema };
|
|
40
|
+
export { VideoDetailRecommendInspectorProps, VideoDetailRecommendProps, videoDetailRecommendInspectorPropsSchema };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
|
|
2
|
-
"use client";import{
|
|
2
|
+
"use client";import{useFollowIdsState as e}from"../../../../store/modules/follow-ids-store.mjs";import{useUserStore as t}from"../../../../store/modules/user-store.mjs";import{checkFollowStatus as n}from"../../../../utils/follow-service.mjs";import{useKeepAliveState as r}from"../../../common/keep-scroll-position/index.mjs";import{UserActivityListItem as i}from"../../../common/list/user-activity-list/user-activity-list-item.mjs";import a from"../../../common/follow-button/index.mjs";import{useCallback as o,useEffect as s,useMemo as c,useRef as l}from"react";import{jsx as u,jsxs as d}from"react/jsx-runtime";import{useTranslations as f}from"next-intl";function p(e){let t=typeof e==`number`?e:Number(e);return Number.isFinite(t)?t:0}function m(e){return typeof e==`string`?e.trim():typeof e==`number`?String(e):``}function h(e){let t=e?.medias;return Array.isArray(t)&&t.length>0?t:(Array.isArray(e.preview_images)?e.preview_images:[]).filter(Boolean).map(e=>({media_url:e,is_video:!1,cover_image:``}))}function g({information:g,initRecommendList:_}){let v=f(`components.biz.business.detail`),{isLogin:y,userInfo:b,userId:x}=t(),S=x||b?.userId||``,[C,w]=r(`post-detail-recommend-list-${g.id}`,_),{followIds:T,setFollowIds:E}=e(),D=l(new Set),O=c(()=>{let e=new Set;for(let t of C||[]){let n=m(t.author?.user_id??t?.up_user);n&&e.add(n)}return Array.from(e)},[C]);s(()=>{if(!y||!S||!O||O.length===0)return;let e=O.filter(e=>e!==S).filter(e=>!D.current.has(e));if(e.length===0)return;let t=!0;async function r(){let r=await n({app_id:0,follower_id:S,followee_ids:e});if(!t||!r?.success)return;let i=r.data?.is_following_map||{},a=new Set(T);for(let t of e)i[t]?a.add(t):a.delete(t),D.current.add(t);E(Array.from(a))}return r(),()=>{t=!1}},[S,T,y,O,E]);let k=o((e,t)=>{e&&w(n=>{let r=n.findIndex(t=>t.id===e);if(r===-1)return n;let i=[...n];return i[r]={...i[r],...t},i})},[w]);return!C||C.length===0?null:d(`section`,{className:`w-full mt-[-40px] border-t-[8px] border-bg2 pb-[68px]`,children:[u(`div`,{className:`w-full px-[16px] h-[40px] border-b-[1px] border-line1 flex items-center`,children:u(`p`,{className:`text-[16px] text-text1 font-bold`,children:v(`postRecommendList.title`)})}),C.map((e,t)=>{let n=m(e.author?.user_id??e?.up_user),r=!!(S&&n&&S===n),o=!!(n&&T.includes(n)),s=n&&!r?u(`div`,{onClick:e=>{e.stopPropagation(),e.preventDefault()},children:u(a,{userId:n,hasFollow:o})}):null;return u(`div`,{className:`border-b border-line1`,children:u(i,{type:2,content_id:e.id,rightSlot:s,author:{user_id:n,nick_name:e.author?.nickname||e.author?.name||``,avatar:e.author?.avatar_url||e.author?.avatar||``},create_time:e.show_at,content:e.description||e.info?.text||e.name,medias:h(e),like_count:p(e?.statics_cnt?.like_cnt??e.static?.like_cnt),dislike_count:p(e?.statics_cnt?.dislike_cnt??e.static?.dislike_cnt),comment_count:p(e?.statics_cnt?.comment_cnt??e.static?.comment_cnt),is_liked:!!e.like,is_dislike:!!e.dislike,onLikeSuccess:({isLiked:t,count:n})=>{let r=!!e.dislike,i=p(e?.statics_cnt?.dislike_cnt??e.static?.dislike_cnt),a=t&&r,o=a?Math.max(0,i-1):i;k(e.id,{like:t,dislike:a?!1:e.dislike,statics_cnt:{...e.statics_cnt,like_cnt:String(n),dislike_cnt:String(o)},static:{...e.static,like_cnt:n,dislike_cnt:o}})},onDislikeSuccess:({isDisliked:t,count:n})=>{let r=!!e.like,i=p(e?.statics_cnt?.like_cnt??e.static?.like_cnt),a=t&&r,o=a?Math.max(0,i-1):i;k(e.id,{dislike:t,like:a?!1:e.like,statics_cnt:{...e.statics_cnt,like_cnt:String(o),dislike_cnt:String(n)},static:{...e.static,like_cnt:o,dislike_cnt:n}})}})},`post-recommend-${e.id||t}`)})]})}export{g as PostRecommendList};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
|
|
2
|
+
import { FloatingBallInspectorProps } from "./schema.mjs";
|
|
3
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region components/biz/business/floating-ball/client.d.ts
|
|
6
|
+
type FloatingBallClientProps = FloatingBallInspectorProps;
|
|
7
|
+
/**
|
|
8
|
+
* 悬浮球客户端组件,仅做占位展示,无交互逻辑。
|
|
9
|
+
*/
|
|
10
|
+
declare function FloatingBallClient(_props: FloatingBallClientProps): react_jsx_runtime0.JSX.Element;
|
|
11
|
+
//#endregion
|
|
12
|
+
export { FloatingBallClient };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
|
|
2
|
+
"use client";import{cn as e}from"../../../../utils/cn.mjs";import{Box as t}from"../../../ui/box.mjs";import{jsx as n}from"react/jsx-runtime";function r(r){return n(t,{as:`div`,className:e(`fixed bottom-6 right-6 z-50`,`flex h-14 w-14 items-center justify-center`,`rounded-full bg-primary text-primary-foreground shadow-lg`),"aria-label":`悬浮球`,children:n(`span`,{className:`text-lg font-medium`,children:`+`})})}export{r as FloatingBallClient};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
|
|
2
|
+
import { DefineMaterialOption } from "../../../../utils/schema/material.mjs";
|
|
3
|
+
import { FloatingBallClient } from "./client.mjs";
|
|
4
|
+
import * as zod from "zod";
|
|
5
|
+
import * as zod_v4_core0 from "zod/v4/core";
|
|
6
|
+
|
|
7
|
+
//#region components/biz/business/floating-ball/material.d.ts
|
|
8
|
+
declare const floatingBallMaterial: DefineMaterialOption<typeof FloatingBallClient, zod.ZodObject<{}, zod_v4_core0.$strip>, "floating-ball">;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { floatingBallMaterial };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
|
|
2
|
+
import{defineMaterial as e}from"../../../../utils/schema/material.mjs";import{FloatingBallClient as t}from"./client.mjs";import{floatingBallInspectorPropsSchema as n}from"./schema.mjs";import{FloatingBall as r}from"./server.mjs";const i=e({type:`floating-ball`,name:`悬浮球`,icon:`/static/components-thumb/floating_action_button.png`,category:`内容组件`,serverComponent:r,clientComponent:t,propsSchema:n});export{i as floatingBallMaterial};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
|
|
2
|
+
import { InferSchemaProps } from "../../../../utils/schema/schema.mjs";
|
|
3
|
+
import "../../../../utils/schema/index.mjs";
|
|
4
|
+
import * as zod from "zod";
|
|
5
|
+
import * as zod_v4_core0 from "zod/v4/core";
|
|
6
|
+
|
|
7
|
+
//#region components/biz/business/floating-ball/schema.d.ts
|
|
8
|
+
/**
|
|
9
|
+
* 悬浮球物料暂不对外开放配置,仅做占位展示。
|
|
10
|
+
*/
|
|
11
|
+
declare const floatingBallInspectorPropsSchema: zod.ZodObject<{}, zod_v4_core0.$strip>;
|
|
12
|
+
type FloatingBallInspectorProps = InferSchemaProps<typeof floatingBallInspectorPropsSchema>;
|
|
13
|
+
//#endregion
|
|
14
|
+
export { FloatingBallInspectorProps };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
|
|
2
|
+
import { HeaderAvatarIconInspectorProps } from "./schema.mjs";
|
|
3
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region components/biz/business/header-search/header-avatar-icon/client.d.ts
|
|
6
|
+
type HeaderAvatarIconClientProps = HeaderAvatarIconInspectorProps;
|
|
7
|
+
/**
|
|
8
|
+
* 顶部-头像框+icon 客户端组件,仅做占位展示。
|
|
9
|
+
*/
|
|
10
|
+
declare function HeaderAvatarIconClient(_props: HeaderAvatarIconClientProps): react_jsx_runtime0.JSX.Element;
|
|
11
|
+
//#endregion
|
|
12
|
+
export { HeaderAvatarIconClient, HeaderAvatarIconClientProps };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
|
|
2
|
+
"use client";import{cn as e}from"../../../../../utils/cn.mjs";import{Box as t}from"../../../../ui/box.mjs";import{jsx as n,jsxs as r}from"react/jsx-runtime";function i(i){return r(t,{as:`header`,className:e(`flex items-center justify-between gap-2 px-3 py-2`,`border-b bg-background`),"aria-label":`顶部-头像框+icon`,children:[n(t,{as:`div`,className:`h-8 w-8 shrink-0 rounded-full bg-muted`,"aria-hidden":!0}),r(t,{as:`div`,className:`flex gap-2`,"aria-hidden":!0,children:[n(t,{as:`div`,className:`flex h-8 w-8 items-center justify-center rounded-full bg-muted`,"aria-hidden":!0,children:n(`span`,{className:`text-sm text-muted-foreground`,children:`⊕`})}),n(t,{as:`div`,className:`flex h-8 w-8 items-center justify-center rounded-full bg-muted`,"aria-hidden":!0,children:n(`span`,{className:`text-sm text-muted-foreground`,children:`⋮`})})]})]})}export{i as HeaderAvatarIconClient};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
|
|
2
|
+
import { HeaderAvatarIconInspectorProps, headerAvatarIconInspectorPropsSchema } from "./schema.mjs";
|
|
3
|
+
import { HeaderAvatarIconClient, HeaderAvatarIconClientProps } from "./client.mjs";
|
|
4
|
+
import { headerAvatarIconMaterial } from "./material.mjs";
|
|
5
|
+
import "./server.mjs";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
|
|
2
|
+
import { DefineMaterialOption } from "../../../../../utils/schema/material.mjs";
|
|
3
|
+
import { HeaderAvatarIconClient } from "./client.mjs";
|
|
4
|
+
import * as zod from "zod";
|
|
5
|
+
import * as zod_v4_core0 from "zod/v4/core";
|
|
6
|
+
|
|
7
|
+
//#region components/biz/business/header-search/header-avatar-icon/material.d.ts
|
|
8
|
+
declare const headerAvatarIconMaterial: DefineMaterialOption<typeof HeaderAvatarIconClient, zod.ZodObject<{}, zod_v4_core0.$strip>, "header-avatar-icon">;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { headerAvatarIconMaterial };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
|
|
2
|
+
import{defineMaterial as e}from"../../../../../utils/schema/material.mjs";import{HeaderAvatarIconClient as t}from"./client.mjs";import{headerAvatarIconInspectorPropsSchema as n}from"./schema.mjs";import{HeaderAvatarIcon as r}from"./server.mjs";const i=e({type:`header-avatar-icon`,name:`顶部-头像框+icon`,icon:`/static/components-thumb/header_avatar_icon.png`,category:`顶部功能`,serverComponent:r,clientComponent:t,propsSchema:n});export{i as headerAvatarIconMaterial};
|