From 443eb9569f8507381a70ec7e74b9a854228b9c43 Mon Sep 17 00:00:00 2001 From: takker99 <37929109+takker99@users.noreply.github.com> Date: Tue, 29 Nov 2022 11:14:39 +0900 Subject: [PATCH] =?UTF-8?q?:sparkles:=20youtube=20short=E3=81=AE=E3=82=B5?= =?UTF-8?q?=E3=83=A0=E3=83=8D=E3=82=A4=E3=83=AB=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- parseYoutube.ts | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/parseYoutube.ts b/parseYoutube.ts index 4586e8e..64d5cfa 100644 --- a/parseYoutube.ts +++ b/parseYoutube.ts @@ -7,8 +7,10 @@ export interface YoutubeProps { const youtubeRegExp = /https?:\/\/(?:www\.|)youtube\.com\/watch\?((?:[^\s]+&|)v=([a-zA-Z\d_-]+)(?:&[^\s]+|))/; -const youtubeShortRegExp = +const youtubeDotBeRegExp = /https?:\/\/youtu\.be\/([a-zA-Z\d_-]+)(?:\?([^\s]{0,100})|)/; +const youtubeShortRegExp = + /https?:\/\/(?:www\.|)youtube\.com\/shorts\/([a-zA-Z\d_-]+)(?:\?([^\s]+)|)/; const youtubeListRegExp = /https?:\/\/(?:www\.|)youtube\.com\/playlist\?((?:[^\s]+&|)list=([a-zA-Z\d_-]+)(?:&[^\s]+|))/; @@ -31,6 +33,16 @@ export const parseYoutube = (url: string): YoutubeProps | undefined => { }; } } + { + const matches = url.match(youtubeDotBeRegExp); + if (matches) { + const [, videoId] = matches; + return { + videoId, + params: new URLSearchParams("autoplay=0"), + }; + } + } { const matches = url.match(youtubeShortRegExp); if (matches) {