@funhub/platform 0.2.31 → 0.2.33
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/_virtual/_rolldown/runtime.mjs +1 -18
- package/dist/assets/icons/channel-list/channel-active-indicator.mjs +1 -31
- package/dist/assets/icons/clear.mjs +1 -17
- package/dist/assets/icons/close-icon.mjs +1 -18
- package/dist/assets/icons/close.mjs +1 -14
- package/dist/assets/icons/common/collect_nor.mjs +1 -21
- package/dist/assets/icons/common/collect_sel.mjs +1 -21
- package/dist/assets/icons/common/follow_sel.mjs +1 -17
- package/dist/assets/icons/common/follow_user.mjs +1 -17
- package/dist/assets/icons/common/full_screen.mjs +1 -17
- package/dist/assets/icons/common/god_comment.mjs +1 -17
- package/dist/assets/icons/common/header-menu.mjs +1 -29
- package/dist/assets/icons/common/header-search-icon.mjs +1 -17
- package/dist/assets/icons/common/heart-like.mjs +1 -31
- package/dist/assets/icons/common/heart-unlike.mjs +1 -18
- package/dist/assets/icons/common/qq.mjs +1 -32
- package/dist/assets/icons/common/right_arrow.mjs +1 -14
- package/dist/assets/icons/common/right_arrow_thin.mjs +1 -17
- package/dist/assets/icons/common/share.mjs +1 -17
- package/dist/assets/icons/common/solid-arrow.mjs +1 -17
- package/dist/assets/icons/common/video_play.mjs +1 -18
- package/dist/assets/icons/common/wechat-friends.mjs +1 -40
- package/dist/assets/icons/common/wechat.mjs +1 -39
- package/dist/assets/icons/detail/check-ok.mjs +1 -17
- package/dist/assets/icons/detail/comment.mjs +1 -19
- package/dist/assets/icons/detail/commet_at.mjs +1 -53
- package/dist/assets/icons/detail/give_like.mjs +1 -20
- package/dist/assets/icons/detail/give_like_sel.mjs +1 -27
- package/dist/assets/icons/detail/min-collection.mjs +1 -38
- package/dist/assets/icons/detail/publish_pic.mjs +1 -27
- package/dist/assets/icons/detail/publish_video.mjs +1 -30
- package/dist/assets/icons/detail/un_like.mjs +1 -20
- package/dist/assets/icons/detail/un_like_sel.mjs +1 -27
- package/dist/assets/icons/detail/video_flag.mjs +1 -17
- package/dist/assets/icons/detail/video_play.mjs +1 -18
- package/dist/assets/icons/dislike.mjs +1 -20
- package/dist/assets/icons/dislike_sel.mjs +1 -27
- package/dist/assets/icons/empty/img-empty-adduser.mjs +1 -463
- package/dist/assets/icons/empty/img-empty-nodata.mjs +1 -194
- package/dist/assets/icons/eye-icon.mjs +1 -21
- package/dist/assets/icons/eye-off-icon.mjs +1 -24
- package/dist/assets/icons/filter_dark.mjs +1 -17
- package/dist/assets/icons/follow_nor.mjs +1 -44
- package/dist/assets/icons/follow_sel.mjs +1 -31
- package/dist/assets/icons/left-arrow-icon.mjs +1 -18
- package/dist/assets/icons/left_arrow.mjs +1 -14
- package/dist/assets/icons/like.mjs +1 -20
- package/dist/assets/icons/like_sel.mjs +1 -27
- package/dist/assets/icons/marquee-close.mjs +1 -29
- package/dist/assets/icons/marquee-enter.mjs +1 -17
- package/dist/assets/icons/marquee-speaker.mjs +1 -22
- package/dist/assets/icons/publish/publish_add.mjs +1 -17
- package/dist/assets/icons/publish/publish_at.mjs +1 -53
- package/dist/assets/icons/publish/publish_collection.mjs +1 -28
- package/dist/assets/icons/publish/publish_pic.mjs +1 -27
- package/dist/assets/icons/publish/publish_video.mjs +1 -30
- package/dist/assets/icons/refresh.mjs +1 -18
- package/dist/assets/icons/search/filter.mjs +1 -17
- package/dist/assets/icons/search.mjs +1 -23
- package/dist/assets/icons/share/share-link.mjs +1 -39
- package/dist/assets/icons/tabs/follow.mjs +1 -20
- package/dist/assets/icons/tabs/follow_active.mjs +1 -17
- package/dist/assets/icons/tabs/home.mjs +1 -17
- package/dist/assets/icons/tabs/home_active.mjs +1 -17
- package/dist/assets/icons/tabs/mine.mjs +1 -26
- package/dist/assets/icons/tabs/mine_active.mjs +1 -17
- package/dist/assets/icons/view.mjs +1 -17
- package/dist/assets/images/add.mjs +1 -5
- package/dist/assets/images/default_avatar.mjs +1 -5
- package/dist/assets/images/default_collection_cover.mjs +1 -5
- package/dist/assets/images/empty/img_empty_adduser.mjs +1 -463
- package/dist/assets/images/empty/img_empty_message.mjs +1 -408
- package/dist/assets/images/empty/img_empty_network.mjs +1 -168
- package/dist/assets/images/empty/img_empty_nodata.mjs +1 -194
- package/dist/assets/images/empty/img_empty_picture.mjs +1 -59
- package/dist/assets/images/empty/img_empty_search.mjs +1 -250
- package/dist/assets/images/frame.mjs +1 -5
- package/dist/assets/images/less.mjs +1 -5
- package/dist/assets/images/logo.mjs +1 -5
- package/dist/assets/images/shortcut-grid/shortcut-grid-card-bg-primary.mjs +1 -29
- package/dist/assets/images/subscript.mjs +1 -5
- package/dist/assets/images/user/default_avatar.mjs +1 -5
- package/dist/biz.mjs +1 -169
- package/dist/cli/init/create-client.mjs +1 -12
- package/dist/cli/init/create-sdk.mjs +1 -12
- package/dist/cli/init/shared/command.mjs +1 -31
- package/dist/cli/init/shared/constants.mjs +1 -24
- package/dist/cli/init/shared/create-project.mjs +2 -58
- package/dist/cli/init/shared/file.mjs +1 -21
- package/dist/cli/init/shared/package-manager.mjs +1 -42
- package/dist/cli/init/shared/prompts.mjs +1 -107
- package/dist/cli/init/shared/template.mjs +1 -66
- package/dist/cli.mjs +2 -128
- package/dist/common.mjs +1 -51
- package/dist/components/biz/basics/card-item/defaults/default-props.mjs +1 -10
- package/dist/components/biz/basics/card-item/runtime/client.mjs +1 -83
- package/dist/components/biz/basics/card-item/runtime/corners.mjs +1 -33
- package/dist/components/biz/basics/card-item/schema/component.mjs +1 -14
- package/dist/components/biz/basics/card-item/schema/data.schema.mjs +1 -8
- package/dist/components/biz/basics/card-item/schema/event.schema.mjs +1 -8
- package/dist/components/biz/basics/card-item/schema/index.mjs +1 -17
- package/dist/components/biz/basics/card-item/schema/props.schema.mjs +1 -18
- package/dist/components/biz/basics/card-item/schema/style.schema.mjs +1 -7
- package/dist/components/biz/basics/card-layout/defaults/default-props.mjs +1 -13
- package/dist/components/biz/basics/card-layout/runtime/client.mjs +1 -38
- package/dist/components/biz/basics/card-layout/schema/component.mjs +1 -14
- package/dist/components/biz/basics/card-layout/schema/data.schema.mjs +1 -8
- package/dist/components/biz/basics/card-layout/schema/event.schema.mjs +1 -5
- package/dist/components/biz/basics/card-layout/schema/index.mjs +1 -17
- package/dist/components/biz/basics/card-layout/schema/props.schema.mjs +1 -28
- package/dist/components/biz/basics/card-layout/schema/style.schema.mjs +1 -7
- package/dist/components/biz/basics/fullscreen-feed/basic-fullscreen.mjs +1 -268
- package/dist/components/biz/basics/fullscreen-feed/defaults/default-props.mjs +1 -11
- package/dist/components/biz/basics/fullscreen-feed/index.mjs +1 -12
- package/dist/components/biz/basics/fullscreen-feed/runtime/adapters.mjs +1 -97
- package/dist/components/biz/basics/fullscreen-feed/runtime/bottom-info.mjs +1 -125
- package/dist/components/biz/basics/fullscreen-feed/runtime/client.mjs +1 -390
- package/dist/components/biz/basics/fullscreen-feed/runtime/comment-modal.mjs +1 -107
- package/dist/components/biz/basics/fullscreen-feed/runtime/interaction-sync.mjs +1 -134
- package/dist/components/biz/basics/fullscreen-feed/runtime/post-slide.mjs +1 -232
- package/dist/components/biz/basics/fullscreen-feed/runtime/styles.module.mjs +152 -25
- package/dist/components/biz/basics/fullscreen-feed/runtime/use-mixed-feed-controller.mjs +1 -193
- package/dist/components/biz/basics/fullscreen-feed/runtime/use-series-feed-controller.mjs +1 -212
- package/dist/components/biz/basics/fullscreen-feed/runtime/user-action.mjs +1 -270
- package/dist/components/biz/basics/fullscreen-feed/runtime/video-slide.mjs +1 -376
- package/dist/components/biz/basics/fullscreen-feed/schema/component.mjs +1 -14
- package/dist/components/biz/basics/fullscreen-feed/schema/data.schema.mjs +1 -11
- package/dist/components/biz/basics/fullscreen-feed/schema/event.schema.mjs +1 -13
- package/dist/components/biz/basics/fullscreen-feed/schema/index.mjs +1 -17
- package/dist/components/biz/basics/fullscreen-feed/schema/props.schema.mjs +1 -20
- package/dist/components/biz/basics/fullscreen-feed/schema/style.schema.mjs +1 -5
- package/dist/components/biz/basics/logo/variants/basic-logo/defaults/default-props.mjs +1 -19
- package/dist/components/biz/basics/logo/variants/basic-logo/index.mjs +1 -9
- package/dist/components/biz/basics/logo/variants/basic-logo/runtime/client.mjs +1 -171
- package/dist/components/biz/basics/logo/variants/basic-logo/schema/component.mjs +1 -14
- package/dist/components/biz/basics/logo/variants/basic-logo/schema/data.schema.mjs +1 -9
- package/dist/components/biz/basics/logo/variants/basic-logo/schema/event.schema.mjs +1 -23
- package/dist/components/biz/basics/logo/variants/basic-logo/schema/index.mjs +1 -17
- package/dist/components/biz/basics/logo/variants/basic-logo/schema/props.schema.mjs +1 -78
- package/dist/components/biz/basics/logo/variants/basic-logo/schema/style.schema.mjs +1 -7
- package/dist/components/biz/basics/search/shared/components/search-box.mjs +1 -56
- package/dist/components/biz/basics/search/shared/config/default-data.mjs +1 -15
- package/dist/components/biz/basics/search/shared/config/schema.mjs +1 -50
- package/dist/components/biz/basics/search/variants/basic-search/defaults/default-props.mjs +1 -10
- package/dist/components/biz/basics/search/variants/basic-search/index.mjs +1 -12
- package/dist/components/biz/basics/search/variants/basic-search/runtime/client.mjs +1 -33
- package/dist/components/biz/basics/search/variants/basic-search/schema/component.mjs +1 -14
- package/dist/components/biz/basics/search/variants/basic-search/schema/data.schema.mjs +1 -8
- package/dist/components/biz/basics/search/variants/basic-search/schema/event.schema.mjs +1 -7
- package/dist/components/biz/basics/search/variants/basic-search/schema/index.mjs +1 -17
- package/dist/components/biz/basics/search/variants/basic-search/schema/props.schema.mjs +1 -7
- package/dist/components/biz/basics/search/variants/basic-search/schema/style.schema.mjs +1 -7
- package/dist/components/biz/basics/search/variants/filter-search/defaults/default-props.mjs +1 -14
- package/dist/components/biz/basics/search/variants/filter-search/index.mjs +1 -12
- package/dist/components/biz/basics/search/variants/filter-search/runtime/client.mjs +1 -63
- package/dist/components/biz/basics/search/variants/filter-search/schema/component.mjs +1 -14
- package/dist/components/biz/basics/search/variants/filter-search/schema/data.schema.mjs +1 -8
- package/dist/components/biz/basics/search/variants/filter-search/schema/event.schema.mjs +1 -7
- package/dist/components/biz/basics/search/variants/filter-search/schema/index.mjs +1 -17
- package/dist/components/biz/basics/search/variants/filter-search/schema/props.schema.mjs +1 -22
- package/dist/components/biz/basics/search/variants/filter-search/schema/style.schema.mjs +1 -7
- package/dist/components/biz/basics/search/variants/simple-search/defaults/default-props.mjs +1 -10
- package/dist/components/biz/basics/search/variants/simple-search/index.mjs +1 -9
- package/dist/components/biz/basics/search/variants/simple-search/runtime/client.mjs +1 -37
- package/dist/components/biz/basics/search/variants/simple-search/schema/component.mjs +1 -14
- package/dist/components/biz/basics/search/variants/simple-search/schema/data.schema.mjs +1 -8
- package/dist/components/biz/basics/search/variants/simple-search/schema/event.schema.mjs +1 -7
- package/dist/components/biz/basics/search/variants/simple-search/schema/index.mjs +1 -17
- package/dist/components/biz/basics/search/variants/simple-search/schema/props.schema.mjs +1 -7
- package/dist/components/biz/basics/search/variants/simple-search/schema/style.schema.mjs +1 -7
- package/dist/components/biz/basics/search/variants/tag-search/defaults/default-props.mjs +1 -18
- package/dist/components/biz/basics/search/variants/tag-search/index.mjs +1 -9
- package/dist/components/biz/basics/search/variants/tag-search/runtime/client.mjs +1 -67
- package/dist/components/biz/basics/search/variants/tag-search/schema/component.mjs +1 -14
- package/dist/components/biz/basics/search/variants/tag-search/schema/data.schema.mjs +1 -8
- package/dist/components/biz/basics/search/variants/tag-search/schema/event.schema.mjs +1 -7
- package/dist/components/biz/basics/search/variants/tag-search/schema/index.mjs +1 -17
- package/dist/components/biz/basics/search/variants/tag-search/schema/props.schema.mjs +1 -37
- package/dist/components/biz/basics/search/variants/tag-search/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/advertisement/ad-match.mjs +1 -142
- package/dist/components/biz/business/advertisement/ad-provider.mjs +1 -50
- package/dist/components/biz/business/advertisement/ad-query.mjs +1 -39
- package/dist/components/biz/business/advertisement/ad-runtime-provider.mjs +1 -21
- package/dist/components/biz/business/advertisement/banner-ad/client.mjs +1 -274
- package/dist/components/biz/business/advertisement/banner-ad/material.mjs +1 -21
- package/dist/components/biz/business/advertisement/banner-ad/schema.mjs +1 -55
- package/dist/components/biz/business/advertisement/banner-ad/server.mjs +1 -24
- package/dist/components/biz/business/advertisement/feed-ad/index.mjs +1 -36
- package/dist/components/biz/business/advertisement/floating-ad/client.mjs +1 -109
- package/dist/components/biz/business/advertisement/floating-ad/material.mjs +1 -21
- package/dist/components/biz/business/advertisement/floating-ad/schema.mjs +1 -11
- package/dist/components/biz/business/advertisement/floating-ad/server.mjs +1 -24
- package/dist/components/biz/business/advertisement/icon-ad/client.mjs +1 -187
- package/dist/components/biz/business/advertisement/icon-ad/material.mjs +1 -21
- package/dist/components/biz/business/advertisement/icon-ad/schema.mjs +1 -42
- package/dist/components/biz/business/advertisement/icon-ad/server.mjs +1 -24
- package/dist/components/biz/business/advertisement/popup-ad/client.mjs +2 -203
- package/dist/components/biz/business/advertisement/popup-ad/material.mjs +1 -21
- package/dist/components/biz/business/advertisement/popup-ad/schema.mjs +1 -48
- package/dist/components/biz/business/advertisement/popup-ad/server.mjs +1 -24
- package/dist/components/biz/business/advertisement/text-ad/client.mjs +1 -370
- package/dist/components/biz/business/advertisement/text-ad/material.mjs +1 -21
- package/dist/components/biz/business/advertisement/text-ad/schema.mjs +1 -34
- package/dist/components/biz/business/advertisement/text-ad/server.mjs +1 -24
- package/dist/components/biz/business/banner/variants/basic-banner/defaults/default-props.mjs +1 -15
- package/dist/components/biz/business/banner/variants/basic-banner/index.mjs +1 -12
- package/dist/components/biz/business/banner/variants/basic-banner/inspector-schema.mjs +1 -62
- package/dist/components/biz/business/banner/variants/basic-banner/material.mjs +1 -21
- package/dist/components/biz/business/banner/variants/basic-banner/runtime/client.mjs +1 -140
- package/dist/components/biz/business/banner/variants/basic-banner/schema/component.mjs +1 -14
- package/dist/components/biz/business/banner/variants/basic-banner/schema/data.schema.mjs +1 -53
- package/dist/components/biz/business/banner/variants/basic-banner/schema/event.schema.mjs +1 -5
- package/dist/components/biz/business/banner/variants/basic-banner/schema/index.mjs +1 -17
- package/dist/components/biz/business/banner/variants/basic-banner/schema/props.schema.mjs +1 -40
- package/dist/components/biz/business/banner/variants/basic-banner/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/banner/variants/basic-banner/server.mjs +1 -25
- package/dist/components/biz/business/banner-carousel/client.mjs +1 -133
- package/dist/components/biz/business/banner-carousel/default-props.mjs +1 -15
- package/dist/components/biz/business/banner-carousel/material.mjs +1 -22
- package/dist/components/biz/business/banner-carousel/schema.mjs +1 -94
- package/dist/components/biz/business/banner-carousel/server.mjs +1 -87
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3/defaults/default-props.mjs +1 -8
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3/index.mjs +1 -9
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3/runtime/client.mjs +1 -41
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3/schema/component.mjs +1 -14
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3/schema/data.schema.mjs +1 -8
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3/schema/event.schema.mjs +1 -5
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3/schema/index.mjs +1 -17
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3/schema/props.schema.mjs +1 -12
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3-infinite/defaults/default-props.mjs +1 -8
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3-infinite/index.mjs +1 -9
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3-infinite/runtime/client.mjs +1 -106
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3-infinite/schema/component.mjs +1 -14
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3-infinite/schema/data.schema.mjs +1 -8
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3-infinite/schema/event.schema.mjs +1 -5
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3-infinite/schema/index.mjs +1 -17
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3-infinite/schema/props.schema.mjs +1 -12
- package/dist/components/biz/business/card-grid/variants/card-grid-2x3-infinite/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/card-grid/variants/card-grid-2x4/defaults/default-props.mjs +1 -8
- package/dist/components/biz/business/card-grid/variants/card-grid-2x4/index.mjs +1 -9
- package/dist/components/biz/business/card-grid/variants/card-grid-2x4/runtime/client.mjs +1 -41
- package/dist/components/biz/business/card-grid/variants/card-grid-2x4/schema/component.mjs +1 -14
- package/dist/components/biz/business/card-grid/variants/card-grid-2x4/schema/data.schema.mjs +1 -8
- package/dist/components/biz/business/card-grid/variants/card-grid-2x4/schema/event.schema.mjs +1 -5
- package/dist/components/biz/business/card-grid/variants/card-grid-2x4/schema/index.mjs +1 -17
- package/dist/components/biz/business/card-grid/variants/card-grid-2x4/schema/props.schema.mjs +1 -12
- package/dist/components/biz/business/card-grid/variants/card-grid-2x4/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3/defaults/default-props.mjs +1 -8
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3/index.mjs +1 -9
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3/runtime/client.mjs +1 -41
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3/schema/component.mjs +1 -14
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3/schema/data.schema.mjs +1 -8
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3/schema/event.schema.mjs +1 -5
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3/schema/index.mjs +1 -17
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3/schema/props.schema.mjs +1 -12
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3-infinite/defaults/default-props.mjs +1 -8
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3-infinite/index.mjs +1 -9
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3-infinite/runtime/client.mjs +1 -106
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3-infinite/schema/component.mjs +1 -14
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3-infinite/schema/data.schema.mjs +1 -8
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3-infinite/schema/event.schema.mjs +1 -5
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3-infinite/schema/index.mjs +1 -17
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3-infinite/schema/props.schema.mjs +1 -12
- package/dist/components/biz/business/card-grid/variants/card-grid-3x3-infinite/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/channel-list/channel-filter-dialog.mjs +1 -190
- package/dist/components/biz/business/channel-list/client.mjs +1 -157
- package/dist/components/biz/business/channel-list/default-props.mjs +1 -13
- package/dist/components/biz/business/channel-list/material.mjs +1 -21
- package/dist/components/biz/business/channel-list/schema.mjs +1 -40
- package/dist/components/biz/business/comment/comment-input.mjs +5 -772
- package/dist/components/biz/business/comment/comment-item.mjs +1 -182
- package/dist/components/biz/business/comment/comment-list.mjs +1 -722
- package/dist/components/biz/business/comment/comment-media.mjs +1 -57
- package/dist/components/biz/business/comment/comment-rich-text.mjs +1 -69
- package/dist/components/biz/business/comment/reply-detail.mjs +1 -969
- package/dist/components/biz/business/comment/time-display.mjs +1 -20
- package/dist/components/biz/business/comment/use-keyboard-handler.mjs +1 -142
- package/dist/components/biz/business/contact/contact-item.mjs +1 -45
- package/dist/components/biz/business/contact/contact-list.mjs +1 -212
- package/dist/components/biz/business/contact/contact-search.mjs +1 -128
- package/dist/components/biz/business/detail/shared/detail-follow-action.mjs +1 -114
- package/dist/components/biz/business/detail/shared/detail-info-tags.mjs +1 -33
- package/dist/components/biz/business/detail/shared/detail-info-title.mjs +1 -84
- package/dist/components/biz/business/detail/shared/detail-operate.mjs +1 -432
- package/dist/components/biz/business/detail/shared/detail-structured-data.mjs +1 -63
- package/dist/components/biz/business/detail/shared/editor-preview.mjs +1 -67
- package/dist/components/biz/business/detail/shared/material-route-context.mjs +1 -44
- package/dist/components/biz/business/detail/shared/metadata-utils.mjs +1 -21
- package/dist/components/biz/business/detail/shared/post-recommend-list.mjs +1 -184
- package/dist/components/biz/business/detail/shared/registry.mjs +1 -55
- package/dist/components/biz/business/detail/shared/runtime-context-provider.mjs +1 -225
- package/dist/components/biz/business/detail/shared/seo-config.mjs +1 -28
- package/dist/components/biz/business/detail/shared/use-video-detail-webview-bridge.mjs +1 -320
- package/dist/components/biz/business/detail/shared/video-detail-server-data.mjs +1 -46
- package/dist/components/biz/business/detail/shared/video-hero.mjs +1 -902
- package/dist/components/biz/business/detail/video-detail-actions/client.mjs +1 -97
- package/dist/components/biz/business/detail/video-detail-actions/material.mjs +1 -18
- package/dist/components/biz/business/detail/video-detail-actions/schema.mjs +1 -11
- package/dist/components/biz/business/detail/video-detail-actions/server.mjs +1 -47
- package/dist/components/biz/business/detail/video-detail-info/client.mjs +1 -201
- package/dist/components/biz/business/detail/video-detail-info/material.mjs +1 -18
- package/dist/components/biz/business/detail/video-detail-info/schema.mjs +1 -14
- package/dist/components/biz/business/detail/video-detail-info/server.mjs +1 -45
- package/dist/components/biz/business/detail/video-detail-info-title-tags-episodes/client.mjs +1 -51
- package/dist/components/biz/business/detail/video-detail-info-title-tags-episodes/material.mjs +1 -18
- package/dist/components/biz/business/detail/video-detail-info-title-tags-episodes/schema.mjs +1 -14
- package/dist/components/biz/business/detail/video-detail-info-title-tags-episodes/server.mjs +1 -45
- package/dist/components/biz/business/detail/video-detail-player/client.mjs +1 -136
- package/dist/components/biz/business/detail/video-detail-player/material.mjs +1 -18
- package/dist/components/biz/business/detail/video-detail-player/schema.mjs +1 -11
- package/dist/components/biz/business/detail/video-detail-player/server.mjs +1 -17
- package/dist/components/biz/business/detail/video-detail-player-bridge-only/client.mjs +1 -17
- package/dist/components/biz/business/detail/video-detail-player-bridge-only/material.mjs +1 -18
- package/dist/components/biz/business/detail/video-detail-player-bridge-only/schema.mjs +1 -13
- package/dist/components/biz/business/detail/video-detail-player-bridge-only/server.mjs +1 -17
- package/dist/components/biz/business/detail/video-detail-recommend/client.mjs +1 -89
- package/dist/components/biz/business/detail/video-detail-recommend/material.mjs +1 -18
- package/dist/components/biz/business/detail/video-detail-recommend/schema.mjs +1 -35
- package/dist/components/biz/business/detail/video-detail-recommend/server.mjs +1 -35
- package/dist/components/biz/business/detail/video-detail-recommend/shared.mjs +1 -548
- package/dist/components/biz/business/detail/video-detail-recommend/utils.mjs +1 -60
- package/dist/components/biz/business/feature-grid/variants/basic-feature-grid/defaults/default-props.mjs +1 -12
- package/dist/components/biz/business/feature-grid/variants/basic-feature-grid/index.mjs +1 -9
- package/dist/components/biz/business/feature-grid/variants/basic-feature-grid/runtime/client.mjs +1 -66
- package/dist/components/biz/business/feature-grid/variants/basic-feature-grid/schema/component.mjs +1 -14
- package/dist/components/biz/business/feature-grid/variants/basic-feature-grid/schema/data.schema.mjs +1 -43
- package/dist/components/biz/business/feature-grid/variants/basic-feature-grid/schema/event.schema.mjs +1 -5
- package/dist/components/biz/business/feature-grid/variants/basic-feature-grid/schema/index.mjs +1 -17
- package/dist/components/biz/business/feature-grid/variants/basic-feature-grid/schema/props.schema.mjs +1 -32
- package/dist/components/biz/business/feature-grid/variants/basic-feature-grid/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/floating-ball/client.mjs +1 -31
- package/dist/components/biz/business/floating-ball/material.mjs +1 -18
- package/dist/components/biz/business/floating-ball/schema.mjs +1 -20
- package/dist/components/biz/business/floating-ball/server.mjs +1 -17
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-post-feed/defaults/default-props.mjs +1 -11
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-post-feed/index.mjs +1 -9
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-post-feed/runtime/client.mjs +1 -71
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-post-feed/schema/component.mjs +1 -14
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-post-feed/schema/data.schema.mjs +1 -11
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-post-feed/schema/index.mjs +1 -17
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-video-feed/defaults/default-props.mjs +1 -11
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-video-feed/index.mjs +1 -9
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-video-feed/runtime/client.mjs +1 -64
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-video-feed/schema/component.mjs +1 -14
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-video-feed/schema/data.schema.mjs +1 -11
- package/dist/components/biz/business/fullscreen-feed/variants/fullscreen-video-feed/schema/index.mjs +1 -17
- package/dist/components/biz/business/fullscreen-feed/variants/shared/runtime-compat.mjs +1 -522
- package/dist/components/biz/business/header-search/header-avatar-icon/client.mjs +1 -21
- package/dist/components/biz/business/header-search/header-avatar-icon/material.mjs +1 -18
- package/dist/components/biz/business/header-search/header-avatar-icon/schema.mjs +1 -11
- package/dist/components/biz/business/header-search/header-avatar-icon/server.mjs +1 -17
- package/dist/components/biz/business/header-search/header-avatar-logo-search/client.mjs +1 -142
- package/dist/components/biz/business/header-search/header-avatar-logo-search/material.mjs +1 -18
- package/dist/components/biz/business/header-search/header-avatar-logo-search/schema.mjs +1 -23
- package/dist/components/biz/business/header-search/header-avatar-logo-search/server.mjs +1 -17
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/client.mjs +1 -38
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/material.mjs +1 -18
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/schema.mjs +1 -20
- package/dist/components/biz/business/header-search/header-avatar-logo-search-icon/server.mjs +1 -17
- package/dist/components/biz/business/header-search/header-logo-search/client.mjs +1 -32
- package/dist/components/biz/business/header-search/header-logo-search/material.mjs +1 -18
- package/dist/components/biz/business/header-search/header-logo-search/schema.mjs +1 -22
- package/dist/components/biz/business/header-search/header-logo-search/server.mjs +1 -17
- package/dist/components/biz/business/header-search/header-search/client.mjs +1 -19
- package/dist/components/biz/business/header-search/header-search/material.mjs +1 -18
- package/dist/components/biz/business/header-search/header-search/schema.mjs +1 -11
- package/dist/components/biz/business/header-search/header-search/server.mjs +1 -17
- package/dist/components/biz/business/header-search/shared/avatar.mjs +1 -53
- package/dist/components/biz/business/header-search/shared/header-action.mjs +1 -29
- package/dist/components/biz/business/header-search/shared/header-search-icon.mjs +1 -26
- package/dist/components/biz/business/header-search/shared/header-shell.mjs +1 -21
- package/dist/components/biz/business/header-search/shared/logo.mjs +1 -25
- package/dist/components/biz/business/header-search/shared/search.mjs +1 -47
- package/dist/components/biz/business/home-recommend/home-recommend-grid/client.mjs +1 -48
- package/dist/components/biz/business/home-recommend/home-recommend-grid/index.mjs +1 -14
- package/dist/components/biz/business/home-recommend/home-recommend-grid/inspector-schema.mjs +1 -229
- package/dist/components/biz/business/home-recommend/home-recommend-grid/material.mjs +1 -18
- package/dist/components/biz/business/home-recommend/home-recommend-grid/schema.mjs +1 -24
- package/dist/components/biz/business/home-recommend/home-recommend-grid/server.mjs +1 -48
- package/dist/components/biz/business/home-recommend/home-recommend-waterfall/client.mjs +1 -47
- package/dist/components/biz/business/home-recommend/home-recommend-waterfall/index.mjs +1 -14
- package/dist/components/biz/business/home-recommend/home-recommend-waterfall/inspector-schema.mjs +1 -211
- package/dist/components/biz/business/home-recommend/home-recommend-waterfall/material.mjs +1 -18
- package/dist/components/biz/business/home-recommend/home-recommend-waterfall/schema.mjs +1 -24
- package/dist/components/biz/business/home-recommend/home-recommend-waterfall/server.mjs +1 -42
- package/dist/components/biz/business/home-recommend/shared/home-recommend-base.mjs +1 -890
- package/dist/components/biz/business/home-recommend/shared/home-recommend-default-config.mjs +1 -24
- package/dist/components/biz/business/home-recommend/shared/home-recommend-play-count.mjs +1 -31
- package/dist/components/biz/business/home-recommend/shared/home-recommend-preview.mjs +1 -178
- package/dist/components/biz/business/home-recommend/shared/home-recommend-runtime-props.mjs +1 -47
- package/dist/components/biz/business/home-recommend/shared/home-recommend-server-data.mjs +1 -336
- package/dist/components/biz/business/home-recommend/shared/home-recommend-smart-layout.mjs +1 -73
- package/dist/components/biz/business/home-recommend/shared/home-recommend-smart-tag.mjs +1 -21
- package/dist/components/biz/business/home-recommend/shared/home-recommend-video-detail.mjs +1 -73
- package/dist/components/biz/business/image-text-recommend/client.mjs +1 -436
- package/dist/components/biz/business/image-text-recommend/material.mjs +1 -21
- package/dist/components/biz/business/image-text-recommend/schema.mjs +1 -79
- package/dist/components/biz/business/image-text-recommend/server.mjs +1 -53
- package/dist/components/biz/business/image-text-recommend/shared/query.mjs +1 -33
- package/dist/components/biz/business/large-feature-grid/card-item.mjs +1 -106
- package/dist/components/biz/business/large-feature-grid/client.mjs +1 -256
- package/dist/components/biz/business/large-feature-grid/material.mjs +1 -21
- package/dist/components/biz/business/large-feature-grid/schema.mjs +1 -127
- package/dist/components/biz/business/large-feature-grid/server.mjs +1 -16
- package/dist/components/biz/business/marquee/client.mjs +1 -303
- package/dist/components/biz/business/marquee/material.mjs +1 -21
- package/dist/components/biz/business/marquee/schema.mjs +1 -86
- package/dist/components/biz/business/marquee/server.mjs +1 -17
- package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/defaults/default-props.mjs +1 -21
- package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/index.mjs +1 -9
- package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/runtime/channel-filter-dialog.mjs +1 -180
- package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/runtime/client.mjs +1 -159
- package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/schema/component.mjs +1 -14
- package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/schema/data.schema.mjs +1 -9
- package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/schema/event.schema.mjs +1 -27
- package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/schema/index.mjs +1 -17
- package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/schema/props.schema.mjs +1 -92
- package/dist/components/biz/business/nav-bar/variants/basic-nav-bar/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/post-card/variants/basic-post-card/defaults/default-props.mjs +1 -8
- package/dist/components/biz/business/post-card/variants/basic-post-card/index.mjs +1 -9
- package/dist/components/biz/business/post-card/variants/basic-post-card/runtime/client.mjs +1 -119
- package/dist/components/biz/business/post-card/variants/basic-post-card/schema/component.mjs +1 -14
- package/dist/components/biz/business/post-card/variants/basic-post-card/schema/data.schema.mjs +1 -8
- package/dist/components/biz/business/post-card/variants/basic-post-card/schema/event.schema.mjs +1 -5
- package/dist/components/biz/business/post-card/variants/basic-post-card/schema/index.mjs +1 -17
- package/dist/components/biz/business/post-card/variants/basic-post-card/schema/props.schema.mjs +1 -5
- package/dist/components/biz/business/post-card/variants/basic-post-card/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/profile/profile-header/client.mjs +1 -343
- package/dist/components/biz/business/profile/profile-header/material.mjs +1 -59
- package/dist/components/biz/business/profile/profile-header/schema.mjs +1 -11
- package/dist/components/biz/business/profile/profile-header/user-profile-avatar.mjs +1 -262
- package/dist/components/biz/business/profile/profile-header/user-profile-cover-background.mjs +1 -182
- package/dist/components/biz/business/profile/profile-main/client.mjs +1 -235
- package/dist/components/biz/business/profile/profile-main/empty-state.mjs +1 -43
- package/dist/components/biz/business/profile/profile-main/material.mjs +1 -18
- package/dist/components/biz/business/profile/profile-main/schema.mjs +1 -11
- package/dist/components/biz/business/profile/profile-main/server.mjs +1 -13
- package/dist/components/biz/business/profile/profile-main/shell.mjs +1 -275
- package/dist/components/biz/business/profile/profile-main/tabs/collect-tab/client.mjs +1 -747
- package/dist/components/biz/business/profile/profile-main/tabs/collect-tab/server.mjs +1 -13
- package/dist/components/biz/business/profile/profile-main/tabs/collect-tab/video-waterfall.mjs +1 -178
- package/dist/components/biz/business/profile/profile-main/tabs/history-tab/client.mjs +1 -259
- package/dist/components/biz/business/profile/profile-main/tabs/history-tab/server.mjs +1 -13
- package/dist/components/biz/business/profile/profile-main/tabs/like-tab/client.mjs +1 -258
- package/dist/components/biz/business/profile/profile-main/tabs/like-tab/server.mjs +1 -13
- package/dist/components/biz/business/profile/profile-main/tabs/publish-tab/client.mjs +1 -149
- package/dist/components/biz/business/profile/profile-main/tabs/publish-tab/server.mjs +1 -13
- package/dist/components/biz/business/profile/profile-main/utils.mjs +1 -266
- package/dist/components/biz/business/profile/profile-main/variants.mjs +1 -40
- package/dist/components/biz/business/profile/tracking.mjs +1 -19
- package/dist/components/biz/business/recommended-users/variants/basic-recommended-users/defaults/default-props.mjs +1 -15
- package/dist/components/biz/business/recommended-users/variants/basic-recommended-users/index.mjs +1 -9
- package/dist/components/biz/business/recommended-users/variants/basic-recommended-users/runtime/client.mjs +1 -168
- package/dist/components/biz/business/recommended-users/variants/basic-recommended-users/runtime/recommended-users-skeleton.mjs +1 -119
- package/dist/components/biz/business/recommended-users/variants/basic-recommended-users/schema/component.mjs +1 -14
- package/dist/components/biz/business/recommended-users/variants/basic-recommended-users/schema/data.schema.mjs +1 -9
- package/dist/components/biz/business/recommended-users/variants/basic-recommended-users/schema/event.schema.mjs +1 -17
- package/dist/components/biz/business/recommended-users/variants/basic-recommended-users/schema/index.mjs +1 -17
- package/dist/components/biz/business/recommended-users/variants/basic-recommended-users/schema/props.schema.mjs +1 -54
- package/dist/components/biz/business/recommended-users/variants/basic-recommended-users/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/search-bar/variants/basic-search-bar/defaults/default-props.mjs +1 -15
- package/dist/components/biz/business/search-bar/variants/basic-search-bar/index.mjs +1 -9
- package/dist/components/biz/business/search-bar/variants/basic-search-bar/runtime/client.mjs +1 -54
- package/dist/components/biz/business/search-bar/variants/basic-search-bar/schema/component.mjs +1 -14
- package/dist/components/biz/business/search-bar/variants/basic-search-bar/schema/data.schema.mjs +1 -9
- package/dist/components/biz/business/search-bar/variants/basic-search-bar/schema/event.schema.mjs +1 -5
- package/dist/components/biz/business/search-bar/variants/basic-search-bar/schema/index.mjs +1 -17
- package/dist/components/biz/business/search-bar/variants/basic-search-bar/schema/props.schema.mjs +1 -117
- package/dist/components/biz/business/search-bar/variants/basic-search-bar/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/search-bar/variants/detail-search-bar/defaults/default-props.mjs +1 -22
- package/dist/components/biz/business/search-bar/variants/detail-search-bar/index.mjs +1 -9
- package/dist/components/biz/business/search-bar/variants/detail-search-bar/runtime/client.mjs +1 -53
- package/dist/components/biz/business/search-bar/variants/detail-search-bar/schema/component.mjs +1 -14
- package/dist/components/biz/business/search-bar/variants/detail-search-bar/schema/data.schema.mjs +1 -9
- package/dist/components/biz/business/search-bar/variants/detail-search-bar/schema/event.schema.mjs +1 -5
- package/dist/components/biz/business/search-bar/variants/detail-search-bar/schema/index.mjs +1 -17
- package/dist/components/biz/business/search-bar/variants/detail-search-bar/schema/props.schema.mjs +1 -117
- package/dist/components/biz/business/search-bar/variants/detail-search-bar/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/search-bar/variants/filter-search-bar/defaults/default-props.mjs +1 -15
- package/dist/components/biz/business/search-bar/variants/filter-search-bar/index.mjs +1 -9
- package/dist/components/biz/business/search-bar/variants/filter-search-bar/runtime/client.mjs +1 -52
- package/dist/components/biz/business/search-bar/variants/filter-search-bar/schema/component.mjs +1 -14
- package/dist/components/biz/business/search-bar/variants/filter-search-bar/schema/data.schema.mjs +1 -9
- package/dist/components/biz/business/search-bar/variants/filter-search-bar/schema/event.schema.mjs +1 -25
- package/dist/components/biz/business/search-bar/variants/filter-search-bar/schema/index.mjs +1 -17
- package/dist/components/biz/business/search-bar/variants/filter-search-bar/schema/props.schema.mjs +1 -128
- package/dist/components/biz/business/search-bar/variants/filter-search-bar/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/search-bar/variants/tag-search-bar/defaults/default-props.mjs +1 -15
- package/dist/components/biz/business/search-bar/variants/tag-search-bar/index.mjs +1 -12
- package/dist/components/biz/business/search-bar/variants/tag-search-bar/runtime/client.mjs +1 -58
- package/dist/components/biz/business/search-bar/variants/tag-search-bar/schema/component.mjs +1 -14
- package/dist/components/biz/business/search-bar/variants/tag-search-bar/schema/data.schema.mjs +1 -9
- package/dist/components/biz/business/search-bar/variants/tag-search-bar/schema/event.schema.mjs +1 -38
- package/dist/components/biz/business/search-bar/variants/tag-search-bar/schema/index.mjs +1 -17
- package/dist/components/biz/business/search-bar/variants/tag-search-bar/schema/props.schema.mjs +1 -144
- package/dist/components/biz/business/search-bar/variants/tag-search-bar/schema/style.schema.mjs +1 -7
- package/dist/components/biz/business/search-history/client.mjs +1 -182
- package/dist/components/biz/business/search-history/material.mjs +1 -18
- package/dist/components/biz/business/search-history/schema.mjs +1 -16
- package/dist/components/biz/business/search-history/server.mjs +1 -17
- package/dist/components/biz/business/search-input/client.mjs +1 -115
- package/dist/components/biz/business/search-input/material.mjs +1 -18
- package/dist/components/biz/business/search-input/schema.mjs +1 -11
- package/dist/components/biz/business/search-input/server.mjs +1 -17
- package/dist/components/biz/business/shortcut-grid/client.mjs +1 -86
- package/dist/components/biz/business/shortcut-grid/material.mjs +1 -18
- package/dist/components/biz/business/shortcut-grid/schema.mjs +1 -65
- package/dist/components/biz/business/shortcut-grid/server.mjs +1 -17
- package/dist/components/biz/business/tab-bar/client.mjs +1 -157
- package/dist/components/biz/business/tab-bar/material.mjs +1 -21
- package/dist/components/biz/business/tab-bar/schema.mjs +1 -11
- package/dist/components/biz/business/tab-bar/server.mjs +1 -17
- package/dist/components/biz/business/text-recommend/client.mjs +1 -104
- package/dist/components/biz/business/text-recommend/material.mjs +1 -18
- package/dist/components/biz/business/text-recommend/schema.mjs +1 -25
- package/dist/components/biz/business/text-recommend/server.mjs +1 -18
- package/dist/components/biz/example/button/client.mjs +1 -43
- package/dist/components/biz/example/button/material.mjs +1 -18
- package/dist/components/biz/example/button/schema.mjs +1 -44
- package/dist/components/biz/example/button/server.mjs +1 -32
- package/dist/components/biz/example/button/variants.mjs +1 -22
- package/dist/components/biz/renderer/renderer.mjs +1 -73
- package/dist/components/biz/utils/constants/card-spec.mjs +1 -48
- package/dist/components/biz/utils/helpers/get-channel-list.mjs +1 -14
- package/dist/components/biz/utils/helpers/url.mjs +1 -16
- package/dist/components/biz/utils/schema/data.mjs +1 -22
- package/dist/components/biz/utils/styles/helpers.mjs +1 -84
- package/dist/components/biz/utils/styles/schema.mjs +1 -306
- package/dist/components/biz/utils/transformers/card-grid.mjs +1 -67
- package/dist/components/biz/utils/transformers/data.mjs +1 -171
- package/dist/components/common/analytics-init/analytics-init.mjs +1 -75
- package/dist/components/common/analytics-init/page-lifecycle-tracker.mjs +1 -248
- package/dist/components/common/analytics-init/sensor-init.mjs +1 -126
- package/dist/components/common/at-element/index.mjs +1 -47
- package/dist/components/common/background-preview-modal/background-preview-modal.mjs +1 -73
- package/dist/components/common/blocked-dialog/blocked-dialog.mjs +1 -54
- package/dist/components/common/cards/mini-three-card.mjs +1 -55
- package/dist/components/common/cards/style.module.mjs +24 -12
- package/dist/components/common/collection-popup/create-collection-sheet.mjs +1 -271
- package/dist/components/common/collection-popup/index.mjs +1 -293
- package/dist/components/common/debug-locale-switcher/index.mjs +1 -59
- package/dist/components/common/delete-confirm-dialog/delete-confirm-dialog.mjs +1 -66
- package/dist/components/common/empty/index.mjs +1 -51
- package/dist/components/common/follow-button/index.mjs +1 -133
- package/dist/components/common/follow-button/unfollow-confirm-dialog.mjs +1 -23
- package/dist/components/common/funhub-provider/funhub-provider.mjs +1 -50
- package/dist/components/common/header-nav/client.mjs +1 -51
- package/dist/components/common/icons/add.mjs +1 -21
- package/dist/components/common/icons/comment.mjs +1 -30
- package/dist/components/common/icons/delete.mjs +1 -32
- package/dist/components/common/icons/left-arrow.mjs +1 -15
- package/dist/components/common/icons/more.mjs +1 -30
- package/dist/components/common/icons/right-arrow.mjs +1 -19
- package/dist/components/common/icons/setting.mjs +1 -27
- package/dist/components/common/icons/share.mjs +1 -20
- package/dist/components/common/icons/video.mjs +1 -22
- package/dist/components/common/image-crop-modal/image-crop-modal.mjs +2 -128
- package/dist/components/common/info-card/card-header.mjs +1 -71
- package/dist/components/common/info-card/card-text.mjs +1 -49
- package/dist/components/common/interaction-animations.module.mjs +84 -14
- package/dist/components/common/intl-provider/intl-provider.mjs +1 -21
- package/dist/components/common/keep-scroll-position/index.mjs +1 -39
- package/dist/components/common/list/collection-list/collection-list-item.mjs +1 -139
- package/dist/components/common/list/collection-list/collection-list.mjs +1 -27
- package/dist/components/common/list/collection-list/collection-select-icon.mjs +1 -53
- package/dist/components/common/list/post-list/post-list-item.mjs +1 -54
- package/dist/components/common/list/post-list/post-list.mjs +1 -143
- package/dist/components/common/list/user-activity-list/user-activity-list-actions.mjs +1 -269
- package/dist/components/common/list/user-activity-list/user-activity-list-item.mjs +1 -469
- package/dist/components/common/list/user-activity-list/user-activity-list.mjs +1 -143
- package/dist/components/common/list/video-list/video-list-item.mjs +1 -100
- package/dist/components/common/list/video-list/video-list.mjs +1 -152
- package/dist/components/common/list/waterfall-recommend/recommend-badge-style.mjs +1 -18
- package/dist/components/common/list/waterfall-recommend/waterfall-recommend-display.mjs +1 -26
- package/dist/components/common/list/waterfall-recommend/waterfall-recommend.mjs +1 -183
- package/dist/components/common/locale-sync/locale-sync.mjs +1 -62
- package/dist/components/common/login-dialog/login-dialog.mjs +1 -46
- package/dist/components/common/media-preview/index.mjs +1 -162
- package/dist/components/common/media-preview/video-play.mjs +1 -237
- package/dist/components/common/page-loading/index.mjs +1 -20
- package/dist/components/common/page-skeleton/page-skeleton.mjs +1 -7
- package/dist/components/common/photo-grid/common-photo-grid.mjs +1 -321
- package/dist/components/common/photo-grid/index.mjs +1 -226
- package/dist/components/common/photo-preview/common-photo-preview.mjs +1 -97
- package/dist/components/common/photo-preview/decrypt-loading.mjs +2 -66
- package/dist/components/common/photo-preview/index.mjs +1 -64
- package/dist/components/common/photo-preview/style.mjs +19 -7
- package/dist/components/common/picker/gender-picker/gender-picker.mjs +1 -66
- package/dist/components/common/picker/picker-drawer/picker-drawer.mjs +1 -78
- package/dist/components/common/popup-video/index.mjs +1 -98
- package/dist/components/common/popup-video/popup-video.module.mjs +16 -7
- package/dist/components/common/series-episodes/index.mjs +1 -826
- package/dist/components/common/share-popup/share-content.mjs +1 -155
- package/dist/components/common/share-popup/share-drawer.mjs +1 -100
- package/dist/components/common/share-popup/share-popup.mjs +1 -326
- package/dist/components/common/skeleton/post-list-item-skeleton.mjs +1 -99
- package/dist/components/common/skeleton/user-activity-list-item-skeleton.mjs +1 -146
- package/dist/components/common/skeleton/video-list-item-skeleton.mjs +1 -110
- package/dist/components/common/tab-bar/index.mjs +1 -150
- package/dist/components/common/theme-sync/index.mjs +1 -22
- package/dist/components/common/top-nav-bar/client.mjs +1 -70
- package/dist/components/common/top-nav-bar/fullscreen.mjs +1 -27
- package/dist/components/common/top-nav-bar/index.mjs +1 -29
- package/dist/components/common/top-nav-bar/normal.mjs +1 -20
- package/dist/components/common/user-info-initializer/index.mjs +1 -37
- package/dist/components/common/video-player/create-video.mjs +2 -27
- package/dist/components/common/video-player/index.mjs +5 -700
- package/dist/components/common/video-player/playing-videos.mjs +1 -73
- package/dist/components/common/video-player/preroll-skip-button-content.mjs +1 -20
- package/dist/components/common/video-player/process-m3u8-cache.mjs +1 -281
- package/dist/components/common/video-player/style.module.mjs +260 -7
- package/dist/components/common/video-player/video-blind-ad-overlay.mjs +1 -155
- package/dist/components/common/video-player/video-player-ref-context.mjs +1 -18
- package/dist/components/common/video-player/video-preroll-ad-overlay.mjs +1 -167
- package/dist/components/common/video-player/video-preroll-ad.mjs +1 -187
- package/dist/components/common/wait-loading.mjs +1 -119
- package/dist/components/pages/(follow)/_components/follow-button/index.mjs +1 -80
- package/dist/components/pages/(follow)/_components/header-nav/index.mjs +1 -13
- package/dist/components/pages/(follow)/_components/interaction-tabs/index.mjs +1 -44
- package/dist/components/pages/(follow)/_components/user-list/index.mjs +1 -139
- package/dist/components/pages/(follow)/_components/user-list/user-list-item.mjs +1 -46
- package/dist/components/pages/(follow)/fans/index.mjs +1 -10
- package/dist/components/pages/(follow)/fans/page.mjs +1 -95
- package/dist/components/pages/(follow)/followed/index.mjs +1 -10
- package/dist/components/pages/(follow)/followed/page.mjs +1 -95
- package/dist/components/pages/collection-add/index.mjs +1 -10
- package/dist/components/pages/collection-add/page.mjs +1 -164
- package/dist/components/pages/collection-create/form.mjs +1 -164
- package/dist/components/pages/collection-create/index.mjs +1 -10
- package/dist/components/pages/collection-create/page.mjs +1 -28
- package/dist/components/pages/collection-detail/_components/collection-detail-card.mjs +1 -183
- package/dist/components/pages/collection-detail/_components/collection-detail-video-card.mjs +1 -135
- package/dist/components/pages/collection-detail/detail.mjs +1 -539
- package/dist/components/pages/collection-detail/index.mjs +1 -10
- package/dist/components/pages/collection-detail/page.mjs +1 -18
- package/dist/components/pages/edit/index.mjs +1 -10
- package/dist/components/pages/edit/page.mjs +1 -683
- package/dist/components/pages/feed-series/feed-series-client.mjs +1 -383
- package/dist/components/pages/feed-series/page.mjs +1 -97
- package/dist/components/pages/feedback/_components/feedback-form.mjs +1 -271
- package/dist/components/pages/feedback/index.mjs +1 -10
- package/dist/components/pages/feedback/page.mjs +1 -10
- package/dist/components/pages/fullscreen-feed/index.mjs +1 -10
- package/dist/components/pages/fullscreen-feed/page.mjs +1 -105
- package/dist/components/pages/home/channel-matcher.mjs +1 -30
- package/dist/components/pages/home/client.mjs +1 -149
- package/dist/components/pages/home/index.mjs +1 -59
- package/dist/components/pages/login/agreement-dialog.mjs +1 -104
- package/dist/components/pages/login/auth-guard.mjs +1 -37
- package/dist/components/pages/login/auth-page-styles.mjs +2 -17
- package/dist/components/pages/login/forgot.mjs +1 -136
- package/dist/components/pages/login/index.mjs +1 -107
- package/dist/components/pages/login/login-client.mjs +1 -233
- package/dist/components/pages/login/password.mjs +1 -186
- package/dist/components/pages/login/register.mjs +1 -204
- package/dist/components/pages/login/reset-password.mjs +1 -193
- package/dist/components/pages/login/tracking.mjs +1 -32
- package/dist/components/pages/login/verify.mjs +1 -243
- package/dist/components/pages/post-detail/page.mjs +1 -28
- package/dist/components/pages/post-detail/post-detail-client.mjs +1 -516
- package/dist/components/pages/profile/index.mjs +1 -10
- package/dist/components/pages/profile/page.mjs +1 -28
- package/dist/components/pages/publish/components/collection-card.mjs +1 -49
- package/dist/components/pages/publish/components/collection-popup.mjs +1 -81
- package/dist/components/pages/publish/components/collection.mjs +1 -97
- package/dist/components/pages/publish/components/cover-item.mjs +1 -46
- package/dist/components/pages/publish/components/editor.mjs +1 -208
- package/dist/components/pages/publish/components/header.mjs +1 -31
- package/dist/components/pages/publish/components/material-grid.mjs +1 -52
- package/dist/components/pages/publish/components/material-item.mjs +1 -68
- package/dist/components/pages/publish/components/toolbar.mjs +1 -39
- package/dist/components/pages/publish/components/upload-progress.mjs +1 -53
- package/dist/components/pages/publish/components/video-item.mjs +1 -36
- package/dist/components/pages/publish/constants.mjs +1 -8
- package/dist/components/pages/publish/hooks/use-file-upload.mjs +1 -162
- package/dist/components/pages/publish/page-client.mjs +1 -345
- package/dist/components/pages/publish/page.mjs +1 -11
- package/dist/components/pages/publish/utils/file-upload.mjs +1 -155
- package/dist/components/pages/publish/utils/publish-utils.mjs +1 -11
- package/dist/components/pages/search/hot-recommend.mjs +1 -192
- package/dist/components/pages/search/hot-search.mjs +1 -70
- package/dist/components/pages/search/index.mjs +1 -17
- package/dist/components/pages/search/page-client.mjs +1 -211
- package/dist/components/pages/search/search-result/index.mjs +1 -31
- package/dist/components/pages/search/search-result/search-all.mjs +1 -167
- package/dist/components/pages/search/search-result/search-user.mjs +1 -306
- package/dist/components/pages/search/search-result/search-video-info.mjs +1 -134
- package/dist/components/pages/search/search-result/shared.mjs +1 -114
- package/dist/components/pages/search/style.module.mjs +85 -12
- package/dist/components/pages/search/top-header.mjs +1 -131
- package/dist/components/pages/search/tracking.mjs +1 -51
- package/dist/components/pages/search-result/page-client.mjs +1 -130
- package/dist/components/pages/search-result/search-all.mjs +1 -180
- package/dist/components/pages/search-result/search-empty.mjs +1 -52
- package/dist/components/pages/search-result/search-tab.mjs +1 -95
- package/dist/components/pages/search-result/search-user.mjs +1 -315
- package/dist/components/pages/search-result/search-video-info.mjs +1 -195
- package/dist/components/pages/search-result/shared.mjs +1 -46
- package/dist/components/pages/search-result/top-header.mjs +1 -105
- package/dist/components/pages/search-result/tracking.mjs +1 -39
- package/dist/components/pages/settings/_components/reset-password-drawer.mjs +1 -381
- package/dist/components/pages/settings/_components/settings.mjs +1 -192
- package/dist/components/pages/settings/index.mjs +1 -10
- package/dist/components/pages/settings/page.mjs +1 -13
- package/dist/components/pages/user-follow/_components/follow-no-login.mjs +1 -34
- package/dist/components/pages/user-follow/_components/follow-top-header.mjs +1 -25
- package/dist/components/pages/user-follow/_components/post-tab.mjs +1 -96
- package/dist/components/pages/user-follow/index.mjs +1 -10
- package/dist/components/pages/user-follow/page.mjs +1 -106
- package/dist/components/pages/user-follow/skeleton.mjs +1 -62
- package/dist/components/pages/video-detail/page.mjs +1 -47
- package/dist/components/pages/video-detail/video-detail-client.mjs +1 -395
- package/dist/components/pages/video-list/index.mjs +1 -61
- package/dist/components/pages/video-list/types.mjs +1 -16
- package/dist/components/pages/video-list/video-list-client.mjs +1 -144
- package/dist/components/pages/video-list/video-list-recommend-item.mjs +1 -94
- package/dist/components/pages/video-list/video-list-skeleton.mjs +1 -91
- package/dist/components/ui/accordion.mjs +1 -62
- package/dist/components/ui/alert-dialog.mjs +1 -114
- package/dist/components/ui/alert.mjs +1 -50
- package/dist/components/ui/aspect-ratio.mjs +1 -17
- package/dist/components/ui/avatar.mjs +1 -107
- package/dist/components/ui/badge.mjs +1 -38
- package/dist/components/ui/box.mjs +1 -17
- package/dist/components/ui/breadcrumb.mjs +1 -84
- package/dist/components/ui/button-group.d.mts +1 -1
- package/dist/components/ui/button-group.mjs +1 -49
- package/dist/components/ui/button.d.mts +1 -1
- package/dist/components/ui/button.mjs +1 -50
- package/dist/components/ui/card.mjs +1 -65
- package/dist/components/ui/carousel.mjs +1 -142
- package/dist/components/ui/checkbox.mjs +1 -25
- package/dist/components/ui/collapsible.mjs +1 -31
- package/dist/components/ui/combobox.mjs +1 -185
- package/dist/components/ui/context-menu.mjs +1 -150
- package/dist/components/ui/dialog.mjs +1 -109
- package/dist/components/ui/drawer.mjs +1 -91
- package/dist/components/ui/dropdown-menu.mjs +1 -154
- package/dist/components/ui/empty-icons.mjs +7 -96
- package/dist/components/ui/empty.mjs +1 -95
- package/dist/components/ui/field.d.mts +1 -1
- package/dist/components/ui/field.mjs +1 -131
- package/dist/components/ui/hover-card.mjs +1 -43
- package/dist/components/ui/image.mjs +1 -257
- package/dist/components/ui/infinite-scroll.mjs +1 -168
- package/dist/components/ui/input-group.mjs +1 -90
- package/dist/components/ui/input.mjs +1 -19
- package/dist/components/ui/item.mjs +1 -137
- package/dist/components/ui/kbd.mjs +1 -24
- package/dist/components/ui/label.mjs +1 -18
- package/dist/components/ui/legacy/badge.mjs +1 -80
- package/dist/components/ui/legacy/button.mjs +1 -55
- package/dist/components/ui/legacy/input.mjs +1 -22
- package/dist/components/ui/legacy/popover.mjs +1 -69
- package/dist/components/ui/link.mjs +1 -52
- package/dist/components/ui/list.mjs +5 -221
- package/dist/components/ui/loading.mjs +1 -44
- package/dist/components/ui/mask.mjs +1 -17
- package/dist/components/ui/menubar.mjs +1 -154
- package/dist/components/ui/native-select.mjs +1 -43
- package/dist/components/ui/pagination.mjs +1 -90
- package/dist/components/ui/popover.mjs +1 -73
- package/dist/components/ui/popup.mjs +1 -44
- package/dist/components/ui/progress.mjs +1 -53
- package/dist/components/ui/radio-group.mjs +1 -34
- package/dist/components/ui/rate.mjs +1 -69
- package/dist/components/ui/scroll-area.mjs +1 -43
- package/dist/components/ui/select.mjs +1 -113
- package/dist/components/ui/separator.mjs +1 -20
- package/dist/components/ui/sheet.mjs +1 -109
- package/dist/components/ui/skeleton.mjs +1 -16
- package/dist/components/ui/slider.mjs +1 -46
- package/dist/components/ui/sonner.mjs +1 -34
- package/dist/components/ui/spinner.mjs +1 -18
- package/dist/components/ui/switch.mjs +1 -65
- package/dist/components/ui/table.mjs +1 -78
- package/dist/components/ui/tabs.mjs +1 -54
- package/dist/components/ui/text.mjs +1 -20
- package/dist/components/ui/textarea.mjs +1 -16
- package/dist/components/ui/time.mjs +1 -91
- package/dist/components/ui/toggle-group.mjs +1 -59
- package/dist/components/ui/toggle.mjs +1 -41
- package/dist/components/ui/tooltip.mjs +1 -49
- package/dist/components/ui/wheel-picker.mjs +1 -28
- package/dist/constants/event-key.mjs +1 -18
- package/dist/constants/query-key.mjs +1 -32
- package/dist/constants/revalidate.mjs +1 -9
- package/dist/constants/site.mjs +1 -11
- package/dist/constants/url-prefix.mjs +1 -11
- package/dist/hooks/image-text-recommend.mjs +1 -71
- package/dist/hooks/query/hydration-boundary.mjs +1 -34
- package/dist/hooks/query/use-query.mjs +1 -114
- package/dist/hooks/use-auth.mjs +1 -198
- package/dist/hooks/use-browse-report.mjs +1 -489
- package/dist/hooks/use-card-decoration.mjs +1 -96
- package/dist/hooks/use-content-operate.mjs +1 -526
- package/dist/hooks/use-first-row-height.mjs +1 -105
- package/dist/hooks/use-follow.mjs +1 -69
- package/dist/hooks/use-fullscreen-gestures.mjs +1 -144
- package/dist/hooks/use-interaction-animation.mjs +1 -26
- package/dist/hooks/use-is-client.mjs +1 -20
- package/dist/hooks/use-keyboard-open.mjs +1 -56
- package/dist/hooks/use-like-dislike.mjs +1 -40
- package/dist/hooks/use-min-duration-loading.mjs +1 -63
- package/dist/hooks/use-search-history.mjs +1 -53
- package/dist/hooks/use-sticky.mjs +1 -50
- package/dist/hooks.mjs +1 -17
- package/dist/i18n/locales/en.mjs +3 -836
- package/dist/i18n/locales/zh-CN.mjs +3 -836
- package/dist/i18n/messages.mjs +1 -20
- package/dist/i18n/translator.mjs +1 -38
- package/dist/i18n.mjs +1 -165
- package/dist/materials.mjs +1 -73
- package/dist/node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.mjs +1 -17
- package/dist/pages.mjs +1 -23
- package/dist/seo/build-metadata.mjs +1 -163
- package/dist/seo/config/index.mjs +1 -22
- package/dist/seo/config/page.mjs +6 -301
- package/dist/seo/config/site.mjs +1 -25
- package/dist/seo/constants.mjs +1 -31
- package/dist/seo/helpers.mjs +1 -120
- package/dist/seo/resource-hints.mjs +1 -60
- package/dist/seo/robots.mjs +1 -36
- package/dist/seo/sitemap.mjs +1 -44
- package/dist/seo/structured-data/article.mjs +1 -51
- package/dist/seo/structured-data/common.mjs +1 -60
- package/dist/seo/structured-data/video.mjs +1 -41
- package/dist/seo/viewport.mjs +1 -31
- package/dist/seo.mjs +1 -15
- package/dist/service/advertisement.mjs +1 -88
- package/dist/service/generated/client.mjs +1 -1281
- package/dist/service/generated/tanstack.mjs +1 -1179
- package/dist/service/register-by-verify-email-code.mjs +1 -17
- package/dist/service.mjs +1 -6
- package/dist/store/create-store.mjs +1 -25
- package/dist/store/modules/app-config-store.mjs +1 -28
- package/dist/store/modules/blind-spot-ad-store.mjs +1 -95
- package/dist/store/modules/blocked-modal-store.mjs +1 -30
- package/dist/store/modules/follow-ids-store.mjs +1 -12
- package/dist/store/modules/login-modal-store.mjs +1 -155
- package/dist/store/modules/media-preview-store.mjs +1 -54
- package/dist/store/modules/publish-store.mjs +1 -31
- package/dist/store/modules/use-demo-store.mjs +1 -17
- package/dist/store/modules/user-store.mjs +1 -133
- package/dist/store/modules/video-player-ref-store.mjs +1 -13
- package/dist/store.mjs +1 -12
- package/dist/theme-tokens.mjs +1 -82
- package/dist/types/safe-at-user.mjs +1 -15
- package/dist/types/safe-comment.mjs +1 -30
- package/dist/types/safe-grid.mjs +1 -36
- package/dist/types/safe-replay.mjs +1 -43
- package/dist/types/share.mjs +1 -16
- package/dist/ui.mjs +1 -58
- package/dist/utils/api-collect.mjs +1 -14
- package/dist/utils/browser-fingerprint.mjs +1 -53
- package/dist/utils/channel-storage.mjs +1 -57
- package/dist/utils/cn.mjs +1 -15
- package/dist/utils/common.mjs +1 -311
- package/dist/utils/db.mjs +1 -80
- package/dist/utils/decrypt-image-client.mjs +1 -325
- package/dist/utils/decrypt.worker.mjs +2 -20
- package/dist/utils/device-id.mjs +1 -20
- package/dist/utils/email-validator.mjs +1 -108
- package/dist/utils/event-bus.mjs +1 -33
- package/dist/utils/follow-service.mjs +1 -87
- package/dist/utils/get-res-url.mjs +1 -94
- package/dist/utils/helper.mjs +1 -33
- package/dist/utils/http.mjs +1 -202
- package/dist/utils/image-compression.mjs +1 -59
- package/dist/utils/image-crop.mjs +1 -63
- package/dist/utils/loaders.mjs +1 -51
- package/dist/utils/login-modal-bridge.mjs +1 -65
- package/dist/utils/media.mjs +1 -128
- package/dist/utils/password-validator.mjs +1 -86
- package/dist/utils/request-user-id.mjs +1 -16
- package/dist/utils/s3-uploader.mjs +1 -40
- package/dist/utils/schema/inspector.d.mts +2 -2
- package/dist/utils/schema/material.mjs +1 -24
- package/dist/utils/schema/schema.mjs +1 -207
- package/dist/utils/schema/utils.mjs +1 -27
- package/dist/utils/share-manager.mjs +1 -183
- package/dist/utils/tools.mjs +1 -92
- package/dist/utils/tracking.mjs +1 -183
- package/dist/utils/uint8.mjs +1 -46
- package/dist/utils/upload-file.mjs +1 -429
- package/dist/utils/use-compatible-router.mjs +1 -84
- package/dist/utils.mjs +1 -27
- package/package.json +1 -1
- package/theme.css +1 -1
|
@@ -1,29 +1,2 @@
|
|
|
1
1
|
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
//#region components/biz/basics/card-layout/schema/props.schema.ts
|
|
5
|
-
const propsSchema = {
|
|
6
|
-
cardSpec: {
|
|
7
|
-
type: "enum",
|
|
8
|
-
title: "卡片规格",
|
|
9
|
-
description: "统一管理卡片尺寸、比例、列数和图片方向",
|
|
10
|
-
default: CardSpec.V3_SMALL,
|
|
11
|
-
enum: Object.values(CardSpec),
|
|
12
|
-
enumNames: [
|
|
13
|
-
"横屏 2列",
|
|
14
|
-
"竖屏 3列",
|
|
15
|
-
"竖屏 2列(大图)"
|
|
16
|
-
]
|
|
17
|
-
},
|
|
18
|
-
gap: {
|
|
19
|
-
type: "number",
|
|
20
|
-
title: "间距",
|
|
21
|
-
description: "卡片之间的间距(像素)",
|
|
22
|
-
default: 8,
|
|
23
|
-
minimum: 0,
|
|
24
|
-
maximum: 32
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
//#endregion
|
|
29
|
-
export { propsSchema };
|
|
2
|
+
import{CardSpec as e}from"../../../utils/constants/card-spec.mjs";const t={cardSpec:{type:`enum`,title:`卡片规格`,description:`统一管理卡片尺寸、比例、列数和图片方向`,default:e.V3_SMALL,enum:Object.values(e),enumNames:[`横屏 2列`,`竖屏 3列`,`竖屏 2列(大图)`]},gap:{type:`number`,title:`间距`,description:`卡片之间的间距(像素)`,default:8,minimum:0,maximum:32}};export{t as propsSchema};
|
|
@@ -1,8 +1,2 @@
|
|
|
1
1
|
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
//#region components/biz/basics/card-layout/schema/style.schema.ts
|
|
5
|
-
const styleSchema = { ...commonStyleSchema };
|
|
6
|
-
|
|
7
|
-
//#endregion
|
|
8
|
-
export { styleSchema };
|
|
2
|
+
import{commonStyleSchema as e}from"../../../utils/styles/schema.mjs";const t={...e};export{t as styleSchema};
|
|
@@ -1,269 +1,2 @@
|
|
|
1
1
|
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import { useFullscreenGestures } from "../../../../hooks/use-fullscreen-gestures.mjs";
|
|
5
|
-
import { useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
|
|
6
|
-
import { jsx } from "react/jsx-runtime";
|
|
7
|
-
|
|
8
|
-
//#region components/biz/basics/fullscreen-feed/basic-fullscreen.tsx
|
|
9
|
-
const VIEWPORT_FALLBACK_OFFSET_PX = 0;
|
|
10
|
-
const KEEP_MOUNT_DISTANCE = 1;
|
|
11
|
-
const TRANSITION_MS = 260;
|
|
12
|
-
const WINDOW_RENDER_COUNT = 5;
|
|
13
|
-
/**
|
|
14
|
-
* 获取「固定窗口」渲染的索引列表,避免滚动越久 DOM 越多导致内存线性增长。
|
|
15
|
-
*/
|
|
16
|
-
function getWindowIndices(total, active, windowSize) {
|
|
17
|
-
if (total <= 0 || windowSize <= 0) return [];
|
|
18
|
-
const size = Math.min(windowSize, total);
|
|
19
|
-
let start = Math.max(0, Math.min(active, total - 1)) - Math.floor(size / 2);
|
|
20
|
-
let end = start + size - 1;
|
|
21
|
-
if (start < 0) {
|
|
22
|
-
start = 0;
|
|
23
|
-
end = size - 1;
|
|
24
|
-
}
|
|
25
|
-
if (end > total - 1) {
|
|
26
|
-
end = total - 1;
|
|
27
|
-
start = Math.max(0, end - size + 1);
|
|
28
|
-
}
|
|
29
|
-
return Array.from({ length: end - start + 1 }, (_, i) => start + i);
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* BasicFullscreen
|
|
33
|
-
*
|
|
34
|
-
* - 负责全屏滑动容器(viewport transform + 手势 + 渐进挂载)
|
|
35
|
-
* - 业务内容由 renderItem 注入(视频/帖子等具体渲染由业务组件负责)
|
|
36
|
-
*/
|
|
37
|
-
function BasicFullscreen({ items, activeIndex, className, trackClassName, itemWrapperClassName, style, userInteracted, onUserInteracted, onActiveIndexChange, onViewportIndexChange, onGestureStart, onGestureEnd, onSwipeCancel, renderItem }) {
|
|
38
|
-
const resolvedActiveIndex = useMemo(() => {
|
|
39
|
-
if (items.length <= 0) return activeIndex;
|
|
40
|
-
return Math.max(0, Math.min(activeIndex, items.length - 1));
|
|
41
|
-
}, [activeIndex, items.length]);
|
|
42
|
-
const containerRef = useRef(null);
|
|
43
|
-
const viewportRef = useRef(null);
|
|
44
|
-
const pageHeightRef = useRef(0);
|
|
45
|
-
const activeIndexRef = useRef(resolvedActiveIndex);
|
|
46
|
-
const isAnimatingRef = useRef(false);
|
|
47
|
-
const animTimerRef = useRef(null);
|
|
48
|
-
const settleTimerRef = useRef(null);
|
|
49
|
-
const [renderActiveIndex, setRenderActiveIndex] = useState(resolvedActiveIndex);
|
|
50
|
-
const [settledIndex, setSettledIndex] = useState(activeIndex);
|
|
51
|
-
const getPageHeight = useCallback(() => {
|
|
52
|
-
const h = pageHeightRef.current || containerRef.current?.clientHeight || 0;
|
|
53
|
-
if (h > 0) return h;
|
|
54
|
-
if (typeof window === "undefined") return 0;
|
|
55
|
-
return Math.max(0, window.innerHeight - VIEWPORT_FALLBACK_OFFSET_PX);
|
|
56
|
-
}, []);
|
|
57
|
-
const applyViewportTransform = useCallback(({ dy, withTransition, index }) => {
|
|
58
|
-
const track = viewportRef.current;
|
|
59
|
-
if (!track) return;
|
|
60
|
-
const height = getPageHeight();
|
|
61
|
-
const y = -(index ?? activeIndexRef.current) * height + dy;
|
|
62
|
-
if (withTransition) {
|
|
63
|
-
track.style.transition = `transform ${TRANSITION_MS}ms ease`;
|
|
64
|
-
window.requestAnimationFrame(() => {
|
|
65
|
-
track.style.transform = `translate3d(0, ${y}px, 0)`;
|
|
66
|
-
});
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
track.style.transition = "none";
|
|
70
|
-
track.style.transform = `translate3d(0, ${y}px, 0)`;
|
|
71
|
-
}, [getPageHeight]);
|
|
72
|
-
useLayoutEffect(() => {
|
|
73
|
-
const container = containerRef.current;
|
|
74
|
-
if (!container) return;
|
|
75
|
-
const update = () => {
|
|
76
|
-
const nextHeight = container.clientHeight || 0;
|
|
77
|
-
const prevHeight = pageHeightRef.current;
|
|
78
|
-
pageHeightRef.current = nextHeight;
|
|
79
|
-
if (prevHeight === nextHeight) return;
|
|
80
|
-
applyViewportTransform({
|
|
81
|
-
dy: 0,
|
|
82
|
-
withTransition: false,
|
|
83
|
-
index: activeIndexRef.current
|
|
84
|
-
});
|
|
85
|
-
};
|
|
86
|
-
update();
|
|
87
|
-
const resizeObserver = new ResizeObserver(() => update());
|
|
88
|
-
resizeObserver.observe(container);
|
|
89
|
-
window.addEventListener("resize", update);
|
|
90
|
-
return () => {
|
|
91
|
-
window.removeEventListener("resize", update);
|
|
92
|
-
resizeObserver.disconnect();
|
|
93
|
-
};
|
|
94
|
-
}, [applyViewportTransform]);
|
|
95
|
-
useEffect(() => {
|
|
96
|
-
let retryTimer = null;
|
|
97
|
-
let retry = 0;
|
|
98
|
-
const maxRetries = 10;
|
|
99
|
-
const setInitialPosition = () => {
|
|
100
|
-
if (items.length === 0) return;
|
|
101
|
-
if (!viewportRef.current && retry < maxRetries) {
|
|
102
|
-
retry += 1;
|
|
103
|
-
retryTimer = window.setTimeout(setInitialPosition, 50);
|
|
104
|
-
return;
|
|
105
|
-
}
|
|
106
|
-
applyViewportTransform({
|
|
107
|
-
dy: 0,
|
|
108
|
-
withTransition: false,
|
|
109
|
-
index: activeIndexRef.current
|
|
110
|
-
});
|
|
111
|
-
};
|
|
112
|
-
setInitialPosition();
|
|
113
|
-
return () => {
|
|
114
|
-
if (retryTimer) window.clearTimeout(retryTimer);
|
|
115
|
-
};
|
|
116
|
-
}, [applyViewportTransform, items.length]);
|
|
117
|
-
useEffect(() => {
|
|
118
|
-
activeIndexRef.current = resolvedActiveIndex;
|
|
119
|
-
applyViewportTransform({
|
|
120
|
-
dy: 0,
|
|
121
|
-
withTransition: true,
|
|
122
|
-
index: resolvedActiveIndex
|
|
123
|
-
});
|
|
124
|
-
setRenderActiveIndex(resolvedActiveIndex);
|
|
125
|
-
if (settleTimerRef.current) {
|
|
126
|
-
window.clearTimeout(settleTimerRef.current);
|
|
127
|
-
settleTimerRef.current = null;
|
|
128
|
-
}
|
|
129
|
-
const targetIndex = resolvedActiveIndex;
|
|
130
|
-
settleTimerRef.current = window.setTimeout(() => {
|
|
131
|
-
settleTimerRef.current = null;
|
|
132
|
-
if (activeIndexRef.current !== targetIndex) return;
|
|
133
|
-
setSettledIndex(targetIndex);
|
|
134
|
-
}, TRANSITION_MS);
|
|
135
|
-
}, [applyViewportTransform, resolvedActiveIndex]);
|
|
136
|
-
useEffect(() => {
|
|
137
|
-
return () => {
|
|
138
|
-
if (animTimerRef.current) window.clearTimeout(animTimerRef.current);
|
|
139
|
-
if (settleTimerRef.current) window.clearTimeout(settleTimerRef.current);
|
|
140
|
-
};
|
|
141
|
-
}, []);
|
|
142
|
-
useEffect(() => {
|
|
143
|
-
const handleFirstPointer = () => onUserInteracted();
|
|
144
|
-
if (!userInteracted) window.addEventListener("pointerdown", handleFirstPointer, { once: true });
|
|
145
|
-
return () => {
|
|
146
|
-
window.removeEventListener("pointerdown", handleFirstPointer);
|
|
147
|
-
};
|
|
148
|
-
}, [onUserInteracted, userInteracted]);
|
|
149
|
-
const goTo = useCallback((nextIndex, direction) => {
|
|
150
|
-
const clamped = Math.max(0, Math.min(nextIndex, items.length - 1));
|
|
151
|
-
const prevIndex = activeIndexRef.current;
|
|
152
|
-
activeIndexRef.current = clamped;
|
|
153
|
-
setRenderActiveIndex(clamped);
|
|
154
|
-
applyViewportTransform({
|
|
155
|
-
dy: 0,
|
|
156
|
-
withTransition: true,
|
|
157
|
-
index: clamped
|
|
158
|
-
});
|
|
159
|
-
if (clamped !== prevIndex) {
|
|
160
|
-
onViewportIndexChange?.(clamped);
|
|
161
|
-
onActiveIndexChange(clamped, direction);
|
|
162
|
-
}
|
|
163
|
-
}, [
|
|
164
|
-
applyViewportTransform,
|
|
165
|
-
items.length,
|
|
166
|
-
onActiveIndexChange,
|
|
167
|
-
onViewportIndexChange
|
|
168
|
-
]);
|
|
169
|
-
const swipeNext = useCallback(() => {
|
|
170
|
-
if (items.length === 0) return;
|
|
171
|
-
const nextIndex = Math.min(activeIndexRef.current + 1, items.length - 1);
|
|
172
|
-
isAnimatingRef.current = true;
|
|
173
|
-
if (animTimerRef.current) {
|
|
174
|
-
window.clearTimeout(animTimerRef.current);
|
|
175
|
-
animTimerRef.current = null;
|
|
176
|
-
}
|
|
177
|
-
goTo(nextIndex, "next");
|
|
178
|
-
animTimerRef.current = window.setTimeout(() => {
|
|
179
|
-
isAnimatingRef.current = false;
|
|
180
|
-
animTimerRef.current = null;
|
|
181
|
-
}, TRANSITION_MS);
|
|
182
|
-
}, [goTo, items.length]);
|
|
183
|
-
const swipePrev = useCallback(() => {
|
|
184
|
-
if (items.length === 0) return;
|
|
185
|
-
const nextIndex = Math.max(activeIndexRef.current - 1, 0);
|
|
186
|
-
isAnimatingRef.current = true;
|
|
187
|
-
if (animTimerRef.current) {
|
|
188
|
-
window.clearTimeout(animTimerRef.current);
|
|
189
|
-
animTimerRef.current = null;
|
|
190
|
-
}
|
|
191
|
-
goTo(nextIndex, "prev");
|
|
192
|
-
animTimerRef.current = window.setTimeout(() => {
|
|
193
|
-
isAnimatingRef.current = false;
|
|
194
|
-
animTimerRef.current = null;
|
|
195
|
-
}, TRANSITION_MS);
|
|
196
|
-
}, [goTo, items.length]);
|
|
197
|
-
const { handlePointerDown, handlePointerMove, handlePointerUpOrCancel } = useFullscreenGestures({
|
|
198
|
-
getPageHeight,
|
|
199
|
-
isAnimating: () => isAnimatingRef.current,
|
|
200
|
-
applyTransform: ({ dy, withTransition }) => applyViewportTransform({
|
|
201
|
-
dy,
|
|
202
|
-
withTransition
|
|
203
|
-
}),
|
|
204
|
-
onSwipeNext: swipeNext,
|
|
205
|
-
onSwipePrev: swipePrev,
|
|
206
|
-
onGestureStart: (payload) => onGestureStart?.({
|
|
207
|
-
activeIndex: activeIndexRef.current,
|
|
208
|
-
pointerType: payload.pointerType
|
|
209
|
-
}),
|
|
210
|
-
onGestureEnd: (payload) => onGestureEnd?.({
|
|
211
|
-
activeIndex: activeIndexRef.current,
|
|
212
|
-
lockAxis: payload.lockAxis,
|
|
213
|
-
minDy: payload.minDy,
|
|
214
|
-
maxDy: payload.maxDy
|
|
215
|
-
}),
|
|
216
|
-
onSwipeCancel: (payload) => onSwipeCancel?.({
|
|
217
|
-
activeIndex: activeIndexRef.current,
|
|
218
|
-
reason: payload.reason
|
|
219
|
-
})
|
|
220
|
-
});
|
|
221
|
-
const handlePointerStart = useCallback((event) => {
|
|
222
|
-
if (!userInteracted) onUserInteracted();
|
|
223
|
-
handlePointerDown(event);
|
|
224
|
-
}, [
|
|
225
|
-
handlePointerDown,
|
|
226
|
-
onUserInteracted,
|
|
227
|
-
userInteracted
|
|
228
|
-
]);
|
|
229
|
-
const indices = useMemo(() => getWindowIndices(items.length, renderActiveIndex, WINDOW_RENDER_COUNT), [items.length, renderActiveIndex]);
|
|
230
|
-
if (items.length === 0) return null;
|
|
231
|
-
return /* @__PURE__ */ jsx("div", {
|
|
232
|
-
ref: containerRef,
|
|
233
|
-
className,
|
|
234
|
-
style,
|
|
235
|
-
onPointerDown: handlePointerStart,
|
|
236
|
-
onPointerMove: handlePointerMove,
|
|
237
|
-
onPointerUp: handlePointerUpOrCancel,
|
|
238
|
-
onPointerCancel: handlePointerUpOrCancel,
|
|
239
|
-
children: /* @__PURE__ */ jsx("div", {
|
|
240
|
-
ref: viewportRef,
|
|
241
|
-
className: trackClassName,
|
|
242
|
-
children: indices.map((idx) => {
|
|
243
|
-
const item = items[idx];
|
|
244
|
-
const isInitialized = true;
|
|
245
|
-
const shouldMount = Math.abs(idx - renderActiveIndex) <= KEEP_MOUNT_DISTANCE;
|
|
246
|
-
const isActive = idx === renderActiveIndex;
|
|
247
|
-
const isSettledActive = idx === settledIndex;
|
|
248
|
-
return /* @__PURE__ */ jsx("div", {
|
|
249
|
-
className: `absolute inset-0 w-full h-full ${itemWrapperClassName || ""}`,
|
|
250
|
-
style: { top: `${idx * 100}%` },
|
|
251
|
-
children: renderItem({
|
|
252
|
-
item,
|
|
253
|
-
index: idx,
|
|
254
|
-
activeIndex: renderActiveIndex,
|
|
255
|
-
isActive,
|
|
256
|
-
isSettledActive,
|
|
257
|
-
shouldMount,
|
|
258
|
-
isInitialized,
|
|
259
|
-
swipeNext,
|
|
260
|
-
swipePrev
|
|
261
|
-
})
|
|
262
|
-
}, idx);
|
|
263
|
-
})
|
|
264
|
-
})
|
|
265
|
-
});
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
//#endregion
|
|
269
|
-
export { BasicFullscreen };
|
|
2
|
+
"use client";import{useFullscreenGestures as e}from"../../../../hooks/use-fullscreen-gestures.mjs";import{useCallback as t,useEffect as n,useLayoutEffect as r,useMemo as i,useRef as a,useState as o}from"react";import{jsx as s}from"react/jsx-runtime";function c(e,t,n){if(e<=0||n<=0)return[];let r=Math.min(n,e),i=Math.max(0,Math.min(t,e-1))-Math.floor(r/2),a=i+r-1;return i<0&&(i=0,a=r-1),a>e-1&&(a=e-1,i=Math.max(0,a-r+1)),Array.from({length:a-i+1},(e,t)=>i+t)}function l({items:l,activeIndex:u,className:d,trackClassName:f,itemWrapperClassName:p,style:m,userInteracted:h,onUserInteracted:g,onActiveIndexChange:_,onViewportIndexChange:v,onGestureStart:y,onGestureEnd:b,onSwipeCancel:x,renderItem:S}){let C=i(()=>l.length<=0?u:Math.max(0,Math.min(u,l.length-1)),[u,l.length]),w=a(null),T=a(null),E=a(0),D=a(C),O=a(!1),k=a(null),A=a(null),[j,M]=o(C),[N,P]=o(u),F=t(()=>{let e=E.current||w.current?.clientHeight||0;return e>0?e:typeof window>`u`?0:Math.max(0,window.innerHeight-0)},[]),I=t(({dy:e,withTransition:t,index:n})=>{let r=T.current;if(!r)return;let i=F(),a=-(n??D.current)*i+e;if(t){r.style.transition=`transform 260ms ease`,window.requestAnimationFrame(()=>{r.style.transform=`translate3d(0, ${a}px, 0)`});return}r.style.transition=`none`,r.style.transform=`translate3d(0, ${a}px, 0)`},[F]);r(()=>{let e=w.current;if(!e)return;let t=()=>{let t=e.clientHeight||0,n=E.current;E.current=t,n!==t&&I({dy:0,withTransition:!1,index:D.current})};t();let n=new ResizeObserver(()=>t());return n.observe(e),window.addEventListener(`resize`,t),()=>{window.removeEventListener(`resize`,t),n.disconnect()}},[I]),n(()=>{let e=null,t=0,n=()=>{if(l.length!==0){if(!T.current&&t<10){t+=1,e=window.setTimeout(n,50);return}I({dy:0,withTransition:!1,index:D.current})}};return n(),()=>{e&&window.clearTimeout(e)}},[I,l.length]),n(()=>{D.current=C,I({dy:0,withTransition:!0,index:C}),M(C),A.current&&=(window.clearTimeout(A.current),null);let e=C;A.current=window.setTimeout(()=>{A.current=null,D.current===e&&P(e)},260)},[I,C]),n(()=>()=>{k.current&&window.clearTimeout(k.current),A.current&&window.clearTimeout(A.current)},[]),n(()=>{let e=()=>g();return h||window.addEventListener(`pointerdown`,e,{once:!0}),()=>{window.removeEventListener(`pointerdown`,e)}},[g,h]);let L=t((e,t)=>{let n=Math.max(0,Math.min(e,l.length-1)),r=D.current;D.current=n,M(n),I({dy:0,withTransition:!0,index:n}),n!==r&&(v?.(n),_(n,t))},[I,l.length,_,v]),R=t(()=>{if(l.length===0)return;let e=Math.min(D.current+1,l.length-1);O.current=!0,k.current&&=(window.clearTimeout(k.current),null),L(e,`next`),k.current=window.setTimeout(()=>{O.current=!1,k.current=null},260)},[L,l.length]),z=t(()=>{if(l.length===0)return;let e=Math.max(D.current-1,0);O.current=!0,k.current&&=(window.clearTimeout(k.current),null),L(e,`prev`),k.current=window.setTimeout(()=>{O.current=!1,k.current=null},260)},[L,l.length]),{handlePointerDown:B,handlePointerMove:V,handlePointerUpOrCancel:H}=e({getPageHeight:F,isAnimating:()=>O.current,applyTransform:({dy:e,withTransition:t})=>I({dy:e,withTransition:t}),onSwipeNext:R,onSwipePrev:z,onGestureStart:e=>y?.({activeIndex:D.current,pointerType:e.pointerType}),onGestureEnd:e=>b?.({activeIndex:D.current,lockAxis:e.lockAxis,minDy:e.minDy,maxDy:e.maxDy}),onSwipeCancel:e=>x?.({activeIndex:D.current,reason:e.reason})}),U=t(e=>{h||g(),B(e)},[B,g,h]),W=i(()=>c(l.length,j,5),[l.length,j]);return l.length===0?null:s(`div`,{ref:w,className:d,style:m,onPointerDown:U,onPointerMove:V,onPointerUp:H,onPointerCancel:H,children:s(`div`,{ref:T,className:f,children:W.map(e=>{let t=l[e],n=Math.abs(e-j)<=1,r=e===j,i=e===N;return s(`div`,{className:`absolute inset-0 w-full h-full ${p||``}`,style:{top:`${e*100}%`},children:S({item:t,index:e,activeIndex:j,isActive:r,isSettledActive:i,shouldMount:n,isInitialized:!0,swipeNext:R,swipePrev:z})},e)})})})}export{l as BasicFullscreen};
|
|
@@ -1,12 +1,2 @@
|
|
|
1
1
|
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* BasicFullscreenFeed 默认 Props 配置
|
|
5
|
-
*/
|
|
6
|
-
const defaultProps = {
|
|
7
|
-
autoNext: true,
|
|
8
|
-
loop: true
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
//#endregion
|
|
12
|
-
export { defaultProps };
|
|
2
|
+
const e={autoNext:!0,loop:!0};export{e as defaultProps};
|
|
@@ -1,13 +1,2 @@
|
|
|
1
1
|
|
|
2
|
-
import
|
|
3
|
-
import { defaultProps } from "./defaults/default-props.mjs";
|
|
4
|
-
import { schema } from "./schema/index.mjs";
|
|
5
|
-
|
|
6
|
-
//#region components/biz/basics/fullscreen-feed/index.ts
|
|
7
|
-
/**
|
|
8
|
-
* BasicFullscreenFeed 组件统一导出入口
|
|
9
|
-
*/
|
|
10
|
-
var fullscreen_feed_default = FullscreenFeedClient;
|
|
11
|
-
|
|
12
|
-
//#endregion
|
|
13
|
-
export { fullscreen_feed_default as default };
|
|
2
|
+
import e from"./runtime/client.mjs";import{defaultProps as t}from"./defaults/default-props.mjs";import{schema as n}from"./schema/index.mjs";var r=e;export{r as default};
|
|
@@ -1,98 +1,2 @@
|
|
|
1
1
|
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
//#region components/biz/basics/fullscreen-feed/runtime/adapters.ts
|
|
5
|
-
const DEFAULT_STATIC = {
|
|
6
|
-
browse_cnt: 0,
|
|
7
|
-
collect_cnt: 0,
|
|
8
|
-
comment_cnt: 0,
|
|
9
|
-
like_cnt: 0,
|
|
10
|
-
share_cnt: 0,
|
|
11
|
-
dislike_cnt: 0
|
|
12
|
-
};
|
|
13
|
-
/**
|
|
14
|
-
* 将新 API 响应转换为 SafeInformationType。
|
|
15
|
-
*
|
|
16
|
-
* 注意:这里尽量做字段兜底,不要在 controller 里到处写 undefined 判断。
|
|
17
|
-
*/
|
|
18
|
-
function adaptFeedItemToSafeInformation(item) {
|
|
19
|
-
return {
|
|
20
|
-
...item,
|
|
21
|
-
links: Array.isArray(item.links) ? item.links : [],
|
|
22
|
-
static: item.static ? {
|
|
23
|
-
...DEFAULT_STATIC,
|
|
24
|
-
...item.static
|
|
25
|
-
} : { ...DEFAULT_STATIC }
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
function pickPoster(info) {
|
|
29
|
-
const preview = info.preview_images?.find(Boolean);
|
|
30
|
-
if (preview) {
|
|
31
|
-
if (typeof preview === "string") return preview;
|
|
32
|
-
const media = preview;
|
|
33
|
-
return media.is_video ? media.cover_image || media.media_url || "" : media.media_url || "";
|
|
34
|
-
}
|
|
35
|
-
if (info.img_y) return info.img_y;
|
|
36
|
-
if (info.img_x) return info.img_x;
|
|
37
|
-
return "";
|
|
38
|
-
}
|
|
39
|
-
function buildResolution(_info) {
|
|
40
|
-
return "";
|
|
41
|
-
}
|
|
42
|
-
function buildHlsList(links) {
|
|
43
|
-
return (links || []).map((item, index) => {
|
|
44
|
-
const url = item.m3u8_url;
|
|
45
|
-
if (!url) return null;
|
|
46
|
-
const text = item.name;
|
|
47
|
-
if (!text) return null;
|
|
48
|
-
return {
|
|
49
|
-
text,
|
|
50
|
-
url,
|
|
51
|
-
definition: "",
|
|
52
|
-
isDefault: index === 0
|
|
53
|
-
};
|
|
54
|
-
}).filter(Boolean);
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* 将 SafeInformationType 标准化为 FullscreenFeed 可渲染条目。
|
|
58
|
-
*
|
|
59
|
-
* 默认策略:优先 video(有播放地址),否则 banner(有图片)。
|
|
60
|
-
*/
|
|
61
|
-
function normalizeToFeedItem(info) {
|
|
62
|
-
const poster = pickPoster(info);
|
|
63
|
-
const resolution = buildResolution(info);
|
|
64
|
-
const hlsList = buildHlsList(info.links);
|
|
65
|
-
const videoUrl = hlsList[0]?.url;
|
|
66
|
-
if (videoUrl) return {
|
|
67
|
-
kind: "video",
|
|
68
|
-
id: info.id,
|
|
69
|
-
title: info.name,
|
|
70
|
-
poster,
|
|
71
|
-
videoUrl,
|
|
72
|
-
resolution,
|
|
73
|
-
hlsList,
|
|
74
|
-
originalData: info
|
|
75
|
-
};
|
|
76
|
-
return null;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* 剧集场景:当某一集缺少可播放地址时,仍给出一个 video item(url 可能为空),用于占位。
|
|
80
|
-
*/
|
|
81
|
-
function normalizeToSeriesFeedItem(info) {
|
|
82
|
-
const normalized = normalizeToFeedItem(info);
|
|
83
|
-
if (normalized) return normalized;
|
|
84
|
-
const hlsList = buildHlsList(info.links);
|
|
85
|
-
return {
|
|
86
|
-
kind: "video",
|
|
87
|
-
id: info.id,
|
|
88
|
-
title: info.name,
|
|
89
|
-
poster: pickPoster(info),
|
|
90
|
-
videoUrl: hlsList[0]?.url ?? "",
|
|
91
|
-
resolution: buildResolution(info),
|
|
92
|
-
hlsList,
|
|
93
|
-
originalData: info
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
//#endregion
|
|
98
|
-
export { adaptFeedItemToSafeInformation, normalizeToFeedItem, normalizeToSeriesFeedItem };
|
|
2
|
+
"use client";const e={browse_cnt:0,collect_cnt:0,comment_cnt:0,like_cnt:0,share_cnt:0,dislike_cnt:0};function t(t){return{...t,links:Array.isArray(t.links)?t.links:[],static:t.static?{...e,...t.static}:{...e}}}function n(e){let t=e.preview_images?.find(Boolean);if(t){if(typeof t==`string`)return t;let e=t;return e.is_video?e.cover_image||e.media_url||``:e.media_url||``}return e.img_y?e.img_y:e.img_x?e.img_x:``}function r(e){return``}function i(e){return(e||[]).map((e,t)=>{let n=e.m3u8_url;if(!n)return null;let r=e.name;return r?{text:r,url:n,definition:``,isDefault:t===0}:null}).filter(Boolean)}function a(e){let t=n(e),a=r(e),o=i(e.links),s=o[0]?.url;return s?{kind:`video`,id:e.id,title:e.name,poster:t,videoUrl:s,resolution:a,hlsList:o,originalData:e}:null}function o(e){let t=a(e);if(t)return t;let o=i(e.links);return{kind:`video`,id:e.id,title:e.name,poster:n(e),videoUrl:o[0]?.url??``,resolution:r(e),hlsList:o,originalData:e}}export{t as adaptFeedItemToSafeInformation,a as normalizeToFeedItem,o as normalizeToSeriesFeedItem};
|
|
@@ -1,126 +1,2 @@
|
|
|
1
1
|
|
|
2
|
-
import
|
|
3
|
-
import styles_module_default from "./styles.module.mjs";
|
|
4
|
-
import { useLayoutEffect, useRef, useState } from "react";
|
|
5
|
-
import { ChevronsDown, ListVideo } from "lucide-react";
|
|
6
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
-
import { useTranslations } from "next-intl";
|
|
8
|
-
|
|
9
|
-
//#region components/biz/basics/fullscreen-feed/runtime/bottom-info.tsx
|
|
10
|
-
/**
|
|
11
|
-
* 底部信息展示区域,包含作者昵称、简介以及剧集/下一条入口
|
|
12
|
-
*/
|
|
13
|
-
function BottomInfo({ information, navigation, isControlsVisible, isPost = false, onUserNavigate, onNextClick }) {
|
|
14
|
-
const t = useTranslations("components.biz.basics.fullscreenFeed.runtime");
|
|
15
|
-
const description = information.description || information.name || "";
|
|
16
|
-
const authorName = information.author?.nick_name || "";
|
|
17
|
-
const authorId = information.author?.user_id || "";
|
|
18
|
-
const isSeries = (information?.episode_cnt ?? 0) > 1;
|
|
19
|
-
const shouldShowAction = isSeries || Boolean(navigation.nextItemText);
|
|
20
|
-
const [isExpanded, setIsExpanded] = useState(false);
|
|
21
|
-
const [canExpand, setCanExpand] = useState(false);
|
|
22
|
-
const descriptionRef = useRef(null);
|
|
23
|
-
useLayoutEffect(() => {
|
|
24
|
-
if (isExpanded) return;
|
|
25
|
-
if (!descriptionRef.current) return;
|
|
26
|
-
descriptionRef.current.scrollTop = 0;
|
|
27
|
-
}, [description, isExpanded]);
|
|
28
|
-
useLayoutEffect(() => {
|
|
29
|
-
if (!isPost || isExpanded) return;
|
|
30
|
-
const el = descriptionRef.current;
|
|
31
|
-
if (!el) return;
|
|
32
|
-
const measure = () => {
|
|
33
|
-
setCanExpand(el.scrollHeight - el.clientHeight > 1);
|
|
34
|
-
};
|
|
35
|
-
measure();
|
|
36
|
-
if (typeof ResizeObserver === "undefined") return;
|
|
37
|
-
const ro = new ResizeObserver(() => measure());
|
|
38
|
-
ro.observe(el);
|
|
39
|
-
return () => ro.disconnect();
|
|
40
|
-
}, [
|
|
41
|
-
description,
|
|
42
|
-
isExpanded,
|
|
43
|
-
isPost
|
|
44
|
-
]);
|
|
45
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
46
|
-
className: `absolute bottom-0 left-0 right-[56px] p-4 text-white z-[21] ${styles_module_default.bottomInfoTransition} ${isControlsVisible ? styles_module_default.controlsVisible : ""}`,
|
|
47
|
-
children: [
|
|
48
|
-
authorName && /* @__PURE__ */ jsxs("div", {
|
|
49
|
-
className: "text-[16px] font-bold mb-3 line-clamp-1 cursor-pointer",
|
|
50
|
-
onClick: (event) => {
|
|
51
|
-
event.stopPropagation();
|
|
52
|
-
if (authorId) onUserNavigate?.(authorId);
|
|
53
|
-
},
|
|
54
|
-
children: ["@", authorName]
|
|
55
|
-
}),
|
|
56
|
-
/* @__PURE__ */ jsx("div", {
|
|
57
|
-
ref: descriptionRef,
|
|
58
|
-
className: `text-[16px] leading-[24px] mb-3 ${isPost ? isExpanded ? "max-h-[40vh] overflow-y-auto pr-2" : "line-clamp-2" : "line-clamp-2"}`,
|
|
59
|
-
onWheel: (event) => {
|
|
60
|
-
if (!isPost || !isExpanded) return;
|
|
61
|
-
event.stopPropagation();
|
|
62
|
-
},
|
|
63
|
-
onTouchStart: (event) => {
|
|
64
|
-
if (!isPost || !isExpanded) return;
|
|
65
|
-
event.stopPropagation();
|
|
66
|
-
},
|
|
67
|
-
onTouchMove: (event) => {
|
|
68
|
-
if (!isPost || !isExpanded) return;
|
|
69
|
-
event.stopPropagation();
|
|
70
|
-
},
|
|
71
|
-
onPointerDown: (event) => {
|
|
72
|
-
if (!isPost || !isExpanded) return;
|
|
73
|
-
event.stopPropagation();
|
|
74
|
-
},
|
|
75
|
-
onPointerMove: (event) => {
|
|
76
|
-
if (!isPost || !isExpanded) return;
|
|
77
|
-
event.stopPropagation();
|
|
78
|
-
},
|
|
79
|
-
children: /* @__PURE__ */ jsx(AtUserText, {
|
|
80
|
-
text: description,
|
|
81
|
-
atUsers: []
|
|
82
|
-
})
|
|
83
|
-
}),
|
|
84
|
-
isPost && canExpand && /* @__PURE__ */ jsx("button", {
|
|
85
|
-
type: "button",
|
|
86
|
-
className: "mb-3 text-theme5 inline-flex items-center justify-center h-[28px] px-3 rounded-full bg-white/15 text-xs font-medium backdrop-blur",
|
|
87
|
-
onClick: (event) => {
|
|
88
|
-
event.stopPropagation();
|
|
89
|
-
setIsExpanded((prev) => !prev);
|
|
90
|
-
},
|
|
91
|
-
children: isExpanded ? t("bottomInfo.collapse") : t("bottomInfo.expand")
|
|
92
|
-
}),
|
|
93
|
-
shouldShowAction && /* @__PURE__ */ jsxs("button", {
|
|
94
|
-
type: "button",
|
|
95
|
-
className: "h-[38px] flex items-center justify-center bg-white/20 rounded-[8px] gap-2 cursor-pointer px-4 text-sm font-medium backdrop-blur w-full",
|
|
96
|
-
onClick: (event) => {
|
|
97
|
-
event.stopPropagation();
|
|
98
|
-
if (isSeries) {
|
|
99
|
-
navigation.onSeriesClick?.();
|
|
100
|
-
return;
|
|
101
|
-
}
|
|
102
|
-
onNextClick?.();
|
|
103
|
-
},
|
|
104
|
-
children: [isSeries ? /* @__PURE__ */ jsx(ListVideo, { className: "w-6 h-6 shrink-0" }) : /* @__PURE__ */ jsx(ChevronsDown, { className: "w-6 h-6 shrink-0" }), /* @__PURE__ */ jsx("span", {
|
|
105
|
-
className: "opacity-90 whitespace-nowrap overflow-hidden text-ellipsis",
|
|
106
|
-
children: isSeries ? (() => {
|
|
107
|
-
const parentTitle = information.name || "";
|
|
108
|
-
const displayTitle = parentTitle.length > 10 ? `${parentTitle.slice(0, 10)}...` : parentTitle;
|
|
109
|
-
const episodeName = information.episode_name || "";
|
|
110
|
-
return episodeName ? t("bottomInfo.seriesActionWithEpisode", {
|
|
111
|
-
title: displayTitle,
|
|
112
|
-
episodeName
|
|
113
|
-
}) : t("bottomInfo.seriesAction", { title: displayTitle });
|
|
114
|
-
})() : navigation.nextItemText ? /* @__PURE__ */ jsx(AtUserText, {
|
|
115
|
-
text: navigation.nextItemText,
|
|
116
|
-
atUsers: [],
|
|
117
|
-
enableNavigation: false
|
|
118
|
-
}) : t("bottomInfo.nextItem")
|
|
119
|
-
})]
|
|
120
|
-
})
|
|
121
|
-
]
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
//#endregion
|
|
126
|
-
export { BottomInfo };
|
|
2
|
+
import e from"../../../../common/at-element/index.mjs";import t from"./styles.module.mjs";import{useLayoutEffect as n,useRef as r,useState as i}from"react";import{ChevronsDown as a,ListVideo as o}from"lucide-react";import{jsx as s,jsxs as c}from"react/jsx-runtime";import{useTranslations as l}from"next-intl";function u({information:u,navigation:d,isControlsVisible:f,isPost:p=!1,onUserNavigate:m,onNextClick:h}){let g=l(`components.biz.basics.fullscreenFeed.runtime`),_=u.description||u.name||``,v=u.author?.nick_name||``,y=u.author?.user_id||``,b=(u?.episode_cnt??0)>1,x=b||!!d.nextItemText,[S,C]=i(!1),[w,T]=i(!1),E=r(null);return n(()=>{S||E.current&&(E.current.scrollTop=0)},[_,S]),n(()=>{if(!p||S)return;let e=E.current;if(!e)return;let t=()=>{T(e.scrollHeight-e.clientHeight>1)};if(t(),typeof ResizeObserver>`u`)return;let n=new ResizeObserver(()=>t());return n.observe(e),()=>n.disconnect()},[_,S,p]),c(`div`,{className:`absolute bottom-0 left-0 right-[56px] p-4 text-white z-[21] ${t.bottomInfoTransition} ${f?t.controlsVisible:``}`,children:[v&&c(`div`,{className:`text-[16px] font-bold mb-3 line-clamp-1 cursor-pointer`,onClick:e=>{e.stopPropagation(),y&&m?.(y)},children:[`@`,v]}),s(`div`,{ref:E,className:`text-[16px] leading-[24px] mb-3 ${p&&S?`max-h-[40vh] overflow-y-auto pr-2`:`line-clamp-2`}`,onWheel:e=>{!p||!S||e.stopPropagation()},onTouchStart:e=>{!p||!S||e.stopPropagation()},onTouchMove:e=>{!p||!S||e.stopPropagation()},onPointerDown:e=>{!p||!S||e.stopPropagation()},onPointerMove:e=>{!p||!S||e.stopPropagation()},children:s(e,{text:_,atUsers:[]})}),p&&w&&s(`button`,{type:`button`,className:`mb-3 text-theme5 inline-flex items-center justify-center h-[28px] px-3 rounded-full bg-white/15 text-xs font-medium backdrop-blur`,onClick:e=>{e.stopPropagation(),C(e=>!e)},children:g(S?`bottomInfo.collapse`:`bottomInfo.expand`)}),x&&c(`button`,{type:`button`,className:`h-[38px] flex items-center justify-center bg-white/20 rounded-[8px] gap-2 cursor-pointer px-4 text-sm font-medium backdrop-blur w-full`,onClick:e=>{if(e.stopPropagation(),b){d.onSeriesClick?.();return}h?.()},children:[s(b?o:a,{className:`w-6 h-6 shrink-0`}),s(`span`,{className:`opacity-90 whitespace-nowrap overflow-hidden text-ellipsis`,children:b?(()=>{let e=u.name||``,t=e.length>10?`${e.slice(0,10)}...`:e,n=u.episode_name||``;return n?g(`bottomInfo.seriesActionWithEpisode`,{title:t,episodeName:n}):g(`bottomInfo.seriesAction`,{title:t})})():d.nextItemText?s(e,{text:d.nextItemText,atUsers:[],enableNavigation:!1}):g(`bottomInfo.nextItem`)})]})]})}export{u as BottomInfo};
|