cismet / carma

carma monorepo: cids architecture for reactive mapping applications
0 stars 1 forks source link

initial remove all default overrides from libs, use more shared share… #78

Closed mxfh closed 3 months ago

mxfh commented 3 months ago

WIP do not merge, need more testing on all projects.

Goal is to remove all duplication and unneeded overrides in tsconfig referencing tsconfig.base

https://github.com/cismet/carma/blob/fc1a56dc6d567c5312d1d1ba18050bb4dd856845/tsconfig.base.json

// eventually structure by org from https://www.typescriptlang.org/tsconfig/

"target": "es2020",
"module": "esnext",
"moduleResolution": "bundler",
"esModuleInterop": true,

"jsx": "react-jsxdev",
"lib": ["es2020", "dom"],

"baseUrl": ".",
"rootDir": ".",

"declaration": true,
"declarationMap": true,
"sourceMap": true,

**"strict": true,** 

"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"importHelpers": true,
"skipDefaultLibCheck": true,
"skipLibCheck": true,

then in existing modules override the strict settings until it works with

most importantly
"noImplicitAny": false,

    new projects apps and libs should follow the default base rules
mxfh commented 3 months ago

considering adding

types to the tsconfig base.

"types": ["vite/client"]

https://www.typescriptlang.org/tsconfig/#extends

would be import to consider that the extending config always overrides the base.

it's "types": ["vite/client", "vitest"] not "types": [ "vitest"]

maybe have have common tsconfig.specs.base.ts for all test too somehow thats specifying common options for certain types of files like tests or apps.