From 00b105a352456ece65e02b995bcfb740e3bd9fc9 Mon Sep 17 00:00:00 2001 From: Kushagra Gour Date: Tue, 12 Mar 2024 23:38:05 +0530 Subject: [PATCH] styling --- src/components/Assets.jsx | 20 +++++++++----- src/components/Loader.jsx | 52 ++++++++++++++++++++++++++++++++++++ src/components/Text.jsx | 56 +++++++++++++++++++++++++++++++++++++++ src/style.css | 5 ++++ 4 files changed, 127 insertions(+), 6 deletions(-) create mode 100644 src/components/Loader.jsx create mode 100644 src/components/Text.jsx diff --git a/src/components/Assets.jsx b/src/components/Assets.jsx index 994d304..05b006b 100644 --- a/src/components/Assets.jsx +++ b/src/components/Assets.jsx @@ -6,6 +6,7 @@ import { copyToClipboard } from '../utils'; import { Trans } from '@lingui/macro'; import { ProBadge } from './ProBadge'; import { LoaderWithText } from './Loader'; +import { Text } from './Text'; const Assets = () => { const [files, setFiles] = useState([]); @@ -174,12 +175,19 @@ const Assets = () => { {isUploading ?
: null}
-

Drop file here to upload

- + + + Drop files here to upload + + + File should be max 300KB in size + + +
{isFetchingFiles && Fetching files...} diff --git a/src/components/Loader.jsx b/src/components/Loader.jsx new file mode 100644 index 0000000..05885f8 --- /dev/null +++ b/src/components/Loader.jsx @@ -0,0 +1,52 @@ +export function Loader({ height, noMargin, leftMargin }) { + return ( + + + + + + + + ); +} + +export function LoaderWithText({ children }) { + return ( +
+ {children} +
+ ); +} diff --git a/src/components/Text.jsx b/src/components/Text.jsx new file mode 100644 index 0000000..dfe52c1 --- /dev/null +++ b/src/components/Text.jsx @@ -0,0 +1,56 @@ +import { forwardRef } from 'preact/compat'; + +const appearanceStyles = { + normal: { + color: 'var(--color-text)' + }, + primary: { + color: 'var(--color-heading)' + }, + secondary: { + color: 'var(--color-text-light)' + }, + tertiary: { + color: 'var(--color-text-lightest-final)' + }, + brand: { + color: 'var(--color-brand)' + } +}; + +export const Text = forwardRef( + ( + { + size = 0, + weight = 'normal', + tag, + style = 'normal', + appearance = 'normal', + letterSpacing = 0, + lineHeight = 1.4, + align = 'left', + classes = '', + children + }, + ref + ) => { + const Tag = tag || 'span'; + + const styles = { + letterSpacing: letterSpacing, + fontSize: `var(--font-size-${size})`, + + fontWeight: weight, + textAlign: align, + lineHeight: lineHeight, + fontStyle: style === 'italic' ? 'italic' : 'normal', + ...appearanceStyles[appearance] + }; + + return ( + + {children} + + ); + } +); diff --git a/src/style.css b/src/style.css index 4d85710..a5463c8 100644 --- a/src/style.css +++ b/src/style.css @@ -10,6 +10,11 @@ --color-focus-outline: #d3a447; --color-form-control-bg: #2c214b; + --color-heading: #efecf9; + --color-text-light: #b0a5d6; + --color-text-lightest-final: #787090; + --clr-brand: purple; + --footer-height: 37px; --console-height: 32px;