diff --git a/README.md b/README.md index ef0e127..730a51a 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,94 @@ Básicamente sou alguem leigo quando o assunto é JS, e as documentações dos f Caso goste, fique a vontade para usar o meu modelo. +## Estrutura + +```bash +app/ +├── App.tsx +├── assets/ +│ ├── icons/ +│ └── images/ +├── components/ +├── constants/ +├── data/ +├── main.tsx +├── pages/ +├── redux/ +├── routers/ +├── services/ +├── styles/ +│ ├── colors/ +│ ├── fonts/ +│ └── global.css +├── tests/ +│ └── mocks/ +├── types/ +└── utils/ + +docs/ +└── README.txt + +public/ +├── index.html +└── ... + +.gitignore +eslint.config.js +package.json +tsconfig.app.json +tsconfig.json +tsconfig.node.json +vite.config.ts +README.md +``` + +### app/ + +- **App.tsx**: Componente principal da aplicação. +- **assets/**: Contém ícones e imagens utilizados na aplicação. + - **icons/**: Ícones da aplicação. + - **images/**: Imagens da aplicação. +- **components/**: Componentes reutilizáveis da aplicação. +- **constants/**: Constantes utilizadas na aplicação. +- **data/**: Dados persistidos (arquivos .json, .txt, etc). +- **main.tsx**: Ponto de entrada da aplicação React. +- **pages/**: Páginas da aplicação. +- **redux/**: Configuração do Redux para gerenciamento de estado. +- **routers/**: Configuração das rotas da aplicação. +- **services/**: Serviços da aplicação (ex: chamadas de API). +- **styles/**: Estilos da aplicação. + - **colors/**: Definições de cores. + - **fonts/**: Definições de fontes. + - **global.css**: Estilos globais da aplicação. +- **tests/**: Testes da aplicação. + - **mocks/**: Dados de mocks para testes. +- **types/**: Definições de tipos TypeScript. +- **utils/**: Funções utilitárias. + +### docs/ + +- **README.txt**: Documentação da aplicação. + +### public/ + +- Arquivos públicos da aplicação. + +### Configuração e Build + +- **.gitignore**: Arquivos e diretórios ignorados pelo Git. +- **eslint.config.js**: Configuração do ESLint. +- **index.html**: Arquivo HTML principal. +- **package.json**: Dependências e scripts do projeto. +- **tsconfig.app.json**: Configuração do TypeScript para a aplicação. +- **tsconfig.json**: Configuração principal do TypeScript. +- **tsconfig.node.json**: Configuração do TypeScript para Node.js. +- **vite.config.ts**: Configuração do Vite. + +### Raiz do Projeto + +- **README.md**: Documentação principal do projeto. + ## Vite O Vite é uma ferramenta de build e servidor de desenvolvimento frontend que se destaca pela sua extrema velocidade e simplicidade. Ele visa proporcionar uma experiência de desenvolvimento mais ágil e eficiente, principalmente para aplicações web modernas. @@ -23,6 +111,7 @@ O Vite é uma ferramenta de build e servidor de desenvolvimento frontend que se ## Bibliotecas Usadas neste Template - Axios: Uso de Requsições HTTP com Qualidade e Facilidade +- Styles-Components: Facilidade de Estilizar Componentes, com qualidade de desenvolvimento ## OBS diff --git a/app/App.tsx b/app/App.tsx new file mode 100644 index 0000000..81d0848 --- /dev/null +++ b/app/App.tsx @@ -0,0 +1,9 @@ +function App() { + return ( +
+

Bem vindo ao meu Template

