@zayne-labs/tsconfig 0.1.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,41 +1,38 @@
1
- name: Changesets Release and Publish
1
+ name: Changeset - Release and Publish
2
2
  on:
3
3
  push:
4
- branches:
5
- - main
6
-
7
- concurrency: ${{ github.workflow }}-${{ github.ref }}
4
+ branches: main
8
5
 
9
6
  permissions:
10
7
  contents: write
11
8
  pull-requests: write
9
+ id-token: write
12
10
 
13
11
  jobs:
14
12
  release:
15
- # if: ${{ github.event.workflow_run.conclusion == 'success' }}
16
13
  runs-on: ubuntu-latest
17
14
  timeout-minutes: 15
18
15
  strategy:
19
16
  matrix:
20
17
  node-version: [20.x]
18
+
21
19
  steps:
22
- - name: checkout code repository
23
- uses: actions/checkout@v4
20
+ - name: Checkout repo
21
+ uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4
24
22
  with:
25
- # This makes Actions fetch all Git history so that Changesets
26
- # can generate changelogs with the correct commits.
23
+ # This makes Actions fetch all Git history so that Changesets can generate changelogs with the correct commits.
27
24
  fetch-depth: 0
28
25
 
29
26
  - name: Setup pnpm
30
27
  uses: pnpm/action-setup@v4
31
28
  with:
32
- version: 9.5.0
29
+ version: 9.15.4
33
30
 
34
31
  - name: Setup Node.js 20.x
35
- uses: actions/setup-node@v4
32
+ uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4
36
33
  with:
37
34
  node-version: ${{ matrix.node-version }}
38
- cache: "pnpm"
35
+ cache: pnpm
39
36
 
40
37
  - name: Install dependencies
41
38
  run: pnpm install --frozen-lockfile
@@ -43,8 +40,8 @@ jobs:
43
40
  - name: Create Release Pull Request or Publish to npm
44
41
  uses: changesets/action@v1
45
42
  with:
46
- commit: "ci: update package version"
47
- title: "ci: update package version"
43
+ commit: "ci(changesets): version and release packages"
44
+ title: "ci(changesets): version and release packages"
48
45
  publish: pnpm release
49
46
 
50
47
  env:
package/CHANGELOG.md CHANGED
@@ -1,5 +1,35 @@
1
1
  # @zayne-labs/tsconfig
2
2
 
3
+ ## 0.2.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 1cbb9df: add a json file for all base options. add erasableSyntaxOnly flag
8
+
9
+ ## 0.2.1
10
+
11
+ ### Patch Changes
12
+
13
+ - b92f8e1: fix provenance
14
+
15
+ ## 0.2.0
16
+
17
+ ### Minor Changes
18
+
19
+ - 599c354: feat: remove vite config
20
+
21
+ ## 1.0.0
22
+
23
+ ### Major Changes
24
+
25
+ - 9dadb83: feat:! removed vite config
26
+
27
+ ## 0.1.2
28
+
29
+ ### Patch Changes
30
+
31
+ - cd7243e: add provenance
32
+
3
33
  ## 0.1.1
4
34
 
5
35
  ### Patch Changes
package/README.md CHANGED
@@ -20,8 +20,8 @@ pnpm add -D @zayne-labs/tsconfig
20
20
 
21
21
  ```jsonc
22
22
  {
23
- // For building an app that runs in the DOM with an external bundler
24
- "extends": "@zayne-labs/tsconfig/bundler/dom/app",
23
+ // For building an app that runs in the DOM with an external bundler
24
+ "extends": "@zayne-labs/tsconfig/bundler/dom/app"
25
25
  }
26
26
  ```
27
27
 
@@ -35,15 +35,15 @@ If yes, use this selection of configs:
35
35
 
36
36
  ```jsonc
37
37
  {
38
- // For code that runs in the DOM:
39
- "extends": "@zayne-labs/tsconfig/tsc/dom/app", // For an app
40
- "extends": "@zayne-labs/tsconfig/tsc/dom/library", // For a library
38
+ // For code that runs in the DOM:
39
+ "extends": "@zayne-labs/tsconfig/tsc/dom/app", // For an app
40
+ "extends": "@zayne-labs/tsconfig/tsc/dom/library", // For a library
41
41
  "extends": "@zayne-labs/tsconfig/tsc/dom/library-monorepo", // For a library in a monorepo
42
42
 
43
- // For code that doesn't run in the DOM (for instance, in Node.js):
44
- "extends": "@zayne-labs/tsconfig/tsc/no-dom/app", // For an app
45
- "extends": "@zayne-labs/tsconfig/tsc/no-dom/library", // For a library
46
- "extends": "@zayne-labs/tsconfig/tsc/no-dom/library-monorepo", // For a library in a monorepo
43
+ // For code that doesn't run in the DOM (for instance, in Node.js):
44
+ "extends": "@zayne-labs/tsconfig/tsc/no-dom/app", // For an app
45
+ "extends": "@zayne-labs/tsconfig/tsc/no-dom/library", // For a library
46
+ "extends": "@zayne-labs/tsconfig/tsc/no-dom/library-monorepo" // For a library in a monorepo
47
47
  }
48
48
  ```
