mirror of
https://github.com/supabase/supabase.git
synced 2026-10-14 21:59:16 +03:00
* init site * add nav menu * add props table component * init all the examples • also includes moving a bunch of ./ui files to ./ui-patterns * update package • might need to remove some of these * Update rehype-component.ts * move nav * more changes * add new source information to contentlayer * fix copy buttons * add text-confirm. start new concept of "fragments" * move base path. add homepage. add theme selection * added colors * add form-item-layout * temporary fix code blocks in light mode. they currently don't switch theme to theme * start adding code themes * Update dark.json * update code block themes * fix animations * add cdmk search * export registry of icons in ./icons package * add comments * add icon copy stuff * Update icons.tsx * more docs * more docs. cleaned up colors and icons docs * Update theming.mdx * add more docs * update * add package * Update tailwind.config.js * update content * Update drawer-demo.tsx * Update aspect-ratio-demo.tsx * add new blocks * Update source-panel.tsx * Update source-panel.tsx * Update source-panel.tsx * add new source block * Update source-panel.tsx * Update _app.tsx * Update page.tsx * Delete layout-old.tsx * remove old themes * remove old ui registry * comment out nav items * Update package-lock.json * Update AssistantChatForm.tsx * move back * move again * update * Update index.tsx * Update package-lock.json * Update package-lock.json * Update package-lock.json * update package * udpate prettier * fix tag issues * Update package-lock.json * update to contentlayer2 * update package-lock.json * fix type errors * ignore spelling * Update avoid-typos.yml * Update avoid-typos.yml * Update package-lock.json * Use ui type definitions. * move tsconfig base stuff. fix content layer issue * Update package-lock.json * Update package-lock.json --------- Co-authored-by: Alaister Young <a@alaisteryoung.com> Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
156 lines
4.9 KiB
TypeScript
156 lines
4.9 KiB
TypeScript
import { cn } from 'ui/src/lib/utils/cn'
|
|
// import { Card } from '@ui/components/shadcn/ui/card'
|
|
import color from 'ui/src/lib/tailwind-demo-classes'
|
|
import { Grid, GridItem } from './grid'
|
|
|
|
const Colors = ({
|
|
definition,
|
|
}: {
|
|
definition: 'background' | 'border' | 'text' | 'colors' | 'palletes'
|
|
}) => {
|
|
const Example = ({ x }: { x: string }) => {
|
|
switch (definition) {
|
|
case 'background':
|
|
return (
|
|
<div className={cn(x, 'relative w-full h-12 border border-overlay rounded-full')}></div>
|
|
)
|
|
break
|
|
|
|
case 'border':
|
|
return <div className={cn(x, 'relative w-full h-12 border-4 rounded-full')}></div>
|
|
break
|
|
|
|
case 'text':
|
|
return (
|
|
<span className={cn(x, 'relative w-full h-12 flex items-center justify-center')}>
|
|
Postgres
|
|
</span>
|
|
)
|
|
break
|
|
|
|
case 'colors':
|
|
return (
|
|
<div className={cn(x, 'relative w-full h-12 border border-overlay rounded-full')}></div>
|
|
)
|
|
break
|
|
|
|
case 'palletes':
|
|
return (
|
|
<div className={cn(x, 'relative w-full h-12 border border-overlay rounded-full')}></div>
|
|
)
|
|
break
|
|
|
|
default:
|
|
break
|
|
}
|
|
}
|
|
|
|
return (
|
|
<>
|
|
<Grid>
|
|
{color[definition].map((x: string, i) => {
|
|
return (
|
|
<GridItem
|
|
key={i}
|
|
className={cn(x.includes('contrast') && 'bg-foreground hover:bg-foreground-light')}
|
|
>
|
|
<Example x={x} />
|
|
<span className="bg-surface-100 rounded-full border px-2 font-mono text-xs text-foreground-lighter group-data-[state=open]:text-foreground">
|
|
{x}
|
|
</span>
|
|
</GridItem>
|
|
)
|
|
})}
|
|
</Grid>
|
|
</>
|
|
)
|
|
}
|
|
|
|
{
|
|
/* <div className="flex flex-col gap-12 py-20">
|
|
<div className="flex flex-row gap-12">
|
|
<div>
|
|
<h5 className="mb-3">Background</h5>
|
|
<div className="flex flex-col gap-3">
|
|
{color.background.map((x: string, i) => {
|
|
return (
|
|
<div className="flex gap-3 items-center" key={i}>
|
|
<div className={cn(x, 'relative w-12 h-12 border border-overlay shadow')}></div>
|
|
<div className="font-mono text-sm bg-surface-100 px-2 py-0.5 rounded-full">
|
|
{x}
|
|
</div>
|
|
</div>
|
|
)
|
|
})}
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<h5 className="mb-3">Border</h5>
|
|
<div className="flex flex-col gap-3">
|
|
{color.border.map((x, i) => {
|
|
return (
|
|
<div className="flex gap-3 items-center" key={i}>
|
|
<div className={cn(x, 'relative w-12 h-12 border-4')}></div>
|
|
<div className="font-mono text-sm bg-surface-100 px-2 py-0.5 rounded-full">
|
|
{x}
|
|
</div>
|
|
</div>
|
|
)
|
|
})}
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<h5 className="mb-3">texts</h5>
|
|
<div className="flex flex-col gap-3">
|
|
{color.text.map((x, i) => {
|
|
return (
|
|
<div className="flex gap-3 items-center" key={i}>
|
|
<span className={cn(x, 'relative w-12 h-12 flex items-center justify-center')}>
|
|
###
|
|
</span>
|
|
<div className="font-mono text-sm bg-surface-100 px-2 py-0.5 rounded-full">
|
|
{x}
|
|
</div>
|
|
</div>
|
|
)
|
|
})}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div className="flex flex-row gap-12">
|
|
<div>
|
|
<h5 className="mb-3">Colors</h5>
|
|
<div className="flex flex-col gap-3">
|
|
{color.colors.map((x: string, i) => {
|
|
return (
|
|
<div className="flex gap-3 items-center" key={i}>
|
|
<div className={cn(x, 'relative w-12 h-12 border border-overlay shadow')}></div>
|
|
<div className="font-mono text-sm bg-surface-100 px-2 py-0.5 rounded-full">
|
|
{x}
|
|
</div>
|
|
</div>
|
|
)
|
|
})}
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<h5 className="mb-3">Palletes</h5>
|
|
<div className="flex flex-col gap-3">
|
|
{color.palletes.map((x, i) => {
|
|
return (
|
|
<div className="flex gap-3 items-center" key={i}>
|
|
<div className={cn(x, 'relative w-12 h-12 border border-overlay shadow')}></div>
|
|
<div className="font-mono text-sm bg-surface-100 px-2 py-0.5 rounded-full">
|
|
{x}
|
|
</div>
|
|
</div>
|
|
)
|
|
})}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div> */
|
|
}
|
|
|
|
export { Colors }
|