+
+ ) +} + +export default App diff --git a/app/assets/icons/index.ts b/app/assets/icons/index.ts new file mode 100644 index 0000000..e69de29 diff --git a/app/assets/images/index.ts b/app/assets/images/index.ts new file mode 100644 index 0000000..e69de29 diff --git a/src/assets/react.svg b/app/assets/react.svg similarity index 100% rename from src/assets/react.svg rename to app/assets/react.svg diff --git a/app/components/README.txt b/app/components/README.txt new file mode 100644 index 0000000..a9eaf1a --- /dev/null +++ b/app/components/README.txt @@ -0,0 +1 @@ +Crie seus componentes nesta pasta \ No newline at end of file diff --git a/app/constants/README.txt b/app/constants/README.txt new file mode 100644 index 0000000..cc7095f --- /dev/null +++ b/app/constants/README.txt @@ -0,0 +1 @@ +Crie suas constantes nesta pasta \ No newline at end of file diff --git a/app/data/README.txt b/app/data/README.txt new file mode 100644 index 0000000..e5aa566 --- /dev/null +++ b/app/data/README.txt @@ -0,0 +1 @@ +Coloque seus dados persistidos aqui! (arquivos.json, .txt e afins) \ No newline at end of file diff --git a/src/main.tsx b/app/main.tsx similarity index 90% rename from src/main.tsx rename to app/main.tsx index bef5202..4aff025 100644 --- a/src/main.tsx +++ b/app/main.tsx @@ -1,6 +1,5 @@ import { StrictMode } from 'react' import { createRoot } from 'react-dom/client' -import './index.css' import App from './App.tsx' createRoot(document.getElementById('root')!).render( diff --git a/app/pages/README.txt b/app/pages/README.txt new file mode 100644 index 0000000..d84b997 --- /dev/null +++ b/app/pages/README.txt @@ -0,0 +1 @@ +Crie suas páginas nesta pasta \ No newline at end of file diff --git a/app/redux/README.txt b/app/redux/README.txt new file mode 100644 index 0000000..91f6bf7 --- /dev/null +++ b/app/redux/README.txt @@ -0,0 +1 @@ +Configure seu redux aqui \ No newline at end of file diff --git a/app/routers/README.txt b/app/routers/README.txt new file mode 100644 index 0000000..4535b73 --- /dev/null +++ b/app/routers/README.txt @@ -0,0 +1 @@ +Crie suas rotas de navegação entre páginas nesta pasta \ No newline at end of file diff --git a/app/services/README.txt b/app/services/README.txt new file mode 100644 index 0000000..e0c07d9 --- /dev/null +++ b/app/services/README.txt @@ -0,0 +1 @@ +Crie seus serviços nesta pasta \ No newline at end of file diff --git a/app/styles/colors/index.ts b/app/styles/colors/index.ts new file mode 100644 index 0000000..500348b --- /dev/null +++ b/app/styles/colors/index.ts @@ -0,0 +1,47 @@ +const COLORS = { + inputBackgroundColor: "#caa165", + inputBorderColor: "#977a50", + logoColor: "#582000", + logoColorStrong: "#370e03", + black:"#000000", +} + +/** +Ajusta o brilho de uma cor hexadecimal. + +* Args: + - hex: Cor hexadecimal a ser ajustada. + - percent: Porcentagem de ajuste. Valores positivos aumentam o brilho e valores negativos diminuem. + +* Returns: + - Cor hexadecimal ajustada com o brilho. + **/ +export function adjustBrightness(hex: string, percent: number): string { + // Remove o símbolo # se estiver presente + hex = hex.replace(/^#/, ''); + + // Converte a cor hexadecimal para RGB + let r = parseInt(hex.substring(0, 2), 16); + let g = parseInt(hex.substring(2, 4), 16); + let b = parseInt(hex.substring(4, 6), 16); + + // Ajusta o brilho + r = Math.min(255, Math.max(0, r + (r * percent) / 100)); + g = Math.min(255, Math.max(0, g + (g * percent) / 100)); + b = Math.min(255, Math.max(0, b + (b * percent) / 100)); + + // Converte de volta para hexadecimal + const newHex = ( + (1 << 24) + + (r << 16) + + (g << 8) + + b + ) + .toString(16) + .slice(1) + .toUpperCase(); + + return `#${newHex}`; + } + +export default COLORS; \ No newline at end of file diff --git a/app/styles/fonts/index.ts b/app/styles/fonts/index.ts new file mode 100644 index 0000000..c0e78b6 --- /dev/null +++ b/app/styles/fonts/index.ts @@ -0,0 +1,17 @@ +export const SIZES = { // 1 rem -> 16px + label: "1.4rem", + title: "1.8rem", + section: "3.0rem" +} + +export const WEIGHTS = { + bold: "800", + regular: "400", + light: "300" +} + +export const FONTS = { + primary: "Roboto, sans-serif", + secondary: "Montserrat, sans-serif" +} + diff --git a/app/styles/global.css b/app/styles/global.css new file mode 100644 index 0000000..3c6bd8c --- /dev/null +++ b/app/styles/global.css @@ -0,0 +1,17 @@ +@import url('https://fonts.googleapis.com/css2?family=Playwrite+AU+SA:wght@100..400&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap'); + + +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +p { + font-family: "Roboto", serif; + font-optical-sizing: auto; + font-weight: 400; + font-style: normal; + font-variation-settings: + "wdth" 100; +} \ No newline at end of file diff --git a/app/tests/README.txt b/app/tests/README.txt new file mode 100644 index 0000000..66de2fe --- /dev/null +++ b/app/tests/README.txt @@ -0,0 +1 @@ +Coloque seus testes aqui \ No newline at end of file diff --git a/app/tests/mocks/README.txt b/app/tests/mocks/README.txt new file mode 100644 index 0000000..aecae00 --- /dev/null +++ b/app/tests/mocks/README.txt @@ -0,0 +1 @@ +Coloque seus dados de mocks aqui \ No newline at end of file diff --git a/app/types/README.txt b/app/types/README.txt new file mode 100644 index 0000000..4fc0ebc --- /dev/null +++ b/app/types/README.txt @@ -0,0 +1 @@ +Coloque seus tipos de dados aqui \ No newline at end of file diff --git a/app/utils/README.txt b/app/utils/README.txt new file mode 100644 index 0000000..9368713 --- /dev/null +++ b/app/utils/README.txt @@ -0,0 +1 @@ +Adicione suas funções úties (Conversões de tipos, formatos, etc) aqui \ No newline at end of file diff --git a/src/vite-env.d.ts b/app/vite-env.d.ts similarity index 100% rename from src/vite-env.d.ts rename to app/vite-env.d.ts diff --git a/docs/README.txt b/docs/README.txt new file mode 100644 index 0000000..e03c81d --- /dev/null +++ b/docs/README.txt @@ -0,0 +1 @@ +Coloque a documentação de sua aplicação aqui \ No newline at end of file diff --git a/index.html b/index.html index e4b78ea..754e157 100644 --- a/index.html +++ b/index.html @@ -8,6 +8,6 @@
- + diff --git a/package-lock.json b/package-lock.json index 12272af..e591b2e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,8 @@ "version": "0.0.0", "dependencies": { "react": "^18.3.1", - "react-dom": "^18.3.1" + "react-dom": "^18.3.1", + "styled-components": "^6.1.14" }, "devDependencies": { "@eslint/js": "^9.17.0", @@ -321,6 +322,24 @@ "node": ">=6.9.0" } }, + "node_modules/@emotion/is-prop-valid": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.2.tgz", + "integrity": "sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw==", + "dependencies": { + "@emotion/memoize": "^0.8.1" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", + "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==" + }, + "node_modules/@emotion/unitless": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz", + "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==" + }, "node_modules/@esbuild/aix-ppc64": { "version": "0.24.2", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz", @@ -1397,6 +1416,11 @@ "@types/react": "^18.0.0" } }, + "node_modules/@types/stylis": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.5.tgz", + "integrity": "sha512-1Xve+NMN7FWjY14vLoY5tL3BVEQ/n42YLwaqJIPYhotZ9uBHt87VceMwWQpzmdEt2TNXIorIFG+YeCUUW7RInw==" + }, "node_modules/@typescript-eslint/eslint-plugin": { "version": "8.19.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.19.1.tgz", @@ -1773,6 +1797,14 @@ "node": ">=6" } }, + "node_modules/camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/caniuse-lite": { "version": "1.0.30001692", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001692.tgz", @@ -1860,11 +1892,28 @@ "node": ">= 8" } }, + "node_modules/css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/css-to-react-native": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", + "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", + "dependencies": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, "node_modules/csstype": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "dev": true, "license": "MIT" }, "node_modules/debug": { @@ -2593,7 +2642,6 @@ "version": "3.3.8", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", - "dev": true, "funding": [ { "type": "github", @@ -2709,7 +2757,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "dev": true, "license": "ISC" }, "node_modules/picomatch": { @@ -2754,6 +2801,11 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -2933,6 +2985,11 @@ "semver": "bin/semver.js" } }, + "node_modules/shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -2960,7 +3017,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "dev": true, "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" @@ -2979,6 +3035,65 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/styled-components": { + "version": "6.1.14", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.1.14.tgz", + "integrity": "sha512-KtfwhU5jw7UoxdM0g6XU9VZQFV4do+KrM8idiVCH5h4v49W+3p3yMe0icYwJgZQZepa5DbH04Qv8P0/RdcLcgg==", + "dependencies": { + "@emotion/is-prop-valid": "1.2.2", + "@emotion/unitless": "0.8.1", + "@types/stylis": "4.2.5", + "css-to-react-native": "3.2.0", + "csstype": "3.1.3", + "postcss": "8.4.38", + "shallowequal": "1.1.0", + "stylis": "4.3.2", + "tslib": "2.6.2" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/styled-components" + }, + "peerDependencies": { + "react": ">= 16.8.0", + "react-dom": ">= 16.8.0" + } + }, + "node_modules/styled-components/node_modules/postcss": { + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/stylis": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.2.tgz", + "integrity": "sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg==" + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -3018,6 +3133,11 @@ "typescript": ">=4.8.4" } }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", diff --git a/package.json b/package.json index bf151fb..dcb9a7d 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,8 @@ }, "dependencies": { "react": "^18.3.1", - "react-dom": "^18.3.1" + "react-dom": "^18.3.1", + "styled-components": "^6.1.14" }, "devDependencies": { "@eslint/js": "^9.17.0", diff --git a/src/App.css b/src/App.css deleted file mode 100644 index b9d355d..0000000 --- a/src/App.css +++ /dev/null @@ -1,42 +0,0 @@ -#root { - max-width: 1280px; - margin: 0 auto; - padding: 2rem; - text-align: center; -} - -.logo { - height: 6em; - padding: 1.5em; - will-change: filter; - transition: filter 300ms; -} -.logo:hover { - filter: drop-shadow(0 0 2em #646cffaa); -} -.logo.react:hover { - filter: drop-shadow(0 0 2em #61dafbaa); -} - -@keyframes logo-spin { - from { - transform: rotate(0deg); - } - to { - transform: rotate(360deg); - } -} - -@media (prefers-reduced-motion: no-preference) { - a:nth-of-type(2) .logo { - animation: logo-spin infinite 20s linear; - } -} - -.card { - padding: 2em; -} - -.read-the-docs { - color: #888; -} diff --git a/src/App.tsx b/src/App.tsx deleted file mode 100644 index 3d7ded3..0000000 --- a/src/App.tsx +++ /dev/null @@ -1,35 +0,0 @@ -import { useState } from 'react' -import reactLogo from './assets/react.svg' -import viteLogo from '/vite.svg' -import './App.css' - -function App() { - const [count, setCount] = useState(0) - - return ( - <> -
- - Vite logo - - - React logo - -
-

Vite + React

-
- -

- Edit src/App.tsx and save to test HMR -

-
-

- Click on the Vite and React logos to learn more -

- - ) -} - -export default App diff --git a/src/index.css b/src/index.css deleted file mode 100644 index 6119ad9..0000000 --- a/src/index.css +++ /dev/null @@ -1,68 +0,0 @@ -:root { - font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; - line-height: 1.5; - font-weight: 400; - - color-scheme: light dark; - color: rgba(255, 255, 255, 0.87); - background-color: #242424; - - font-synthesis: none; - text-rendering: optimizeLegibility; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -a { - font-weight: 500; - color: #646cff; - text-decoration: inherit; -} -a:hover { - color: #535bf2; -} - -body { - margin: 0; - display: flex; - place-items: center; - min-width: 320px; - min-height: 100vh; -} - -h1 { - font-size: 3.2em; - line-height: 1.1; -} - -button { - border-radius: 8px; - border: 1px solid transparent; - padding: 0.6em 1.2em; - font-size: 1em; - font-weight: 500; - font-family: inherit; - background-color: #1a1a1a; - cursor: pointer; - transition: border-color 0.25s; -} -button:hover { - border-color: #646cff; -} -button:focus, -button:focus-visible { - outline: 4px auto -webkit-focus-ring-color; -} - -@media (prefers-color-scheme: light) { - :root { - color: #213547; - background-color: #ffffff; - } - a:hover { - color: #747bff; - } - button { - background-color: #f9f9f9; - } -} diff --git a/tsconfig.app.json b/tsconfig.app.json index 358ca9b..02532f9 100644 --- a/tsconfig.app.json +++ b/tsconfig.app.json @@ -22,5 +22,5 @@ "noFallthroughCasesInSwitch": true, "noUncheckedSideEffectImports": true }, - "include": ["src"] + "include": ["app"] }