49
49
 
@@ -53,15 +53,15 @@ If no, you're probably using an external bundler.
53
53
 
54
54
  ```jsonc
55
55
  {
56
- // For code that runs in the DOM:
57
- "extends": "@zayne-labs/tsconfig/bundler/dom/app", // For an app
58
- "extends": "@zayne-labs/tsconfig/bundler/dom/library", // For a library
56
+ // For code that runs in the DOM:
57
+ "extends": "@zayne-labs/tsconfig/bundler/dom/app", // For an app
58
+ "extends": "@zayne-labs/tsconfig/bundler/dom/library", // For a library
59
59
  "extends": "@zayne-labs/tsconfig/bundler/dom/library-monorepo", // For a library in a monorepo
60
60
 
61
- // For code that doesn't run in the DOM (for instance, in Node.js):
62
- "extends": "@zayne-labs/tsconfig/bundler/no-dom/app", // For an app
63
- "extends": "@zayne-labs/tsconfig/bundler/no-dom/library", // For a library
64
- "extends": "@zayne-labs/tsconfig/bundler/no-dom/library-monorepo", // For a library in a monorepo
61
+ // For code that doesn't run in the DOM (for instance, in Node.js):
62
+ "extends": "@zayne-labs/tsconfig/bundler/no-dom/app", // For an app
63
+ "extends": "@zayne-labs/tsconfig/bundler/no-dom/library", // For a library
64
+ "extends": "@zayne-labs/tsconfig/bundler/no-dom/library-monorepo" // For a library in a monorepo
65
65
  }
66
66
  ```
67
67
 
@@ -71,10 +71,7 @@ The following are currently supported framework-specific options, will add more
71
71
 
72
72
  ```jsonc
73
73
  {
74
- // For a vite app
75
- "extends": "@zayne-labs/tsconfig/bundler/dom/vite",
76
-
77
- // For a nextjs app
78
- "extends": "@zayne-labs/tsconfig/bundler/dom/next",
74
+ // For a nextjs app
75
+ "extends": "@zayne-labs/tsconfig/bundler/dom/next"
79
76
  }
80
77
  ```
@@ -5,15 +5,16 @@
5
5
  "skipLibCheck": true,
6
6
  "resolveJsonModule": true,
7
7
  "moduleDetection": "force",
8
- "useDefineForClassFields": true,
9
8
  "isolatedModules": true,
10
9
  "verbatimModuleSyntax": true,
10
+ "useDefineForClassFields": true,
11
11
 
12
12
  /* Don't allow importing JavaScript files by default, to avoid mistake "any" (burnt me before): */
13
13
  "allowJs": false,
14
14
 
15
15
  /* Linting: */
16
16
  "strict": true,
17
+ "erasableSyntaxOnly": true,
17
18
  "noImplicitOverride": true,
18
19
  "noImplicitReturns": true,
19
20
  "noImplicitThis": true,
@@ -22,18 +23,6 @@
22
23
  "allowSyntheticDefaultImports": true,
23
24
  "forceConsistentCasingInFileNames": true,
24
25
  "noErrorTruncation": true,
25
- "noUncheckedIndexedAccess": true,
26
-
27
- /* Bundler mode: */
28
- "module": "Preserve",
29
- "target": "ESNext",
30
- "noEmit": true,
31
- "jsx": "preserve",
32
-
33
- /* Vite specific ambient types: */
34
- "types": ["vite/client"],
35
-
36
- /* If your code runs in the DOM: */
37
- "lib": ["ESNext", "DOM", "DOM.Iterable"]
26
+ "noUncheckedIndexedAccess": true
38
27
  }
39
28
  }
