feat: 対応外の投稿を iframe で埋込む(#157) (#199)
#157 #157 対応外の投稿を iframe で埋込む Co-authored-by: miteruzo <miteruzo@naver.com> Reviewed-on: #199
This commit was merged in pull request #199.
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
import { useState } from 'react'
|
||||||
import YoutubeEmbed from 'react-youtube'
|
import YoutubeEmbed from 'react-youtube'
|
||||||
|
|
||||||
import NicoViewer from '@/components/NicoViewer'
|
import NicoViewer from '@/components/NicoViewer'
|
||||||
@@ -39,10 +40,28 @@ export default (({ post }: Props) => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const [framed, setFramed] = useState (false)
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<a href={post.url} target="_blank">
|
<>
|
||||||
<img src={post.thumbnailBase || post.thumbnail}
|
{framed
|
||||||
alt={post.url}
|
? (
|
||||||
className="mb-4 w-full"/>
|
<iframe
|
||||||
</a>)
|
src={post.url}
|
||||||
|
title={post.title || post.url}
|
||||||
|
width={640}
|
||||||
|
height={360}/>)
|
||||||
|
: (
|
||||||
|
<div>
|
||||||
|
<a href="#" onClick={e => {
|
||||||
|
e.preventDefault ()
|
||||||
|
setFramed (confirm ('未確認の外部ページを表示します。\n'
|
||||||
|
+ '悪意のあるスクリプトが実行される可能性があります。\n'
|
||||||
|
+ '表示しますか?'))
|
||||||
|
return
|
||||||
|
}}>
|
||||||
|
外部ページを表示
|
||||||
|
</a>
|
||||||
|
</div>)}
|
||||||
|
</>)
|
||||||
}) satisfies FC<Props>
|
}) satisfies FC<Props>
|
||||||
|
|||||||
Reference in New Issue
Block a user