16 changed files with 3749 additions and 2440 deletions
-
9web/app/(todo-migrate-pages-to-app-router)/v2/page.tsx
-
25web/app/customer-support/page.tsx
-
12web/app/layout.tsx
-
20web/components.json
-
10web/components/dashboard/APIKeyAndDevices.tsx
-
6web/components/dashboard/GenerateApiKey.tsx
-
2web/components/dashboard/UserStatsCard.tsx
-
6web/lib/utils.ts
-
1web/next-env.d.ts
-
11web/package.json
-
21web/pages/_app.tsx
-
5916web/pnpm-lock.yaml
-
6web/postcss.config.js
-
66web/styles/main.css
-
64web/tailwind.config.js
-
14web/tsconfig.json
@ -0,0 +1,9 @@ |
|||
import React from 'react' |
|||
|
|||
export default function page() { |
|||
return ( |
|||
<div> |
|||
v2 |
|||
</div> |
|||
) |
|||
} |
|||
@ -0,0 +1,25 @@ |
|||
import Link from 'next/link' |
|||
import React from 'react' |
|||
|
|||
export default function CustomerSupportPage() { |
|||
return ( |
|||
<div> |
|||
<div> |
|||
<Link |
|||
href='/' |
|||
style={{ |
|||
margin: '5px', |
|||
padding: '5px', |
|||
}} |
|||
>{`<-- Go Back Home`}</Link> |
|||
</div> |
|||
<iframe |
|||
src='https://docs.google.com/forms/d/e/1FAIpQLScdlaaW28BdL-J0DrfKbz5TY5JvaGbbc6IVp95cptOQlq4ElQ/viewform?embedded=true' |
|||
width='100%' |
|||
height='1015' |
|||
> |
|||
Loading… |
|||
</iframe> |
|||
</div> |
|||
) |
|||
} |
|||
@ -0,0 +1,12 @@ |
|||
import { PropsWithChildren } from 'react' |
|||
import '@/styles/main.css' |
|||
|
|||
export default async function RootLayout({ children }: PropsWithChildren) { |
|||
return ( |
|||
<html lang='en'> |
|||
<body> |
|||
<main>{children}</main> |
|||
</body> |
|||
</html> |
|||
) |
|||
} |
|||
@ -0,0 +1,20 @@ |
|||
{ |
|||
"$schema": "https://ui.shadcn.com/schema.json", |
|||
"style": "new-york", |
|||
"rsc": true, |
|||
"tsx": true, |
|||
"tailwind": { |
|||
"config": "tailwind.config.js", |
|||
"css": "styles/main.css", |
|||
"baseColor": "gray", |
|||
"cssVariables": true, |
|||
"prefix": "" |
|||
}, |
|||
"aliases": { |
|||
"components": "@/components", |
|||
"utils": "@/lib/utils", |
|||
"ui": "@/components/ui", |
|||
"lib": "@/lib", |
|||
"hooks": "@/hooks" |
|||
} |
|||
} |
|||
@ -0,0 +1,6 @@ |
|||
import { clsx, type ClassValue } from "clsx" |
|||
import { twMerge } from "tailwind-merge" |
|||
|
|||
export function cn(...inputs: ClassValue[]) { |
|||
return twMerge(clsx(inputs)) |
|||
} |
|||
@ -1,5 +1,6 @@ |
|||
/// <reference types="next" />
|
|||
/// <reference types="next/image-types/global" />
|
|||
/// <reference types="next/navigation-types/compat/navigation" />
|
|||
|
|||
// NOTE: This file should not be edited
|
|||
// see https://nextjs.org/docs/basic-features/typescript for more information.
|
|||
5916
web/pnpm-lock.yaml
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
@ -0,0 +1,6 @@ |
|||
module.exports = { |
|||
plugins: { |
|||
tailwindcss: {}, |
|||
autoprefixer: {}, |
|||
}, |
|||
} |
|||
@ -0,0 +1,66 @@ |
|||
@tailwind base; |
|||
@tailwind components; |
|||
@tailwind utilities; |
|||
@layer base { |
|||
:root { |
|||
--background: 0 0% 100%; |
|||
--foreground: 224 71.4% 4.1%; |
|||
--card: 0 0% 100%; |
|||
--card-foreground: 224 71.4% 4.1%; |
|||
--popover: 0 0% 100%; |
|||
--popover-foreground: 224 71.4% 4.1%; |
|||
--primary: 220.9 39.3% 11%; |
|||
--primary-foreground: 210 20% 98%; |
|||
--secondary: 220 14.3% 95.9%; |
|||
--secondary-foreground: 220.9 39.3% 11%; |
|||
--muted: 220 14.3% 95.9%; |
|||
--muted-foreground: 220 8.9% 46.1%; |
|||
--accent: 220 14.3% 95.9%; |
|||
--accent-foreground: 220.9 39.3% 11%; |
|||
--destructive: 0 84.2% 60.2%; |
|||
--destructive-foreground: 210 20% 98%; |
|||
--border: 220 13% 91%; |
|||
--input: 220 13% 91%; |
|||
--ring: 224 71.4% 4.1%; |
|||
--chart-1: 12 76% 61%; |
|||
--chart-2: 173 58% 39%; |
|||
--chart-3: 197 37% 24%; |
|||
--chart-4: 43 74% 66%; |
|||
--chart-5: 27 87% 67%; |
|||
--radius: 0.5rem |
|||
} |
|||
.dark { |
|||
--background: 224 71.4% 4.1%; |
|||
--foreground: 210 20% 98%; |
|||
--card: 224 71.4% 4.1%; |
|||
--card-foreground: 210 20% 98%; |
|||
--popover: 224 71.4% 4.1%; |
|||
--popover-foreground: 210 20% 98%; |
|||
--primary: 210 20% 98%; |
|||
--primary-foreground: 220.9 39.3% 11%; |
|||
--secondary: 215 27.9% 16.9%; |
|||
--secondary-foreground: 210 20% 98%; |
|||
--muted: 215 27.9% 16.9%; |
|||
--muted-foreground: 217.9 10.6% 64.9%; |
|||
--accent: 215 27.9% 16.9%; |
|||
--accent-foreground: 210 20% 98%; |
|||
--destructive: 0 62.8% 30.6%; |
|||
--destructive-foreground: 210 20% 98%; |
|||
--border: 215 27.9% 16.9%; |
|||
--input: 215 27.9% 16.9%; |
|||
--ring: 216 12.2% 83.9%; |
|||
--chart-1: 220 70% 50%; |
|||
--chart-2: 160 60% 45%; |
|||
--chart-3: 30 80% 55%; |
|||
--chart-4: 280 65% 60%; |
|||
--chart-5: 340 75% 55% |
|||
} |
|||
} |
|||
@layer base { |
|||
* { |
|||
@apply border-border; |
|||
} |
|||
body { |
|||
@apply bg-background text-foreground; |
|||
} |
|||
} |
|||
@ -0,0 +1,64 @@ |
|||
/** @type {import('tailwindcss').Config} */ |
|||
module.exports = { |
|||
darkMode: ["class"], |
|||
content: [ |
|||
"./app/**/*.{js,ts,jsx,tsx,mdx}", |
|||
"./pages/**/*.{js,ts,jsx,tsx,mdx}", |
|||
"./components/**/*.{js,ts,jsx,tsx,mdx}", |
|||
|
|||
// Or if using `src` directory:
|
|||
"./src/**/*.{js,ts,jsx,tsx,mdx}", |
|||
], |
|||
theme: { |
|||
extend: { |
|||
borderRadius: { |
|||
lg: 'var(--radius)', |
|||
md: 'calc(var(--radius) - 2px)', |
|||
sm: 'calc(var(--radius) - 4px)' |
|||
}, |
|||
colors: { |
|||
background: 'hsl(var(--background))', |
|||
foreground: 'hsl(var(--foreground))', |
|||
card: { |
|||
DEFAULT: 'hsl(var(--card))', |
|||
foreground: 'hsl(var(--card-foreground))' |
|||
}, |
|||
popover: { |
|||
DEFAULT: 'hsl(var(--popover))', |
|||
foreground: 'hsl(var(--popover-foreground))' |
|||
}, |
|||
primary: { |
|||
DEFAULT: 'hsl(var(--primary))', |
|||
foreground: 'hsl(var(--primary-foreground))' |
|||
}, |
|||
secondary: { |
|||
DEFAULT: 'hsl(var(--secondary))', |
|||
foreground: 'hsl(var(--secondary-foreground))' |
|||
}, |
|||
muted: { |
|||
DEFAULT: 'hsl(var(--muted))', |
|||
foreground: 'hsl(var(--muted-foreground))' |
|||
}, |
|||
accent: { |
|||
DEFAULT: 'hsl(var(--accent))', |
|||
foreground: 'hsl(var(--accent-foreground))' |
|||
}, |
|||
destructive: { |
|||
DEFAULT: 'hsl(var(--destructive))', |
|||
foreground: 'hsl(var(--destructive-foreground))' |
|||
}, |
|||
border: 'hsl(var(--border))', |
|||
input: 'hsl(var(--input))', |
|||
ring: 'hsl(var(--ring))', |
|||
chart: { |
|||
'1': 'hsl(var(--chart-1))', |
|||
'2': 'hsl(var(--chart-2))', |
|||
'3': 'hsl(var(--chart-3))', |
|||
'4': 'hsl(var(--chart-4))', |
|||
'5': 'hsl(var(--chart-5))' |
|||
} |
|||
} |
|||
} |
|||
}, |
|||
plugins: [require("tailwindcss-animate")], |
|||
} |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue