diff options
Diffstat (limited to 'bskyembed/src/components')
-rw-r--r-- | bskyembed/src/components/container.tsx | 2 | ||||
-rw-r--r-- | bskyembed/src/components/embed.tsx | 34 | ||||
-rw-r--r-- | bskyembed/src/components/post.tsx | 18 |
3 files changed, 31 insertions, 23 deletions
diff --git a/bskyembed/src/components/container.tsx b/bskyembed/src/components/container.tsx index 5b1b2b7fb..8e142a25b 100644 --- a/bskyembed/src/components/container.tsx +++ b/bskyembed/src/components/container.tsx @@ -37,7 +37,7 @@ export function Container({ return ( <div ref={ref} - className="w-full bg-white hover:bg-neutral-50 relative transition-colors max-w-[600px] min-w-[300px] flex border rounded-xl" + className="w-full bg-white text-black hover:bg-neutral-50 dark:bg-dimmedBg dark:hover:bg-dimmedBgLighten relative transition-colors max-w-[600px] min-w-[300px] flex border dark:border-slate-600 dark:text-slate-200 rounded-xl" onClick={() => { if (ref.current && href) { // forwardRef requires preact/compat - let's keep it simple diff --git a/bskyembed/src/components/embed.tsx b/bskyembed/src/components/embed.tsx index 74eacf16d..20ffcb2b2 100644 --- a/bskyembed/src/components/embed.tsx +++ b/bskyembed/src/components/embed.tsx @@ -78,9 +78,9 @@ export function Embed({ return ( <Link href={`/profile/${record.author.did}/post/${getRkey(record)}`} - className="transition-colors hover:bg-neutral-100 border rounded-lg p-2 gap-1.5 w-full flex flex-col"> + className="transition-colors hover:bg-neutral-100 dark:hover:bg-slate-700 border dark:border-slate-600 rounded-lg p-2 gap-1.5 w-full flex flex-col"> <div className="flex gap-1.5 items-center"> - <div className="w-4 h-4 overflow-hidden rounded-full bg-neutral-300 shrink-0"> + <div className="w-4 h-4 overflow-hidden rounded-full bg-neutral-300 dark:bg-slate-700 shrink-0"> <img src={record.author.avatar} style={isAuthorLabeled ? {filter: 'blur(1.5px)'} : undefined} @@ -88,7 +88,7 @@ export function Embed({ </div> <p className="line-clamp-1 text-sm"> <span className="font-bold">{record.author.displayName}</span> - <span className="text-textLight ml-1"> + <span className="text-textLight dark:text-textDimmed ml-1"> @{record.author.handle} </span> </p> @@ -209,7 +209,7 @@ function Info({children}: {children: ComponentChildren}) { return ( <div className="w-full rounded-lg border py-2 px-2.5 flex-row flex gap-2 bg-neutral-50"> <img src={infoIcon} className="w-4 h-4 shrink-0 mt-0.5" /> - <p className="text-sm text-textLight">{children}</p> + <p className="text-sm text-textLight dark:text-textDimmed">{children}</p> </div> ) } @@ -308,7 +308,7 @@ function ExternalEmbed({ return ( <Link href={content.external.uri} - className="w-full rounded-lg overflow-hidden border flex flex-col items-stretch" + className="w-full rounded-lg overflow-hidden border dark:border-slate-600 flex flex-col items-stretch" disableTracking> {content.external.thumb && ( <img @@ -317,11 +317,11 @@ function ExternalEmbed({ /> )} <div className="py-3 px-4"> - <p className="text-sm text-textLight line-clamp-1"> + <p className="text-sm text-textLight dark:text-textDimmed line-clamp-1"> {toNiceDomain(content.external.uri)} </p> <p className="font-semibold line-clamp-3">{content.external.title}</p> - <p className="text-sm text-textLight line-clamp-2 mt-0.5"> + <p className="text-sm text-textLight dark:text-textDimmed line-clamp-2 mt-0.5"> {content.external.description} </p> </div> @@ -345,23 +345,29 @@ function GenericWithImageEmbed({ return ( <Link href={href} - className="w-full rounded-lg border py-2 px-3 flex flex-col gap-2"> + className="w-full rounded-lg border dark:border-slate-600 py-2 px-3 flex flex-col gap-2"> <div className="flex gap-2.5 items-center"> {image ? ( <img src={image} alt={title} - className="w-8 h-8 rounded-md bg-neutral-300 shrink-0" + className="w-8 h-8 rounded-md bg-neutral-300 dark:bg-slate-700 shrink-0" /> ) : ( <div className="w-8 h-8 rounded-md bg-brand shrink-0" /> )} <div className="flex-1"> <p className="font-bold text-sm">{title}</p> - <p className="text-textLight text-sm">{subtitle}</p> + <p className="text-textLight dark:text-textDimmed text-sm"> + {subtitle} + </p> </div> </div> - {description && <p className="text-textLight text-sm">{description}</p>} + {description && ( + <p className="text-textLight dark:text-textDimmed text-sm"> + {description} + </p> + )} </Link> ) } @@ -406,7 +412,7 @@ function StarterPackEmbed({ return ( <Link href={starterPackHref} - className="w-full rounded-lg overflow-hidden border flex flex-col items-stretch"> + className="w-full rounded-lg overflow-hidden border dark:border-slate-600 flex flex-col items-stretch"> <img src={imageUri} className="aspect-[1.91/1] object-cover" /> <div className="py-3 px-4"> <div className="flex space-x-2 items-center"> @@ -415,7 +421,7 @@ function StarterPackEmbed({ <p className="font-semibold leading-[21px]"> {content.record.name} </p> - <p className="text-sm text-textLight line-clamp-2 leading-[18px]"> + <p className="text-sm text-textLight dark:text-textDimmed line-clamp-2 leading-[18px]"> Starter pack by{' '} {content.creator.displayName || `@${content.creator.handle}`} </p> @@ -425,7 +431,7 @@ function StarterPackEmbed({ <p className="text-sm mt-1">{content.record.description}</p> )} {!!content.joinedAllTimeCount && content.joinedAllTimeCount > 50 && ( - <p className="text-sm font-semibold text-textLight mt-1"> + <p className="text-sm font-semibold text-textLight dark:text-textDimmed mt-1"> {content.joinedAllTimeCount} users have joined! </p> )} diff --git a/bskyembed/src/components/post.tsx b/bskyembed/src/components/post.tsx index 4db5eeb45..26945eb69 100644 --- a/bskyembed/src/components/post.tsx +++ b/bskyembed/src/components/post.tsx @@ -38,7 +38,7 @@ export function Post({thread}: Props) { <div className="flex-1 flex-col flex gap-2" lang={record?.langs?.[0]}> <div className="flex gap-2.5 items-center cursor-pointer"> <Link href={`/profile/${post.author.did}`} className="rounded-full"> - <div className="w-10 h-10 overflow-hidden rounded-full bg-neutral-300 shrink-0"> + <div className="w-10 h-10 overflow-hidden rounded-full bg-neutral-300 dark:bg-slate-700 shrink-0"> <img src={post.author.avatar} style={isAuthorLabeled ? {filter: 'blur(2.5px)'} : undefined} @@ -53,7 +53,7 @@ export function Post({thread}: Props) { </Link> <Link href={`/profile/${post.author.did}`} - className="text-[15px] text-textLight hover:underline line-clamp-1"> + className="text-[15px] text-textLight dark:text-textDimmed hover:underline line-clamp-1"> <p>@{post.author.handle}</p> </Link> </div> @@ -69,15 +69,15 @@ export function Post({thread}: Props) { <Link href={href}> <time datetime={new Date(post.indexedAt).toISOString()} - className="text-textLight mt-1 text-sm hover:underline"> + className="text-textLight dark:text-textDimmed mt-1 text-sm hover:underline"> {niceDate(post.indexedAt)} </time> </Link> - <div className="border-t w-full pt-2.5 flex items-center gap-5 text-sm cursor-pointer"> + <div className="border-t dark:border-slate-600 w-full pt-2.5 flex items-center gap-5 text-sm cursor-pointer"> {!!post.likeCount && ( <div className="flex items-center gap-2 cursor-pointer"> <img src={likeIcon} className="w-5 h-5" /> - <p className="font-bold text-neutral-500 mb-px"> + <p className="font-bold text-neutral-500 dark:text-neutral-300 mb-px"> {prettyNumber(post.likeCount)} </p> </div> @@ -85,17 +85,19 @@ export function Post({thread}: Props) { {!!post.repostCount && ( <div className="flex items-center gap-2 cursor-pointer"> <img src={repostIcon} className="w-5 h-5" /> - <p className="font-bold text-neutral-500 mb-px"> + <p className="font-bold text-neutral-500 dark:text-neutral-300 mb-px"> {prettyNumber(post.repostCount)} </p> </div> )} <div className="flex items-center gap-2 cursor-pointer"> <img src={replyIcon} className="w-5 h-5" /> - <p className="font-bold text-neutral-500 mb-px">Reply</p> + <p className="font-bold text-neutral-500 dark:text-neutral-300 mb-px"> + Reply + </p> </div> <div className="flex-1" /> - <p className="cursor-pointer text-brand font-bold hover:underline hidden min-[450px]:inline"> + <p className="cursor-pointer text-brand dark:text-brandLighten font-bold hover:underline hidden min-[450px]:inline"> {post.replyCount ? `Read ${prettyNumber(post.replyCount)} ${ post.replyCount > 1 ? 'replies' : 'reply' |