@@ -1,29 +1,7 @@
1
1
  {
2
- "compilerOptions": {
3
- /* Base Options: */
4
- "esModuleInterop": true,
5
- "skipLibCheck": true,
6
- "resolveJsonModule": true,
7
- "moduleDetection": "force",
8
- "isolatedModules": true,
9
- "verbatimModuleSyntax": true,
10
- "useDefineForClassFields": true,
11
-
12
- /* Don't allow importing JavaScript files by default, to avoid mistake "any" (burnt me before): */
13
- "allowJs": false,
14
-
15
- /* Linting: */
16
- "strict": true,
17
- "noImplicitOverride": true,
18
- "noImplicitReturns": true,
19
- "noImplicitThis": true,
20
- "noFallthroughCasesInSwitch": true,
21
- "allowUnreachableCode": false,
22
- "allowSyntheticDefaultImports": true,
23
- "forceConsistentCasingInFileNames": true,
24
- "noErrorTruncation": true,
25
- "noUncheckedIndexedAccess": true,
2
+ "extends": ["./base/tsconfig.base.json"],
26
3
 
4
+ "compilerOptions": {
27
5
  /* Bundler Mode: */
28
6
  "module": "Preserve",
29
7
  // "moduleResolution": "Bundler", // This is inferred from module: "Preserve"
@@ -1,29 +1,7 @@
1
1
  {
2
- "compilerOptions": {
3
- /* Base Options: */
4
- "esModuleInterop": true,
5
- "skipLibCheck": true,
6
- "resolveJsonModule": true,
7
- "moduleDetection": "force",
8
- "useDefineForClassFields": true,
9
- "isolatedModules": true,
10
- "verbatimModuleSyntax": true,
11
-
12
- /* Don't allow importing JavaScript files by default, to avoid mistake "any" (burnt me before): */
13
- "allowJs": false,
14
-
15
- /* Linting: */
16
- "strict": true,
17
- "noImplicitOverride": true,
18
- "noImplicitReturns": true,
19
- "noImplicitThis": true,
20
- "noFallthroughCasesInSwitch": true,
21
- "allowUnreachableCode": false,
22
- "allowSyntheticDefaultImports": true,
23
- "forceConsistentCasingInFileNames": true,
24
- "noErrorTruncation": true,
25
- "noUncheckedIndexedAccess": true,
2
+ "extends": ["./base/tsconfig.base.json"],
26
3
 
4
+ "compilerOptions": {
27
5
  /* Bundler mode: */
28
6
  "module": "Preserve",
29
7
  "target": "ESNext",
@@ -1,29 +1,7 @@
1
1
  {
2
- "compilerOptions": {
3
- /* Base Options: */
4
- "esModuleInterop": true,
5
- "skipLibCheck": true,
6
- "resolveJsonModule": true,
7
- "moduleDetection": "force",
8
- "isolatedModules": true,
9
- "verbatimModuleSyntax": true,
10
- "useDefineForClassFields": true,
11
-
12
- /* Don't allow importing JavaScript files by default, to avoid mistake "any" (burnt me before): */
13
- "allowJs": false,
14
-
15
- /* Linting: */
16
- "strict": true,
17
- "noImplicitOverride": true,
18
- "noImplicitReturns": true,
19
- "noImplicitThis": true,
20
- "noFallthroughCasesInSwitch": true,
21
- "allowUnreachableCode": false,
22
- "allowSyntheticDefaultImports": true,
23
- "forceConsistentCasingInFileNames": true,
24
- "noErrorTruncation": true,
25
- "noUncheckedIndexedAccess": true,
2
+ "extends": ["./base/tsconfig.base.json"],
26
3
 
4
+ "compilerOptions": {
27
5
  /* Bundler Mode: */
28
6
  "module": "Preserve",
29
7
  "target": "ESNext",
package/package.json CHANGED
@@ -1,17 +1,19 @@
1
1
  {
2
2
  "name": "@zayne-labs/tsconfig",
3
- "version": "0.1.1",
3
+ "version": "0.2.2",
4
4
  "type": "module",
5
5
  "description": "A collection of TypeScript configurations for various projects, based on Total TypeScript's TSConfig Cheat Sheet, with a few additions.",
6
6
  "repository": {
7
7
  "type": "git",
8
- "url": "https://github.com/ryan-zayne/tsconfig.git"
8
+ "url": "https://github.com/zayne-labs/tsconfig"
9
9
  },
10
10
  "homepage": "https://github.com/ryan-zayne/tsconfig#readme",
11
11
  "license": "MIT",
12
12
  "author": "Ryan Zayne",
13
13
  "publishConfig": {
14
- "access": "public"
14
+ "access": "public",
15
+ "registry": "https://registry.npmjs.org/",
16
+ "provenance": true
15
17
  },
16
18
  "exports": {
17
19
  "./tsc": "./tsc/dom/tsconfig.app.json",
@@ -27,15 +29,14 @@
27
29
  "./bundler/dom/app": "./bundler/tsconfig.dom.json",
28
30
  "./bundler/dom/library": "./bundler/tsconfig.dom.json",
29
31
  "./bundler/dom/library-monorepo": "./bundler/tsconfig.dom.json",
32
+ "./bundler/next": "./bundler/tsconfig.next.json",
30
33
  "./bundler/no-dom": "./bundler/tsconfig.no-dom.json",
31
34
  "./bundler/no-dom/app": "./bundler/tsconfig.no-dom.json",
32
35
  "./bundler/no-dom/library": "./bundler/tsconfig.no-dom.json",
33
- "./bundler/no-dom/library-monorepo": "./bundler/tsconfig.no-dom.json",
34
- "./bundler/vite": "./bundler/tsconfig.vite.json",
35
- "./bundler/next": "./bundler/tsconfig.next.json"
36
+ "./bundler/no-dom/library-monorepo": "./bundler/tsconfig.no-dom.json"
36
37
  },
37
38
  "devDependencies": {
38
- "@changesets/cli": "^2.27.5"
39
+ "@changesets/cli": "^2.28.1"
39
40
  },
40
41
  "scripts": {
41
42
  "release": "changeset publish"
@@ -1,29 +1,7 @@
1
1
  {
2
- "compilerOptions": {
3
- /* Base Options: */
4
- "esModuleInterop": true,
5
- "skipLibCheck": true,
6
- "resolveJsonModule": true,
7
- "moduleDetection": "force",
8
- "isolatedModules": true,
9
- "verbatimModuleSyntax": true,
10
- "useDefineForClassFields": true,
11
-
12
- /* Don't allow importing JavaScript files by default, to avoid mistake "any" (burnt me before): */
13
- "allowJs": false,
14
-
15
- /* Linting: */
16
- "strict": true,
17
- "noImplicitOverride": true,
18
- "noImplicitReturns": true,
19
- "noImplicitThis": true,
20
- "noFallthroughCasesInSwitch": true,
21
- "allowUnreachableCode": false,
22
- "allowSyntheticDefaultImports": true,
23
- "forceConsistentCasingInFileNames": true,
24
- "noErrorTruncation": true,
25
- "noUncheckedIndexedAccess": true,
2
+ "extends": ["./base/tsconfig.base.json"],
26
3
 
4
+ "compilerOptions": {
27
5
  /* If transpiling with TypeScript: */
28
6
  "module": "NodeNext",
29
7
  "sourceMap": true,
@@ -1,29 +1,7 @@
1
1
  {
2
- "compilerOptions": {
3
- /* Base Options: */
4
- "esModuleInterop": true,
5
- "skipLibCheck": true,
6
- "resolveJsonModule": true,
7
- "moduleDetection": "force",
8
- "isolatedModules": true,
9
- "verbatimModuleSyntax": true,
10
- "useDefineForClassFields": true,
11
-
12
- /* Don't allow importing JavaScript files by default, to avoid mistake "any" (burnt me before): */
13
- "allowJs": false,
14
-
15
- /* Linting: */
16
- "strict": true,
17
- "noImplicitOverride": true,
18
- "noImplicitReturns": true,
19
- "noImplicitThis": true,
20
- "noFallthroughCasesInSwitch": true,
21
- "allowUnreachableCode": false,
22
- "allowSyntheticDefaultImports": true,
23
- "forceConsistentCasingInFileNames": true,
24
- "noErrorTruncation": true,
25
- "noUncheckedIndexedAccess": true,
2
+ "extends": ["./base/tsconfig.base.json"],
26
3
 
4
+ "compilerOptions": {
27
5
  /* If transpiling with TypeScript: */
28
6
  "module": "NodeNext",
29
7
  "sourceMap": true,
@@ -1,29 +1,7 @@
1
1
  {
2
- "compilerOptions": {
3
- /* Base Options: */
4
- "esModuleInterop": true,
5
- "skipLibCheck": true,
6
- "resolveJsonModule": true,
7
- "moduleDetection": "force",
8
- "isolatedModules": true,
9
- "verbatimModuleSyntax": true,
10
- "useDefineForClassFields": true,
11
-
12
- /* Don't allow importing JavaScript files by default, to avoid mistake "any" (burnt me before): */
13
- "allowJs": false,
14
-
15
- /* Linting: */
16
- "strict": true,
17
- "noImplicitOverride": true,
18
- "noImplicitReturns": true,
19
- "noImplicitThis": true,
20
- "noFallthroughCasesInSwitch": true,
21
- "allowUnreachableCode": false,
22
- "allowSyntheticDefaultImports": true,
23
- "forceConsistentCasingInFileNames": true,
24
- "noErrorTruncation": true,
25
- "noUncheckedIndexedAccess": true,
2
+ "extends": ["./base/tsconfig.base.json"],
26
3
 
4
+ "compilerOptions": {
27
5
  /* If transpiling with TypeScript: */
28
6
  "module": "NodeNext",
29
7
  "sourceMap": true,
@@ -1,29 +1,7 @@
1
1
  {
2
- "compilerOptions": {
3
- /* Base Options: */
4
- "esModuleInterop": true,
5
- "skipLibCheck": true,
6
- "resolveJsonModule": true,
7
- "moduleDetection": "force",
8
- "isolatedModules": true,
9
- "verbatimModuleSyntax": true,
10
- "useDefineForClassFields": true,
11
-
12
- /* Don't allow importing JavaScript files by default, to avoid mistake "any" (burnt me before): */
13
- "allowJs": false,
14
-
15
- /* Linting: */
16
- "strict": true,
17
- "noImplicitOverride": true,
18
- "noImplicitReturns": true,
19
- "noImplicitThis": true,
20
- "noFallthroughCasesInSwitch": true,
21
- "allowUnreachableCode": false,
22
- "allowSyntheticDefaultImports": true,
23
- "forceConsistentCasingInFileNames": true,
24
- "noErrorTruncation": true,
25
- "noUncheckedIndexedAccess": true,
2
+ "extends": ["./base/tsconfig.base.json"],
26
3
 
4
+ "compilerOptions": {
27
5
  /* If transpiling with TypeScript: */
28
6
  "module": "NodeNext",
29
7
  "sourceMap": true,
@@ -1,29 +1,7 @@
1
1
  {
2
- "compilerOptions": {
3
- /* Base Options: */
4
- "esModuleInterop": true,
5
- "skipLibCheck": true,
6
- "resolveJsonModule": true,
7
- "moduleDetection": "force",
8
- "isolatedModules": true,
9
- "verbatimModuleSyntax": true,
10
- "useDefineForClassFields": true,
11
-
12
- /* Don't allow importing JavaScript files by default, to avoid mistake "any" (burnt me before): */
13
- "allowJs": false,
14
-
15
- /* Linting: */
16
- "strict": true,
17
- "noImplicitOverride": true,
18
- "noImplicitReturns": true,
19
- "noImplicitThis": true,
20
- "noFallthroughCasesInSwitch": true,
21
- "allowUnreachableCode": false,
22
- "allowSyntheticDefaultImports": true,
23
- "forceConsistentCasingInFileNames": true,
24
- "noErrorTruncation": true,
25
- "noUncheckedIndexedAccess": true,
2
+ "extends": ["./base/tsconfig.base.json"],
26
3
 
4
+ "compilerOptions": {
27
5
  /* If transpiling with TypeScript: */
28
6
  "module": "NodeNext",
29
7
  "sourceMap": true,
@@ -1,29 +1,7 @@
1
1
  {
2
- "compilerOptions": {
3
- /* Base Options: */
4
- "esModuleInterop": true,
5
- "skipLibCheck": true,
6
- "resolveJsonModule": true,
7
- "moduleDetection": "force",
8
- "isolatedModules": true,
9
- "verbatimModuleSyntax": true,
10
- "useDefineForClassFields": true,
11
-
12
- /* Don't allow importing JavaScript files by default, to avoid mistake "any" (burnt me before): */
13
- "allowJs": false,
14
-
15
- /* Linting: */
16
- "strict": true,
17
- "noImplicitOverride": true,
18
- "noImplicitReturns": true,
19
- "noImplicitThis": true,
20
- "noFallthroughCasesInSwitch": true,
21
- "allowUnreachableCode": false,
22
- "allowSyntheticDefaultImports": true,
23
- "forceConsistentCasingInFileNames": true,
24
- "noErrorTruncation": true,
25
- "noUncheckedIndexedAccess": true,
2
+ "extends": ["./base/tsconfig.base.json"],
26
3
 
4
+ "compilerOptions": {
27
5
  /* If transpiling with TypeScript: */
28
6
  "module": "NodeNext",
29
7
  "sourceMap": true,