From 563ada179b7ac9a2094fb924c9f9970a37b3fe8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tr=C3=A8sAbhi?= <43380238+tresabhi@users.noreply.github.com> Date: Mon, 28 Oct 2024 10:57:42 -0500 Subject: [PATCH] feat: cards --- .../Embeds/PreviewWrapper/index.css.ts | 8 --- .../Embeds/PreviewWrapper/index.tsx | 24 ++++++- packages/website/src/core/radix/var.ts | 1 + .../src/pages/tools/embed/[embed]/_index.tsx | 1 - .../website/src/pages/tools/embed/_index.tsx | 63 +++++++++++++++++++ .../website/src/pages/tools/embed/index.astro | 12 +--- 6 files changed, 88 insertions(+), 21 deletions(-) create mode 100644 packages/website/src/pages/tools/embed/_index.tsx diff --git a/packages/website/src/components/Embeds/PreviewWrapper/index.css.ts b/packages/website/src/components/Embeds/PreviewWrapper/index.css.ts index 8f6c18989..2e34136f4 100644 --- a/packages/website/src/components/Embeds/PreviewWrapper/index.css.ts +++ b/packages/website/src/components/Embeds/PreviewWrapper/index.css.ts @@ -9,14 +9,6 @@ const fadeOutBorder = keyframes({ }, }); -export const wrapper = style({ - position: 'absolute', - top: '50%', - left: '50%', - transform: 'translate(-50%, -50%)', - overflow: 'hidden', -}); - export const animated = style({ animation: `${fadeOutBorder} 0.5s linear`, diff --git a/packages/website/src/components/Embeds/PreviewWrapper/index.tsx b/packages/website/src/components/Embeds/PreviewWrapper/index.tsx index 69302cc20..beaa627cc 100644 --- a/packages/website/src/components/Embeds/PreviewWrapper/index.tsx +++ b/packages/website/src/components/Embeds/PreviewWrapper/index.tsx @@ -6,9 +6,10 @@ import * as styles from './index.css'; interface PreviewWrapperProps { name: keyof typeof embedPreviews; + naked?: boolean; } -export function PreviewWrapper({ name }: PreviewWrapperProps) { +export function PreviewWrapper({ name, naked }: PreviewWrapperProps) { const { useEmbedState } = useEmbedStateCurry(); const width = useEmbedState('width'); const height = useEmbedState('height'); @@ -23,10 +24,29 @@ export function PreviewWrapper({ name }: PreviewWrapperProps) { wrapper.current.classList.add(styles.animated); }, [width, height]); + if (naked) { + return ( + + + + ); + } + return ( diff --git a/packages/website/src/core/radix/var.ts b/packages/website/src/core/radix/var.ts index 4c397dbba..d33999cf4 100644 --- a/packages/website/src/core/radix/var.ts +++ b/packages/website/src/core/radix/var.ts @@ -8,6 +8,7 @@ type Name = | `color-${'background' | `panel-${'solid' | 'translucent'}` | 'surface' | 'overlay'}` | `radius-${1 | 2 | 3 | 4 | 5 | 6 | 'full'}` | `space-${1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9}` + | `shadow-${1 | 2 | 3 | 4 | 5 | 6}` | `${RadixColor | 'accent' | 'gray'}-${ | 1 | 2 diff --git a/packages/website/src/pages/tools/embed/[embed]/_index.tsx b/packages/website/src/pages/tools/embed/[embed]/_index.tsx index b46446d07..c163ff1ca 100644 --- a/packages/website/src/pages/tools/embed/[embed]/_index.tsx +++ b/packages/website/src/pages/tools/embed/[embed]/_index.tsx @@ -55,7 +55,6 @@ export function Page({ embed }: PageProps) { function Content({ embed }: PageProps) { const embedStateStore = EmbedState.useStore(); - const appStore = App.useStore(); const config = embedConfigurations[embed] as EmbedConfig; const [backgroundImage, setBackgroundImage] = useState( imgur('SO13zur', { format: 'jpeg' }), diff --git a/packages/website/src/pages/tools/embed/_index.tsx b/packages/website/src/pages/tools/embed/_index.tsx new file mode 100644 index 000000000..5b7e62f9d --- /dev/null +++ b/packages/website/src/pages/tools/embed/_index.tsx @@ -0,0 +1,63 @@ +import { imgur, ImgurSize } from '@blitzkit/core'; +import { Box, Flex, Link, Text } from '@radix-ui/themes'; +import { capitalize } from 'lodash-es'; +import { PreviewWrapper } from '../../../components/Embeds/PreviewWrapper'; +import { PageWrapper } from '../../../components/PageWrapper'; +import { + embedConfigurations, + extractEmbedConfigDefaults, +} from '../../../constants/embeds'; +import { Var } from '../../../core/radix/var'; +import { EmbedState } from '../../../stores/embedState'; + +export function Page() { + return ( + + {Object.entries(embedConfigurations).map(([embed, config]) => ( + + + + + {capitalize(embed)} + + + + + + + + + ))} + + ); +} diff --git a/packages/website/src/pages/tools/embed/index.astro b/packages/website/src/pages/tools/embed/index.astro index af7336de4..70f7dcf2c 100644 --- a/packages/website/src/pages/tools/embed/index.astro +++ b/packages/website/src/pages/tools/embed/index.astro @@ -1,17 +1,9 @@ --- -import { Link } from '@radix-ui/themes'; -import { PageWrapper } from '../../../components/PageWrapper'; -import { embedConfigurations } from '../../../constants/embeds'; import { embedTool } from '../../../constants/tools'; import ToolLayout from '../../../layouts/ToolLayout.astro'; +import { Page } from './_index'; --- - - { - Object.entries(embedConfigurations).map(([embed, config]) => ( - {embed} - )) - } - +