From 1476965486a0609ed041524589c9ec7861649578 Mon Sep 17 00:00:00 2001 From: Jared Palmer Date: Wed, 15 Dec 2021 13:53:30 -0500 Subject: [PATCH] Allow barrel files in `ui` starter packages --- .../_shared_ts/apps/docs/package.json | 2 +- .../_shared_ts/apps/web/package.json | 2 +- .../_shared_ts/packages/config/package.json | 2 +- .../_shared_ts/packages/tsconfig/README.md | 2 +- .../_shared_ts/packages/ui/index.tsx | 1 + .../_shared_ts/packages/ui/package.json | 14 +++++--- .../_shared_ts/packages/ui/tsconfig.json | 7 ++++ .../docs/reference/command-line-reference.mdx | 33 +++++++++++++++++-- examples/basic/apps/docs/package.json | 6 ++-- examples/basic/apps/web/package.json | 4 ++- .../basic/packages/config/eslint-preset.js | 8 +---- examples/basic/packages/tsconfig/README.md | 3 -- examples/basic/packages/ui/index.tsx | 1 + examples/basic/packages/ui/package.json | 14 +++++--- examples/basic/packages/ui/tsconfig.json | 7 ++++ .../with-pnpm/packages/tsconfig/README.md | 3 -- .../with-pnpm/packages/tsconfig/node12.json | 11 ------- .../with-pnpm/packages/tsconfig/node14.json | 14 -------- .../with-pnpm/packages/tsconfig/vite.json | 19 ----------- examples/with-pnpm/packages/ui/index.tsx | 1 + examples/with-pnpm/packages/ui/package.json | 14 +++++--- examples/with-pnpm/packages/ui/tsconfig.json | 7 ++++ 22 files changed, 96 insertions(+), 79 deletions(-) create mode 100644 create-turbo/templates/_shared_ts/packages/ui/index.tsx create mode 100644 create-turbo/templates/_shared_ts/packages/ui/tsconfig.json delete mode 100644 examples/basic/packages/tsconfig/README.md create mode 100644 examples/basic/packages/ui/index.tsx create mode 100644 examples/basic/packages/ui/tsconfig.json delete mode 100644 examples/with-pnpm/packages/tsconfig/README.md delete mode 100644 examples/with-pnpm/packages/tsconfig/node12.json delete mode 100644 examples/with-pnpm/packages/tsconfig/node14.json delete mode 100644 examples/with-pnpm/packages/tsconfig/vite.json create mode 100644 examples/with-pnpm/packages/ui/index.tsx create mode 100644 examples/with-pnpm/packages/ui/tsconfig.json diff --git a/create-turbo/templates/_shared_ts/apps/docs/package.json b/create-turbo/templates/_shared_ts/apps/docs/package.json index 4d6a754e10d18..72e8824225b8e 100644 --- a/create-turbo/templates/_shared_ts/apps/docs/package.json +++ b/create-turbo/templates/_shared_ts/apps/docs/package.json @@ -1,6 +1,6 @@ { "name": "docs", - "version": "1.0.0", + "version": "0.0.0", "private": true, "scripts": { "dev": "next dev --port 3001", diff --git a/create-turbo/templates/_shared_ts/apps/web/package.json b/create-turbo/templates/_shared_ts/apps/web/package.json index 80906a537485c..cc9e2bd19ab65 100644 --- a/create-turbo/templates/_shared_ts/apps/web/package.json +++ b/create-turbo/templates/_shared_ts/apps/web/package.json @@ -1,6 +1,6 @@ { "name": "web", - "version": "1.0.0", + "version": "0.0.0", "private": true, "scripts": { "dev": "next dev", diff --git a/create-turbo/templates/_shared_ts/packages/config/package.json b/create-turbo/templates/_shared_ts/packages/config/package.json index 24761419fa38f..1226c82bb358c 100644 --- a/create-turbo/templates/_shared_ts/packages/config/package.json +++ b/create-turbo/templates/_shared_ts/packages/config/package.json @@ -1,6 +1,6 @@ { "name": "config", - "version": "1.0.0", + "version": "0.0.0", "main": "index.js", "license": "MIT", "files": [ diff --git a/create-turbo/templates/_shared_ts/packages/tsconfig/README.md b/create-turbo/templates/_shared_ts/packages/tsconfig/README.md index 7f2c17d8b0263..0da79cf231837 100644 --- a/create-turbo/templates/_shared_ts/packages/tsconfig/README.md +++ b/create-turbo/templates/_shared_ts/packages/tsconfig/README.md @@ -1,3 +1,3 @@ # `tsconfig` -This is the base shared `tsconfig.json` from which all other `tsconfig.json`'s inherit from. +These are base shared `tsconfig.json`s from which all other `tsconfig.json`'s inherit from. diff --git a/create-turbo/templates/_shared_ts/packages/ui/index.tsx b/create-turbo/templates/_shared_ts/packages/ui/index.tsx new file mode 100644 index 0000000000000..e22c29adcf9c4 --- /dev/null +++ b/create-turbo/templates/_shared_ts/packages/ui/index.tsx @@ -0,0 +1 @@ +export * from "./Button"; diff --git a/create-turbo/templates/_shared_ts/packages/ui/package.json b/create-turbo/templates/_shared_ts/packages/ui/package.json index df5205d9d939d..2e0f8a61bd83c 100644 --- a/create-turbo/templates/_shared_ts/packages/ui/package.json +++ b/create-turbo/templates/_shared_ts/packages/ui/package.json @@ -1,7 +1,13 @@ { "name": "ui", - "version": "1.0.0", - "main": "./Button.tsx", - "types": "./Button.tsx", - "license": "MIT" + "version": "0.0.0", + "main": "./index.tsx", + "types": "./index.tsx", + "license": "MIT", + "devDependencies": { + "@types/react": "^17.0.37", + "@types/react-dom": "^17.0.11", + "tsconfig": "*", + "typescript": "^4.5.2" + } } diff --git a/create-turbo/templates/_shared_ts/packages/ui/tsconfig.json b/create-turbo/templates/_shared_ts/packages/ui/tsconfig.json new file mode 100644 index 0000000000000..20c649b975498 --- /dev/null +++ b/create-turbo/templates/_shared_ts/packages/ui/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "tsconfig/react-library.json", + "compilerOptions": { + "jsx": "react-jsx" + }, + "exclude": ["node_modules"] +} diff --git a/docs/pages/docs/reference/command-line-reference.mdx b/docs/pages/docs/reference/command-line-reference.mdx index 4c090c1b05221..0942ac627bba6 100644 --- a/docs/pages/docs/reference/command-line-reference.mdx +++ b/docs/pages/docs/reference/command-line-reference.mdx @@ -356,10 +356,37 @@ With the `--docker` flag. The `prune` command will generate folder called `out` └── yarn.lock # The pruned lockfile for all targets in the subworkspace ``` +## `turbo login` + +Connect machine to your Remote Cache provider. The default provider is [Vercel](https://vercel.com). + +### Options + +#### `--url` + +`type: string` + +Defaults to `https://vercel.com`. + +#### `--api` + +`type: string` + +Defaults to `https://api.vercel.com`. + ## `turbo link` -Link the current directory to an existing Vercel organization or user. The selected owner (either a user or and organization) will be able to share [cache artifacts](../caching). +Link the current directory to Remote Cache scope. The selected owner (either a user or and organization) will be able to share [cache artifacts](../features/caching) through [Remote Caching](../features/remote-caching). +You should run this command from the root of your monorepo. + +### Options + +#### `--api` + +`type: string` + +Defaults to `https://api.vercel.com` -## `turbo unlink` +### `turbo unlink` -Unlink the current directory from a Vercel organization or user. +Unlink the current directory from the Remote Cache diff --git a/examples/basic/apps/docs/package.json b/examples/basic/apps/docs/package.json index 11fc1af488694..b8a56ab5cb334 100644 --- a/examples/basic/apps/docs/package.json +++ b/examples/basic/apps/docs/package.json @@ -15,10 +15,12 @@ "ui": "*" }, "devDependencies": { - "eslint": "7.32.0", - "tsconfig": "*", + "@types/react": "^17.0.37", + "@types/react-dom": "^17.0.11", "config": "*", + "eslint": "7.32.0", "next-transpile-modules": "^9.0.0", + "tsconfig": "*", "typescript": "^4.5.2" } } diff --git a/examples/basic/apps/web/package.json b/examples/basic/apps/web/package.json index 7ce7dacab9209..8ed14748ef504 100644 --- a/examples/basic/apps/web/package.json +++ b/examples/basic/apps/web/package.json @@ -9,12 +9,14 @@ "lint": "next lint" }, "dependencies": { - "next": "12.0.3", + "next": "^12.0.7", "react": "17.0.2", "react-dom": "17.0.2", "ui": "*" }, "devDependencies": { + "@types/react": "^17.0.37", + "@types/react-dom": "^17.0.11", "config": "*", "eslint": "7.32.0", "next-transpile-modules": "^9.0.0", diff --git a/examples/basic/packages/config/eslint-preset.js b/examples/basic/packages/config/eslint-preset.js index 4ade18abe11be..9989002c6150f 100644 --- a/examples/basic/packages/config/eslint-preset.js +++ b/examples/basic/packages/config/eslint-preset.js @@ -2,13 +2,7 @@ module.exports = { extends: ["next", "prettier"], settings: { next: { - rootDir: [ - "apps/docs/", - "apps/web/", - "packages/ui/", - "packages/config/", - "packages/tsconfig/", - ], + rootDir: ["apps/*/", "packages/*/"], }, }, }; diff --git a/examples/basic/packages/tsconfig/README.md b/examples/basic/packages/tsconfig/README.md deleted file mode 100644 index 7f2c17d8b0263..0000000000000 --- a/examples/basic/packages/tsconfig/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# `tsconfig` - -This is the base shared `tsconfig.json` from which all other `tsconfig.json`'s inherit from. diff --git a/examples/basic/packages/ui/index.tsx b/examples/basic/packages/ui/index.tsx new file mode 100644 index 0000000000000..e22c29adcf9c4 --- /dev/null +++ b/examples/basic/packages/ui/index.tsx @@ -0,0 +1 @@ +export * from "./Button"; diff --git a/examples/basic/packages/ui/package.json b/examples/basic/packages/ui/package.json index df5205d9d939d..2e0f8a61bd83c 100644 --- a/examples/basic/packages/ui/package.json +++ b/examples/basic/packages/ui/package.json @@ -1,7 +1,13 @@ { "name": "ui", - "version": "1.0.0", - "main": "./Button.tsx", - "types": "./Button.tsx", - "license": "MIT" + "version": "0.0.0", + "main": "./index.tsx", + "types": "./index.tsx", + "license": "MIT", + "devDependencies": { + "@types/react": "^17.0.37", + "@types/react-dom": "^17.0.11", + "tsconfig": "*", + "typescript": "^4.5.2" + } } diff --git a/examples/basic/packages/ui/tsconfig.json b/examples/basic/packages/ui/tsconfig.json new file mode 100644 index 0000000000000..20c649b975498 --- /dev/null +++ b/examples/basic/packages/ui/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "tsconfig/react-library.json", + "compilerOptions": { + "jsx": "react-jsx" + }, + "exclude": ["node_modules"] +} diff --git a/examples/with-pnpm/packages/tsconfig/README.md b/examples/with-pnpm/packages/tsconfig/README.md deleted file mode 100644 index ad972d4ca8d49..0000000000000 --- a/examples/with-pnpm/packages/tsconfig/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# `tsconfig` - -This is the Turborepo shared `tsconfig.json` from which all sother `tsconfig.json`'s inherit from. Making changes to this may have unintended consequences. diff --git a/examples/with-pnpm/packages/tsconfig/node12.json b/examples/with-pnpm/packages/tsconfig/node12.json deleted file mode 100644 index e538e9f3e53a1..0000000000000 --- a/examples/with-pnpm/packages/tsconfig/node12.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "display": "Node 12", - "extends": "./base.json", - "compilerOptions": { - "lib": ["es2019", "es2020.promise", "es2020.bigint", "es2020.string"], - "module": "commonjs", - "target": "es2019", - "strict": true - } -} diff --git a/examples/with-pnpm/packages/tsconfig/node14.json b/examples/with-pnpm/packages/tsconfig/node14.json deleted file mode 100644 index 3f5f130f25094..0000000000000 --- a/examples/with-pnpm/packages/tsconfig/node14.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "display": "Node 14", - "extends": "./base.json", - "compilerOptions": { - "lib": ["es2020"], - "module": "commonjs", - "target": "es2020", - "strict": true, - "esModuleInterop": true, - "skipLibCheck": true, - "forceConsistentCasingInFileNames": true - } -} diff --git a/examples/with-pnpm/packages/tsconfig/vite.json b/examples/with-pnpm/packages/tsconfig/vite.json deleted file mode 100644 index 1cf8032f7b3f3..0000000000000 --- a/examples/with-pnpm/packages/tsconfig/vite.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "extends": "./base.json", - "Display": "Vite", - "compilerOptions": { - "target": "ESNext", - "lib": ["DOM", "DOM.Iterable", "ESNext"], - "types": ["vite/client"], - "allowJs": false, - "skipLibCheck": false, - "esModuleInterop": false, - "module": "ESNext", - "moduleResolution": "Node", - "resolveJsonModule": true, - "isolatedModules": true, - "noEmit": true, - "jsx": "react" - } -} diff --git a/examples/with-pnpm/packages/ui/index.tsx b/examples/with-pnpm/packages/ui/index.tsx new file mode 100644 index 0000000000000..e22c29adcf9c4 --- /dev/null +++ b/examples/with-pnpm/packages/ui/index.tsx @@ -0,0 +1 @@ +export * from "./Button"; diff --git a/examples/with-pnpm/packages/ui/package.json b/examples/with-pnpm/packages/ui/package.json index df5205d9d939d..90158b40eb294 100644 --- a/examples/with-pnpm/packages/ui/package.json +++ b/examples/with-pnpm/packages/ui/package.json @@ -1,7 +1,13 @@ { "name": "ui", - "version": "1.0.0", - "main": "./Button.tsx", - "types": "./Button.tsx", - "license": "MIT" + "version": "0.0.0", + "main": "./index.tsx", + "types": "./index.tsx", + "license": "MIT", + "devDependencies": { + "@types/react": "^17.0.37", + "@types/react-dom": "^17.0.11", + "tsconfig": "workspace:*", + "typescript": "^4.5.2" + } } diff --git a/examples/with-pnpm/packages/ui/tsconfig.json b/examples/with-pnpm/packages/ui/tsconfig.json new file mode 100644 index 0000000000000..20c649b975498 --- /dev/null +++ b/examples/with-pnpm/packages/ui/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "tsconfig/react-library.json", + "compilerOptions": { + "jsx": "react-jsx" + }, + "exclude": ["node_modules"] +}