1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Convert CardView to react

This commit is contained in:
grafixeyehero 2024-01-31 04:25:14 +03:00
parent 9efc71fa3b
commit 97472ac8bb
20 changed files with 1993 additions and 11 deletions

View file

@ -1,10 +1,12 @@
import type { BaseItemDto } from '@jellyfin/sdk/lib/generated-client';
import type { BaseItemDtoImageBlurHashes, BaseItemKind, ImageType, UserItemDataDto } from '@jellyfin/sdk/lib/generated-client';
import { CollectionType } from '@jellyfin/sdk/lib/generated-client/models/collection-type';
import type { ItemDto, NullableString } from './itemDto';
import { ParentId } from './library';
export interface CardOptions {
itemsContainer?: HTMLElement | null;
parentContainer?: HTMLElement | null;
items?: BaseItemDto[] | null;
items?: ItemDto[] | null;
allowBottomPadding?: boolean;
centerText?: boolean;
coverImage?: boolean;
@ -12,13 +14,15 @@ export interface CardOptions {
overlayMoreButton?: boolean;
overlayPlayButton?: boolean;
overlayText?: boolean;
imageBlurhashes?: BaseItemDtoImageBlurHashes | null;
preferBanner?: boolean;
preferThumb?: boolean | string | null;
preferDisc?: boolean;
preferLogo?: boolean;
scalable?: boolean;
shape?: string | null;
lazy?: boolean;
cardLayout?: boolean | string;
cardLayout?: boolean | null;
showParentTitle?: boolean;
showParentTitleOrTitle?: boolean;
showAirTime?: boolean;
@ -37,7 +41,7 @@ export interface CardOptions {
action?: string | null;
defaultShape?: string;
indexBy?: string;
parentId?: string | null;
parentId?: ParentId;
showMenu?: boolean;
cardCssClass?: string | null;
cardClass?: string | null;
@ -61,9 +65,10 @@ export interface CardOptions {
showSeriesTimerChannel?: boolean;
showSongCount?: boolean;
width?: number;
widths?: any;
showChannelLogo?: boolean;
showLogo?: boolean;
serverId?: string;
serverId?: NullableString;
collectionId?: string | null;
playlistId?: string | null;
defaultCardImageIcon?: string;
@ -72,4 +77,46 @@ export interface CardOptions {
showGroupCount?: boolean;
containerClass?: string;
noItemsMessage?: string;
showIndex?: boolean;
index?: string;
showIndexNumber?: boolean;
enableContentWrapper?: boolean;
enableOverview?: boolean;
enablePlayedButton?: boolean;
infoButton?: boolean;
imageSize?: string;
enableSideMediaInfo?: boolean;
imagePlayButton?: boolean;
border?: boolean;
highlight?: boolean;
smallIcon?: boolean;
artist?: boolean;
addToListButton?: boolean;
enableUserDataButtons?: boolean;
enableRatingButton?: boolean;
image?: boolean;
imageSource?: string;
showProgramDateTime?: boolean;
showChannel?: boolean;
mediaInfo?: boolean;
moreButton?: boolean;
recordButton?: boolean;
dragHandle?: boolean;
showProgramTime?: boolean;
parentTitleWithTitle?: boolean;
showIndexNumberLeft?: boolean;
sortBy?: string;
textLines?: (item: ItemDto) => (BaseItemKind | string | undefined)[];
userData?: UserItemDataDto;
rightButtons?: {
icon: string;
title: string;
id: string;
}[];
uiAspect?: number | null;
primaryImageAspectRatio?: number | null;
rows?: number | null;
imageType?: ImageType;
queryKey?: string[]
}