diff --git a/src/components/leaderboard/LeaderboardPage.tsx b/src/components/leaderboard/LeaderboardPage.tsx new file mode 100644 index 000000000..96062da84 --- /dev/null +++ b/src/components/leaderboard/LeaderboardPage.tsx @@ -0,0 +1,70 @@ +import { IoPeople } from 'react-icons/io5' +import { SlQuestion } from 'react-icons/sl' +import { PageContent } from '../main/PageWrapper' +import DfCard from '../utils/cards/DfCard' +import { MutedSpan } from '../utils/MutedText' + +export default function LeaderboardPage() { + return ( + +
+

Active Staking Dashboard

+ Role: +
+
+ +
+ +
+
+ Total Activity + this week +
+
+ + + + +
+
+ + +
+
+ ) +} + +function TopUsersTable() { + return ( + + Top Stakers this week + + Stakers ranked based on the amount of SUB earned with Active Staking. + +
asdfasdfdf
+
+ ) +} + +function StatisticCard() { + return ( + +
+ Total posts liked + +
+
+ 125 + +25 today +
+
+ ) +} diff --git a/src/components/main/PageWrapper.tsx b/src/components/main/PageWrapper.tsx index 6c9e3dd37..be0f14f6f 100644 --- a/src/components/main/PageWrapper.tsx +++ b/src/components/main/PageWrapper.tsx @@ -97,6 +97,7 @@ type Props = { outerClassName?: string withSidebar?: boolean withVoteBanner?: boolean + withLargerMaxWidth?: boolean creatorDashboardSidebarType?: CreatorDashboardSidebarType } @@ -113,6 +114,7 @@ export const PageContent: FC = ({ outerClassName, // withSidebar, children, + withLargerMaxWidth, creatorDashboardSidebarType, }) => { // const { @@ -158,9 +160,20 @@ export const PageContent: FC = ({ )} -
+
{/* {isPanels &&
{leftPanel}
} */} -
+
{/* = ({ } /> */}
-export const Section = ({ title, level = 2, className, id, outerClassName, children }: Props) => { +export const Section = ({ + title, + level = 2, + className, + id, + outerClassName, + children, + withLargerMaxWidth, +}: Props) => { const renderTitle = () => { if (!title) return null @@ -20,7 +29,7 @@ export const Section = ({ title, level = 2, className, id, outerClassName, child } return ( -
+
{renderTitle()} {children} diff --git a/src/components/utils/cards/DfCard.tsx b/src/components/utils/cards/DfCard.tsx index c893a49fb..b394cda83 100644 --- a/src/components/utils/cards/DfCard.tsx +++ b/src/components/utils/cards/DfCard.tsx @@ -1,8 +1,27 @@ import clsx from 'clsx' import { HTMLProps } from 'react' -export type DfCardProps = HTMLProps +export type DfCardProps = Omit, 'size'> & { + withShadow?: boolean + variant?: 'default' | 'info' + size?: 'medium' | 'small' +} -export default function DfCard({ className, ...props }: DfCardProps) { - return
+const variants: Record, string> = { + default: '', + info: 'DfCardInfo', +} +export default function DfCard({ + className, + withShadow = true, + variant = 'default', + size = 'medium', + ...props +}: DfCardProps) { + return ( +
+ ) } diff --git a/src/pages/leaderboard/index.tsx b/src/pages/leaderboard/index.tsx new file mode 100644 index 000000000..a1480a09b --- /dev/null +++ b/src/pages/leaderboard/index.tsx @@ -0,0 +1,3 @@ +import LeaderboardPage from 'src/components/leaderboard/LeaderboardPage' + +export default LeaderboardPage diff --git a/src/styles/subsocial.scss b/src/styles/subsocial.scss index 425928268..406451cfb 100644 --- a/src/styles/subsocial.scss +++ b/src/styles/subsocial.scss @@ -1198,6 +1198,10 @@ hr { position: relative; z-index: 0; + &.DfSectionLarger { + max-width: calc(890px + #{$space_normal} * 2); + } + .DfSectionOuter { width: 100%; } @@ -2019,6 +2023,20 @@ hr { background-color: #fff; padding: $space_big; border-radius: $border_radius_huge; + + &.NoShadow { + box-shadow: none !important; + } + + &.DfCardInfo { + border: 1px solid rgba(99, 102, 241, 0.2); + background: #edf4ff; + } + + &.small { + padding: $space_normal; + border-radius: $border_radius_big; + } } .DfMobileOnBoarding {