@@ -6,6 +6,7 @@ import { twitterLinkEmbed } from '../embeds/twitter';
66import '../html' ;
77import { get_packaged_video } from '../util' ;
88import { isNonNullish } from 'remeda' ;
9+ import { externalImageEmbed } from '../embeds/image_host' ;
910
1011const imageExtensions = [
1112 'png' ,
@@ -38,6 +39,11 @@ function getDomainHandler(domain?: string) {
3839 handler : twitterLinkEmbed ,
3940 type : 'summary' ,
4041 } ;
42+ case 'imgur.com' :
43+ return {
44+ handler : externalImageEmbed ,
45+ type : 'article' ,
46+ } ;
4147 default :
4248 return null ;
4349 }
@@ -62,8 +68,7 @@ export async function postToHtml(post: RedditPost): Promise<HTMLElement> {
6268 switch ( post . post_hint ) {
6369 case 'image' :
6470 type = 'photo' ;
65- head . meta ( 'twitter:card' , 'summary_large_image' ) ;
66- head . image ( post . url , post . resolution ?. width , post . resolution ?. height ) ;
71+ head . image ( post . url , post . resolution ?. width , post . resolution ?. height , 'large' ) ;
6772 break ;
6873 // case 'rich:video':
6974 case 'hosted:video' : {
@@ -115,8 +120,7 @@ export async function postToHtml(post: RedditPost): Promise<HTMLElement> {
115120 } else if ( post . url ) {
116121 const url = new URL ( post . url ) ;
117122 if ( isImageUrl ( url ) ) {
118- head . meta ( 'twitter:card' , 'summary_large_image' ) ;
119- head . image ( post . url ) ;
123+ head . image ( post . url , post . resolution ?. width , post . resolution ?. height , 'large' ) ;
120124 } else if ( url . pathname . endsWith ( '.mp4' ) ) {
121125 head . video ( post . url ) ;
122126 }
0 commit comments