mirror of
https://github.com/spacedriveapp/spacedrive.git
synced 2026-05-07 06:43:29 -04:00
holy mother of hot reload
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
This commit is contained in:
@@ -1 +1 @@
|
||||
module.exports = require('@sd/ui/tailwind');
|
||||
module.exports = require('@sd/ui/tailwind')('desktop');
|
||||
|
||||
@@ -4,9 +4,6 @@ import { name, version } from './package.json';
|
||||
import * as path from 'path';
|
||||
import svgr from '@honkhonk/vite-plugin-svgr';
|
||||
|
||||
function resolvePackage(name: string) {
|
||||
return path.resolve(require.resolve(`${name}/package.json`), '../src');
|
||||
}
|
||||
// https://vitejs.dev/config/
|
||||
export default defineConfig({
|
||||
server: {
|
||||
@@ -23,16 +20,6 @@ export default defineConfig({
|
||||
define: {
|
||||
pkgJson: { name, version }
|
||||
},
|
||||
optimizeDeps: {
|
||||
include: ['@sd/interface', '@sd/ui', '@sd/client']
|
||||
},
|
||||
resolve: {
|
||||
alias: {
|
||||
'@sd/interface': resolvePackage('@sd/interface'),
|
||||
'@sd/ui': resolvePackage('@sd/ui'),
|
||||
'@sd/client': resolvePackage('@sd/client')
|
||||
}
|
||||
},
|
||||
build: {
|
||||
outDir: '../dist',
|
||||
assetsDir: '.'
|
||||
|
||||
24
apps/landing/.gitignore
vendored
Normal file
24
apps/landing/.gitignore
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
pnpm-debug.log*
|
||||
lerna-debug.log*
|
||||
|
||||
node_modules
|
||||
dist
|
||||
dist-ssr
|
||||
*.local
|
||||
|
||||
# Editor directories and files
|
||||
.vscode/*
|
||||
!.vscode/extensions.json
|
||||
.idea
|
||||
.DS_Store
|
||||
*.suo
|
||||
*.ntvs*
|
||||
*.njsproj
|
||||
*.sln
|
||||
*.sw?
|
||||
@@ -1,43 +0,0 @@
|
||||
# TypeScript Next.js example
|
||||
|
||||
This is a really simple project that shows the usage of Next.js with TypeScript.
|
||||
|
||||
## Deploy your own
|
||||
|
||||
Deploy the example using [Vercel](https://vercel.com?utm_source=github&utm_medium=readme&utm_campaign=next-example) or preview live with [StackBlitz](https://stackblitz.com/github/vercel/next.js/tree/canary/examples/with-typescript)
|
||||
|
||||
[](https://vercel.com/new/git/external?repository-url=https://github.com/vercel/next.js/tree/canary/examples/with-typescript&project-name=with-typescript&repository-name=with-typescript)
|
||||
|
||||
## How to use it?
|
||||
|
||||
Execute [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app) with [npm](https://docs.npmjs.com/cli/init) or [Yarn](https://yarnpkg.com/lang/en/docs/cli/create/) to bootstrap the example:
|
||||
|
||||
```bash
|
||||
npx create-next-app --example with-typescript with-typescript-app
|
||||
# or
|
||||
yarn create next-app --example with-typescript with-typescript-app
|
||||
# or
|
||||
pnpm create next-app -- --example with-typescript with-typescript-app
|
||||
```
|
||||
|
||||
Deploy it to the cloud with [Vercel](https://vercel.com/new?utm_source=github&utm_medium=readme&utm_campaign=next-example) ([Documentation](https://nextjs.org/docs/deployment)).
|
||||
|
||||
## Notes
|
||||
|
||||
This example shows how to integrate the TypeScript type system into Next.js. Since TypeScript is supported out of the box with Next.js, all we have to do is to install TypeScript.
|
||||
|
||||
```
|
||||
npm install --save-dev typescript
|
||||
```
|
||||
|
||||
To enable TypeScript's features, we install the type declarations for React and Node.
|
||||
|
||||
```
|
||||
npm install --save-dev @types/react @types/react-dom @types/node
|
||||
```
|
||||
|
||||
When we run `next dev` the next time, Next.js will start looking for any `.ts` or `.tsx` files in our project and builds it. It even automatically creates a `tsconfig.json` file for our project with the recommended settings.
|
||||
|
||||
Next.js has built-in TypeScript declarations, so we'll get autocompletion for Next.js' modules straight away.
|
||||
|
||||
A `type-check` script is also added to `package.json`, which runs TypeScript's `tsc` CLI in `noEmit` mode to run type-checking separately. You can then include this, for example, in your `test` scripts.
|
||||
@@ -1,33 +0,0 @@
|
||||
import React, { ReactNode } from 'react';
|
||||
import Link from 'next/link';
|
||||
import Head from 'next/head';
|
||||
|
||||
type Props = {
|
||||
children?: ReactNode;
|
||||
title?: string;
|
||||
};
|
||||
|
||||
const Layout = ({ children, title = 'Spacedrive' }: Props) => (
|
||||
<>
|
||||
<Head>
|
||||
<title>{title}</title>
|
||||
<meta charSet="utf-8" />
|
||||
<meta name="viewport" content="initial-scale=1.0, width=device-width" />
|
||||
</Head>
|
||||
<header>
|
||||
{/* <nav>
|
||||
<Link href="/">
|
||||
<a>Home</a>
|
||||
</Link>{' '}
|
||||
</nav> */}
|
||||
</header>
|
||||
<div className="flex flex-col items-center h-screen p-1 bg-[#000000] text-white">
|
||||
{children as any}
|
||||
</div>
|
||||
{/* <footer className="bg-gray-100 ">
|
||||
<span>Version 0.1.0</span>
|
||||
</footer> */}
|
||||
</>
|
||||
);
|
||||
|
||||
export default Layout;
|
||||
@@ -1,3 +0,0 @@
|
||||
@tailwind base;
|
||||
@tailwind components;
|
||||
@tailwind utilities;
|
||||
13
apps/landing/index.html
Normal file
13
apps/landing/index.html
Normal file
@@ -0,0 +1,13 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/svg+xml" href="/src/favicon.svg" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Vite App</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="root"></div>
|
||||
<script type="module" src="/src/main.tsx"></script>
|
||||
</body>
|
||||
</html>
|
||||
5
apps/landing/next-env.d.ts
vendored
5
apps/landing/next-env.d.ts
vendored
@@ -1,5 +0,0 @@
|
||||
/// <reference types="next" />
|
||||
/// <reference types="next/image-types/global" />
|
||||
|
||||
// NOTE: This file should not be edited
|
||||
// see https://nextjs.org/docs/basic-features/typescript for more information.
|
||||
@@ -1,5 +0,0 @@
|
||||
module.exports = {
|
||||
experimental: {
|
||||
externalDir: true
|
||||
}
|
||||
};
|
||||
@@ -1,29 +1,30 @@
|
||||
{
|
||||
"name": "@sd/landing",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"scripts": {
|
||||
"dev": "next -p 8003",
|
||||
"build": "next build",
|
||||
"start": "next start",
|
||||
"type-check": "tsc"
|
||||
"dev": "vite",
|
||||
"build": "tsc && vite build",
|
||||
"preview": "vite preview"
|
||||
},
|
||||
"dependencies": {
|
||||
"@sd/interface": "*",
|
||||
"@sd/ui": "*",
|
||||
"autoprefixer": "^10.4.4",
|
||||
"next": "latest",
|
||||
"postcss": "^8.4.12",
|
||||
"react": "^17.0.2",
|
||||
"react-dom": "^17.0.2",
|
||||
"@sd/client": "workspace:*",
|
||||
"@sd/core": "workspace:*",
|
||||
"@sd/interface": "workspace:*",
|
||||
"@sd/ui": "workspace:*",
|
||||
"react": "^18.0.0",
|
||||
"react-dom": "^18.0.0",
|
||||
"react-tsparticles": "^2.0.6",
|
||||
"sass": "^1.50.0",
|
||||
"tailwindcss": "^3.0.23",
|
||||
"tsparticles": "^2.0.6"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^12.12.21",
|
||||
"@types/react": "^17.0.2",
|
||||
"@types/react-dom": "^17.0.1",
|
||||
"typescript": "^4.6.3"
|
||||
"@types/react": "^18.0.0",
|
||||
"@types/react-dom": "^18.0.0",
|
||||
"@vitejs/plugin-react": "^1.3.1",
|
||||
"autoprefixer": "^10.4.4",
|
||||
"postcss": "^8.4.12",
|
||||
"tailwind": "^4.0.0",
|
||||
"typescript": "^4.6.3",
|
||||
"vite": "^2.9.5"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
import '../components/global.scss';
|
||||
|
||||
function MyApp({ Component, pageProps }) {
|
||||
return <Component {...pageProps} />;
|
||||
}
|
||||
|
||||
export default MyApp;
|
||||
@@ -1,27 +0,0 @@
|
||||
// import Link from 'next/link';
|
||||
import Layout from '../components/Layout';
|
||||
import { Bubbles } from '../components/Bubbles';
|
||||
import { Button } from '@sd/ui';
|
||||
|
||||
const IndexPage = () => (
|
||||
<Layout title="Spacedrive: The file explorer from the future.">
|
||||
<img src="app-logo.svg" className="w-40 mt-20" />
|
||||
<h1 className="mt-10 text-6xl font-black">The file explorer from the future</h1>
|
||||
<p className="mt-1 mb-10 text-lg text-gray-450">
|
||||
Spacedrive is the first file manager that puts the full power of the cloud in your hands.
|
||||
</p>
|
||||
<Button variant="primary" className="mb-10">
|
||||
Download
|
||||
</Button>
|
||||
|
||||
<iframe
|
||||
className="z-50 border rounded-lg shadow-2xl border-gray-550"
|
||||
width={1200}
|
||||
height={600}
|
||||
src="http://localhost:8002?library_id=9068c6ec-cf90-451b-bb30-4174781e7bc6"
|
||||
/>
|
||||
<Bubbles />
|
||||
</Layout>
|
||||
);
|
||||
|
||||
export default IndexPage;
|
||||
@@ -1,6 +1 @@
|
||||
module.exports = {
|
||||
plugins: {
|
||||
tailwindcss: {},
|
||||
autoprefixer: {}
|
||||
}
|
||||
};
|
||||
module.exports = require('@sd/ui/postcss');
|
||||
|
||||
28
apps/landing/src/App.tsx
Normal file
28
apps/landing/src/App.tsx
Normal file
@@ -0,0 +1,28 @@
|
||||
import { useState } from 'react';
|
||||
import { Button } from '@sd/ui';
|
||||
import { Bubbles } from './Bubbles';
|
||||
|
||||
function App() {
|
||||
return (
|
||||
<div className="flex flex-col items-center h-screen text-white bg-black">
|
||||
<img src="app-logo.svg" className="z-50 w-40 pt-20" />
|
||||
<h1 className="mt-10 text-6xl font-black">The file explorer from the future</h1>
|
||||
<p className="mt-1 mb-10 text-lg text-gray-450">
|
||||
Spacedrive is the first file explorer that puts the full power of the cloud in your hands.
|
||||
</p>
|
||||
<Button variant="primary" className="mb-10">
|
||||
Download
|
||||
</Button>
|
||||
|
||||
<iframe
|
||||
className="z-50 border rounded-lg shadow-2xl border-gray-550"
|
||||
width={1200}
|
||||
height={600}
|
||||
src="http://localhost:8002?library_id=9068c6ec-cf90-451b-bb30-4174781e7bc6"
|
||||
/>
|
||||
<Bubbles />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export default App;
|
||||
@@ -3,12 +3,12 @@ import Particles from 'react-tsparticles';
|
||||
import { loadFull } from 'tsparticles';
|
||||
|
||||
export const Bubbles = () => {
|
||||
const particlesInit = async (main) => {
|
||||
const particlesInit = async (main: any) => {
|
||||
console.log(main);
|
||||
await loadFull(main);
|
||||
};
|
||||
|
||||
const particlesLoaded = (container) => {
|
||||
const particlesLoaded = (container: any) => {
|
||||
console.log(container);
|
||||
};
|
||||
|
||||
15
apps/landing/src/favicon.svg
Normal file
15
apps/landing/src/favicon.svg
Normal file
@@ -0,0 +1,15 @@
|
||||
<svg width="410" height="404" viewBox="0 0 410 404" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M399.641 59.5246L215.643 388.545C211.844 395.338 202.084 395.378 198.228 388.618L10.5817 59.5563C6.38087 52.1896 12.6802 43.2665 21.0281 44.7586L205.223 77.6824C206.398 77.8924 207.601 77.8904 208.776 77.6763L389.119 44.8058C397.439 43.2894 403.768 52.1434 399.641 59.5246Z" fill="url(#paint0_linear)"/>
|
||||
<path d="M292.965 1.5744L156.801 28.2552C154.563 28.6937 152.906 30.5903 152.771 32.8664L144.395 174.33C144.198 177.662 147.258 180.248 150.51 179.498L188.42 170.749C191.967 169.931 195.172 173.055 194.443 176.622L183.18 231.775C182.422 235.487 185.907 238.661 189.532 237.56L212.947 230.446C216.577 229.344 220.065 232.527 219.297 236.242L201.398 322.875C200.278 328.294 207.486 331.249 210.492 326.603L212.5 323.5L323.454 102.072C325.312 98.3645 322.108 94.137 318.036 94.9228L279.014 102.454C275.347 103.161 272.227 99.746 273.262 96.1583L298.731 7.86689C299.767 4.27314 296.636 0.855181 292.965 1.5744Z" fill="url(#paint1_linear)"/>
|
||||
<defs>
|
||||
<linearGradient id="paint0_linear" x1="6.00017" y1="32.9999" x2="235" y2="344" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#41D1FF"/>
|
||||
<stop offset="1" stop-color="#BD34FE"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint1_linear" x1="194.651" y1="8.81818" x2="236.076" y2="292.989" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#FFEA83"/>
|
||||
<stop offset="0.0833333" stop-color="#FFDD35"/>
|
||||
<stop offset="1" stop-color="#FFA800"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
13
apps/landing/src/index.css
Normal file
13
apps/landing/src/index.css
Normal file
@@ -0,0 +1,13 @@
|
||||
body {
|
||||
margin: 0;
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
|
||||
'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
|
||||
sans-serif;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
code {
|
||||
font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
|
||||
monospace;
|
||||
}
|
||||
7
apps/landing/src/logo.svg
Normal file
7
apps/landing/src/logo.svg
Normal file
@@ -0,0 +1,7 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 841.9 595.3">
|
||||
<g fill="#61DAFB">
|
||||
<path d="M666.3 296.5c0-32.5-40.7-63.3-103.1-82.4 14.4-63.6 8-114.2-20.2-130.4-6.5-3.8-14.1-5.6-22.4-5.6v22.3c4.6 0 8.3.9 11.4 2.6 13.6 7.8 19.5 37.5 14.9 75.7-1.1 9.4-2.9 19.3-5.1 29.4-19.6-4.8-41-8.5-63.5-10.9-13.5-18.5-27.5-35.3-41.6-50 32.6-30.3 63.2-46.9 84-46.9V78c-27.5 0-63.5 19.6-99.9 53.6-36.4-33.8-72.4-53.2-99.9-53.2v22.3c20.7 0 51.4 16.5 84 46.6-14 14.7-28 31.4-41.3 49.9-22.6 2.4-44 6.1-63.6 11-2.3-10-4-19.7-5.2-29-4.7-38.2 1.1-67.9 14.6-75.8 3-1.8 6.9-2.6 11.5-2.6V78.5c-8.4 0-16 1.8-22.6 5.6-28.1 16.2-34.4 66.7-19.9 130.1-62.2 19.2-102.7 49.9-102.7 82.3 0 32.5 40.7 63.3 103.1 82.4-14.4 63.6-8 114.2 20.2 130.4 6.5 3.8 14.1 5.6 22.5 5.6 27.5 0 63.5-19.6 99.9-53.6 36.4 33.8 72.4 53.2 99.9 53.2 8.4 0 16-1.8 22.6-5.6 28.1-16.2 34.4-66.7 19.9-130.1 62-19.1 102.5-49.9 102.5-82.3zm-130.2-66.7c-3.7 12.9-8.3 26.2-13.5 39.5-4.1-8-8.4-16-13.1-24-4.6-8-9.5-15.8-14.4-23.4 14.2 2.1 27.9 4.7 41 7.9zm-45.8 106.5c-7.8 13.5-15.8 26.3-24.1 38.2-14.9 1.3-30 2-45.2 2-15.1 0-30.2-.7-45-1.9-8.3-11.9-16.4-24.6-24.2-38-7.6-13.1-14.5-26.4-20.8-39.8 6.2-13.4 13.2-26.8 20.7-39.9 7.8-13.5 15.8-26.3 24.1-38.2 14.9-1.3 30-2 45.2-2 15.1 0 30.2.7 45 1.9 8.3 11.9 16.4 24.6 24.2 38 7.6 13.1 14.5 26.4 20.8 39.8-6.3 13.4-13.2 26.8-20.7 39.9zm32.3-13c5.4 13.4 10 26.8 13.8 39.8-13.1 3.2-26.9 5.9-41.2 8 4.9-7.7 9.8-15.6 14.4-23.7 4.6-8 8.9-16.1 13-24.1zM421.2 430c-9.3-9.6-18.6-20.3-27.8-32 9 .4 18.2.7 27.5.7 9.4 0 18.7-.2 27.8-.7-9 11.7-18.3 22.4-27.5 32zm-74.4-58.9c-14.2-2.1-27.9-4.7-41-7.9 3.7-12.9 8.3-26.2 13.5-39.5 4.1 8 8.4 16 13.1 24 4.7 8 9.5 15.8 14.4 23.4zM420.7 163c9.3 9.6 18.6 20.3 27.8 32-9-.4-18.2-.7-27.5-.7-9.4 0-18.7.2-27.8.7 9-11.7 18.3-22.4 27.5-32zm-74 58.9c-4.9 7.7-9.8 15.6-14.4 23.7-4.6 8-8.9 16-13 24-5.4-13.4-10-26.8-13.8-39.8 13.1-3.1 26.9-5.8 41.2-7.9zm-90.5 125.2c-35.4-15.1-58.3-34.9-58.3-50.6 0-15.7 22.9-35.6 58.3-50.6 8.6-3.7 18-7 27.7-10.1 5.7 19.6 13.2 40 22.5 60.9-9.2 20.8-16.6 41.1-22.2 60.6-9.9-3.1-19.3-6.5-28-10.2zM310 490c-13.6-7.8-19.5-37.5-14.9-75.7 1.1-9.4 2.9-19.3 5.1-29.4 19.6 4.8 41 8.5 63.5 10.9 13.5 18.5 27.5 35.3 41.6 50-32.6 30.3-63.2 46.9-84 46.9-4.5-.1-8.3-1-11.3-2.7zm237.2-76.2c4.7 38.2-1.1 67.9-14.6 75.8-3 1.8-6.9 2.6-11.5 2.6-20.7 0-51.4-16.5-84-46.6 14-14.7 28-31.4 41.3-49.9 22.6-2.4 44-6.1 63.6-11 2.3 10.1 4.1 19.8 5.2 29.1zm38.5-66.7c-8.6 3.7-18 7-27.7 10.1-5.7-19.6-13.2-40-22.5-60.9 9.2-20.8 16.6-41.1 22.2-60.6 9.9 3.1 19.3 6.5 28.1 10.2 35.4 15.1 58.3 34.9 58.3 50.6-.1 15.7-23 35.6-58.4 50.6zM320.8 78.4z"/>
|
||||
<circle cx="420.9" cy="296.5" r="45.7"/>
|
||||
<path d="M520.5 78.1z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.6 KiB |
10
apps/landing/src/main.tsx
Normal file
10
apps/landing/src/main.tsx
Normal file
@@ -0,0 +1,10 @@
|
||||
import React from 'react';
|
||||
import ReactDOM from 'react-dom/client';
|
||||
import App from './App';
|
||||
import '@sd/ui/style';
|
||||
|
||||
ReactDOM.createRoot(document.getElementById('root')!).render(
|
||||
<React.StrictMode>
|
||||
<App />
|
||||
</React.StrictMode>
|
||||
);
|
||||
1
apps/landing/src/vite-env.d.ts
vendored
Normal file
1
apps/landing/src/vite-env.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
/// <reference types="vite/client" />
|
||||
@@ -1,104 +1 @@
|
||||
module.exports = {
|
||||
content: ['./pages/**/*.{js,ts,jsx,tsx}', './components/**/*.{js,ts,jsx,tsx}'],
|
||||
darkMode: 'media',
|
||||
mode: 'jit',
|
||||
theme: {
|
||||
fontSize: {
|
||||
'tiny': '.65rem',
|
||||
'xs': '.75rem',
|
||||
'sm': '.84rem',
|
||||
'base': '1rem',
|
||||
'lg': '1.125rem',
|
||||
'xl': '1.25rem',
|
||||
'2xl': '1.5rem',
|
||||
'3xl': '1.875rem',
|
||||
'4xl': '2.25rem',
|
||||
'5xl': '3rem',
|
||||
'6xl': '4rem',
|
||||
'7xl': '5rem'
|
||||
},
|
||||
extend: {
|
||||
boxShadow: {
|
||||
box: '0px 4px 9px rgba(0, 0, 0, 0.05)',
|
||||
backdrop: '0px 4px 66px rgba(0, 0, 0, 0.08)'
|
||||
},
|
||||
bg: {
|
||||
funky: 'linear-gradient(90.63deg,#46bcff 12.1%,#85edfb 50.85%,#e04cf8 91.09%)'
|
||||
},
|
||||
colors: {
|
||||
primary: {
|
||||
DEFAULT: '#2599FF',
|
||||
50: '#FFFFFF',
|
||||
100: '#F1F8FF',
|
||||
200: '#BEE1FF',
|
||||
300: '#8BC9FF',
|
||||
400: '#58B1FF',
|
||||
500: '#2599FF',
|
||||
600: '#0081F1',
|
||||
700: '#0065BE',
|
||||
800: '#004A8B',
|
||||
900: '#002F58'
|
||||
},
|
||||
gray: {
|
||||
DEFAULT: '#505468',
|
||||
50: '#F1F1F4',
|
||||
100: '#E8E9ED',
|
||||
150: '#E0E1E6',
|
||||
200: '#D8DAE3',
|
||||
250: '#D2D4DC',
|
||||
300: '#C0C2CE',
|
||||
350: '#A6AABF',
|
||||
400: '#9196A8',
|
||||
450: '#71758A',
|
||||
500: '#303544',
|
||||
550: '#20222d',
|
||||
600: '#171720',
|
||||
650: '#121219',
|
||||
700: '#121317',
|
||||
750: '#0D0E11',
|
||||
800: '#0C0C0F',
|
||||
850: '#08090D',
|
||||
900: '#060609',
|
||||
950: '#030303'
|
||||
}
|
||||
},
|
||||
// fontFamily: { sans: ['Inter', ...defaultTheme.fontFamily.sans] }
|
||||
extend: {
|
||||
transitionTimingFunction: {
|
||||
'css': 'ease',
|
||||
'css-in': 'ease-in',
|
||||
'css-out': 'ease-out',
|
||||
'css-in-out': 'ease-in-out',
|
||||
'in-sine': 'cubic-bezier(0.12, 0, 0.39, 0)',
|
||||
'out-sine': 'cubic-bezier(0.61, 1, 0.88, 1)',
|
||||
'in-out-sine': 'cubic-bezier(0.37, 0, 0.63, 1)',
|
||||
'in-quad': 'cubic-bezier(0.11, 0, 0.5, 0)',
|
||||
'out-quad': 'cubic-bezier(0.5, 1, 0.89, 1)',
|
||||
'in-out-quad': 'cubic-bezier(0.45, 0, 0.55, 1)',
|
||||
'in-cubic': 'cubic-bezier(0.32, 0, 0.67, 0)',
|
||||
'out-cubic': 'cubic-bezier(0.33, 1, 0.68, 1)',
|
||||
'in-out-cubic': 'cubic-bezier(0.65, 0, 0.35, 1)',
|
||||
'in-quart': 'cubic-bezier(0.5, 0, 0.75, 0)',
|
||||
'out-quart': 'cubic-bezier(0.25, 1, 0.5, 1)',
|
||||
'in-out-quart': 'cubic-bezier(0.76, 0, 0.24, 1)',
|
||||
'in-quint': 'cubic-bezier(0.64, 0, 0.78, 0)',
|
||||
'out-quint': 'cubic-bezier(0.22, 1, 0.36, 1)',
|
||||
'in-out-quint': 'cubic-bezier(0.83, 0, 0.17, 1)',
|
||||
'in-expo': 'cubic-bezier(0.7, 0, 0.84, 0)',
|
||||
'out-expo': 'cubic-bezier(0.16, 1, 0.3, 1)',
|
||||
'in-out-expo': 'cubic-bezier(0.87, 0, 0.13, 1)',
|
||||
'in-circ': 'cubic-bezier(0.55, 0, 1, 0.45)',
|
||||
'out-circ': 'cubic-bezier(0, 0.55, 0.45, 1)',
|
||||
'in-out-circ': 'cubic-bezier(0.85, 0, 0.15, 1)',
|
||||
'in-back': 'cubic-bezier(0.36, 0, 0.66, -0.56)',
|
||||
'out-back': 'cubic-bezier(0.34, 1.56, 0.64, 1)',
|
||||
'in-out-back': 'cubic-bezier(0.68, -0.6, 0.32, 1.6)'
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
variants: {
|
||||
extend: {}
|
||||
},
|
||||
plugins: []
|
||||
};
|
||||
module.exports = require('@sd/ui/tailwind')('landing');
|
||||
|
||||
@@ -1,30 +1,27 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"target": "es5",
|
||||
"lib": [
|
||||
"dom",
|
||||
"dom.iterable",
|
||||
"esnext"
|
||||
],
|
||||
"allowJs": true,
|
||||
"target": "ESNext",
|
||||
"useDefineForClassFields": true,
|
||||
"lib": ["DOM", "DOM.Iterable", "ESNext"],
|
||||
"allowJs": false,
|
||||
"skipLibCheck": true,
|
||||
"strict": false,
|
||||
"esModuleInterop": false,
|
||||
"allowSyntheticDefaultImports": true,
|
||||
"strict": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"noEmit": true,
|
||||
"esModuleInterop": true,
|
||||
"module": "esnext",
|
||||
"moduleResolution": "node",
|
||||
"module": "ESNext",
|
||||
"moduleResolution": "Node",
|
||||
"resolveJsonModule": true,
|
||||
"isolatedModules": true,
|
||||
"jsx": "preserve",
|
||||
"incremental": true
|
||||
"noEmit": true,
|
||||
"jsx": "react-jsx",
|
||||
"baseUrl": "./",
|
||||
"paths": {
|
||||
"@sd/interface": ["../../packages/interface/src/index.ts"],
|
||||
"@sd/ui": ["../../packages/ui/src/index.ts"],
|
||||
"@sd/client": ["../../packages/client/src/index.ts"],
|
||||
}
|
||||
},
|
||||
"include": [
|
||||
"next-env.d.ts",
|
||||
"**/*.ts",
|
||||
"**/*.tsx"
|
||||
],
|
||||
"exclude": [
|
||||
"node_modules"
|
||||
]
|
||||
"include": ["src"],
|
||||
"references": [{ "path": "./tsconfig.node.json" }]
|
||||
}
|
||||
|
||||
8
apps/landing/tsconfig.node.json
Normal file
8
apps/landing/tsconfig.node.json
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"composite": true,
|
||||
"module": "esnext",
|
||||
"moduleResolution": "node"
|
||||
},
|
||||
"include": ["vite.config.ts"]
|
||||
}
|
||||
12
apps/landing/vite.config.ts
Normal file
12
apps/landing/vite.config.ts
Normal file
@@ -0,0 +1,12 @@
|
||||
import { defineConfig } from 'vite';
|
||||
import react from '@vitejs/plugin-react';
|
||||
|
||||
// https://vitejs.dev/config/
|
||||
export default defineConfig({
|
||||
// @ts-ignore
|
||||
plugins: [react()],
|
||||
server: {
|
||||
port: 8003
|
||||
},
|
||||
publicDir: 'public'
|
||||
});
|
||||
@@ -1,208 +0,0 @@
|
||||
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
|
||||
# yarn lockfile v1
|
||||
|
||||
|
||||
"@next/env@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/env/-/env-12.1.5.tgz#a21ba6708022d630402ca2b340316e69a0296dfc"
|
||||
integrity sha512-+34yUJslfJi7Lyx6ELuN8nWcOzi27izfYnZIC1Dqv7kmmfiBVxgzR3BXhlvEMTKC2IRJhXVs2FkMY+buQe3k7Q==
|
||||
|
||||
"@next/swc-android-arm-eabi@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.1.5.tgz#36729ab3dfd7743e82cfe536b43254dcb146620c"
|
||||
integrity sha512-SKnGTdYcoN04Y2DvE0/Y7/MjkA+ltsmbuH/y/hR7Ob7tsj+8ZdOYuk+YvW1B8dY20nDPHP58XgDTSm2nA8BzzA==
|
||||
|
||||
"@next/swc-android-arm64@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-12.1.5.tgz#52578f552305c92d0b9b81d603c9643fb71e0835"
|
||||
integrity sha512-YXiqgQ/9Rxg1dXp6brXbeQM1JDx9SwUY/36JiE+36FXqYEmDYbxld9qkX6GEzkc5rbwJ+RCitargnzEtwGW0mw==
|
||||
|
||||
"@next/swc-darwin-arm64@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.1.5.tgz#3d5b53211484c72074f4975ba0ec2b1107db300e"
|
||||
integrity sha512-y8mhldb/WFZ6lFeowkGfi0cO/lBdiBqDk4T4LZLvCpoQp4Or/NzUN6P5NzBQZ5/b4oUHM/wQICEM+1wKA4qIVw==
|
||||
|
||||
"@next/swc-darwin-x64@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-12.1.5.tgz#adcabb732d226453777c0d37d58eaff9328b66fd"
|
||||
integrity sha512-wqJ3X7WQdTwSGi0kIDEmzw34QHISRIQ5uvC+VXmsIlCPFcMA+zM5723uh8NfuKGquDMiEMS31a83QgkuHMYbwQ==
|
||||
|
||||
"@next/swc-linux-arm-gnueabihf@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.1.5.tgz#82a7cde67482b756bc65fbebf1dfa8a782074e93"
|
||||
integrity sha512-WnhdM5duONMvt2CncAl+9pim0wBxDS2lHoo7ub/o/i1bRbs11UTzosKzEXVaTDCUkCX2c32lIDi1WcN2ZPkcdw==
|
||||
|
||||
"@next/swc-linux-arm64-gnu@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.1.5.tgz#f82ca014504950aab751e81f467492e9be0bad5d"
|
||||
integrity sha512-Jq2H68yQ4bLUhR/XQnbw3LDW0GMQn355qx6rU36BthDLeGue7YV7MqNPa8GKvrpPocEMW77nWx/1yI6w6J07gw==
|
||||
|
||||
"@next/swc-linux-arm64-musl@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.1.5.tgz#f811ec9f4b12a978426c284c95ab2f515ddf7f9e"
|
||||
integrity sha512-KgPjwdbhDqXI7ghNN8V/WAiLquc9Ebe8KBrNNEL0NQr+yd9CyKJ6KqjayVkmX+hbHzbyvbui/5wh/p3CZQ9xcQ==
|
||||
|
||||
"@next/swc-linux-x64-gnu@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.1.5.tgz#d44857257e6d20dc841998951d584ab1f25772c3"
|
||||
integrity sha512-O2ErUTvCJ6DkNTSr9pbu1n3tcqykqE/ebty1rwClzIYdOgpB3T2MfEPP+K7GhUR87wmN/hlihO9ch7qpVFDGKw==
|
||||
|
||||
"@next/swc-linux-x64-musl@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.1.5.tgz#3cc523abadc9a2a6de680593aff06e71cc29ecef"
|
||||
integrity sha512-1eIlZmlO/VRjxxzUBcVosf54AFU3ltAzHi+BJA+9U/lPxCYIsT+R4uO3QksRzRjKWhVQMRjEnlXyyq5SKJm7BA==
|
||||
|
||||
"@next/swc-win32-arm64-msvc@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.1.5.tgz#c62232d869f1f9b22e8f24e4e7f05307c20f30ca"
|
||||
integrity sha512-oromsfokbEuVb0CBLLE7R9qX3KGXucZpsojLpzUh1QJjuy1QkrPJncwr8xmWQnwgtQ6ecMWXgXPB+qtvizT9Tw==
|
||||
|
||||
"@next/swc-win32-ia32-msvc@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.1.5.tgz#2bd9b28a9ba730d12a493e7d9d18e150fe89d496"
|
||||
integrity sha512-a/51L5KzBpeZSW9LbekMo3I3Cwul+V+QKwbEIMA+Qwb2qrlcn1L9h3lt8cHqNTFt2y72ce6aTwDTw1lyi5oIRA==
|
||||
|
||||
"@next/swc-win32-x64-msvc@12.1.5":
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.1.5.tgz#02f377e4d41eaaacf265e34bab9bacd8efc4a351"
|
||||
integrity sha512-/SoXW1Ntpmpw3AXAzfDRaQidnd8kbZ2oSni8u5z0yw6t4RwJvmdZy1eOaAADRThWKV+2oU90++LSnXJIwBRWYQ==
|
||||
|
||||
"@types/node@^12.12.21":
|
||||
version "12.20.47"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.47.tgz#ca9237d51f2a2557419688511dab1c8daf475188"
|
||||
integrity sha512-BzcaRsnFuznzOItW1WpQrDHM7plAa7GIDMZ6b5pnMbkqEtM/6WCOhvZar39oeMQP79gwvFUWjjptE7/KGcNqFg==
|
||||
|
||||
"@types/prop-types@*":
|
||||
version "15.7.5"
|
||||
resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf"
|
||||
integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==
|
||||
|
||||
"@types/react-dom@^17.0.1":
|
||||
version "17.0.15"
|
||||
resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.15.tgz#f2c8efde11521a4b7991e076cb9c70ba3bb0d156"
|
||||
integrity sha512-Tr9VU9DvNoHDWlmecmcsE5ZZiUkYx+nKBzum4Oxe1K0yJVyBlfbq7H3eXjxXqJczBKqPGq3EgfTru4MgKb9+Yw==
|
||||
dependencies:
|
||||
"@types/react" "^17"
|
||||
|
||||
"@types/react@^17", "@types/react@^17.0.2":
|
||||
version "17.0.44"
|
||||
resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.44.tgz#c3714bd34dd551ab20b8015d9d0dbec812a51ec7"
|
||||
integrity sha512-Ye0nlw09GeMp2Suh8qoOv0odfgCoowfM/9MG6WeRD60Gq9wS90bdkdRtYbRkNhXOpG4H+YXGvj4wOWhAC0LJ1g==
|
||||
dependencies:
|
||||
"@types/prop-types" "*"
|
||||
"@types/scheduler" "*"
|
||||
csstype "^3.0.2"
|
||||
|
||||
"@types/scheduler@*":
|
||||
version "0.16.2"
|
||||
resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39"
|
||||
integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==
|
||||
|
||||
caniuse-lite@^1.0.30001283:
|
||||
version "1.0.30001331"
|
||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001331.tgz#41048f2a5cf0c3c6198f40207cd323388b3d4399"
|
||||
integrity sha512-Y1xk6paHpUXKP/P6YjQv1xqyTbgAP05ycHBcRdQjTcyXlWol868sJJPlmk5ylOekw2BrucWes5jk+LvVd7WZ5Q==
|
||||
|
||||
csstype@^3.0.2:
|
||||
version "3.0.11"
|
||||
resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.11.tgz#d66700c5eacfac1940deb4e3ee5642792d85cd33"
|
||||
integrity sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw==
|
||||
|
||||
"js-tokens@^3.0.0 || ^4.0.0":
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
|
||||
integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
|
||||
|
||||
loose-envify@^1.1.0:
|
||||
version "1.4.0"
|
||||
resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
|
||||
integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
|
||||
dependencies:
|
||||
js-tokens "^3.0.0 || ^4.0.0"
|
||||
|
||||
nanoid@^3.1.30:
|
||||
version "3.3.2"
|
||||
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.2.tgz#c89622fafb4381cd221421c69ec58547a1eec557"
|
||||
integrity sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA==
|
||||
|
||||
next@latest:
|
||||
version "12.1.5"
|
||||
resolved "https://registry.yarnpkg.com/next/-/next-12.1.5.tgz#7a07687579ddce61ee519493e1c178d83abac063"
|
||||
integrity sha512-YGHDpyfgCfnT5GZObsKepmRnne7Kzp7nGrac07dikhutWQug7hHg85/+sPJ4ZW5Q2pDkb+n0FnmLkmd44htIJQ==
|
||||
dependencies:
|
||||
"@next/env" "12.1.5"
|
||||
caniuse-lite "^1.0.30001283"
|
||||
postcss "8.4.5"
|
||||
styled-jsx "5.0.1"
|
||||
optionalDependencies:
|
||||
"@next/swc-android-arm-eabi" "12.1.5"
|
||||
"@next/swc-android-arm64" "12.1.5"
|
||||
"@next/swc-darwin-arm64" "12.1.5"
|
||||
"@next/swc-darwin-x64" "12.1.5"
|
||||
"@next/swc-linux-arm-gnueabihf" "12.1.5"
|
||||
"@next/swc-linux-arm64-gnu" "12.1.5"
|
||||
"@next/swc-linux-arm64-musl" "12.1.5"
|
||||
"@next/swc-linux-x64-gnu" "12.1.5"
|
||||
"@next/swc-linux-x64-musl" "12.1.5"
|
||||
"@next/swc-win32-arm64-msvc" "12.1.5"
|
||||
"@next/swc-win32-ia32-msvc" "12.1.5"
|
||||
"@next/swc-win32-x64-msvc" "12.1.5"
|
||||
|
||||
object-assign@^4.1.1:
|
||||
version "4.1.1"
|
||||
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
|
||||
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
|
||||
|
||||
picocolors@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
|
||||
integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
|
||||
|
||||
postcss@8.4.5:
|
||||
version "8.4.5"
|
||||
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.5.tgz#bae665764dfd4c6fcc24dc0fdf7e7aa00cc77f95"
|
||||
integrity sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==
|
||||
dependencies:
|
||||
nanoid "^3.1.30"
|
||||
picocolors "^1.0.0"
|
||||
source-map-js "^1.0.1"
|
||||
|
||||
react-dom@^17.0.2:
|
||||
version "17.0.2"
|
||||
resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-17.0.2.tgz#ecffb6845e3ad8dbfcdc498f0d0a939736502c23"
|
||||
integrity sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==
|
||||
dependencies:
|
||||
loose-envify "^1.1.0"
|
||||
object-assign "^4.1.1"
|
||||
scheduler "^0.20.2"
|
||||
|
||||
react@^17.0.2:
|
||||
version "17.0.2"
|
||||
resolved "https://registry.yarnpkg.com/react/-/react-17.0.2.tgz#d0b5cc516d29eb3eee383f75b62864cfb6800037"
|
||||
integrity sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==
|
||||
dependencies:
|
||||
loose-envify "^1.1.0"
|
||||
object-assign "^4.1.1"
|
||||
|
||||
scheduler@^0.20.2:
|
||||
version "0.20.2"
|
||||
resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91"
|
||||
integrity sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==
|
||||
dependencies:
|
||||
loose-envify "^1.1.0"
|
||||
object-assign "^4.1.1"
|
||||
|
||||
source-map-js@^1.0.1:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
|
||||
integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
|
||||
|
||||
styled-jsx@5.0.1:
|
||||
version "5.0.1"
|
||||
resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.0.1.tgz#78fecbbad2bf95ce6cd981a08918ce4696f5fc80"
|
||||
integrity sha512-+PIZ/6Uk40mphiQJJI1202b+/dYeTVd9ZnMPR80pgiWbjIwvN2zIp4r9et0BgqBuShh48I0gttPlAXA7WVvBxw==
|
||||
|
||||
typescript@4.0:
|
||||
version "4.0.8"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.0.8.tgz#5739105541db80a971fdbd0d56511d1a6f17d37f"
|
||||
integrity sha512-oz1765PN+imfz1MlZzSZPtC/tqcwsCyIYA8L47EkRnRW97ztRk83SzMiWLrnChC0vqoYxSU1fcFUDA5gV/ZiPg==
|
||||
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"name": "@sd/web",
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"build": "tsc && vite build",
|
||||
"serve": "vite preview"
|
||||
"preview": "vite preview"
|
||||
},
|
||||
"dependencies": {
|
||||
"@sd/client": "*",
|
||||
@@ -13,46 +13,19 @@
|
||||
"@sd/interface": "*",
|
||||
"@sd/ui": "*",
|
||||
"react": "^18.0.0",
|
||||
"react-dom": "^18.0.0"
|
||||
"react-dom": "^18.0.0",
|
||||
"react-tsparticles": "^2.0.6",
|
||||
"tsparticles": "^2.0.6"
|
||||
},
|
||||
"devDependencies": {
|
||||
"typescript": "^4.6.3",
|
||||
"@honkhonk/vite-plugin-svgr": "^1.1.0",
|
||||
"@types/babel-core": "^6.25.7",
|
||||
"@types/byte-size": "^8.1.0",
|
||||
"@types/jest": "^27.4.1",
|
||||
"@types/node": "^16.11.27",
|
||||
"@types/react": "^18.0.0",
|
||||
"@types/react-dom": "^18.0.0",
|
||||
"@types/react-router-dom": "^5.3.3",
|
||||
"@types/react-virtualized-auto-sizer": "^1.0.1",
|
||||
"@types/react-window": "^1.8.5",
|
||||
"@types/tailwindcss": "^3.0.10",
|
||||
"@vitejs/plugin-react": "^1.3.1",
|
||||
"concurrently": "^7.1.0",
|
||||
"prettier": "^2.6.2",
|
||||
"sass": "^1.50.0",
|
||||
"vite": "^2.9.1",
|
||||
"vite-plugin-filter-replace": "^0.1.9",
|
||||
"vite-plugin-react-svg": "^0.2.0",
|
||||
"vite-tsconfig-paths": "^3.4.1"
|
||||
},
|
||||
"eslintConfig": {
|
||||
"extends": [
|
||||
"react-app",
|
||||
"react-app/jest"
|
||||
]
|
||||
},
|
||||
"browserslist": {
|
||||
"production": [
|
||||
">0.2%",
|
||||
"not dead",
|
||||
"not op_mini all"
|
||||
],
|
||||
"development": [
|
||||
"last 1 chrome version",
|
||||
"last 1 firefox version",
|
||||
"last 1 safari version"
|
||||
]
|
||||
"autoprefixer": "^10.4.4",
|
||||
"postcss": "^8.4.12",
|
||||
"tailwind": "^4.0.0",
|
||||
"typescript": "^4.6.3",
|
||||
"vite": "^2.9.5"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
import React from 'react';
|
||||
|
||||
import SpacedriveInterface from '@sd/interface';
|
||||
// import '@sd/ui/style';
|
||||
|
||||
import { ClientCommand, ClientQuery } from '@sd/core';
|
||||
import { BaseTransport } from '@sd/client';
|
||||
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
@tailwind base;
|
||||
@tailwind components;
|
||||
@tailwind utilities;
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import React from 'react';
|
||||
import ReactDOM from 'react-dom/client';
|
||||
import './index.css';
|
||||
import App from './App';
|
||||
import '@sd/ui/style';
|
||||
|
||||
const root = ReactDOM.createRoot(document.getElementById('root') as HTMLElement);
|
||||
root.render(
|
||||
|
||||
@@ -1 +1 @@
|
||||
module.exports = require('@sd/ui/tailwind');
|
||||
module.exports = require('@sd/ui/tailwind')('web');
|
||||
|
||||
@@ -4,18 +4,17 @@ import { name, version } from './package.json';
|
||||
import * as path from 'path';
|
||||
import svgr from '@honkhonk/vite-plugin-svgr';
|
||||
|
||||
function resolvePackage(name: string) {
|
||||
return path.resolve(require.resolve(`${name}/package.json`), '../src');
|
||||
}
|
||||
// https://vitejs.dev/config/
|
||||
export default defineConfig({
|
||||
server: {
|
||||
port: 8002
|
||||
},
|
||||
plugins: [
|
||||
//@ts-ignore
|
||||
react({
|
||||
jsxRuntime: 'classic'
|
||||
}),
|
||||
//@ts-ignore
|
||||
svgr()
|
||||
],
|
||||
root: 'src',
|
||||
@@ -23,16 +22,6 @@ export default defineConfig({
|
||||
define: {
|
||||
pkgJson: { name, version }
|
||||
},
|
||||
optimizeDeps: {
|
||||
include: ['@sd/interface', '@sd/ui', '@sd/client']
|
||||
},
|
||||
resolve: {
|
||||
alias: {
|
||||
'@sd/interface': resolvePackage('@sd/interface'),
|
||||
'@sd/ui': resolvePackage('@sd/ui'),
|
||||
'@sd/client': resolvePackage('@sd/client')
|
||||
}
|
||||
},
|
||||
build: {
|
||||
outDir: '../dist',
|
||||
assetsDir: '.'
|
||||
|
||||
@@ -2,13 +2,10 @@
|
||||
"name": "@sd/client",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"main": "./src/index.ts",
|
||||
"files": [
|
||||
"dist/**"
|
||||
],
|
||||
"exports": {
|
||||
".": "./src",
|
||||
"./package.json": "./package.json"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "jest",
|
||||
"dev": "tsc -w",
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
"version": "1.0.0",
|
||||
"license": "MIT",
|
||||
"private": true,
|
||||
"main": "src/index.ts",
|
||||
"resolutions": {
|
||||
"react-virtualized": "patch:react-virtualized@9.22.3#./path/to/react-virtualized-9.22.3.patch"
|
||||
},
|
||||
|
||||
@@ -182,10 +182,11 @@ const RenderRow: React.FC<{
|
||||
setSearchParams({ path: row.materialized_path });
|
||||
}
|
||||
}}
|
||||
className={clsx('table-body-row flex flex-row rounded-lg border-2 border-[#00000000]', {
|
||||
'bg-[#00000006] dark:bg-[#00000030]': rowIndex % 2 == 0,
|
||||
'border-primary-500': isActive
|
||||
})}
|
||||
className={clsx(
|
||||
'table-body-row flex flex-row rounded-lg border-2',
|
||||
isActive ? 'border-primary-500' : 'border-transparent',
|
||||
rowIndex % 2 == 0 && 'bg-[#00000006] dark:bg-[#00000030]'
|
||||
)}
|
||||
>
|
||||
{columns.map((col) => (
|
||||
<div
|
||||
|
||||
@@ -2,10 +2,11 @@
|
||||
"name": "@sd/ui",
|
||||
"version": "0.0.0",
|
||||
"license": "MIT",
|
||||
"main": "src/index.ts",
|
||||
"exports": {
|
||||
".": "./src",
|
||||
".": "./src/index.ts",
|
||||
"./postcss": "./style/postcss.config.js",
|
||||
"./tailwind": "./style/tailwind.config.js",
|
||||
"./tailwind": "./style/tailwind.js",
|
||||
"./style": "./style/index.js",
|
||||
"./package.json": "./package.json"
|
||||
},
|
||||
|
||||
@@ -1,3 +1 @@
|
||||
import '../style';
|
||||
|
||||
export * from './Button';
|
||||
|
||||
@@ -1,108 +0,0 @@
|
||||
// const colors = require('tailwindcss/colors');
|
||||
// const plugin = require('tailwindcss/plugin');
|
||||
// const defaultTheme = require('tailwindcss/defaultTheme');
|
||||
|
||||
module.exports = {
|
||||
content: ['../../{apps,packages}/*/src/**/*.{js,ts,jsx,tsx,html}'],
|
||||
darkMode: 'media',
|
||||
mode: 'jit',
|
||||
theme: {
|
||||
fontSize: {
|
||||
'tiny': '.65rem',
|
||||
'xs': '.75rem',
|
||||
'sm': '.84rem',
|
||||
'base': '1rem',
|
||||
'lg': '1.125rem',
|
||||
'xl': '1.25rem',
|
||||
'2xl': '1.5rem',
|
||||
'3xl': '1.875rem',
|
||||
'4xl': '2.25rem',
|
||||
'5xl': '3rem',
|
||||
'6xl': '4rem',
|
||||
'7xl': '5rem'
|
||||
},
|
||||
extend: {
|
||||
boxShadow: {
|
||||
box: '0px 4px 9px rgba(0, 0, 0, 0.05)',
|
||||
backdrop: '0px 4px 66px rgba(0, 0, 0, 0.08)'
|
||||
},
|
||||
bg: {
|
||||
funky: 'linear-gradient(90.63deg,#46bcff 12.1%,#85edfb 50.85%,#e04cf8 91.09%)'
|
||||
},
|
||||
colors: {
|
||||
primary: {
|
||||
DEFAULT: '#2599FF',
|
||||
50: '#FFFFFF',
|
||||
100: '#F1F8FF',
|
||||
200: '#BEE1FF',
|
||||
300: '#8BC9FF',
|
||||
400: '#58B1FF',
|
||||
500: '#2599FF',
|
||||
600: '#0081F1',
|
||||
700: '#0065BE',
|
||||
800: '#004A8B',
|
||||
900: '#002F58'
|
||||
},
|
||||
gray: {
|
||||
DEFAULT: '#505468',
|
||||
50: '#F1F1F4',
|
||||
100: '#E8E9ED',
|
||||
150: '#E0E1E6',
|
||||
200: '#D8DAE3',
|
||||
250: '#D2D4DC',
|
||||
300: '#C0C2CE',
|
||||
350: '#A6AABF',
|
||||
400: '#9196A8',
|
||||
450: '#71758A',
|
||||
500: '#303544',
|
||||
550: '#20222d',
|
||||
600: '#171720',
|
||||
650: '#121219',
|
||||
700: '#121317',
|
||||
750: '#0D0E11',
|
||||
800: '#0C0C0F',
|
||||
850: '#08090D',
|
||||
900: '#060609',
|
||||
950: '#030303'
|
||||
}
|
||||
},
|
||||
// fontFamily: { sans: ['Inter', ...defaultTheme.fontFamily.sans] }
|
||||
extend: {
|
||||
transitionTimingFunction: {
|
||||
'css': 'ease',
|
||||
'css-in': 'ease-in',
|
||||
'css-out': 'ease-out',
|
||||
'css-in-out': 'ease-in-out',
|
||||
'in-sine': 'cubic-bezier(0.12, 0, 0.39, 0)',
|
||||
'out-sine': 'cubic-bezier(0.61, 1, 0.88, 1)',
|
||||
'in-out-sine': 'cubic-bezier(0.37, 0, 0.63, 1)',
|
||||
'in-quad': 'cubic-bezier(0.11, 0, 0.5, 0)',
|
||||
'out-quad': 'cubic-bezier(0.5, 1, 0.89, 1)',
|
||||
'in-out-quad': 'cubic-bezier(0.45, 0, 0.55, 1)',
|
||||
'in-cubic': 'cubic-bezier(0.32, 0, 0.67, 0)',
|
||||
'out-cubic': 'cubic-bezier(0.33, 1, 0.68, 1)',
|
||||
'in-out-cubic': 'cubic-bezier(0.65, 0, 0.35, 1)',
|
||||
'in-quart': 'cubic-bezier(0.5, 0, 0.75, 0)',
|
||||
'out-quart': 'cubic-bezier(0.25, 1, 0.5, 1)',
|
||||
'in-out-quart': 'cubic-bezier(0.76, 0, 0.24, 1)',
|
||||
'in-quint': 'cubic-bezier(0.64, 0, 0.78, 0)',
|
||||
'out-quint': 'cubic-bezier(0.22, 1, 0.36, 1)',
|
||||
'in-out-quint': 'cubic-bezier(0.83, 0, 0.17, 1)',
|
||||
'in-expo': 'cubic-bezier(0.7, 0, 0.84, 0)',
|
||||
'out-expo': 'cubic-bezier(0.16, 1, 0.3, 1)',
|
||||
'in-out-expo': 'cubic-bezier(0.87, 0, 0.13, 1)',
|
||||
'in-circ': 'cubic-bezier(0.55, 0, 1, 0.45)',
|
||||
'out-circ': 'cubic-bezier(0, 0.55, 0.45, 1)',
|
||||
'in-out-circ': 'cubic-bezier(0.85, 0, 0.15, 1)',
|
||||
'in-back': 'cubic-bezier(0.36, 0, 0.66, -0.56)',
|
||||
'out-back': 'cubic-bezier(0.34, 1.56, 0.64, 1)',
|
||||
'in-out-back': 'cubic-bezier(0.68, -0.6, 0.32, 1.6)'
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
variants: {
|
||||
extend: {}
|
||||
},
|
||||
plugins: []
|
||||
};
|
||||
113
packages/ui/style/tailwind.js
Normal file
113
packages/ui/style/tailwind.js
Normal file
@@ -0,0 +1,113 @@
|
||||
// const colors = require('tailwindcss/colors');
|
||||
// const plugin = require('tailwindcss/plugin');
|
||||
// const defaultTheme = require('tailwindcss/defaultTheme');
|
||||
|
||||
module.exports = function (app, options) {
|
||||
return {
|
||||
content: [
|
||||
!options?.ignorePackages && '../../packages/*/src/**/*.{js,ts,jsx,tsx,html}',
|
||||
`../../apps/${app}/src/**/*.{js,ts,jsx,tsx,html}`
|
||||
],
|
||||
darkMode: 'media',
|
||||
mode: 'jit',
|
||||
theme: {
|
||||
fontSize: {
|
||||
'tiny': '.65rem',
|
||||
'xs': '.75rem',
|
||||
'sm': '.84rem',
|
||||
'base': '1rem',
|
||||
'lg': '1.125rem',
|
||||
'xl': '1.25rem',
|
||||
'2xl': '1.5rem',
|
||||
'3xl': '1.875rem',
|
||||
'4xl': '2.25rem',
|
||||
'5xl': '3rem',
|
||||
'6xl': '4rem',
|
||||
'7xl': '5rem'
|
||||
},
|
||||
extend: {
|
||||
boxShadow: {
|
||||
box: '0px 4px 9px rgba(0, 0, 0, 0.05)',
|
||||
backdrop: '0px 4px 66px rgba(0, 0, 0, 0.08)'
|
||||
},
|
||||
bg: {
|
||||
funky: 'linear-gradient(90.63deg,#46bcff 12.1%,#85edfb 50.85%,#e04cf8 91.09%)'
|
||||
},
|
||||
colors: {
|
||||
primary: {
|
||||
DEFAULT: '#2599FF',
|
||||
50: '#FFFFFF',
|
||||
100: '#F1F8FF',
|
||||
200: '#BEE1FF',
|
||||
300: '#8BC9FF',
|
||||
400: '#58B1FF',
|
||||
500: '#2599FF',
|
||||
600: '#0081F1',
|
||||
700: '#0065BE',
|
||||
800: '#004A8B',
|
||||
900: '#002F58'
|
||||
},
|
||||
gray: {
|
||||
DEFAULT: '#505468',
|
||||
50: '#F1F1F4',
|
||||
100: '#E8E9ED',
|
||||
150: '#E0E1E6',
|
||||
200: '#D8DAE3',
|
||||
250: '#D2D4DC',
|
||||
300: '#C0C2CE',
|
||||
350: '#A6AABF',
|
||||
400: '#9196A8',
|
||||
450: '#71758A',
|
||||
500: '#303544',
|
||||
550: '#20222d',
|
||||
600: '#171720',
|
||||
650: '#121219',
|
||||
700: '#121317',
|
||||
750: '#0D0E11',
|
||||
800: '#0C0C0F',
|
||||
850: '#08090D',
|
||||
900: '#060609',
|
||||
950: '#030303'
|
||||
}
|
||||
},
|
||||
// fontFamily: { sans: ['Inter', ...defaultTheme.fontFamily.sans] }
|
||||
extend: {
|
||||
transitionTimingFunction: {
|
||||
'css': 'ease',
|
||||
'css-in': 'ease-in',
|
||||
'css-out': 'ease-out',
|
||||
'css-in-out': 'ease-in-out',
|
||||
'in-sine': 'cubic-bezier(0.12, 0, 0.39, 0)',
|
||||
'out-sine': 'cubic-bezier(0.61, 1, 0.88, 1)',
|
||||
'in-out-sine': 'cubic-bezier(0.37, 0, 0.63, 1)',
|
||||
'in-quad': 'cubic-bezier(0.11, 0, 0.5, 0)',
|
||||
'out-quad': 'cubic-bezier(0.5, 1, 0.89, 1)',
|
||||
'in-out-quad': 'cubic-bezier(0.45, 0, 0.55, 1)',
|
||||
'in-cubic': 'cubic-bezier(0.32, 0, 0.67, 0)',
|
||||
'out-cubic': 'cubic-bezier(0.33, 1, 0.68, 1)',
|
||||
'in-out-cubic': 'cubic-bezier(0.65, 0, 0.35, 1)',
|
||||
'in-quart': 'cubic-bezier(0.5, 0, 0.75, 0)',
|
||||
'out-quart': 'cubic-bezier(0.25, 1, 0.5, 1)',
|
||||
'in-out-quart': 'cubic-bezier(0.76, 0, 0.24, 1)',
|
||||
'in-quint': 'cubic-bezier(0.64, 0, 0.78, 0)',
|
||||
'out-quint': 'cubic-bezier(0.22, 1, 0.36, 1)',
|
||||
'in-out-quint': 'cubic-bezier(0.83, 0, 0.17, 1)',
|
||||
'in-expo': 'cubic-bezier(0.7, 0, 0.84, 0)',
|
||||
'out-expo': 'cubic-bezier(0.16, 1, 0.3, 1)',
|
||||
'in-out-expo': 'cubic-bezier(0.87, 0, 0.13, 1)',
|
||||
'in-circ': 'cubic-bezier(0.55, 0, 1, 0.45)',
|
||||
'out-circ': 'cubic-bezier(0, 0.55, 0.45, 1)',
|
||||
'in-out-circ': 'cubic-bezier(0.85, 0, 0.15, 1)',
|
||||
'in-back': 'cubic-bezier(0.36, 0, 0.66, -0.56)',
|
||||
'out-back': 'cubic-bezier(0.34, 1.56, 0.64, 1)',
|
||||
'in-out-back': 'cubic-bezier(0.68, -0.6, 0.32, 1.6)'
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
variants: {
|
||||
extend: {}
|
||||
},
|
||||
plugins: []
|
||||
};
|
||||
};
|
||||
BIN
pnpm-lock.yaml
generated
BIN
pnpm-lock.yaml
generated
Binary file not shown.
Reference in New Issue
Block a user