@aristobyte-ui/typescript-config 2.15.2 → 2.16.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.
package/README.md CHANGED
@@ -1,6 +1,8 @@
1
1
  # `@aristobyte-ui/typescript-config`
2
2
 
3
3
  <p align="center">
4
+ <img src="https://img.shields.io/npm/v/%40aristobyte-ui%2Ftypescript-config?style=for-the-badge" alt="NPM version" />
5
+ <img src="https://img.shields.io/npm/dm/%40aristobyte-ui%2Ftypescript-config?style=for-the-badge" alt="NPM downloads" />
4
6
  <img src="https://img.shields.io/badge/TypeScript-5.8-blue?style=for-the-badge&logo=typescript&logoColor=white" alt="TypeScript" />
5
7
  <img src="https://img.shields.io/badge/Build-Turbo-green?style=for-the-badge&logo=turbo&logoColor=white" alt="TurboRepo" />
6
8
  <img src="https://img.shields.io/badge/Lint-Strict-red?style=for-the-badge&logo=eslint&logoColor=white" alt="ESLint" />
@@ -85,12 +87,56 @@ In your `tsconfig.json,` extend one of the provided presets.
85
87
  }
86
88
  ```
87
89
 
90
+ **Node.js tools / CLI projects:**
91
+
92
+ ```json
93
+ {
94
+ "extends": "@aristobyte-ui/typescript-config/node",
95
+ "include": ["src"],
96
+ "exclude": ["dist", "node_modules"]
97
+ }
98
+ ```
99
+
100
+ **Library preset (bundler-first projects):**
101
+
102
+ ```json
103
+ {
104
+ "extends": "@aristobyte-ui/typescript-config/library",
105
+ "include": ["src"],
106
+ "exclude": ["dist", "node_modules"]
107
+ }
108
+ ```
109
+
110
+ **Node.js tools / CLI projects:**
111
+
112
+ ```json
113
+ {
114
+ "extends": "@aristobyte-ui/typescript-config/node",
115
+ "include": ["src"],
116
+ "exclude": ["dist", "node_modules"]
117
+ }
118
+ ```
119
+
120
+ **Library preset (bundler-first projects):**
121
+
122
+ ```json
123
+ {
124
+ "extends": "@aristobyte-ui/typescript-config/library",
125
+ "include": ["src"],
126
+ "exclude": ["dist", "node_modules"]
127
+ }
128
+ ```
129
+
88
130
  ## 📂 Presets Available
89
131
 
90
132
  - `base` → Strict, modern TypeScript defaults for libraries.
91
133
  - `react` → Extends `base` with React + JSX optimizations.
92
134
  - `next` → Opinionated config optimized for Next.js projects.
93
135
  - `package` → Publishing-friendly output with declarations and ESNext module resolution.
136
+ - `node` → Node.js-first config with NodeNext resolution and types.
137
+ - `library` → Bundler-first preset with modern lib targets.
138
+ - `node` → Node.js-first config with NodeNext module resolution.
139
+ - `library` → Bundler-first config with modern libs and declarations.
94
140
 
95
141
  ## 🔧 Example in a Package
96
142
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aristobyte-ui/typescript-config",
3
3
  "description": "Shared TypeScript config presets used across AristoByteUI platform and packages.",
4
- "version": "2.15.2",
4
+ "version": "2.16.2",
5
5
  "license": "MIT",
6
6
  "private": false,
7
7
  "main": "tsconfig.base.json",
@@ -42,13 +42,17 @@
42
42
  "./base": "./tsconfig.base.json",
43
43
  "./react": "./tsconfig.react.json",
44
44
  "./next": "./tsconfig.next.json",
45
- "./package": "./tsconfig.package.json"
45
+ "./package": "./tsconfig.package.json",
46
+ "./node": "./tsconfig.node.json",
47
+ "./library": "./tsconfig.library.json"
46
48
  },
47
49
  "files": [
48
50
  "tsconfig.base.json",
49
51
  "tsconfig.react.json",
50
52
  "tsconfig.next.json",
51
- "tsconfig.package.json"
53
+ "tsconfig.package.json",
54
+ "tsconfig.node.json",
55
+ "tsconfig.library.json"
52
56
  ],
53
57
  "publishConfig": {
54
58
  "access": "public"
@@ -2,7 +2,7 @@
2
2
  "$schema": "https://json.schemastore.org/tsconfig",
3
3
  "compilerOptions": {
4
4
  "declaration": true,
5
- "declarationMap": true,
5
+ "declarationMap": false,
6
6
  "esModuleInterop": true,
7
7
  "resolveJsonModule": true,
8
8
  "allowSyntheticDefaultImports": true,
@@ -0,0 +1,13 @@
1
+ {
2
+ "extends": "./tsconfig.base.json",
3
+ "compilerOptions": {
4
+ "target": "ES2020",
5
+ "lib": ["ES2020", "DOM", "DOM.Iterable"],
6
+ "module": "ESNext",
7
+ "moduleResolution": "Bundler",
8
+ "noEmit": true,
9
+ "noUncheckedIndexedAccess": true,
10
+ "declaration": true,
11
+ "declarationMap": false
12
+ }
13
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "extends": "./tsconfig.base.json",
3
+ "compilerOptions": {
4
+ "target": "ES2022",
5
+ "lib": ["ES2022"],
6
+ "module": "NodeNext",
7
+ "moduleResolution": "NodeNext",
8
+ "types": ["node"],
9
+ "noEmit": true
10
+ }
11
+ }