import React, { useMemo } from "react"; import { FeedPost } from "@gooddollar/web3sdk-v2"; import { Center, Heading, Spinner, Stack, Text, VStack } from "native-base"; import { Trans } from "@lingui/react"; import { withTheme } from "../../theme/hoc/withTheme"; import SvgXml from "../../core/images/SvgXml.web"; import { CentreBox } from "../../core/layout/CentreBox"; import ImageCard from "../../core/layout/ImageCard"; import { IHStackProps } from "native-base/lib/typescript/components/primitives/Stack/HStack"; import { IVStackProps } from "native-base/lib/typescript/components/primitives/Stack/VStack"; import { Platform } from "react-native"; const NewsCardContent = ({ content }: { content: any }) => ( {content} ); const NewsCardFooter = ({ published, sponsored_logo }: { published: string; sponsored_logo: string }) => { const formattedPublished = useMemo( () => new Date(published).toLocaleDateString("en", { day: "2-digit", month: "2-digit", year: "numeric", hour: "2-digit", minute: "2-digit" }), [published] ); return ( <> {formattedPublished} {sponsored_logo && } ); }; const NewsCardWrapper = ({ item }: { item: FeedPost }) => { const { picture, title, content, published, sponsored_logo, link } = item; return ( } footer={} shadow={1} borderLeftWidth="10px" borderLeftColor="gdPrimary" borderRadius={6} /> ); }; export const NewsFeed = withTheme({ name: "NewsFeed", skipProps: "feed" })( ({ feed, direction, styles = {} }: { feed: FeedPost[]; direction: "row" | "column"; styles?: { item?: object } } & IHStackProps & IVStackProps) => { return (
{feed && feed.length > 0 ? ( feed.map((item: FeedPost) => ) ) : ( )}
); } );