diff --git a/README.md b/README.md
index 17059cb7..ad2edf76 100644
--- a/README.md
+++ b/README.md
@@ -18,6 +18,12 @@ Create your local .env file
cp .env.sample .env
```
+Initial TS Compilation For Monorepo Packages
+
+```shell script
+yarn typecheck
+```
+
### Run services
**Start backend services**
diff --git a/package.json b/package.json
index eb112861..f679577f 100644
--- a/package.json
+++ b/package.json
@@ -22,7 +22,7 @@
"clean": "lerna clean",
"format": "prettier --ignore-path .gitignore --write \"{*,**/*}.{ts,tsx,js,jsx,json,yml,yaml,md}\"",
"lint": "eslint --ignore-path .gitignore \"./packages/**/*.{ts,tsx,js,jsx}\"",
- "typecheck": "lerna run --parallel typecheck",
+ "typecheck": "lerna run typecheck",
"precommit": "lerna run --concurrency 1 --stream precommit",
"prepush": "yarn typecheck && yarn lint",
"web": "yarn --cwd packages/web/"
diff --git a/packages/app-react/tsconfig.json b/packages/app-react/tsconfig.json
index 10dfa6c4..a3d4b502 100644
--- a/packages/app-react/tsconfig.json
+++ b/packages/app-react/tsconfig.json
@@ -9,5 +9,10 @@
"noEmit": true,
"jsx": "react"
},
+ "references": [
+ {
+ "path": "../utils/tsconfig.json"
+ }
+ ],
"include": ["src"]
}
diff --git a/packages/backend/package.json b/packages/backend/package.json
index 9ae8906e..54c87ea1 100644
--- a/packages/backend/package.json
+++ b/packages/backend/package.json
@@ -6,9 +6,9 @@
"main": "dist/index.js",
"scripts": {
"start": "node ./dist/index.js",
- "build": "tsc",
+ "build": "tsc -b",
"dev": "ts-node-dev --exit-child --respawn --transpileOnly src/index.ts",
- "typecheck": "tsc --noEmit",
+ "typecheck": "yarn build",
"precommit": "yarn lint-staged"
},
"author": "",
diff --git a/packages/backend/tsconfig.json b/packages/backend/tsconfig.json
index 47b96e8b..9276700f 100644
--- a/packages/backend/tsconfig.json
+++ b/packages/backend/tsconfig.json
@@ -1,8 +1,15 @@
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
- "rootDir": "./src",
- "outDir": "./dist"
+ "rootDir": "src",
+ "outDir": "dist",
+ "tsBuildInfoFile": "dist/.tsbuildinfo",
+ "incremental": true
},
+ "references": [
+ {
+ "path": "../utils"
+ }
+ ],
"include": ["./src"]
}
diff --git a/packages/design-system/package.json b/packages/design-system/package.json
index 1c39ec80..c162672a 100644
--- a/packages/design-system/package.json
+++ b/packages/design-system/package.json
@@ -1,8 +1,17 @@
{
- "name": "@metafam/design-system",
+ "name": "@metafam/ds",
"version": "0.1.0",
- "main": "src/index.js",
+ "main": "dist/index.js",
+ "types": "dist/index.d.ts",
"license": "MIT",
+ "scripts": {
+ "storybook": "start-storybook -p 6006",
+ "build-storybook": "build-storybook",
+ "prepare": "yarn build",
+ "typecheck": "yarn build",
+ "build": "tsc",
+ "precommit": "yarn lint-staged"
+ },
"dependencies": {
"@chakra-ui/core": "^0.8.0",
"@emotion/core": "^10.0.28",
@@ -20,9 +29,5 @@
"babel-loader": "^8.1.0",
"fork-ts-checker-webpack-plugin": "^5.0.9",
"ts-loader": "^8.0.1"
- },
- "scripts": {
- "storybook": "start-storybook -p 6006",
- "build-storybook": "build-storybook"
}
}
diff --git a/packages/design-system/src/index.ts b/packages/design-system/src/index.ts
index 2d1bcd44..9b15ba03 100644
--- a/packages/design-system/src/index.ts
+++ b/packages/design-system/src/index.ts
@@ -1,3 +1,3 @@
export { ThemeProvider } from '@chakra-ui/core';
-export { metaTheme as theme } from './theme';
+export { theme } from './theme';
export { GlobalStyle } from './GlobalStyle';
diff --git a/packages/design-system/src/theme.ts b/packages/design-system/src/theme.ts
index 421095ce..4ed45019 100644
--- a/packages/design-system/src/theme.ts
+++ b/packages/design-system/src/theme.ts
@@ -1,14 +1,13 @@
-import { theme } from '@chakra-ui/core';
+import { theme as chakraTheme } from '@chakra-ui/core';
-export const metaTheme = {
- ...theme,
+export const theme: typeof chakraTheme = {
+ ...chakraTheme,
colors: {
- ...theme.colors,
+ ...chakraTheme.colors,
},
fonts: {
body: '"IBM Plex Sans", sans-serif',
- heading: '"IBM Plex Sans", sans-serif',
- mono: '"IBM Plex Mono", monospace',
- meta: '"Press Start 2P"',
+ heading: '"IBM Plex Mono", monospace',
+ mono: '"Press Start 2P"',
},
};
diff --git a/packages/design-system/stories/0-Text.stories.jsx b/packages/design-system/stories/0-Text.stories.jsx
index 4799cbf9..ec307d3f 100644
--- a/packages/design-system/stories/0-Text.stories.jsx
+++ b/packages/design-system/stories/0-Text.stories.jsx
@@ -41,8 +41,5 @@ export const Fonts = () => (
In love with MetaGame - Mono Bold
-
- In love with MetaGame - Meta
-
);
diff --git a/packages/design-system/tsconfig.json b/packages/design-system/tsconfig.json
index 10dfa6c4..5d92e7c1 100644
--- a/packages/design-system/tsconfig.json
+++ b/packages/design-system/tsconfig.json
@@ -1,13 +1,14 @@
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
- "target": "es5",
- "module": "esnext",
"lib": ["dom", "dom.iterable", "esnext"],
- "isolatedModules": true,
"allowJs": true,
- "noEmit": true,
- "jsx": "react"
+ "jsx": "react",
+ "composite": true,
+ "rootDir": "src",
+ "outDir": "dist",
+ "tsBuildInfoFile": "dist/.tsbuildinfo"
},
+ "exclude": ["node_modules"],
"include": ["src"]
}
diff --git a/packages/utils/package.json b/packages/utils/package.json
index 766b701b..0da59736 100644
--- a/packages/utils/package.json
+++ b/packages/utils/package.json
@@ -9,7 +9,7 @@
"start": "yarn dev",
"build": "tsc",
"dev": "tsc -w",
- "typecheck": "tsc --noEmit",
+ "typecheck": "yarn build",
"prepare": "yarn build",
"precommit": "yarn lint-staged"
},
diff --git a/packages/utils/tsconfig.json b/packages/utils/tsconfig.json
index d7f99001..3dac5d0a 100644
--- a/packages/utils/tsconfig.json
+++ b/packages/utils/tsconfig.json
@@ -1,8 +1,10 @@
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
+ "composite": true,
"rootDir": "src",
- "outDir": "./dist"
+ "outDir": "dist",
+ "tsBuildInfoFile": "dist/.tsbuildinfo"
},
- "include": ["./src"]
+ "include": ["src"]
}
diff --git a/packages/web/tsconfig.json b/packages/web/tsconfig.json
index 792ca69f..d9e10efb 100644
--- a/packages/web/tsconfig.json
+++ b/packages/web/tsconfig.json
@@ -1,5 +1,5 @@
{
- "extends": "../../tsconfig.base.json",
+ "extends": "../../tsconfig.json",
"compilerOptions": {
"target": "esnext",
"module": "esnext",
@@ -9,6 +9,13 @@
"lib": ["dom", "es2017"],
"noEmit": true
},
- "exclude": ["node_modules"],
+ "references": [
+ {
+ "path": "../utils/tsconfig.json"
+ },
+ {
+ "path": "../design-system/tsconfig.json"
+ }
+ ],
"include": ["**/*.ts", "**/*.tsx", "next-env.d.ts"]
}
diff --git a/tsconfig.base.json b/tsconfig.base.json
index 61ca1305..94d92e59 100644
--- a/tsconfig.base.json
+++ b/tsconfig.base.json
@@ -13,10 +13,12 @@
"esModuleInterop": true,
"resolveJsonModule": true,
"declaration": true,
+ "declarationMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"sourceMap": true,
"allowSyntheticDefaultImports": true,
"typeRoots": ["packages/@types", "node_modules/@types"]
- }
+ },
+ "exclude": ["node_modules", "dist"]
}