diff --git a/t0016Next/myapp/src/components/moviePlayer/YoutubePlayer.tsx b/t0016Next/myapp/src/components/moviePlayer/YoutubePlayer.tsx index 65599c5..c59d308 100644 --- a/t0016Next/myapp/src/components/moviePlayer/YoutubePlayer.tsx +++ b/t0016Next/myapp/src/components/moviePlayer/YoutubePlayer.tsx @@ -33,7 +33,7 @@ export const YouTubePlayer = ({ const height = 255; const width = Math.round(height / aspectRatio); return ( -
+
{hasWindow && (
+
{hasWindow && (
[] = [ const handleClickPlay = (post: ReceivedKaraoke) => { handleMovieClickYouTube( row.original.MovieUrl, - stringToTime(row.original.SingStart) + timeStringToSecondNum(row.original.SingStart) ); setSelectedPost(post); }; @@ -167,7 +167,7 @@ export const KaraokeBasicColumuns: ColumnDef[] = [ "https://" + row.original.MovieUrl + "&t=" + - stringToTime(row.original.SingStart); + timeStringToSecondNum(row.original.SingStart); await navigator.clipboard.writeText(url); setIsDisplay(true); setSelectedPost(row.original); diff --git a/t0016Next/myapp/src/components/table/Karaoke.tsx b/t0016Next/myapp/src/components/table/Karaoke.tsx index f637ecf..deffd80 100644 --- a/t0016Next/myapp/src/components/table/Karaoke.tsx +++ b/t0016Next/myapp/src/components/table/Karaoke.tsx @@ -754,7 +754,7 @@ const deleteColumns: Column[] = [ accessor: "VtuberName", Cell: ({ row }: { row: { original: ReceivedKaraoke } }) => { return ( - + {
- +
); }; -const Page = ({ posts }: TopPageProps) => { +const MainItem = ({ posts }: TopPageProps) => { const url = "www.youtube.com/watch?v=E7x2TZ1_Ys4"; // 【オフコラボ】#VTuberカラオケ女子会 ~ノイタミナアニメ縛り~【朝ノ瑠璃/久遠たま/柾花音/ChumuNote】 const stringTime = "36 * 60 + 41"; // (柾花音) Departures 〜あなたにおくるアイの歌〜 / EGOIST / TVアニメ『ギルティクラウン』ED const playKaraokeNumber = generateRandomNumber(posts?.latest_karaokes.length); diff --git a/t0016Next/myapp/src/types/vtuber_content.ts b/t0016Next/myapp/src/types/vtuber_content.ts index 8b4beef..ef78cf5 100644 --- a/t0016Next/myapp/src/types/vtuber_content.ts +++ b/t0016Next/myapp/src/types/vtuber_content.ts @@ -1,116 +1,114 @@ -import { ListenerId } from './user' +import { ListenerId } from "./user"; export type BasicDataProps = { - vtubers: ReceivedVtuber[]; - vtubers_movies: ReceivedMovie[]; - vtubers_movies_karaokes: ReceivedKaraoke[]; + vtubers: ReceivedVtuber[]; + vtubers_movies: ReceivedMovie[]; + vtubers_movies_karaokes: ReceivedKaraoke[]; }; export type CrudContentType = "none" | "vtuber" | "movie" | "karaoke"; export type CrudDate = { - VtuberId: number; - VtuberName: string; - VtuberKana: string; - IntroMovieUrl: string | null; - MovieUrl: string; - MovieTitle: string; - KaraokeId: number; - SingStart: string; - SongName: string; -} + VtuberId: number; + VtuberName: string; + VtuberKana: string; + IntroMovieUrl: string | null; + MovieUrl: string; + MovieTitle: string; + KaraokeId: number; + SingStart: string; + SongName: string; +}; //以下、基礎の型3つ export type VtuberId = number; -export type KaraokeId = number -export type SongId = number +export type KaraokeId = number; +export type SongId = number; export type PrimitiveVtuber = { - VtuberId: VtuberId; - VtuberName: string; - VtuberKana: string; - IntroMovieUrl: string | null; - VtuberInputterId: string; + VtuberId: VtuberId; + VtuberName: string; + VtuberKana: string; + IntroMovieUrl: string | null; + VtuberInputterId: string; }; export type PrimitiveMovie = { - MovieUrl: string; - MovieTitle: string | null; - VtuberId: number; - MovieInputterId: number | null; + MovieUrl: string; + MovieTitle: string | null; + VtuberId: number; + MovieInputterId: number | null; }; export type PrimitiveKaraoke = { - KaraokeId: number; - MovieUrl: string | null; - SingStart: string; - SongName: string | null; - KaraokeInputterId: number | null; + KaraokeId: number; + MovieUrl: string | null; + SingStart: string; + SongName: string | null; + KaraokeInputterId: number | null; }; export type PrimitiveOriginalSong = { - SongID: SongId - ArtistId: number - SongName: string - MovieUrl: string - ReleseData: string - SongInputterId: ListenerId; -} - + SongID: SongId; + ArtistId: number; + SongName: string; + MovieUrl: string; + ReleseData: string; + SongInputterId: ListenerId; +}; // 画面表示に使う型 export type ReceivedVtuber = { - VtuberId: VtuberId; - VtuberName: string; - VtuberKana: string; - IntroMovieUrl: string | null; - VtuberInputterId: string; - - Count: number; - IsFav: boolean; -} + VtuberId: VtuberId; + VtuberName: string; + VtuberKana: string; + IntroMovieUrl: string | null; + VtuberInputterId: string; + + Count: number; + IsFav: boolean; +}; export type ReceivedMovie = { - VtuberId: VtuberId; - VtuberName: string; - VtuberKana: string; - IntroMovieUrl: string | null; - VtuberInputterId: ListenerId; - - MovieUrl: string; - MovieTitle: string; - MovieInputterId: number; - - Count: number; - IsFav: boolean; - -} + VtuberId: VtuberId; + VtuberName: string; + VtuberKana: string; + IntroMovieUrl: string | null; + VtuberInputterId: ListenerId; + + MovieUrl: string; + MovieTitle: string; + MovieInputterId: number; + + Count: number; + IsFav: boolean; +}; export type ReceivedKaraoke = { - VtuberId: VtuberId; - VtuberName: string; - VtuberKana: string; - IntroMovieUrl: string | null; - VtuberInputterId: ListenerId; - - MovieUrl: string; - MovieTitle: string; - MovieInputterId: number; - - KaraokeId: number; - SingStart: string; - SongName: string; - KaraokeInputterId: number; - - Count: number; - IsFav: boolean; -} + VtuberId: VtuberId; + VtuberName: string; + VtuberKana: string; + IntroMovieUrl: string | null; + VtuberInputterId: ListenerId; + + MovieUrl: string; + MovieTitle: string; + MovieInputterId: number; + + KaraokeId: number; + SingStart: string; + SongName: string; + KaraokeInputterId: number; + + Count: number; + IsFav: boolean; +}; + export type FavoriteKaraoke = { - MovieUrl: string; - KaraokeId: number; -} + MovieUrl: string; + KaraokeId: number; +}; export type FavoriteMovie = { - MovieUrl: string; -} - + MovieUrl: string; +};