|
|
|
@ -104,7 +104,7 @@ type AnchorItem = {
|
|
|
|
|
children?: AnchorItem[];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const AvatarPlaceholder = ({ num = 3 }: { num?: number }) => (
|
|
|
|
|
const AvatarPlaceholder: React.FC<{ num?: number }> = ({ num = 3 }) => (
|
|
|
|
|
<>
|
|
|
|
|
{Array.from({ length: num }).map((_, i) => (
|
|
|
|
|
<Skeleton.Avatar size="small" active key={i} style={{ marginLeft: i === 0 ? 0 : -8 }} />
|
|
|
|
@ -289,10 +289,14 @@ const Content: React.FC<{ children: ReactNode }> = ({ children }) => {
|
|
|
|
|
css={styles.contributorsList}
|
|
|
|
|
cache
|
|
|
|
|
fileName={meta.frontmatter.filename}
|
|
|
|
|
renderItem={(item, loading) =>
|
|
|
|
|
loading || !item ? (
|
|
|
|
|
<AvatarPlaceholder />
|
|
|
|
|
) : (
|
|
|
|
|
renderItem={(item, loading) => {
|
|
|
|
|
if (!item || loading) {
|
|
|
|
|
return <AvatarPlaceholder />;
|
|
|
|
|
}
|
|
|
|
|
if (item.username?.includes('github-actions')) {
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
return (
|
|
|
|
|
<Tooltip
|
|
|
|
|
mouseEnterDelay={0.3}
|
|
|
|
|
title={`${formatMessage({ id: 'app.content.contributors' })}: ${item.username}`}
|
|
|
|
@ -308,8 +312,8 @@ const Content: React.FC<{ children: ReactNode }> = ({ children }) => {
|
|
|
|
|
</Avatar>
|
|
|
|
|
</a>
|
|
|
|
|
</Tooltip>
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
}}
|
|
|
|
|
/>
|
|
|
|
|
)}
|
|
|
|
|
</article>
|
|
|
|
|