diff --git a/next-env.d.ts b/next-env.d.ts new file mode 100644 index 0000000..7b7aa2c --- /dev/null +++ b/next-env.d.ts @@ -0,0 +1,2 @@ +/// +/// diff --git a/package.json b/package.json index 0cb54c0..29faf0d 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,12 @@ "dependencies": { "next": "10.1.3", "react": "17.0.2", - "react-dom": "17.0.2" + "react-dom": "17.0.2", + "sass": "^1.32.11" + }, + "devDependencies": { + "@types/node": "^14.14.41", + "@types/react": "^17.0.3", + "typescript": "^4.2.4" } } diff --git a/src/components/Header.tsx b/src/components/Header.tsx new file mode 100644 index 0000000..e69de29 diff --git a/pages/_app.js b/src/pages/_app.tsx similarity index 75% rename from pages/_app.js rename to src/pages/_app.tsx index 3ac920d..d39438e 100644 --- a/pages/_app.js +++ b/src/pages/_app.tsx @@ -1,5 +1,7 @@ +import '../styles/global.scss'; + function MyApp({ Component, pageProps }) { return + } - export default MyApp diff --git a/src/pages/_document.tsx b/src/pages/_document.tsx new file mode 100644 index 0000000..5cf91fa --- /dev/null +++ b/src/pages/_document.tsx @@ -0,0 +1,18 @@ +import Document, { Html, Head, Main, NextScript } from 'next/document'; + +export default class MyDocument extends Document { + render() { + return ( + + + + + + +
+ + + + ) + } +} \ No newline at end of file diff --git a/pages/index.js b/src/pages/index.tsx similarity index 51% rename from pages/index.js rename to src/pages/index.tsx index d7150ff..26ca14d 100644 --- a/pages/index.js +++ b/src/pages/index.tsx @@ -1,5 +1,7 @@ -export default function Home() { +function Home() { return (

Olá mundo!

) } + +export default Home; \ No newline at end of file diff --git a/src/styles/global.scss b/src/styles/global.scss new file mode 100644 index 0000000..39a893b --- /dev/null +++ b/src/styles/global.scss @@ -0,0 +1,69 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +:root { + --white: #fff; + + --gray-50: #f7f8fa; + --gray-100: #e6e8eb; + --gray-200: #afb2b1; + --gray-500: #808080; + --gray-800: #494d4b; + + --green-500: #04d361; + + --purple-300: #9f75ff; + --purple-400: #9164fa; + --purple-500: #8257e5; + --purple-800: #6f48c9; +} + +@media (max-width: 1080px) { + html { + font-size: 93.75%; //15px + } +} + +@media (max-width: 1080px) { + html { + font-size: 87.5%; //14px + } +} + +body { + background-color: var(--gray-50); +} + +body, +input, +textarea, +button { + font: 500 1rem Inter, sans-serif; + color: var(--gray-500); +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: 600; + font-family: Lexend, sans-serif; + color: var(--gray-800); +} + +h1 { + font-size: 2rem; +} + +h2 { + font-size: 1.5rem; +} + +button { + cursor: pointer; +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..35d51ea --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,29 @@ +{ + "compilerOptions": { + "target": "es5", + "lib": [ + "dom", + "dom.iterable", + "esnext" + ], + "allowJs": true, + "skipLibCheck": true, + "strict": false, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve" + }, + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx" + ], + "exclude": [ + "node_modules" + ] +} diff --git a/yarn.lock b/yarn.lock index 596e258..475177f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -103,11 +103,30 @@ resolved "https://registry.yarnpkg.com/@opentelemetry/context-base/-/context-base-0.14.0.tgz#c67fc20a4d891447ca1a855d7d70fa79a3533001" integrity sha512-sDOAZcYwynHFTbLo6n8kIbLiVF3a3BLkrmehJUyEbT9F+Smbi47kLGS2gG2g0fjBLR/Lr1InPD7kXL7FaTqEkw== -"@types/node@*": +"@types/node@*", "@types/node@^14.14.41": version "14.14.41" resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.41.tgz#d0b939d94c1d7bd53d04824af45f1139b8c45615" integrity sha512-dueRKfaJL4RTtSa7bWeTK1M+VH+Gns73oCgzvYfHZywRCoPSd8EkXBL0mZ9unPTveBn+D9phZBaxuzpwjWkW0g== +"@types/prop-types@*": + version "15.7.3" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" + integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw== + +"@types/react@^17.0.3": + version "17.0.3" + resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.3.tgz#ba6e215368501ac3826951eef2904574c262cc79" + integrity sha512-wYOUxIgs2HZZ0ACNiIayItyluADNbONl7kt8lkLjVK8IitMH5QMyAh75Fwhmo37r1m7L2JaFj03sIfxBVDvRAg== + dependencies: + "@types/prop-types" "*" + "@types/scheduler" "*" + csstype "^3.0.2" + +"@types/scheduler@*": + version "0.16.1" + resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.1.tgz#18845205e86ff0038517aab7a18a62a6b9f71275" + integrity sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA== + anser@1.4.9: version "1.4.9" resolved "https://registry.yarnpkg.com/anser/-/anser-1.4.9.tgz#1f85423a5dcf8da4631a341665ff675b96845760" @@ -361,7 +380,7 @@ chalk@4.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -chokidar@3.5.1: +chokidar@3.5.1, "chokidar@>=3.0.0 <4.0.0": version "3.5.1" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== @@ -514,6 +533,11 @@ cssnano-simple@1.2.2: cssnano-preset-simple "1.2.2" postcss "^7.0.32" +csstype@^3.0.2: + version "3.0.8" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.8.tgz#d2266a792729fb227cd216fb572f43728e1ad340" + integrity sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw== + data-uri-to-buffer@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz#594b8973938c5bc2c33046535785341abc4f3636" @@ -1512,6 +1536,13 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== +sass@^1.32.11: + version "1.32.11" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.32.11.tgz#b236b3ea55c76602c2ef2bd0445f0db581baa218" + integrity sha512-O9tRcob/fegUVSIV1ihLLZcftIOh0AF1VpKgusUfLqnb2jQ0GLDwI5ivv1FYWivGv8eZ/AwntTyTzjcHu0c/qw== + dependencies: + chokidar ">=3.0.0 <4.0.0" + scheduler@^0.20.2: version "0.20.2" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91" @@ -1771,6 +1802,11 @@ type-fest@^0.7.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.7.1.tgz#8dda65feaf03ed78f0a3f9678f1869147f7c5c48" integrity sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg== +typescript@^4.2.4: + version "4.2.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.4.tgz#8610b59747de028fda898a8aef0e103f156d0961" + integrity sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg== + unbox-primitive@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471"