mirror of
https://github.com/luxfi/market.git
synced 2026-09-24 00:25:57 +00:00
311 lines
7.5 KiB
TypeScript
311 lines
7.5 KiB
TypeScript
import {
|
|
crimson,
|
|
crimsonDark,
|
|
slate,
|
|
slateDark,
|
|
violet,
|
|
violetA,
|
|
violetDark,
|
|
violetDarkA,
|
|
green,
|
|
greenDark,
|
|
whiteA,
|
|
red,
|
|
redDark,
|
|
gray,
|
|
blackA,
|
|
} from '@radix-ui/colors'
|
|
import { createStitches } from '@stitches/react'
|
|
import type * as Stitches from '@stitches/react'
|
|
import { reset } from 'utils/css/reset'
|
|
|
|
export const { createTheme, keyframes, styled, globalCss, getCssText } =
|
|
createStitches({
|
|
theme: {
|
|
colors: {
|
|
...crimson,
|
|
...violet,
|
|
...violetA,
|
|
...slate,
|
|
...red,
|
|
...whiteA,
|
|
...blackA,
|
|
...green,
|
|
...gray,
|
|
|
|
/* Please leave
|
|
accent1: 'white',
|
|
primary1: 'black',
|
|
primary2: '$violet2',
|
|
primary3: '$violet3',
|
|
primary4: '$violet4',
|
|
primary5: '#e3e6ea',
|
|
primary6: '$violet6',
|
|
primary7: '$violet7',
|
|
primary8: '$violet8',
|
|
primary9: '#ccc',
|
|
primary10: '#222',
|
|
primary12: '#eee',
|
|
*/
|
|
|
|
// Primary == slateDark
|
|
primary1: '#151718',
|
|
primary2: '#1a1d1e',
|
|
primary3: '#202425',
|
|
primary4: '#26292b',
|
|
primary5: '#2b2f31',
|
|
primary6: '#313538',
|
|
primary7: '#3a3f42',
|
|
primary8: '#4c5155',
|
|
primary9: '#697177',
|
|
primary10: '#787f85',
|
|
primary11: '#9ba1a6',
|
|
primary12: '#ecedee',
|
|
|
|
// Secondary == slate
|
|
secondary1: '#fbfcfd',
|
|
secondary2: '#f8f9fa',
|
|
secondary3: '#f1f3f5',
|
|
secondary4: '#eceef0',
|
|
secondary5: '#e6e8eb',
|
|
secondary6: '#dfe3e6',
|
|
secondary7: '#d7dbdf',
|
|
secondary8: '#c1c8cd',
|
|
secondary9: '#889096',
|
|
secondary10: '#7e868c',
|
|
secondary11: '#687076',
|
|
secondary12: '#11181c',
|
|
|
|
//Gray
|
|
// Use radix gray
|
|
|
|
//Red
|
|
red1: '$crimson1',
|
|
red2: '$crimson2',
|
|
red3: '$crimson3',
|
|
red4: '$crimson4',
|
|
red5: '$crimson5',
|
|
red6: '$crimson6',
|
|
red7: '$crimson7',
|
|
red8: '$crimson8',
|
|
red9: '$crimson9',
|
|
red10: '$crimson10',
|
|
red11: '$crimson11',
|
|
red12: '$crimson12',
|
|
|
|
neutralBg: 'white',
|
|
neutralBgSubtle: 'white',
|
|
panelShadow: 'rgba(0,0,0,0.1)',
|
|
panelBg: '$gray2',
|
|
panelBorder: 'transparent',
|
|
},
|
|
space: {
|
|
1: '4px',
|
|
2: '8px',
|
|
3: '12px',
|
|
4: '16px',
|
|
5: '32px',
|
|
6: '64px',
|
|
},
|
|
fontSizes: {},
|
|
fontWeights: {},
|
|
fonts: {
|
|
body: 'Inter',
|
|
button: '$body',
|
|
},
|
|
lineHeights: {},
|
|
letterSpacings: {},
|
|
sizes: {},
|
|
radii: {},
|
|
shadows: {},
|
|
transitions: {},
|
|
breakpoints: {
|
|
sm: 100,
|
|
},
|
|
},
|
|
utils: {
|
|
// MARGIN
|
|
m: (value: Stitches.PropertyValue<'margin'>) => ({
|
|
margin: value,
|
|
}),
|
|
mx: (value: Stitches.PropertyValue<'margin'>) => ({
|
|
marginLeft: value,
|
|
marginRight: value,
|
|
}),
|
|
my: (value: Stitches.PropertyValue<'margin'>) => ({
|
|
marginTop: value,
|
|
marginBottom: value,
|
|
}),
|
|
mt: (value: Stitches.PropertyValue<'margin'>) => ({
|
|
marginTop: value,
|
|
}),
|
|
mb: (value: Stitches.PropertyValue<'margin'>) => ({
|
|
marginBottom: value,
|
|
}),
|
|
ml: (value: Stitches.PropertyValue<'margin'>) => ({
|
|
marginLeft: value,
|
|
}),
|
|
mr: (value: Stitches.PropertyValue<'margin'>) => ({
|
|
marginRight: value,
|
|
}),
|
|
|
|
// PADDING
|
|
p: (value: Stitches.PropertyValue<'padding'>) => ({
|
|
padding: value,
|
|
}),
|
|
px: (value: Stitches.PropertyValue<'padding'>) => ({
|
|
paddingLeft: value,
|
|
paddingRight: value,
|
|
}),
|
|
py: (value: Stitches.PropertyValue<'padding'>) => ({
|
|
paddingTop: value,
|
|
paddingBottom: value,
|
|
}),
|
|
pt: (value: Stitches.PropertyValue<'padding'>) => ({
|
|
paddingTop: value,
|
|
}),
|
|
pb: (value: Stitches.PropertyValue<'padding'>) => ({
|
|
paddingBottom: value,
|
|
}),
|
|
pl: (value: Stitches.PropertyValue<'padding'>) => ({
|
|
paddingLeft: value,
|
|
}),
|
|
pr: (value: Stitches.PropertyValue<'padding'>) => ({
|
|
paddingRight: value,
|
|
}),
|
|
// DIMENSIONS
|
|
w: (value: Stitches.PropertyValue<'width'>) => ({
|
|
width: value,
|
|
}),
|
|
h: (value: Stitches.PropertyValue<'height'>) => ({
|
|
height: value,
|
|
}),
|
|
size: (value: Stitches.PropertyValue<'width'>) => ({
|
|
width: value,
|
|
height: value,
|
|
}),
|
|
// GRID
|
|
colSpan: (value: number | 'full') => {
|
|
if (value === 'full') {
|
|
return {
|
|
gridColumn: '1 / -1',
|
|
}
|
|
}
|
|
return {
|
|
gridColumn: `span ${value} / span ${value}`,
|
|
}
|
|
},
|
|
},
|
|
media: {
|
|
sm: '(min-width: 600px)',
|
|
md: '(min-width: 900px)',
|
|
lg: '(min-width: 1200px)',
|
|
xl: '(min-width: 1400px)',
|
|
bp300: '(min-width: 300px)',
|
|
bp400: '(min-width: 400px)',
|
|
bp500: '(min-width: 500px)',
|
|
bp600: '(min-width: 600px)',
|
|
bp700: '(min-width: 700px)',
|
|
bp800: '(min-width: 800px)',
|
|
bp900: '(min-width: 900px)',
|
|
bp1000: '(min-width: 1000px)',
|
|
bp1100: '(min-width: 1100px)',
|
|
bp1200: '(min-width: 1200px)',
|
|
bp1300: '(min-width: 1300px)',
|
|
bp1400: '(min-width: 1400px)',
|
|
motion: '(prefers-reduced-motion)',
|
|
hover: '(any-hover: hover)',
|
|
dark: '(prefers-color-scheme: dark)',
|
|
light: '(prefers-color-scheme: light)',
|
|
},
|
|
})
|
|
|
|
export const globalReset = globalCss(reset)
|
|
|
|
export const darkTheme = createTheme({
|
|
colors: {
|
|
...crimsonDark,
|
|
...violetDark,
|
|
...violetDarkA,
|
|
...slateDark,
|
|
...greenDark,
|
|
...whiteA,
|
|
...redDark,
|
|
...blackA,
|
|
|
|
//Old Primary
|
|
/* Please leave
|
|
accent1: 'black', // unused in latest button code
|
|
primary1: 'white',
|
|
primary2: '$violet2',
|
|
primary3: '$violet3',
|
|
primary4: '$violet4',
|
|
primary5: '#222', // not in use
|
|
primary6: '$violet6',
|
|
primary7: '$violet7',
|
|
primary8: '$violet8',
|
|
primary9: 'white',
|
|
primary10: '#ddd',
|
|
primary11: '#ccc',
|
|
primary12: '$violet12',
|
|
*/
|
|
|
|
|
|
// Primary == slate
|
|
primary1: '#fbfcfd',
|
|
primary2: '#f8f9fa',
|
|
primary3: '#f1f3f5',
|
|
primary4: '#eceef0',
|
|
primary5: '#e6e8eb',
|
|
primary6: '#dfe3e6',
|
|
primary7: '#d7dbdf',
|
|
primary8: '#c1c8cd',
|
|
primary9: '#889096',
|
|
primary10: '#7e868c',
|
|
primary11: '#687076',
|
|
primary12: '#11181c',
|
|
|
|
// Secondary == slateDark
|
|
secondary1: '#151718',
|
|
secondary2: '#1a1d1e',
|
|
secondary3: '#202425',
|
|
secondary4: '#26292b',
|
|
secondary5: '#2b2f31',
|
|
secondary6: '#313538',
|
|
secondary7: '#3a3f42',
|
|
secondary8: '#4c5155',
|
|
secondary9: '#697177',
|
|
secondary10: '#787f85',
|
|
secondary11: '#9ba1a6',
|
|
secondary12: '#ecedee',
|
|
|
|
// Custom greyDark:
|
|
// First 4 according to current usage,
|
|
// rest from radix.
|
|
// Following https://www.radix-ui.com/docs/colors/palette-composition/understanding-the-scale
|
|
gray1: '#000',
|
|
gray2: '#0a0a0a',
|
|
gray3: '#1a1a1a',
|
|
gray4: '#222',
|
|
// these are just grayDark from here
|
|
gray5: '#2e2e2e',
|
|
gray6: '#343434',
|
|
gray7: '#3e3e3e',
|
|
gray8: '#505050',
|
|
gray9: '#707070',
|
|
gray10: '#7e7e7e',
|
|
gray11: '#a0a0a0',
|
|
gray12: '#ededed',
|
|
|
|
|
|
accent: '#7000FF',
|
|
|
|
neutralBgSubtle: '#111',
|
|
neutralBg: 'black',
|
|
|
|
panelBg: '#111',
|
|
panelBorder: 'black',
|
|
panelShadow: 'transparent',
|
|
},
|
|
})
|