@visulima/tsconfig 3.0.0-alpha.9 → 3.0.0
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/CHANGELOG.md +365 -0
- package/README.md +78 -19
- package/dist/index.d.ts +97 -7
- package/dist/index.js +1 -1
- package/dist/packem_shared/configDirectoryPlaceholder-BX9y4RJS.js +1 -0
- package/dist/packem_shared/findTsConfig-WpIondtG.js +1 -0
- package/dist/packem_shared/writeTsConfig-BrUFAEe9.js +1 -0
- package/package.json +8 -11
- package/dist/find-tsconfig.d.ts +0 -21
- package/dist/packem_shared/findTsConfig-QzVKvyBN.js +0 -1
- package/dist/packem_shared/implicitBaseUrlSymbol-CI4Y92iF.js +0 -1
- package/dist/packem_shared/writeTsConfig-0IO4xPZJ.js +0 -1
- package/dist/read-tsconfig.d.ts +0 -13
- package/dist/types.d.ts +0 -3
- package/dist/utils/resolve-extends-path.d.ts +0 -3
- package/dist/write-tsconfig.d.ts +0 -24
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,368 @@
|
|
|
1
|
+
## @visulima/tsconfig [3.0.0](https://github.com/visulima/visulima/compare/@visulima/tsconfig@2.1.3...@visulima/tsconfig@3.0.0) (2026-07-03)
|
|
2
|
+
|
|
3
|
+
### ⚠ BREAKING CHANGES
|
|
4
|
+
|
|
5
|
+
* change min node version to 22.13
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **tsconfig:** clear lint findings in tsc helper ([d9a99bc](https://github.com/visulima/visulima/commit/d9a99bc860e26bcdcdda8cf2e98528a746c3b05a))
|
|
10
|
+
* **tsconfig:** typescript-version-aware compiler defaults ([1a4236b](https://github.com/visulima/visulima/commit/1a4236bfe0dabb769a88a052a1c9e7511daf6e6d))
|
|
11
|
+
* **web:** auto-generate packages page from workspace metadata ([623e520](https://github.com/visulima/visulima/commit/623e5207693a7fe720f5f2f179593a3654c880e3))
|
|
12
|
+
|
|
13
|
+
### Bug Fixes
|
|
14
|
+
|
|
15
|
+
* add new package image, fixed readme rendering on npm, fixed building of packages ([b790ba2](https://github.com/visulima/visulima/commit/b790ba253ea07fef83528fd822a678facf021b5f))
|
|
16
|
+
* Remove JSR configuration generation script and generated jsr.json files ([#616](https://github.com/visulima/visulima/issues/616)) ([533744b](https://github.com/visulima/visulima/commit/533744b103b74896941db5b727173e617a27a63b))
|
|
17
|
+
* **storage-client:** percent-encode user fields in defaultFingerprint ([7c78a0f](https://github.com/visulima/visulima/commit/7c78a0f9512e2a673b941d80839e9f1e86b7b5d0))
|
|
18
|
+
* **tooling:** resolve eslint and formatting issues ([399d292](https://github.com/visulima/visulima/commit/399d29282be5b29bb26b4e5b24d45e2a6cdeeca3))
|
|
19
|
+
* **tsconfig:** 2 bug fixes ([efc52ce](https://github.com/visulima/visulima/commit/efc52ce63e5cbe9a3b18a98c5cba2886deec6404))
|
|
20
|
+
* **tsconfig:** add node types and fix implicit any parameter ([1744d82](https://github.com/visulima/visulima/commit/1744d82a07fca03f2e6ff660b918e9b2623acf69))
|
|
21
|
+
* **tsconfig:** add TypeScript 6.0 compatibility for implicit compiler defaults ([19de98f](https://github.com/visulima/visulima/commit/19de98f2640c143c6f5e84eda214c84584cf980c))
|
|
22
|
+
* **tsconfig:** align parsing with get-tsconfig for files/include, path inheritance, and TS 6.0 ([0c9d4be](https://github.com/visulima/visulima/commit/0c9d4be347f6ee4212dbe98026a7cd1d465bc2de))
|
|
23
|
+
* **tsconfig:** correct docs, pnp issuer, cache invalidation ([c3e0b9d](https://github.com/visulima/visulima/commit/c3e0b9d4281ee78f70780192fdf1d51b22bb2e9a))
|
|
24
|
+
* **tsconfig:** properly fix eslint errors in code ([95a2142](https://github.com/visulima/visulima/commit/95a2142f816f9ae0d50caaf235a71f9d03ab71cf))
|
|
25
|
+
* **tsconfig:** relax no-unsafe-* for tests and untyped external deps ([1e63952](https://github.com/visulima/visulima/commit/1e63952c41ff76e450ba4ca5aba6ddf7229c65b3))
|
|
26
|
+
* **tsconfig:** remove remaining eslint suppressions with proper code fixes ([57a45bb](https://github.com/visulima/visulima/commit/57a45bbc4e00e1c688a12367dc734c1553a17a6a))
|
|
27
|
+
* **tsconfig:** resolve eslint errors ([5848320](https://github.com/visulima/visulima/commit/5848320dc88a6080cf507eda724f57f9a6800434))
|
|
28
|
+
* **tsconfig:** suppress sonarjs/deprecation for baseUrl handling ([431ae96](https://github.com/visulima/visulima/commit/431ae96bdd025a052bde8291918b1593f972efa1))
|
|
29
|
+
* **tsconfig:** update package files ([f1bb598](https://github.com/visulima/visulima/commit/f1bb5982e370fac9caffd76a73645e51c6ab1704))
|
|
30
|
+
* **tsconfig:** update packem to 2.0.0-alpha.54 ([2f9b2ae](https://github.com/visulima/visulima/commit/2f9b2aea84a455f65ec6d682231876d5c5070159))
|
|
31
|
+
* **tsconfig:** use workspace:* for internal [@visulima](https://github.com/visulima) deps ([420ce4a](https://github.com/visulima/visulima/commit/420ce4a0c075f78520fb9434ea83c9b6e301b571))
|
|
32
|
+
* update Node.js engine version requirement to >=22.13 in multiple package.json files for improved compatibility ([b828e9a](https://github.com/visulima/visulima/commit/b828e9aeaebfc798eecddccd90e6ec7560c6d36a))
|
|
33
|
+
* update package OG images across multiple packages ([f08e4dd](https://github.com/visulima/visulima/commit/f08e4dd2b105ccb29c8412020a9c2be36d6c1e9e))
|
|
34
|
+
* **web:** improve build setup with incremental stats caching and prod install ([fe33e75](https://github.com/visulima/visulima/commit/fe33e75827586779b4b3a0c6d57b39f889ee6207))
|
|
35
|
+
|
|
36
|
+
### Documentation
|
|
37
|
+
|
|
38
|
+
* **humanizer,html,iso-locale,package,tsconfig:** add comprehensive Fumadocs documentation ([19781ce](https://github.com/visulima/visulima/commit/19781ce5d27605971a9f2fdf0a99863effd98091))
|
|
39
|
+
* **tsconfig:** fix stale API reference ([514b1b0](https://github.com/visulima/visulima/commit/514b1b0a6ae8e2533162afcc39ad541762ea92e2))
|
|
40
|
+
|
|
41
|
+
### Miscellaneous Chores
|
|
42
|
+
|
|
43
|
+
* add fallow code-intelligence across all packages ([a3b4821](https://github.com/visulima/visulima/commit/a3b48215002e86fed20f2973038b5d4a0aa1ce04))
|
|
44
|
+
* added missing version key ([3b55253](https://github.com/visulima/visulima/commit/3b55253728af652a0bcaf230d93d2f9e9f2d8806))
|
|
45
|
+
* bump engines.node to ^22.14.0 || >=24.10.0 ([c3d0931](https://github.com/visulima/visulima/commit/c3d0931d1504e4f21ebf50ea680cfa7ce4ba15ce))
|
|
46
|
+
* **ci-stability:** green CI across vis, native, lint, tests, attw ([#651](https://github.com/visulima/visulima/issues/651)) ([d4eb684](https://github.com/visulima/visulima/commit/d4eb684b5f75c818c9251048c605a0ed54a268e3))
|
|
47
|
+
* fixed jsr.json ([5d85e51](https://github.com/visulima/visulima/commit/5d85e5179de38e284ec433b14d77c71a1619c8d6))
|
|
48
|
+
* fixed project.json names and schema path ([964722f](https://github.com/visulima/visulima/commit/964722f691db205c7edb9aa6db29e849a647500b))
|
|
49
|
+
* jsr.json update and lock file ([73fce38](https://github.com/visulima/visulima/commit/73fce38c7cb4603f3fffb88609b1b18e2feb4937))
|
|
50
|
+
* moved all packages into groups ([0615e9d](https://github.com/visulima/visulima/commit/0615e9d14a8a886e11da529ce150cf31ca973c10))
|
|
51
|
+
* re-sort workspace package.json files via vis sort-package-json ([f625696](https://github.com/visulima/visulima/commit/f625696cfac974325774b3243e1a83c3d23acbd7))
|
|
52
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.1 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.1](https://github.com/visulima/visulima/compare/@visulima/tsconfig@2.1.3...@visulima/tsconfig@3.0.0-alpha.1) (2025-12-07) ([ee80cd6](https://github.com/visulima/visulima/commit/ee80cd6bbdf737e3e56c9e8880a76f651d2561b3))
|
|
53
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.10 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.10](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.9...@visulima/tsconfig@3.0.0-alpha.10) (2026-04-21) ([5756160](https://github.com/visulima/visulima/commit/5756160d64e1334643a3d5b8a26b9873a0fb2e3b))
|
|
54
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.11 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.11](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.10...@visulima/tsconfig@3.0.0-alpha.11) (2026-04-22) ([81ce1aa](https://github.com/visulima/visulima/commit/81ce1aace28fdc15055c9389163e8efc94587ce4))
|
|
55
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.12 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.12](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.11...@visulima/tsconfig@3.0.0-alpha.12) (2026-04-30) ([4aa0b9f](https://github.com/visulima/visulima/commit/4aa0b9f2a75a869d48f867a1f319c24c0dc76c40))
|
|
56
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.13 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.13](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.12...@visulima/tsconfig@3.0.0-alpha.13) (2026-05-04) ([3ef4ab8](https://github.com/visulima/visulima/commit/3ef4ab818b46572956c636fd2b23eb7d1b383808))
|
|
57
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.14 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.14](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.13...@visulima/tsconfig@3.0.0-alpha.14) (2026-05-06) ([9534834](https://github.com/visulima/visulima/commit/9534834c35c6e4e02277e1d2f0f838d13f4d9619))
|
|
58
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.15 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.15](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.14...@visulima/tsconfig@3.0.0-alpha.15) (2026-05-06) ([9c7850a](https://github.com/visulima/visulima/commit/9c7850ab538c2997380121304ab0d2541edd442d))
|
|
59
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.16 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.16](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.15...@visulima/tsconfig@3.0.0-alpha.16) (2026-05-07) ([401e2e6](https://github.com/visulima/visulima/commit/401e2e69b2dc8d367f7b7bac418ffb2609ac9fd8))
|
|
60
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.17 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.17](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.16...@visulima/tsconfig@3.0.0-alpha.17) (2026-05-07) ([4e5110d](https://github.com/visulima/visulima/commit/4e5110da487f8bc1acd81436f3a0def9bf141592))
|
|
61
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.18 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.18](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.17...@visulima/tsconfig@3.0.0-alpha.18) (2026-05-10) ([6e561bf](https://github.com/visulima/visulima/commit/6e561bfbcb48e7f1ee96828ef0a5da836362c0ec))
|
|
62
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.19 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.19](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.18...@visulima/tsconfig@3.0.0-alpha.19) (2026-05-10) ([adec8f2](https://github.com/visulima/visulima/commit/adec8f29557e94ac1068044c523194c3fa122e33))
|
|
63
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.2 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.2](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.1...@visulima/tsconfig@3.0.0-alpha.2) (2025-12-11) ([28b3e0e](https://github.com/visulima/visulima/commit/28b3e0e7df52a10f3fa1844fa0ec6fafbd72d9d0))
|
|
64
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.20 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.20](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.19...@visulima/tsconfig@3.0.0-alpha.20) (2026-05-11) ([d619504](https://github.com/visulima/visulima/commit/d6195047c80795c39d4ef961f8a99d8dc488c7d7))
|
|
65
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.21 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.21](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.20...@visulima/tsconfig@3.0.0-alpha.21) (2026-05-11) ([1de3bb2](https://github.com/visulima/visulima/commit/1de3bb2ba5c537cd06bb42c3bb5f0fc87ccbfd8f))
|
|
66
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.22 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.22](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.21...@visulima/tsconfig@3.0.0-alpha.22) (2026-05-14) ([611fdb9](https://github.com/visulima/visulima/commit/611fdb939d3bcc3a0cceadcc4f529b733b81090a))
|
|
67
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.23 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.23](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.22...@visulima/tsconfig@3.0.0-alpha.23) (2026-05-16) ([5f0b6ea](https://github.com/visulima/visulima/commit/5f0b6eabf201ce7c4cde5990e6c405882c8ec676))
|
|
68
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.24 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.24](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.23...@visulima/tsconfig@3.0.0-alpha.24) (2026-05-19) ([d9eab08](https://github.com/visulima/visulima/commit/d9eab08637a7cfb7aaa3267c9c0473a89bcd0049))
|
|
69
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.25 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.25](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.24...@visulima/tsconfig@3.0.0-alpha.25) (2026-05-20) ([daec4bb](https://github.com/visulima/visulima/commit/daec4bbdd2bc07aba756d0b4080d9c708efd0654))
|
|
70
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.26 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.26](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.25...@visulima/tsconfig@3.0.0-alpha.26) (2026-05-26) ([5345970](https://github.com/visulima/visulima/commit/534597009a3c0c51a0d272c68b8bc8d9273f221c))
|
|
71
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.27 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.27](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.26...@visulima/tsconfig@3.0.0-alpha.27) (2026-05-27) ([4323a58](https://github.com/visulima/visulima/commit/4323a58152babaa6493ea549beb0d12cfb143620))
|
|
72
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.28 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.28](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.27...@visulima/tsconfig@3.0.0-alpha.28) (2026-06-02) ([c7f0022](https://github.com/visulima/visulima/commit/c7f002263684f3dba8bdb4f355732e7224827594))
|
|
73
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.29 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.29](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.28...@visulima/tsconfig@3.0.0-alpha.29) (2026-06-04) ([a239ae9](https://github.com/visulima/visulima/commit/a239ae95db7394713ace6708f321a947458a4151))
|
|
74
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.3 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.3](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.2...@visulima/tsconfig@3.0.0-alpha.3) (2025-12-27) ([f9d4903](https://github.com/visulima/visulima/commit/f9d4903b70a262d2f3ebb428a151de634042ea30))
|
|
75
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.30 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.30](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.29...@visulima/tsconfig@3.0.0-alpha.30) (2026-06-04) ([dafea87](https://github.com/visulima/visulima/commit/dafea87c1cacf33a037653c43512f46771f661d7))
|
|
76
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.31 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.31](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.30...@visulima/tsconfig@3.0.0-alpha.31) (2026-06-13) ([801b17f](https://github.com/visulima/visulima/commit/801b17f48aa066123fc43378a967e69c14b65347))
|
|
77
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.32 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.32](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.31...@visulima/tsconfig@3.0.0-alpha.32) (2026-06-30) ([179f23b](https://github.com/visulima/visulima/commit/179f23b8d7581a1bf06c31c355f63fce1c8976f1))
|
|
78
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.4 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.4](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.3...@visulima/tsconfig@3.0.0-alpha.4) (2026-03-06) ([e3876e9](https://github.com/visulima/visulima/commit/e3876e9ee1ba58f112c269b76ac4abdbf642af25))
|
|
79
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.5 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.5](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.4...@visulima/tsconfig@3.0.0-alpha.5) (2026-03-26) ([9387978](https://github.com/visulima/visulima/commit/9387978774851356e021836e2615d87382316d9f))
|
|
80
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.6 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.6](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.5...@visulima/tsconfig@3.0.0-alpha.6) (2026-03-26) ([cead571](https://github.com/visulima/visulima/commit/cead571cef351a9c436735519c592ae237cd9a12))
|
|
81
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.7 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.7](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.6...@visulima/tsconfig@3.0.0-alpha.7) (2026-04-08) ([a55d1e6](https://github.com/visulima/visulima/commit/a55d1e6ec9614dbe933165df17413adf47d787bf))
|
|
82
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.8 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.8](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.7...@visulima/tsconfig@3.0.0-alpha.8) (2026-04-21) ([f190c3d](https://github.com/visulima/visulima/commit/f190c3d6966945ab7b2fbb2256e6cdc3fffba5d3))
|
|
83
|
+
* **release:** @visulima/tsconfig@3.0.0-alpha.9 [skip ci]\n\n## @visulima/tsconfig [3.0.0-alpha.9](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.8...@visulima/tsconfig@3.0.0-alpha.9) (2026-04-21) ([f46ba00](https://github.com/visulima/visulima/commit/f46ba001d1be5169b8c61fbdc9e6f89a23dc402a))
|
|
84
|
+
* **repo:** sort package.json keys across all packages ([e1fd9ab](https://github.com/visulima/visulima/commit/e1fd9ab467ef96a98c777da1572ff6a50fcf7e71))
|
|
85
|
+
* sorted package.json ([b47c545](https://github.com/visulima/visulima/commit/b47c545591600fdab17d5cd3a3fbc68b61e199da))
|
|
86
|
+
* **tooling:** apply prettier and eslint formatting sweep ([c2c641d](https://github.com/visulima/visulima/commit/c2c641d40242e99030cb990fa01039db5e267667))
|
|
87
|
+
* **tooling:** remove empty dependency objects from package.json ([dc52a23](https://github.com/visulima/visulima/commit/dc52a23bc1e2d36f4ec71ca67506bf6861a02929))
|
|
88
|
+
* **tooling:** update dependencies ([7f6f9d3](https://github.com/visulima/visulima/commit/7f6f9d3c41b170c53659ab34b79ceb23e4e9660a))
|
|
89
|
+
* **tsconfig:** add tsconfig.eslint.json for type-aware linting ([2c01b30](https://github.com/visulima/visulima/commit/2c01b30e740cdbf75f96317053fd78a56fb2ccc9))
|
|
90
|
+
* **tsconfig:** apply pending changes ([d7ddb14](https://github.com/visulima/visulima/commit/d7ddb14293c1a140e818dd1b314caeba68db66da))
|
|
91
|
+
* **tsconfig:** apply prettier and eslint quote-style auto-fix ([e184ae4](https://github.com/visulima/visulima/commit/e184ae4c162360c743428361d9be977bad555854))
|
|
92
|
+
* **tsconfig:** apply prettier formatting ([85f32f5](https://github.com/visulima/visulima/commit/85f32f5f072edef750a4ff41d8b25918d26a4641))
|
|
93
|
+
* **tsconfig:** housekeeping cleanup ([081acf1](https://github.com/visulima/visulima/commit/081acf12b3853d85b233412493b48061d4f0dbf3))
|
|
94
|
+
* **tsconfig:** migrate .prettierrc.cjs to prettier.config.js ([bbf2a3b](https://github.com/visulima/visulima/commit/bbf2a3b0f6e23ea39dfeb583b0d100a407c8adaf))
|
|
95
|
+
* **tsconfig:** migrate deps to pnpm catalogs ([ab6e375](https://github.com/visulima/visulima/commit/ab6e37535ba3a575d0d0ddeee72560d8e560bccc))
|
|
96
|
+
* **tsconfig:** sort fixture package.json fields ([370c336](https://github.com/visulima/visulima/commit/370c336d2e1331fe05d2231d92a2b3b456c77620))
|
|
97
|
+
* **tsconfig:** update dependencies ([bf73f34](https://github.com/visulima/visulima/commit/bf73f340b2059d0bf74d836154d7e3a65a8e2c0a))
|
|
98
|
+
* **tsconfig:** update dependencies ([3388495](https://github.com/visulima/visulima/commit/3388495a99235637506dc8b2958e26b625db36f1))
|
|
99
|
+
* **tsconfig:** update dependencies ([7697d4b](https://github.com/visulima/visulima/commit/7697d4b4fa7153ab4a6bb93af68e35da7946df89))
|
|
100
|
+
* **tsconfig:** upgrade packem to 2.0.0-alpha.76 ([4f08e20](https://github.com/visulima/visulima/commit/4f08e204f3a82f5da7346ad910cf39cb2c13de51))
|
|
101
|
+
* update @anolilab/semantic-release-pnpm and @anolilab/semantic-release-preset to versions 3.2.2 and 12.1.2 across multiple package.json files for improved compatibility ([3921626](https://github.com/visulima/visulima/commit/3921626141fe5da398749bf0ba675f1596f18afb))
|
|
102
|
+
* update configuration files and add new package listing script ([3d918ef](https://github.com/visulima/visulima/commit/3d918efd53772430b53b026de6401bdedbe7ea3a))
|
|
103
|
+
* update dependencies across multiple packages to improve compatibility and performance, including upgrading `@anolilab/semantic-release-pnpm` and `@anolilab/semantic-release-preset` to versions 3.2.0 and 12.1.0 respectively, and updating `react`, `react-dom`, and `next` versions to 19.2.1 and 16.0.7 in various package.json files ([aee8fcd](https://github.com/visulima/visulima/commit/aee8fcd796ae9b8d055903260e7150996ea9f53d))
|
|
104
|
+
* update lock file maintenance ([d83e716](https://github.com/visulima/visulima/commit/d83e71697b75d24704185b66bb521a934d2db02d))
|
|
105
|
+
* update logo assets and README references ([a673e68](https://github.com/visulima/visulima/commit/a673e68c62937e61bd3231df7bb4cb01695aea71))
|
|
106
|
+
* update package dependencies and improve configuration ([4ed22d6](https://github.com/visulima/visulima/commit/4ed22d6511aa8150dcd4ba7b9dccf05dbe2d6adc))
|
|
107
|
+
* update the jsr.json ([864ab7e](https://github.com/visulima/visulima/commit/864ab7e71c4b5ae82f64792d1ae8debfea2c539b))
|
|
108
|
+
* visulima website ([#591](https://github.com/visulima/visulima/issues/591)) ([59ab2e2](https://github.com/visulima/visulima/commit/59ab2e2befb03e51cd2088956f83d9b87de6d033))
|
|
109
|
+
* year update ([47f4105](https://github.com/visulima/visulima/commit/47f410596ce7190cfea36a073db32e0cec50bbcd))
|
|
110
|
+
|
|
111
|
+
### Code Refactoring
|
|
112
|
+
|
|
113
|
+
* replace execa with tinyexec ([56ec776](https://github.com/visulima/visulima/commit/56ec776908fe0c068c54542f3885cb29f061fea7))
|
|
114
|
+
* **tsconfig:** reorder type exports and add eslint-disable comments ([5b4bb2b](https://github.com/visulima/visulima/commit/5b4bb2b0f706abf6b39c46be3175c8a7981f92f5))
|
|
115
|
+
|
|
116
|
+
### Tests
|
|
117
|
+
|
|
118
|
+
* **repo:** add dist runtime + types integration tests ([32ee300](https://github.com/visulima/visulima/commit/32ee300b7184117a0ddf9f9d390f75f8932d5ed9))
|
|
119
|
+
|
|
120
|
+
### Continuous Integration
|
|
121
|
+
|
|
122
|
+
* **fallow:** make fallow:health advisory (--report-only) ([d57148e](https://github.com/visulima/visulima/commit/d57148ea0e3556b4c24d8d336b9fa14987f5dc7d))
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
### Dependencies
|
|
126
|
+
|
|
127
|
+
* **@visulima/fs:** upgraded to 5.0.0
|
|
128
|
+
* **@visulima/path:** upgraded to 3.0.0
|
|
129
|
+
|
|
130
|
+
## @visulima/tsconfig [3.0.0-alpha.32](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.31...@visulima/tsconfig@3.0.0-alpha.32) (2026-06-30)
|
|
131
|
+
|
|
132
|
+
### Miscellaneous Chores
|
|
133
|
+
|
|
134
|
+
* add fallow code-intelligence across all packages ([a3b4821](https://github.com/visulima/visulima/commit/a3b48215002e86fed20f2973038b5d4a0aa1ce04))
|
|
135
|
+
|
|
136
|
+
### Continuous Integration
|
|
137
|
+
|
|
138
|
+
* **fallow:** make fallow:health advisory (--report-only) ([d57148e](https://github.com/visulima/visulima/commit/d57148ea0e3556b4c24d8d336b9fa14987f5dc7d))
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
### Dependencies
|
|
142
|
+
|
|
143
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.33
|
|
144
|
+
|
|
145
|
+
## @visulima/tsconfig [3.0.0-alpha.31](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.30...@visulima/tsconfig@3.0.0-alpha.31) (2026-06-13)
|
|
146
|
+
|
|
147
|
+
### Bug Fixes
|
|
148
|
+
|
|
149
|
+
* **tsconfig:** correct docs, pnp issuer, cache invalidation ([c3e0b9d](https://github.com/visulima/visulima/commit/c3e0b9d4281ee78f70780192fdf1d51b22bb2e9a))
|
|
150
|
+
|
|
151
|
+
### Documentation
|
|
152
|
+
|
|
153
|
+
* **tsconfig:** fix stale API reference ([514b1b0](https://github.com/visulima/visulima/commit/514b1b0a6ae8e2533162afcc39ad541762ea92e2))
|
|
154
|
+
|
|
155
|
+
### Code Refactoring
|
|
156
|
+
|
|
157
|
+
* **tsconfig:** reorder type exports and add eslint-disable comments ([5b4bb2b](https://github.com/visulima/visulima/commit/5b4bb2b0f706abf6b39c46be3175c8a7981f92f5))
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
### Dependencies
|
|
161
|
+
|
|
162
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.32
|
|
163
|
+
* **@visulima/path:** upgraded to 3.0.0-alpha.13
|
|
164
|
+
|
|
165
|
+
## @visulima/tsconfig [3.0.0-alpha.30](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.29...@visulima/tsconfig@3.0.0-alpha.30) (2026-06-04)
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
### Dependencies
|
|
169
|
+
|
|
170
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.31
|
|
171
|
+
|
|
172
|
+
## @visulima/tsconfig [3.0.0-alpha.29](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.28...@visulima/tsconfig@3.0.0-alpha.29) (2026-06-04)
|
|
173
|
+
|
|
174
|
+
### Bug Fixes
|
|
175
|
+
|
|
176
|
+
* **tsconfig:** 2 bug fixes ([efc52ce](https://github.com/visulima/visulima/commit/efc52ce63e5cbe9a3b18a98c5cba2886deec6404))
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
### Dependencies
|
|
180
|
+
|
|
181
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.30
|
|
182
|
+
* **@visulima/path:** upgraded to 3.0.0-alpha.12
|
|
183
|
+
|
|
184
|
+
## @visulima/tsconfig [3.0.0-alpha.28](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.27...@visulima/tsconfig@3.0.0-alpha.28) (2026-06-02)
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
### Dependencies
|
|
188
|
+
|
|
189
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.29
|
|
190
|
+
|
|
191
|
+
## @visulima/tsconfig [3.0.0-alpha.27](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.26...@visulima/tsconfig@3.0.0-alpha.27) (2026-05-27)
|
|
192
|
+
|
|
193
|
+
### Bug Fixes
|
|
194
|
+
|
|
195
|
+
* **storage-client:** percent-encode user fields in defaultFingerprint ([7c78a0f](https://github.com/visulima/visulima/commit/7c78a0f9512e2a673b941d80839e9f1e86b7b5d0))
|
|
196
|
+
|
|
197
|
+
### Miscellaneous Chores
|
|
198
|
+
|
|
199
|
+
* sorted package.json ([b47c545](https://github.com/visulima/visulima/commit/b47c545591600fdab17d5cd3a3fbc68b61e199da))
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
### Dependencies
|
|
203
|
+
|
|
204
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.28
|
|
205
|
+
* **@visulima/path:** upgraded to 3.0.0-alpha.11
|
|
206
|
+
|
|
207
|
+
## @visulima/tsconfig [3.0.0-alpha.26](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.25...@visulima/tsconfig@3.0.0-alpha.26) (2026-05-26)
|
|
208
|
+
|
|
209
|
+
### Miscellaneous Chores
|
|
210
|
+
|
|
211
|
+
* **ci-stability:** green CI across vis, native, lint, tests, attw ([#651](https://github.com/visulima/visulima/issues/651)) ([d4eb684](https://github.com/visulima/visulima/commit/d4eb684b5f75c818c9251048c605a0ed54a268e3))
|
|
212
|
+
* **repo:** sort package.json keys across all packages ([e1fd9ab](https://github.com/visulima/visulima/commit/e1fd9ab467ef96a98c777da1572ff6a50fcf7e71))
|
|
213
|
+
|
|
214
|
+
### Tests
|
|
215
|
+
|
|
216
|
+
* **repo:** add dist runtime + types integration tests ([32ee300](https://github.com/visulima/visulima/commit/32ee300b7184117a0ddf9f9d390f75f8932d5ed9))
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
### Dependencies
|
|
220
|
+
|
|
221
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.26
|
|
222
|
+
|
|
223
|
+
## @visulima/tsconfig [3.0.0-alpha.25](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.24...@visulima/tsconfig@3.0.0-alpha.25) (2026-05-20)
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
### Dependencies
|
|
227
|
+
|
|
228
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.25
|
|
229
|
+
|
|
230
|
+
## @visulima/tsconfig [3.0.0-alpha.24](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.23...@visulima/tsconfig@3.0.0-alpha.24) (2026-05-19)
|
|
231
|
+
|
|
232
|
+
|
|
233
|
+
### Dependencies
|
|
234
|
+
|
|
235
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.24
|
|
236
|
+
|
|
237
|
+
## @visulima/tsconfig [3.0.0-alpha.23](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.22...@visulima/tsconfig@3.0.0-alpha.23) (2026-05-16)
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
### Dependencies
|
|
241
|
+
|
|
242
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.23
|
|
243
|
+
|
|
244
|
+
## @visulima/tsconfig [3.0.0-alpha.22](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.21...@visulima/tsconfig@3.0.0-alpha.22) (2026-05-14)
|
|
245
|
+
|
|
246
|
+
### Features
|
|
247
|
+
|
|
248
|
+
* **tsconfig:** clear lint findings in tsc helper ([d9a99bc](https://github.com/visulima/visulima/commit/d9a99bc860e26bcdcdda8cf2e98528a746c3b05a))
|
|
249
|
+
|
|
250
|
+
### Miscellaneous Chores
|
|
251
|
+
|
|
252
|
+
* **tooling:** apply prettier and eslint formatting sweep ([c2c641d](https://github.com/visulima/visulima/commit/c2c641d40242e99030cb990fa01039db5e267667))
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
### Dependencies
|
|
256
|
+
|
|
257
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.22
|
|
258
|
+
|
|
259
|
+
## @visulima/tsconfig [3.0.0-alpha.21](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.20...@visulima/tsconfig@3.0.0-alpha.21) (2026-05-11)
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
### Dependencies
|
|
263
|
+
|
|
264
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.21
|
|
265
|
+
|
|
266
|
+
## @visulima/tsconfig [3.0.0-alpha.20](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.19...@visulima/tsconfig@3.0.0-alpha.20) (2026-05-11)
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
### Dependencies
|
|
270
|
+
|
|
271
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.20
|
|
272
|
+
|
|
273
|
+
## @visulima/tsconfig [3.0.0-alpha.19](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.18...@visulima/tsconfig@3.0.0-alpha.19) (2026-05-10)
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
### Dependencies
|
|
277
|
+
|
|
278
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.19
|
|
279
|
+
|
|
280
|
+
## @visulima/tsconfig [3.0.0-alpha.18](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.17...@visulima/tsconfig@3.0.0-alpha.18) (2026-05-10)
|
|
281
|
+
|
|
282
|
+
### Code Refactoring
|
|
283
|
+
|
|
284
|
+
* replace execa with tinyexec ([56ec776](https://github.com/visulima/visulima/commit/56ec776908fe0c068c54542f3885cb29f061fea7))
|
|
285
|
+
|
|
286
|
+
|
|
287
|
+
### Dependencies
|
|
288
|
+
|
|
289
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.18
|
|
290
|
+
|
|
291
|
+
## @visulima/tsconfig [3.0.0-alpha.17](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.16...@visulima/tsconfig@3.0.0-alpha.17) (2026-05-07)
|
|
292
|
+
|
|
293
|
+
|
|
294
|
+
### Dependencies
|
|
295
|
+
|
|
296
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.17
|
|
297
|
+
|
|
298
|
+
## @visulima/tsconfig [3.0.0-alpha.16](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.15...@visulima/tsconfig@3.0.0-alpha.16) (2026-05-07)
|
|
299
|
+
|
|
300
|
+
|
|
301
|
+
### Dependencies
|
|
302
|
+
|
|
303
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.16
|
|
304
|
+
|
|
305
|
+
## @visulima/tsconfig [3.0.0-alpha.15](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.14...@visulima/tsconfig@3.0.0-alpha.15) (2026-05-06)
|
|
306
|
+
|
|
307
|
+
|
|
308
|
+
### Dependencies
|
|
309
|
+
|
|
310
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.15
|
|
311
|
+
|
|
312
|
+
## @visulima/tsconfig [3.0.0-alpha.14](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.13...@visulima/tsconfig@3.0.0-alpha.14) (2026-05-06)
|
|
313
|
+
|
|
314
|
+
### Miscellaneous Chores
|
|
315
|
+
|
|
316
|
+
* **tsconfig:** apply prettier and eslint quote-style auto-fix ([e184ae4](https://github.com/visulima/visulima/commit/e184ae4c162360c743428361d9be977bad555854))
|
|
317
|
+
* **tsconfig:** housekeeping cleanup ([081acf1](https://github.com/visulima/visulima/commit/081acf12b3853d85b233412493b48061d4f0dbf3))
|
|
318
|
+
|
|
319
|
+
|
|
320
|
+
### Dependencies
|
|
321
|
+
|
|
322
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.14
|
|
323
|
+
|
|
324
|
+
## @visulima/tsconfig [3.0.0-alpha.13](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.12...@visulima/tsconfig@3.0.0-alpha.13) (2026-05-04)
|
|
325
|
+
|
|
326
|
+
|
|
327
|
+
### Dependencies
|
|
328
|
+
|
|
329
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.13
|
|
330
|
+
|
|
331
|
+
## @visulima/tsconfig [3.0.0-alpha.12](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.11...@visulima/tsconfig@3.0.0-alpha.12) (2026-04-30)
|
|
332
|
+
|
|
333
|
+
### Features
|
|
334
|
+
|
|
335
|
+
* **tsconfig:** typescript-version-aware compiler defaults ([1a4236b](https://github.com/visulima/visulima/commit/1a4236bfe0dabb769a88a052a1c9e7511daf6e6d))
|
|
336
|
+
|
|
337
|
+
### Miscellaneous Chores
|
|
338
|
+
|
|
339
|
+
* added missing version key ([3b55253](https://github.com/visulima/visulima/commit/3b55253728af652a0bcaf230d93d2f9e9f2d8806))
|
|
340
|
+
* re-sort workspace package.json files via vis sort-package-json ([f625696](https://github.com/visulima/visulima/commit/f625696cfac974325774b3243e1a83c3d23acbd7))
|
|
341
|
+
* **tsconfig:** upgrade packem to 2.0.0-alpha.76 ([4f08e20](https://github.com/visulima/visulima/commit/4f08e204f3a82f5da7346ad910cf39cb2c13de51))
|
|
342
|
+
|
|
343
|
+
## @visulima/tsconfig [3.0.0-alpha.11](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.10...@visulima/tsconfig@3.0.0-alpha.11) (2026-04-22)
|
|
344
|
+
|
|
345
|
+
### Bug Fixes
|
|
346
|
+
|
|
347
|
+
* Remove JSR configuration generation script and generated jsr.json files ([#616](https://github.com/visulima/visulima/issues/616)) ([533744b](https://github.com/visulima/visulima/commit/533744b103b74896941db5b727173e617a27a63b))
|
|
348
|
+
|
|
349
|
+
|
|
350
|
+
### Dependencies
|
|
351
|
+
|
|
352
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.12
|
|
353
|
+
* **@visulima/path:** upgraded to 3.0.0-alpha.10
|
|
354
|
+
|
|
355
|
+
## @visulima/tsconfig [3.0.0-alpha.10](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.9...@visulima/tsconfig@3.0.0-alpha.10) (2026-04-21)
|
|
356
|
+
|
|
357
|
+
### Miscellaneous Chores
|
|
358
|
+
|
|
359
|
+
* jsr.json update and lock file ([73fce38](https://github.com/visulima/visulima/commit/73fce38c7cb4603f3fffb88609b1b18e2feb4937))
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
### Dependencies
|
|
363
|
+
|
|
364
|
+
* **@visulima/fs:** upgraded to 5.0.0-alpha.11
|
|
365
|
+
|
|
1
366
|
## @visulima/tsconfig [3.0.0-alpha.9](https://github.com/visulima/visulima/compare/@visulima/tsconfig@3.0.0-alpha.8...@visulima/tsconfig@3.0.0-alpha.9) (2026-04-21)
|
|
2
367
|
|
|
3
368
|
### Miscellaneous Chores
|
package/README.md
CHANGED
|
@@ -37,10 +37,11 @@
|
|
|
37
37
|
## Features
|
|
38
38
|
|
|
39
39
|
- Tested against TypeScript for correctness
|
|
40
|
-
- Supports comments & dangling commas in tsconfig.json
|
|
41
|
-
- Resolves extends
|
|
40
|
+
- Supports comments & dangling commas in tsconfig.json (JSONC)
|
|
41
|
+
- Resolves `extends` (relative paths, package names, and Yarn PnP)
|
|
42
|
+
- Resolves `${configDir}` template variables
|
|
42
43
|
- Fully typed tsconfig.json
|
|
43
|
-
-
|
|
44
|
+
- Synchronous and asynchronous search helpers
|
|
44
45
|
|
|
45
46
|
## Install
|
|
46
47
|
|
|
@@ -58,37 +59,77 @@ pnpm add @visulima/tsconfig
|
|
|
58
59
|
|
|
59
60
|
## Usage
|
|
60
61
|
|
|
61
|
-
### findTsConfig
|
|
62
|
+
### findTsConfig / findTsConfigSync
|
|
62
63
|
|
|
63
|
-
Retrieves the TsConfig by searching for
|
|
64
|
+
Retrieves the TsConfig by searching upward for a `tsconfig.json` file (falling back to `jsconfig.json`) from a given directory. `findTsConfig` is asynchronous; `findTsConfigSync` is the synchronous variant.
|
|
64
65
|
|
|
65
66
|
```ts
|
|
66
|
-
import { findTsConfig } from "@visulima/tsconfig";
|
|
67
|
+
import { findTsConfig, findTsConfigSync } from "@visulima/tsconfig";
|
|
67
68
|
|
|
68
|
-
const tsconfig = await findTsConfig();
|
|
69
|
+
const tsconfig = await findTsConfig();
|
|
70
|
+
// => { path: "/Users/.../visulima/packages/tsconfig/tsconfig.json", config: { compilerOptions: { ... } } }
|
|
71
|
+
|
|
72
|
+
// Synchronous, with a custom start directory
|
|
73
|
+
const tsconfigSync = findTsConfigSync("/path/to/project");
|
|
69
74
|
```
|
|
70
75
|
|
|
71
|
-
|
|
76
|
+
Options (`findTsConfig`/`findTsConfigSync`):
|
|
77
|
+
|
|
78
|
+
| Option | Type | Default | Description |
|
|
79
|
+
| ------------------- | ---------------------------------------- | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
80
|
+
| `configFileName` | `string` | `"tsconfig.json"` | Name of the file to search for. Supplying a custom name disables the `jsconfig.json` fallback. |
|
|
81
|
+
| `cache` | `boolean \| Map<string, TsConfigResult>` | `undefined` | Cache parsed configs. `true` uses a process-wide cache; pass a `Map` for a caller-owned cache. Keys embed the file mtime, so on-disk edits invalidate cached entries automatically. |
|
|
82
|
+
| `tscCompatible` | see [readTsConfig](#readtsconfig) | `undefined` | Forwarded to `readTsConfig`. |
|
|
83
|
+
| `typescriptVersion` | see [readTsConfig](#readtsconfig) | `undefined` | Forwarded to `readTsConfig`. |
|
|
72
84
|
|
|
73
|
-
|
|
85
|
+
> Note: only the upward file search is async. Parsing (including the full `extends` chain) is synchronous, so a very deep `extends` chain still blocks the event loop during parse.
|
|
86
|
+
|
|
87
|
+
### readTsConfig
|
|
88
|
+
|
|
89
|
+
Reads and parses the TypeScript configuration from a `tsconfig.json` path. **This function is synchronous** — it returns the resolved config object directly (no `await`).
|
|
74
90
|
|
|
75
91
|
```ts
|
|
76
|
-
import {
|
|
92
|
+
import { readTsConfig } from "@visulima/tsconfig";
|
|
93
|
+
|
|
94
|
+
const tsconfig = readTsConfig("/path/to/tsconfig.json");
|
|
95
|
+
|
|
96
|
+
// Make derived defaults match a specific TypeScript version
|
|
97
|
+
const compatible = readTsConfig("/path/to/tsconfig.json", { tscCompatible: "5.8" });
|
|
77
98
|
|
|
78
|
-
|
|
99
|
+
// Apply the unconditional compiler-option defaults of the installed TypeScript
|
|
100
|
+
const withDefaults = readTsConfig("/path/to/tsconfig.json", { typescriptVersion: "auto" });
|
|
79
101
|
```
|
|
80
102
|
|
|
81
|
-
|
|
103
|
+
Options (`ReadTsConfigOptions`):
|
|
104
|
+
|
|
105
|
+
| Option | Type | Default | Description |
|
|
106
|
+
| ------------------- | --------------------------------------------------------------------- | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
107
|
+
| `tscCompatible` | `"5.4" \| "5.5" \| "5.6" \| "5.7" \| "5.8" \| "5.9" \| "6.0" \| true` | `undefined` | Synthesize the _derived_ defaults TypeScript would imply from other options for the given version (e.g. `module: nodenext` ⇒ `moduleResolution: nodenext`). `true` targets the latest supported version. |
|
|
108
|
+
| `typescriptVersion` | `"auto" \| false \| string` | `false` | Apply the _unconditional_ compiler-option defaults of a TypeScript version. `"auto"` detects the installed version (including Yarn PnP); a string pins an explicit version; `false` applies none. Can be combined with `tscCompatible`. |
|
|
82
109
|
|
|
83
|
-
|
|
110
|
+
### writeTsConfig / writeTsConfigSync
|
|
111
|
+
|
|
112
|
+
Writes the provided TypeScript configuration object to a `tsconfig.json` file. `writeTsConfig` is asynchronous; `writeTsConfigSync` is the synchronous variant.
|
|
84
113
|
|
|
85
114
|
```ts
|
|
86
|
-
import {
|
|
115
|
+
import { writeTsConfig, writeTsConfigSync } from "@visulima/tsconfig";
|
|
116
|
+
|
|
117
|
+
await writeTsConfig({ compilerOptions: { strict: true } }, { cwd: "./" });
|
|
87
118
|
|
|
88
|
-
|
|
119
|
+
writeTsConfigSync({ compilerOptions: { strict: true } }, { cwd: "./" });
|
|
89
120
|
```
|
|
90
121
|
|
|
91
|
-
|
|
122
|
+
### configDirectoryPlaceholder
|
|
123
|
+
|
|
124
|
+
The literal `${configDir}` template string used by TypeScript. Re-exported so consumers can detect un-interpolated values without deep-importing internals.
|
|
125
|
+
|
|
126
|
+
```ts
|
|
127
|
+
import { configDirectoryPlaceholder } from "@visulima/tsconfig";
|
|
128
|
+
|
|
129
|
+
if (someValue.startsWith(configDirectoryPlaceholder)) {
|
|
130
|
+
// value still references ${configDir}
|
|
131
|
+
}
|
|
132
|
+
```
|
|
92
133
|
|
|
93
134
|
## Api Docs
|
|
94
135
|
|
|
@@ -449,7 +490,7 @@ Defined in: [packages/tsconfig/src/find-tsconfig.ts:10](https://github.com/visul
|
|
|
449
490
|
|
|
450
491
|
```ts
|
|
451
492
|
optional cache:
|
|
452
|
-
| Map<string,
|
|
493
|
+
| Map<string, TsConfigResult>
|
|
453
494
|
| boolean;
|
|
454
495
|
```
|
|
455
496
|
|
|
@@ -474,13 +515,15 @@ Defined in: [packages/tsconfig/src/read-tsconfig.ts:444](https://github.com/visu
|
|
|
474
515
|
##### tscCompatible?
|
|
475
516
|
|
|
476
517
|
```ts
|
|
477
|
-
optional tscCompatible: "5.
|
|
518
|
+
optional tscCompatible: "5.4" | "5.5" | "5.6" | "5.7" | "5.8" | "5.9" | "6.0" | true;
|
|
478
519
|
```
|
|
479
520
|
|
|
480
|
-
Defined in: [packages/tsconfig/src/read-tsconfig.ts:
|
|
521
|
+
Defined in: [packages/tsconfig/src/read-tsconfig.ts:703](https://github.com/visulima/visulima/blob/afe199ce97ec3025aa13484407254660803d8d9c/packages/tsconfig/src/read-tsconfig.ts#L703)
|
|
481
522
|
|
|
482
523
|
Make the configuration compatible with the specified TypeScript version.
|
|
483
524
|
|
|
525
|
+
Controls _derived_ defaults — fields TypeScript synthesizes when other fields are set (e.g. `module: nodenext` ⇒ `moduleResolution: nodenext`).
|
|
526
|
+
|
|
484
527
|
When `true`, it will make the configuration compatible with the latest TypeScript version.
|
|
485
528
|
|
|
486
529
|
###### Default
|
|
@@ -489,6 +532,22 @@ When `true`, it will make the configuration compatible with the latest TypeScrip
|
|
|
489
532
|
undefined;
|
|
490
533
|
```
|
|
491
534
|
|
|
535
|
+
##### typescriptVersion?
|
|
536
|
+
|
|
537
|
+
```ts
|
|
538
|
+
optional typescriptVersion: "auto" | false | string;
|
|
539
|
+
```
|
|
540
|
+
|
|
541
|
+
Defined in: [packages/tsconfig/src/read-tsconfig.ts:718](https://github.com/visulima/visulima/blob/afe199ce97ec3025aa13484407254660803d8d9c/packages/tsconfig/src/read-tsconfig.ts#L718)
|
|
542
|
+
|
|
543
|
+
Apply the _unconditional_ compiler-option defaults TypeScript would synthesize for the given version. `"auto"` detects the installed TypeScript version (including Yarn PnP); a string pins an explicit version; `false` applies none. Distinct from `tscCompatible`, and both can be combined.
|
|
544
|
+
|
|
545
|
+
###### Default
|
|
546
|
+
|
|
547
|
+
```ts
|
|
548
|
+
false;
|
|
549
|
+
```
|
|
550
|
+
|
|
492
551
|
---
|
|
493
552
|
|
|
494
553
|
### TsConfigJsonResolved
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,97 @@
|
|
|
1
|
-
|
|
2
|
-
export {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { TsConfigJson, Except } from 'type-fest';
|
|
2
|
+
export type { TsConfigJson } from 'type-fest';
|
|
3
|
+
import { WriteJsonOptions } from '@visulima/fs';
|
|
4
|
+
type TsConfigJsonResolved = Except<TsConfigJson, "extends">;
|
|
5
|
+
type Options$1 = {
|
|
6
|
+
/**
|
|
7
|
+
* Make the configuration compatible with the specified TypeScript version.
|
|
8
|
+
*
|
|
9
|
+
* Controls *derived* defaults — fields TypeScript synthesizes when other
|
|
10
|
+
* fields are set (e.g. `module: nodenext` ⇒ `moduleResolution: nodenext`).
|
|
11
|
+
*
|
|
12
|
+
* When `true`, it will make the configuration compatible with the latest TypeScript version.
|
|
13
|
+
*
|
|
14
|
+
* Supported version strings map to the version gates below — `"5.3"` is
|
|
15
|
+
* intentionally absent because TypeScript 5.3 introduced no derived-default
|
|
16
|
+
* changes over 5.2, so it would be a silent no-op.
|
|
17
|
+
* @default undefined
|
|
18
|
+
*/
|
|
19
|
+
tscCompatible?: "5.4" | "5.5" | "5.6" | "5.7" | "5.8" | "5.9" | "6.0" | true;
|
|
20
|
+
/**
|
|
21
|
+
* Apply the *unconditional* compiler-option defaults TypeScript would
|
|
22
|
+
* synthesize for the given version (e.g. TS 6.0's `strict: true`,
|
|
23
|
+
* `target: 'es2025'`, `moduleResolution: 'bundler'`).
|
|
24
|
+
* - `'auto'` — auto-detect the installed TypeScript version by walking up
|
|
25
|
+
* from the tsconfig directory (and consulting Yarn Berry pnp).
|
|
26
|
+
* - `string` — pin to an explicit version (e.g. `'6.0.0'`, `'5.4'`).
|
|
27
|
+
* - `false` (default) — do not apply unconditional defaults; preserves
|
|
28
|
+
* prior behaviour where the parsed config matches `tsc --showConfig`.
|
|
29
|
+
* Distinct from `tscCompatible`, which only governs derived defaults.
|
|
30
|
+
* Both can be combined.
|
|
31
|
+
* @default false
|
|
32
|
+
*/
|
|
33
|
+
typescriptVersion?: "auto" | false | (Record<never, never> & string);
|
|
34
|
+
};
|
|
35
|
+
declare const configDirectoryPlaceholder: string;
|
|
36
|
+
declare const implicitBaseUrlSymbol: symbol;
|
|
37
|
+
declare const readTsConfig: (tsconfigPath: string, options?: Options$1) => TsConfigJsonResolved;
|
|
38
|
+
type Options = {
|
|
39
|
+
/**
|
|
40
|
+
* Cache parsed configs across calls.
|
|
41
|
+
* - `true` — use a process-wide shared cache.
|
|
42
|
+
* - `Map` — use a caller-owned cache (useful for scoping / clearing).
|
|
43
|
+
*
|
|
44
|
+
* Cache keys embed the file's last-modified time, so editing a tsconfig
|
|
45
|
+
* on disk transparently invalidates its cached entry.
|
|
46
|
+
*/
|
|
47
|
+
cache?: Map<string, TsConfigResult> | boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Name of the config file to search for. Defaults to `"tsconfig.json"`.
|
|
50
|
+
*
|
|
51
|
+
* The fallback to `jsconfig.json` only applies when this is left at the
|
|
52
|
+
* default — supplying a custom name searches for that name only.
|
|
53
|
+
*/
|
|
54
|
+
configFileName?: string;
|
|
55
|
+
} & Options$1;
|
|
56
|
+
type TsConfigResult = {
|
|
57
|
+
config: TsConfigJsonResolved;
|
|
58
|
+
path: string;
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* An asynchronous function that retrieves the TSConfig by searching for the "tsconfig.json" first,
|
|
62
|
+
* second attempt is to look for the "jsconfig.json" file from a given current working directory.
|
|
63
|
+
*
|
|
64
|
+
* Note: only the upward file search is asynchronous. Parsing (and the whole
|
|
65
|
+
* `extends` chain) is performed synchronously via {@link readTsConfig}, so a
|
|
66
|
+
* very deep `extends` chain will block the event loop during parse.
|
|
67
|
+
* @param cwd Optional. The current working directory from which to search for the "tsconfig.json" file.
|
|
68
|
+
* The type of `cwd` is `string`.
|
|
69
|
+
* @returns A `Promise` that resolves to the TSConfig result object.
|
|
70
|
+
* The return type of the function is `Promise<TsConfigResult>`.
|
|
71
|
+
* @throws An `Error` when the "tsconfig.json" file is not found.
|
|
72
|
+
*/
|
|
73
|
+
declare const findTsConfig: (cwd?: URL | string, options?: Options) => Promise<TsConfigResult>;
|
|
74
|
+
declare const findTsConfigSync: (cwd?: URL | string, options?: Options) => TsConfigResult;
|
|
75
|
+
/**
|
|
76
|
+
* An asynchronous function that writes the provided TypeScript configuration object to a tsconfig.json file.
|
|
77
|
+
* @param tsConfig The TypeScript configuration object to write. The type of `tsConfig` is `TsConfigJson`.
|
|
78
|
+
* @param options Optional. The write options and the current working directory. The type of `options` is an
|
|
79
|
+
* intersection type of `WriteOptions` and a Record type with an optional `cwd` key of type `string`.
|
|
80
|
+
* @returns A `Promise` that resolves when the tsconfig.json file has been written.
|
|
81
|
+
* The return type of function is `Promise<void>`.
|
|
82
|
+
*/
|
|
83
|
+
declare const writeTsConfig: (tsConfig: TsConfigJson, options?: WriteJsonOptions & {
|
|
84
|
+
cwd?: URL | string;
|
|
85
|
+
}) => Promise<void>;
|
|
86
|
+
/**
|
|
87
|
+
* A function that writes the provided TypeScript configuration object to a tsconfig.json file.
|
|
88
|
+
* @param tsConfig The TypeScript configuration object to write. The type of `tsConfig` is `TsConfigJson`.
|
|
89
|
+
* @param options Optional. The write options and the current working directory. The type of `options` is an
|
|
90
|
+
* intersection type of `WriteOptions` and a Record type with an optional `cwd` key of type `string`.
|
|
91
|
+
* @returns A `Promise` that resolves when the tsconfig.json file has been written.
|
|
92
|
+
* The return type of function is `Promise<void>`.
|
|
93
|
+
*/
|
|
94
|
+
declare const writeTsConfigSync: (tsConfig: TsConfigJson, options?: WriteJsonOptions & {
|
|
95
|
+
cwd?: URL | string;
|
|
96
|
+
}) => void;
|
|
97
|
+
export { type Options as FindTsConfigOptions, type Options$1 as ReadTsConfigOptions, type TsConfigJsonResolved, type TsConfigResult, configDirectoryPlaceholder, findTsConfig, findTsConfigSync, implicitBaseUrlSymbol, readTsConfig, writeTsConfig, writeTsConfigSync };
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{findTsConfig as
|
|
1
|
+
import{findTsConfig as r,findTsConfigSync as f}from"./packem_shared/findTsConfig-WpIondtG.js";import{configDirectoryPlaceholder as n,implicitBaseUrlSymbol as t,readTsConfig as c}from"./packem_shared/configDirectoryPlaceholder-BX9y4RJS.js";import{writeTsConfig as s,writeTsConfigSync as l}from"./packem_shared/writeTsConfig-BrUFAEe9.js";export{n as configDirectoryPlaceholder,r as findTsConfig,f as findTsConfigSync,t as implicitBaseUrlSymbol,c as readTsConfig,s as writeTsConfig,l as writeTsConfigSync};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{createRequire as V}from"node:module";import{isAccessibleSync as O,findUpSync as $,readFileSync as P}from"@visulima/fs";import{NotFoundError as N}from"@visulima/fs/error";import{join as d,resolve as y,isAbsolute as E,dirname as k,relative as x,normalize as R,toNamespacedPath as T}from"@visulima/path";import{isRelative as q}from"@visulima/path/utils";import{parse as A}from"jsonc-parser";import{resolveExports as z}from"resolve-pkg-maps";const B=V(import.meta.url),w=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,W=o=>{if(typeof w<"u"&&w.versions&&w.versions.node){const[i,s]=w.versions.node.split(".").map(Number);if(i>22||i===22&&s>=3||i===20&&s>=16)return w.getBuiltinModule(o)}return B(o)},{statSync:D}=W("node:fs"),G=W("node:module"),J=(o=process.cwd())=>{const{findPnpApi:i}=G;return i?i(o):void 0},H=o=>A(P(o,{buffer:!1})),S=(o,i,s,r)=>{const e=`resolveFromPackageJsonPath:${o}:${i}:${s?"yes":"no"}`;if(r?.has(e))return r.get(e);const m=H(o);if(!m)return;let t=i||"tsconfig.json";if(!s&&m.exports)try{const[l]=z(m.exports,i,["require","types"]);t=l}catch{return!1}else!i&&m.tsconfig&&(t=m.tsconfig);return t=d(o,"..",t),r?.set(e,t),t},F="package.json",j="tsconfig.json",K=(o,i,s)=>{let r=o;if(o===".."&&(r=d(r,j)),o.startsWith(".")&&(r=y(i,r)),E(r)){if(O(r)){if(D(r).isFile())return r}else if(!r.endsWith(".json")){const u=`${r}.json`;if(O(u))return u}return}const[e="",...m]=o.split("/"),t=e.startsWith("@")?`${e}/${String(m.shift())}`:e,l=m.join("/"),n=J(i);if(n){const{resolveRequest:u}=n;try{if(t===o){const f=u(d(t,F),i);if(f){const v=S(f,l,!1,s);if(v&&O(v))return v}}else{let f;try{f=u(o,i,{extensions:[".json"]})}catch{f=u(d(o,j),i)}if(f)return f}}catch{}}const c=$(u=>{const f=d(y(u),"node_modules",t);if(O(f))return d("node_modules",t)},{cwd:i,type:"directory"});if(!c||!D(c).isDirectory())return;const p=d(c,F);if(O(p)){const u=S(p,l,!1,s);if(u===!1)return;if(u&&O(u)&&D(u).isFile())return u}const a=d(c,l),g=a.endsWith(".json");if(!g){const u=`${a}.json`;if(O(u))return u}if(O(a)){if(D(a).isDirectory()){const u=d(a,F);if(O(u)){const v=S(u,"",!0,s);if(v&&O(v))return v}const f=d(a,j);if(O(f))return f}else if(g)return a}},Q=o=>{const i=y(o);let s;const r=J(i);if(r)try{s=r.resolveRequest("typescript/package.json",i)??void 0}catch{}if(s??=$(e=>d(e,"node_modules","typescript","package.json"),{cwd:i,type:"file"}),!!s)try{const e=A(P(s,{buffer:!1}));if(typeof e?.version=="string")return e.version}catch{}},X=new Set(["node16","node18","node20","nodenext"]),M=o=>o!==void 0&&X.has(o),Y=(o,i)=>{!i.has("target")&&!M(o.module)&&(o.target="es3")},Z=(o,i)=>{!i.has("target")&&!M(o.module)&&(o.target="es5")},oo=(o,i)=>{i.has("strict")||(o.strict=!0),i.has("target")||(o.target="es2025"),i.has("module")||(o.module="es2022"),i.has("moduleResolution")||(o.moduleResolution="bundler"),i.has("rootDir")||(o.rootDir="."),i.has("types")||(o.types=[]),i.has("noUncheckedSideEffectImports")||(o.noUncheckedSideEffectImports=!0),i.has("libReplacement")||(o.libReplacement=!1),i.has("alwaysStrict")||(o.alwaysStrict=!0)},eo=[[4,Y],[5,Z],[6,oo]],to=/^v?(\d+)/,io=o=>{const i=to.exec(o);return i?Number(i[1]):void 0},so=(o,i)=>{const s=io(i);if(s===void 0)return;const r=new Set(Object.keys(o));for(const[e,m]of eo)e<=s&&m(o,r)},ro=o=>A(P(o,{buffer:!1})),no=o=>o.replaceAll("\\","/"),b=o=>{const i=T(o);return q(i)?i:`./${i}`},I=["files","include","exclude"],U=(o,i,s)=>{const r=d(i,s),e=x(o,r);return R(e)||"./"},lo=(o,i,s)=>{const r=x(o,i);if(!r)return s;const e=s.startsWith("./")?s.slice(2):s;return`${r}/${e}`},co=(o,i,s,r,e)=>{if(s.has(o))throw new Error(`Circularity detected while resolving configuration: ${o}`);s.add(o);const m=k(o),t=_(o,r,s,e);delete t.references;const{compilerOptions:l}=t;if(l){const{baseUrl:n}=l;n&&!n.startsWith(h)&&(l.baseUrl=U(i,m,n));const{outDir:c}=l;c&&!c.startsWith(h)&&(l.outDir=U(i,m,c))}for(const n of I){const c=t[n];c&&(t[n]=c.map(p=>p.startsWith(h)||E(p)?p:lo(i,m,p)))}return t},_=(o,i,s=new Set,r=new Map)=>{let e;try{e=ro(o)??{}}catch(t){throw new Error(`Cannot resolve tsconfig at path: ${o}`,{cause:t})}if(typeof e!="object")throw new SyntaxError(`Failed to parse tsconfig at: ${o}`);const m=k(o);if(e.compilerOptions){const{compilerOptions:t}=e;t.paths&&!t.baseUrl&&(t[uo]=m)}if(e.extends){const t=Array.isArray(e.extends)?e.extends:[e.extends];delete e.extends;const l=t.toReversed();for(let n=0;n<l.length;n++){const c=l[n],p=K(c,m,r);if(!p)throw new N(`No such file or directory, for '${c}' found.`);const a=co(p,m,new Set(s),i,r);a.compilerOptions?.rootDir!==void 0&&!a.compilerOptions.rootDir.startsWith(h)&&(a.compilerOptions.rootDir=d(k(p),a.compilerOptions.rootDir));const g={...a,...e,compilerOptions:{...a.compilerOptions,...e.compilerOptions}};a.watchOptions&&(g.watchOptions={...a.watchOptions,...e.watchOptions}),e=g}}if(e.compilerOptions){const{compilerOptions:t}=e;for(const l of["baseUrl","rootDir"]){const n=t[l];if(n&&!n.startsWith(h)){const c=y(m,n);t[l]=b(x(m,c))}}for(const l of["outDir","declarationDir"]){let n=t[l];n&&(Array.isArray(e.exclude)||(e.exclude=["outDir","declarationDir"].map(c=>{const p=t[c];if(p)return p.startsWith(h)||E(p)?p:d(m,p)}).filter(Boolean)),n.startsWith(h)||(n=b(n)),t[l]=n)}}else e.compilerOptions={};if(e.include&&(e.include=e.include.map(t=>no(t))),e.files&&(e.files=e.files.map(t=>t.startsWith(h)?t:b(t))),e.watchOptions){const{watchOptions:t}=e;t.excludeDirectories&&(t.excludeDirectories=t.excludeDirectories.map(l=>R(y(m,l)))),t.excludeFiles&&(t.excludeFiles=t.excludeFiles.map(l=>R(y(m,l)))),t.watchFile&&(t.watchFile=t.watchFile.toLowerCase()),t.watchDirectory&&(t.watchDirectory=t.watchDirectory.toLowerCase()),t.fallbackPolling&&(t.fallbackPolling=t.fallbackPolling.toLowerCase())}if(e.compilerOptions.lib&&(e.compilerOptions.lib=e.compilerOptions.lib.map(t=>t.toLowerCase())),e.compilerOptions.module){let t=e.compilerOptions.module.toLowerCase();t==="es2015"&&(t="es6"),e.compilerOptions.module=t}if(e.compilerOptions.target){let t=e.compilerOptions.target.toLowerCase();t==="es2015"&&(t="es6"),e.compilerOptions.target=t}if(e.compilerOptions.moduleResolution){let t=e.compilerOptions.moduleResolution.toLowerCase();t==="node"&&(t="node10"),e.compilerOptions.moduleResolution=t}return e.compilerOptions.jsx&&(e.compilerOptions.jsx=e.compilerOptions.jsx.toLowerCase()),e.compilerOptions.moduleDetection&&(e.compilerOptions.moduleDetection=e.compilerOptions.moduleDetection.toLowerCase()),e.compilerOptions.importsNotUsedAsValues&&(e.compilerOptions.importsNotUsedAsValues=e.compilerOptions.importsNotUsedAsValues.toLowerCase()),e.compilerOptions.newLine&&(e.compilerOptions.newLine=e.compilerOptions.newLine.toLowerCase()),e},C=(o,i)=>{if(o.startsWith(h))return R(d(i,o.slice(h.length)))},po=["outDir","declarationDir","outFile","rootDir","baseUrl","tsBuildInfoFile"],L=o=>o==="es2022"||o==="es2023"||o==="es2024"||o==="es2025"||o==="esnext",mo=(o,i)=>{if(o.compilerOptions===void 0)return o;if(o.compilerOptions.rewriteRelativeImportExtensions&&(o.compilerOptions.allowImportingTsExtensions??=!0),o.compilerOptions.composite&&(o.compilerOptions.declaration??=!0,o.compilerOptions.incremental??=!0),o.compilerOptions.checkJs&&(o.compilerOptions.allowJs??=!0),o.compilerOptions.verbatimModuleSyntax&&(o.compilerOptions.isolatedModules??=!0,o.compilerOptions.preserveConstEnums??=!0),["5.4","5.5","5.6","5.7","5.8","5.9","true"].includes(String(i?.tscCompatible))){if(o.compilerOptions.esModuleInterop===void 0&&(o.compilerOptions.module==="node16"||o.compilerOptions.module==="node18"||o.compilerOptions.module==="node20"||o.compilerOptions.module==="nodenext"||o.compilerOptions.module==="preserve")&&(o.compilerOptions.esModuleInterop=!0),o.compilerOptions.moduleDetection===void 0&&o.compilerOptions.module&&["node16","node18","node20","nodenext"].includes(o.compilerOptions.module)&&(o.compilerOptions.moduleDetection="force"),o.compilerOptions.moduleResolution===void 0){let s="classic";if(o.compilerOptions.module!==void 0)switch(o.compilerOptions.module.toLocaleLowerCase()){case"commonjs":{s="node10";break}case"node16":case"node18":{s="node16";break}case"node20":{s="node16";break}case"nodenext":{s="nodenext";break}case"preserve":{s="bundler";break}}s!=="classic"&&(o.compilerOptions.moduleResolution=s)}if(o.compilerOptions.moduleResolution==="bundler"&&(o.compilerOptions.resolveJsonModule??=!0),o.compilerOptions.module&&["node20","nodenext"].includes(o.compilerOptions.module)&&(o.compilerOptions.resolveJsonModule??=!0),(o.compilerOptions.esModuleInterop||o.compilerOptions.module==="system"||o.compilerOptions.moduleResolution==="bundler")&&o.compilerOptions.allowSyntheticDefaultImports===void 0&&(o.compilerOptions.allowSyntheticDefaultImports=!0),["5.7","5.8","5.9","true"].includes(String(i?.tscCompatible))&&o.compilerOptions.moduleResolution){let s=!1;["bundler","node16","nodenext"].includes(o.compilerOptions.moduleResolution.toLocaleLowerCase())&&(s=!0),o.compilerOptions.resolvePackageJsonExports===void 0&&s&&(o.compilerOptions.resolvePackageJsonExports=!0),o.compilerOptions.resolvePackageJsonImports===void 0&&s&&(o.compilerOptions.resolvePackageJsonImports=!0)}if(o.compilerOptions.target===void 0){let s="es5";switch(o.compilerOptions.module){case"node16":case"node18":{s="es2022";break}case"node20":{s="es2023";break}case"nodenext":{s="esnext";break}}s!=="es5"&&(o.compilerOptions.target=s)}o.compilerOptions.useDefineForClassFields===void 0&&o.compilerOptions.target&&L(o.compilerOptions.target)&&(o.compilerOptions.useDefineForClassFields=!0)}if(["5.6","5.7","5.8","5.9","true"].includes(String(i?.tscCompatible))&&o.compilerOptions.strict&&o.compilerOptions.strictBuiltinIteratorReturn===void 0&&(o.compilerOptions.strictBuiltinIteratorReturn=!0),["5.4","5.5","5.6","5.7","5.8","5.9","true"].includes(String(i?.tscCompatible))&&(o.compilerOptions.strict&&(o.compilerOptions.noImplicitAny=o.compilerOptions.noImplicitAny??!0,o.compilerOptions.noImplicitThis=o.compilerOptions.noImplicitThis??!0,o.compilerOptions.strictNullChecks=o.compilerOptions.strictNullChecks??!0,o.compilerOptions.strictFunctionTypes=o.compilerOptions.strictFunctionTypes??!0,o.compilerOptions.strictBindCallApply=o.compilerOptions.strictBindCallApply??!0,o.compilerOptions.strictPropertyInitialization=o.compilerOptions.strictPropertyInitialization??!0,o.compilerOptions.alwaysStrict=o.compilerOptions.alwaysStrict??!0),o.compilerOptions.useDefineForClassFields===void 0&&o.compilerOptions.target&&L(o.compilerOptions.target)&&(o.compilerOptions.useDefineForClassFields=!0),o.compilerOptions.strict&&o.compilerOptions.useUnknownInCatchVariables===void 0&&(o.compilerOptions.useUnknownInCatchVariables=!0),o.compilerOptions.isolatedModules&&(o.compilerOptions.preserveConstEnums=o.compilerOptions.preserveConstEnums??!0)),String(i?.tscCompatible)==="6.0"){if(o.compilerOptions.moduleDetection===void 0&&o.compilerOptions.module&&["node16","node18","node20","nodenext"].includes(o.compilerOptions.module)&&(o.compilerOptions.moduleDetection="force"),o.compilerOptions.moduleResolution===void 0&&o.compilerOptions.module){const s=o.compilerOptions.module.toLocaleLowerCase();s==="node16"||s==="node18"||s==="node20"?o.compilerOptions.moduleResolution="node16":s==="nodenext"&&(o.compilerOptions.moduleResolution="nodenext")}if(o.compilerOptions.useDefineForClassFields===void 0&&o.compilerOptions.module&&["node16","node18","node20","nodenext"].includes(o.compilerOptions.module)&&o.compilerOptions.target&&!L(o.compilerOptions.target)&&(o.compilerOptions.useDefineForClassFields=!1),o.compilerOptions.isolatedModules&&o.compilerOptions.preserveConstEnums===void 0&&(o.compilerOptions.preserveConstEnums=!0),o.compilerOptions.resolveJsonModule===void 0){const s=o.compilerOptions.module,r=o.compilerOptions.moduleResolution?.toLocaleLowerCase();!(s!==void 0&&["node20","nodenext"].includes(s)||r==="bundler")&&r&&(o.compilerOptions.resolveJsonModule=!1)}if(o.compilerOptions.moduleResolution){const s=o.compilerOptions.moduleResolution.toLocaleLowerCase();["bundler","node16","nodenext"].includes(s)||(o.compilerOptions.resolvePackageJsonExports??=!1,o.compilerOptions.resolvePackageJsonImports??=!1)}}return o.compileOnSave===!1&&delete o.compileOnSave,o},ao=(o,i)=>{const s=o?.typescriptVersion;if(!(s===!1||s===void 0))return s==="auto"?Q(i):s},h="${configDir}",uo=Symbol("implicitBaseUrl"),bo=(o,i)=>{const s=y(o),r=_(s,i),e=k(s),m=ao(i,e);m&&r.compilerOptions&&so(r.compilerOptions,m);const{compilerOptions:t}=r;if(t){for(const n of po){const c=t[n];if(c){const p=C(c,e);t[n]=p?b(x(e,p)):c}}for(const n of["rootDirs","typeRoots"]){const c=t[n];c&&(t[n]=c.map(p=>{const a=C(p,e);return a?b(x(e,a)):p}))}const{paths:l}=t;if(l){const n=Object.keys(l);for(let c=0;c<n.length;c++){const p=n[c];l[p]=l[p].map(a=>C(a,e)??a)}}}for(let l=0;l<I.length;l++){const n=I[l],c=r[n];c&&(r[n]=c.map(p=>C(p,e)??p))}return mo(r,i)};export{h as configDirectoryPlaceholder,uo as implicitBaseUrlSymbol,bo as readTsConfig};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{createRequire as m}from"node:module";import{findUp as a,findUpSync as p}from"@visulima/fs";import{NotFoundError as l}from"@visulima/fs/error";import{readTsConfig as d}from"./configDirectoryPlaceholder-BX9y4RJS.js";const y=m(import.meta.url),f=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,j=t=>{if(typeof f<"u"&&f.versions&&f.versions.node){const[o,e]=f.versions.node.split(".").map(Number);if(o>22||o===22&&e>=3||o===20&&e>=16)return f.getBuiltinModule(t)}return y(t)},{statSync:_}=j("node:fs"),u=new Map,g="tsconfig.json",h=(t,o)=>{let e=0;try{e=_(t).mtimeMs}catch{}return`${t}::${String(o.tscCompatible)}::${String(o.typescriptVersion)}::${String(e)}`},$=async(t,o={})=>{const e=o.configFileName??g,i=o.configFileName===void 0;let c=await a(e,{...t&&{cwd:t},type:"file"});if(!c&&i&&(c=await a("jsconfig.json",{...t&&{cwd:t},type:"file"})),!c)throw new l(i?`No such file or directory, for '${e}' or 'jsconfig.json' found.`:`No such file or directory, for '${e}' found.`);const n=o.cache&&typeof o.cache!="boolean"?o.cache:u,r=h(c,o);if(o.cache&&n.has(r))return n.get(r);const s={config:d(c,{tscCompatible:o.tscCompatible,typescriptVersion:o.typescriptVersion}),path:c};return o.cache&&n.set(r,s),s},S=(t,o={})=>{const e=o.configFileName??g,i=o.configFileName===void 0;let c=p(e,{...t&&{cwd:t},type:"file"});if(!c&&i&&(c=p("jsconfig.json",{...t&&{cwd:t},type:"file"})),!c)throw new l(i?`No such file or directory, for '${e}' or 'jsconfig.json' found.`:`No such file or directory, for '${e}' found.`);const n=o.cache&&typeof o.cache!="boolean"?o.cache:u,r=h(c,o);if(o.cache&&n.has(r))return n.get(r);const s={config:d(c,{tscCompatible:o.tscCompatible,typescriptVersion:o.typescriptVersion}),path:c};return o.cache&&n.set(r,s),s};export{$ as findTsConfig,S as findTsConfigSync};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{writeJson as w,writeJsonSync as e}from"@visulima/fs";import{toPath as c}from"@visulima/fs/utils";import{join as r}from"@visulima/path";const a=async(o,s={})=>{const{cwd:n,...t}=s,i=c(n??process.cwd());await w(r(i,"tsconfig.json"),o,t)},d=(o,s={})=>{const{cwd:n,...t}=s,i=c(n??process.cwd());e(r(i,"tsconfig.json"),o,t)};export{a as writeTsConfig,d as writeTsConfigSync};
|
package/package.json
CHANGED
|
@@ -1,20 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@visulima/tsconfig",
|
|
3
|
-
"version": "3.0.0
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"description": "Find and/or parse the tsconfig.json file from a directory path.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"anolilab",
|
|
7
|
-
"visulima",
|
|
8
|
-
"ts-config",
|
|
9
7
|
"get-tsconfig",
|
|
10
8
|
"read-tsconfig",
|
|
9
|
+
"ts-config",
|
|
11
10
|
"tsconfig",
|
|
12
|
-
"tsconfig.json"
|
|
11
|
+
"tsconfig.json",
|
|
12
|
+
"visulima"
|
|
13
13
|
],
|
|
14
14
|
"homepage": "https://visulima.com/packages/tsconfig",
|
|
15
|
-
"bugs":
|
|
16
|
-
"url": "https://github.com/visulima/visulima/issues"
|
|
17
|
-
},
|
|
15
|
+
"bugs": "https://github.com/visulima/visulima/issues",
|
|
18
16
|
"repository": {
|
|
19
17
|
"type": "git",
|
|
20
18
|
"url": "git+https://github.com/visulima/visulima.git",
|
|
@@ -50,11 +48,10 @@
|
|
|
50
48
|
"CHANGELOG.md"
|
|
51
49
|
],
|
|
52
50
|
"dependencies": {
|
|
53
|
-
"@visulima/fs": "5.0.0
|
|
54
|
-
"@visulima/path": "3.0.0
|
|
51
|
+
"@visulima/fs": "5.0.0",
|
|
52
|
+
"@visulima/path": "3.0.0",
|
|
55
53
|
"jsonc-parser": "^3.3.1",
|
|
56
|
-
"resolve-pkg-maps": "^1.0.0"
|
|
57
|
-
"type-fest": "5.6.0"
|
|
54
|
+
"resolve-pkg-maps": "^1.0.0"
|
|
58
55
|
},
|
|
59
56
|
"engines": {
|
|
60
57
|
"node": "^22.14.0 || >=24.10.0"
|
package/dist/find-tsconfig.d.ts
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import type { Options as ReadTsConfigOptions } from "./read-tsconfig.d.ts";
|
|
2
|
-
import type { TsConfigJsonResolved } from "./types.d.ts";
|
|
3
|
-
export type Options = ReadTsConfigOptions & {
|
|
4
|
-
cache?: Map<string, TsConfigJsonResolved> | boolean;
|
|
5
|
-
configFileName?: string;
|
|
6
|
-
};
|
|
7
|
-
export type TsConfigResult = {
|
|
8
|
-
config: TsConfigJsonResolved;
|
|
9
|
-
path: string;
|
|
10
|
-
};
|
|
11
|
-
/**
|
|
12
|
-
* An asynchronous function that retrieves the TSConfig by searching for the "tsconfig.json" first,
|
|
13
|
-
* second attempt is to look for the "jsconfig.json" file from a given current working directory.
|
|
14
|
-
* @param cwd Optional. The current working directory from which to search for the "tsconfig.json" file.
|
|
15
|
-
* The type of `cwd` is `string`.
|
|
16
|
-
* @returns A `Promise` that resolves to the TSConfig result object.
|
|
17
|
-
* The return type of the function is `Promise<TsConfigResult>`.
|
|
18
|
-
* @throws An `Error` when the "tsconfig.json" file is not found.
|
|
19
|
-
*/
|
|
20
|
-
export declare const findTsConfig: (cwd?: URL | string, options?: Options) => Promise<TsConfigResult>;
|
|
21
|
-
export declare const findTsConfigSync: (cwd?: URL | string, options?: Options) => TsConfigResult;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var h=Object.defineProperty;var f=(t,o)=>h(t,"name",{value:o,configurable:!0});import{findUp as s,findUpSync as r}from"@visulima/fs";import{NotFoundError as a}from"@visulima/fs/error";import{readTsConfig as p}from"./implicitBaseUrlSymbol-CI4Y92iF.js";var d=Object.defineProperty,l=f((t,o)=>d(t,"name",{value:o,configurable:!0}),"f");const g=new Map,w=l(async(t,o={})=>{const n=o.configFileName??"tsconfig.json";let c=await s(n,{...t&&{cwd:t},type:"file"});if(c??=await s("jsconfig.json",{...t&&{cwd:t},type:"file"}),!c)throw new a(`No such file or directory, for '${n}' or 'jsconfig.json' found.`);const i=o.cache&&typeof o.cache!="boolean"?o.cache:g;if(o.cache&&i.has(c))return i.get(c);const e={config:p(c,{tscCompatible:o.tscCompatible}),path:c};return o.cache&&i.set(c,e),e},"findTsConfig"),C=l((t,o={})=>{const n=o.configFileName??"tsconfig.json";let c=r(n,{...t&&{cwd:t},type:"file"});if(c??=r("jsconfig.json",{...t&&{cwd:t},type:"file"}),!c)throw new a(`No such file or directory, for '${n}' or 'jsconfig.json' found.`);const i=o.cache&&typeof o.cache!="boolean"?o.cache:g;if(o.cache&&i.has(c))return i.get(c);const e={config:p(c,{tscCompatible:o.tscCompatible}),path:c};return o.cache&&i.set(c,e),e},"findTsConfigSync");export{w as findTsConfig,C as findTsConfigSync};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var U=Object.defineProperty;var C=(o,s)=>U(o,"name",{value:s,configurable:!0});import{createRequire as T}from"node:module";import{readFileSync as W,isAccessibleSync as O,findUpSync as N}from"@visulima/fs";import{NotFoundError as q}from"@visulima/fs/error";import{join as u,resolve as w,isAbsolute as A,toNamespacedPath as z,relative as x,normalize as k,dirname as P}from"@visulima/path";import{isRelative as V}from"@visulima/path/utils";import{parse as _}from"jsonc-parser";import{resolveExports as H}from"resolve-pkg-maps";const B=T(import.meta.url),y=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,E=C(o=>{if(typeof y<"u"&&y.versions&&y.versions.node){const[s,i]=y.versions.node.split(".").map(Number);if(s>22||s===22&&i>=3||s===20&&i>=16)return y.getBuiltinModule(o)}return B(o)},"__cjs_getBuiltinModule"),{statSync:D}=E("node:fs"),G=E("node:module");var K=Object.defineProperty,R=C((o,s)=>K(o,"name",{value:s,configurable:!0}),"d");const Q=R(o=>_(W(o,{buffer:!1})),"readJsonc"),X=R(()=>{const{findPnpApi:o}=G;return o?.(process.cwd())},"getPnpApi"),j=R((o,s,i,e)=>{const l=`resolveFromPackageJsonPath:${o}:${s}:${i?"yes":"no"}`;if(e?.has(l))return e.get(l);const t=Q(o);if(!t)return;let r=s||"tsconfig.json";if(!i&&t.exports)try{const[n]=H(t.exports,s,["require","types"]);r=n}catch{return!1}else!s&&t.tsconfig&&(r=t.tsconfig);return r=u(o,"..",r),e?.set(l,r),r},"resolveFromPackageJsonPath"),L="package.json",S="tsconfig.json",Y=R((o,s,i)=>{let e=o;if(o===".."&&(e=u(e,S)),o.startsWith(".")&&(e=w(s,e)),A(e)){if(O(e)){if(D(e).isFile())return e}else if(!e.endsWith(".json")){const m=`${e}.json`;if(O(m))return m}return}const[l="",...t]=o.split("/"),r=l.startsWith("@")?`${l}/${String(t.shift())}`:l,n=t.join("/"),p=X();if(p){const{resolveRequest:m}=p;try{if(r===o){const d=m(u(r,L),s);if(d){const g=j(d,n,!1,i);if(g&&O(g))return g}}else{let d;try{d=m(o,s,{extensions:[".json"]})}catch{d=m(u(o,S),s)}if(d)return d}}catch{}}const c=N(m=>{const d=u(w(m),"node_modules",r);if(O(d))return u("node_modules",r)},{cwd:s,type:"directory"});if(!c||!D(c).isDirectory())return;const a=u(c,L);if(O(a)){const m=j(a,n,!1,i);if(m===!1)return;if(m&&O(m)&&D(m).isFile())return m}const h=u(c,n),J=h.endsWith(".json");if(!J){const m=`${h}.json`;if(O(m))return m}if(O(h)){if(D(h).isDirectory()){const m=u(h,L);if(O(m)){const g=j(m,"",!0,i);if(g&&O(g))return g}const d=u(h,S);if(O(d))return d}else if(J)return h}},"resolveExtendsPath");var Z=Object.defineProperty,v=C((o,s)=>Z(o,"name",{value:s,configurable:!0}),"c");const oo=v(o=>_(W(o,{buffer:!1})),"readJsonc"),eo=v(o=>o.replaceAll("\\","/"),"slash"),b=v(o=>{const s=z(o);return V(s)?s:`./${s}`},"normalizePath"),I=["files","include","exclude"],$=v((o,s,i)=>{const e=u(s,i),l=x(o,e);return k(l)||"./"},"resolveAndRelativize"),to=v((o,s,i)=>{const e=x(o,s);if(!e)return i;const l=i.startsWith("./")?i.slice(2):i;return`${e}/${l}`},"prefixPattern"),io=v((o,s,i,e)=>{if(i.has(o))throw new Error(`Circularity detected while resolving configuration: ${o}`);i.add(o);const l=P(o),t=M(o,e,i);delete t.references;const{compilerOptions:r}=t;if(r){const{baseUrl:n}=r;n&&!n.startsWith(f)&&(r.baseUrl=$(s,l,n));const{outDir:p}=r;p&&!p.startsWith(f)&&(r.outDir=$(s,l,p))}for(const n of I){const p=t[n];p&&(t[n]=p.map(c=>c.startsWith(f)||A(c)?c:to(s,l,c)))}return t},"resolveExtends"),M=v((o,s,i=new Set)=>{let e;try{e=oo(o)??{}}catch{throw new Error(`Cannot resolve tsconfig at path: ${o}`)}if(typeof e!="object")throw new SyntaxError(`Failed to parse tsconfig at: ${o}`);const l=P(o);if(e.compilerOptions){const{compilerOptions:t}=e;t.paths&&!t.baseUrl&&(t[no]=l)}if(e.extends){const t=Array.isArray(e.extends)?e.extends:[e.extends];delete e.extends;const r=t.toReversed();for(let n=0;n<r.length;n++){const p=r[n],c=Y(p,l);if(!c)throw new q(`No such file or directory, for '${p}' found.`);const a=io(c,l,new Set(i),s);a.compilerOptions?.rootDir!==void 0&&!a.compilerOptions.rootDir.startsWith(f)&&(a.compilerOptions.rootDir=u(P(c),a.compilerOptions.rootDir));const h={...a,...e,compilerOptions:{...a.compilerOptions,...e.compilerOptions}};a.watchOptions&&(h.watchOptions={...a.watchOptions,...e.watchOptions}),e=h}}if(e.compilerOptions){const{compilerOptions:t}=e;for(const r of["baseUrl","rootDir"]){const n=t[r];if(n&&!n.startsWith(f)){const p=w(l,n);t[r]=b(x(l,p))}}for(const r of["outDir","declarationDir"]){let n=t[r];n&&(Array.isArray(e.exclude)||(e.exclude=["outDir","declarationDir"].map(p=>{const c=t[p];if(c)return c.startsWith(f)||A(c)?c:u(l,c)}).filter(Boolean)),n.startsWith(f)||(n=b(n)),t[r]=n)}}else e.compilerOptions={};if(e.include&&(e.include=e.include.map(t=>eo(t))),e.files&&(e.files=e.files.map(t=>t.startsWith(f)?t:b(t))),e.watchOptions){const{watchOptions:t}=e;t.excludeDirectories&&(t.excludeDirectories=t.excludeDirectories.map(r=>k(w(l,r)))),t.excludeFiles&&(t.excludeFiles=t.excludeFiles.map(r=>k(w(l,r)))),t.watchFile&&(t.watchFile=t.watchFile.toLowerCase()),t.watchDirectory&&(t.watchDirectory=t.watchDirectory.toLowerCase()),t.fallbackPolling&&(t.fallbackPolling=t.fallbackPolling.toLowerCase())}if(e.compilerOptions.lib&&(e.compilerOptions.lib=e.compilerOptions.lib.map(t=>t.toLowerCase())),e.compilerOptions.module){let t=e.compilerOptions.module.toLowerCase();t==="es2015"&&(t="es6"),e.compilerOptions.module=t}if(e.compilerOptions.target){let t=e.compilerOptions.target.toLowerCase();t==="es2015"&&(t="es6"),e.compilerOptions.target=t}if(e.compilerOptions.moduleResolution){let t=e.compilerOptions.moduleResolution.toLowerCase();t==="node"&&(t="node10"),e.compilerOptions.moduleResolution=t}return e.compilerOptions.jsx&&(e.compilerOptions.jsx=e.compilerOptions.jsx.toLowerCase()),e.compilerOptions.moduleDetection&&(e.compilerOptions.moduleDetection=e.compilerOptions.moduleDetection.toLowerCase()),e.compilerOptions.importsNotUsedAsValues&&(e.compilerOptions.importsNotUsedAsValues=e.compilerOptions.importsNotUsedAsValues.toLowerCase()),e.compilerOptions.newLine&&(e.compilerOptions.newLine=e.compilerOptions.newLine.toLowerCase()),e},"internalParseTsConfig"),F=v((o,s)=>{if(o.startsWith(f))return k(u(s,o.slice(f.length)))},"interpolateConfigDirectory"),so=["outDir","declarationDir","outFile","rootDir","baseUrl","tsBuildInfoFile"],ro=v((o,s)=>{if(o.compilerOptions===void 0)return o;if(o.compilerOptions.rewriteRelativeImportExtensions&&(o.compilerOptions.allowImportingTsExtensions??=!0),o.compilerOptions.composite&&(o.compilerOptions.declaration??=!0,o.compilerOptions.incremental??=!0),o.compilerOptions.checkJs&&(o.compilerOptions.allowJs??=!0),o.compilerOptions.verbatimModuleSyntax&&(o.compilerOptions.isolatedModules??=!0,o.compilerOptions.preserveConstEnums??=!0),["5.4","5.5","5.6","5.7","5.8","5.9","true"].includes(String(s?.tscCompatible))){if(o.compilerOptions.esModuleInterop===void 0&&(o.compilerOptions.module==="node16"||o.compilerOptions.module==="node18"||o.compilerOptions.module==="node20"||o.compilerOptions.module==="nodenext"||o.compilerOptions.module==="preserve")&&(o.compilerOptions.esModuleInterop=!0),o.compilerOptions.moduleDetection===void 0&&o.compilerOptions.module&&["node16","node18","node20","nodenext"].includes(o.compilerOptions.module)&&(o.compilerOptions.moduleDetection="force"),o.compilerOptions.moduleResolution===void 0){let i="classic";if(o.compilerOptions.module!==void 0)switch(o.compilerOptions.module.toLocaleLowerCase()){case"commonjs":{i="node10";break}case"node16":case"node18":{i="node16";break}case"node20":{i="node16";break}case"nodenext":{i="nodenext";break}case"preserve":{i="bundler";break}}i!=="classic"&&(o.compilerOptions.moduleResolution=i)}if(o.compilerOptions.moduleResolution==="bundler"&&(o.compilerOptions.resolveJsonModule??=!0),o.compilerOptions.module&&["node20","nodenext"].includes(o.compilerOptions.module)&&(o.compilerOptions.resolveJsonModule??=!0),(o.compilerOptions.esModuleInterop||o.compilerOptions.module==="system"||o.compilerOptions.moduleResolution==="bundler")&&o.compilerOptions.allowSyntheticDefaultImports===void 0&&(o.compilerOptions.allowSyntheticDefaultImports=!0),["5.7","5.8","5.9","true"].includes(String(s?.tscCompatible))&&o.compilerOptions.moduleResolution){let i=!1;["bundler","node16","nodenext"].includes(o.compilerOptions.moduleResolution.toLocaleLowerCase())&&(i=!0),o.compilerOptions.resolvePackageJsonExports===void 0&&i&&(o.compilerOptions.resolvePackageJsonExports=!0),o.compilerOptions.resolvePackageJsonImports===void 0&&i&&(o.compilerOptions.resolvePackageJsonImports=!0)}if(o.compilerOptions.target===void 0){let i="es5";switch(o.compilerOptions.module){case"node16":case"node18":{i="es2022";break}case"node20":{i="es2023";break}case"nodenext":{i="esnext";break}}i!=="es5"&&(o.compilerOptions.target=i)}o.compilerOptions.useDefineForClassFields===void 0&&o.compilerOptions.target&&(o.compilerOptions.target.includes("es202")||o.compilerOptions.target==="esnext")&&(o.compilerOptions.useDefineForClassFields=!0)}if(["5.6","5.7","5.8","5.9","true"].includes(String(s?.tscCompatible))&&o.compilerOptions.strict&&o.compilerOptions.strictBuiltinIteratorReturn===void 0&&(o.compilerOptions.strictBuiltinIteratorReturn=!0),["5.4","5.5","5.6","5.7","5.8","5.9","true"].includes(String(s?.tscCompatible))){if(o.compilerOptions.strict&&(o.compilerOptions.noImplicitAny=o.compilerOptions.noImplicitAny??!0,o.compilerOptions.noImplicitThis=o.compilerOptions.noImplicitThis??!0,o.compilerOptions.strictNullChecks=o.compilerOptions.strictNullChecks??!0,o.compilerOptions.strictFunctionTypes=o.compilerOptions.strictFunctionTypes??!0,o.compilerOptions.strictBindCallApply=o.compilerOptions.strictBindCallApply??!0,o.compilerOptions.strictPropertyInitialization=o.compilerOptions.strictPropertyInitialization??!0,o.compilerOptions.alwaysStrict=o.compilerOptions.alwaysStrict??!0),o.compilerOptions.useDefineForClassFields===void 0&&o.compilerOptions.target){let i=!1;(o.compilerOptions.target.includes("es202")||o.compilerOptions.target==="esnext")&&(i=!0),i&&(o.compilerOptions.useDefineForClassFields=!0)}o.compilerOptions.strict&&o.compilerOptions.useUnknownInCatchVariables===void 0&&(o.compilerOptions.useUnknownInCatchVariables=!0),o.compilerOptions.isolatedModules&&(o.compilerOptions.preserveConstEnums=o.compilerOptions.preserveConstEnums??!0)}if(String(s?.tscCompatible)==="6.0"){if(o.compilerOptions.moduleDetection===void 0&&o.compilerOptions.module&&["node16","node18","node20","nodenext"].includes(o.compilerOptions.module)&&(o.compilerOptions.moduleDetection="force"),o.compilerOptions.moduleResolution===void 0&&o.compilerOptions.module){const i=o.compilerOptions.module.toLocaleLowerCase();i==="node16"||i==="node18"||i==="node20"?o.compilerOptions.moduleResolution="node16":i==="nodenext"&&(o.compilerOptions.moduleResolution="nodenext")}if(o.compilerOptions.useDefineForClassFields===void 0&&o.compilerOptions.module&&["node16","node18","node20","nodenext"].includes(o.compilerOptions.module)&&o.compilerOptions.target&&!o.compilerOptions.target.includes("es202")&&o.compilerOptions.target!=="esnext"&&(o.compilerOptions.useDefineForClassFields=!1),o.compilerOptions.isolatedModules&&o.compilerOptions.preserveConstEnums===void 0&&(o.compilerOptions.preserveConstEnums=!0),o.compilerOptions.resolveJsonModule===void 0){const i=o.compilerOptions.module,e=o.compilerOptions.moduleResolution?.toLocaleLowerCase();!(i!==void 0&&["node20","nodenext"].includes(i)||e==="bundler")&&e&&(o.compilerOptions.resolveJsonModule=!1)}if(o.compilerOptions.moduleResolution){const i=o.compilerOptions.moduleResolution.toLocaleLowerCase();["bundler","node16","nodenext"].includes(i)||(o.compilerOptions.resolvePackageJsonExports??=!1,o.compilerOptions.resolvePackageJsonImports??=!1)}}return o.compileOnSave===!1&&delete o.compileOnSave,o},"tsCompatibleWrapper"),f="${configDir}",no=Symbol("implicitBaseUrl"),ho=v((o,s)=>{const i=w(o),e=M(i,s),l=P(i),{compilerOptions:t}=e;if(t){for(const n of so){const p=t[n];if(p){const c=F(p,l);t[n]=c?b(x(l,c)):p}}for(const n of["rootDirs","typeRoots"]){const p=t[n];p&&(t[n]=p.map(c=>{const a=F(c,l);return a?b(x(l,a)):c}))}const{paths:r}=t;if(r){const n=Object.keys(r);for(let p=0;p<n.length;p++){const c=n[p];r[c]=r[c].map(a=>F(a,l)??a)}}t.outDir&&(t.outDir=t.outDir.replace(f,""))}for(let r=0;r<I.length;r++){const n=I[r],p=e[n];p&&(e[n]=p.map(c=>F(c,l)??c))}return ro(e,s)},"readTsConfig");export{f as configDirectoryPlaceholder,no as implicitBaseUrlSymbol,ho as readTsConfig};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var w=Object.defineProperty;var s=(o,n)=>w(o,"name",{value:n,configurable:!0});import{writeJson as a,writeJsonSync as p}from"@visulima/fs";import{toPath as c}from"@visulima/fs/utils";import{join as e}from"@visulima/path";var g=Object.defineProperty,f=s((o,n)=>g(o,"name",{value:n,configurable:!0}),"r");const C=f(async(o,n={})=>{const{cwd:r,...i}=n,t=c(r??process.cwd());await a(e(t,"tsconfig.json"),o,i)},"writeTsConfig"),T=f((o,n={})=>{const{cwd:r,...i}=n,t=c(r??process.cwd());p(e(t,"tsconfig.json"),o,i)},"writeTsConfigSync");export{C as writeTsConfig,T as writeTsConfigSync};
|
package/dist/read-tsconfig.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { TsConfigJsonResolved } from "./types.d.ts";
|
|
2
|
-
export type Options = {
|
|
3
|
-
/**
|
|
4
|
-
* Make the configuration compatible with the specified TypeScript version.
|
|
5
|
-
*
|
|
6
|
-
* When `true`, it will make the configuration compatible with the latest TypeScript version.
|
|
7
|
-
* @default undefined
|
|
8
|
-
*/
|
|
9
|
-
tscCompatible?: "5.3" | "5.4" | "5.5" | "5.6" | "5.7" | "5.8" | "5.9" | "6.0" | true;
|
|
10
|
-
};
|
|
11
|
-
export declare const configDirectoryPlaceholder: string;
|
|
12
|
-
export declare const implicitBaseUrlSymbol: symbol;
|
|
13
|
-
export declare const readTsConfig: (tsconfigPath: string, options?: Options) => TsConfigJsonResolved;
|
package/dist/types.d.ts
DELETED
package/dist/write-tsconfig.d.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { WriteJsonOptions } from "@visulima/fs";
|
|
2
|
-
import type { TsConfigJson } from "type-fest";
|
|
3
|
-
/**
|
|
4
|
-
* An asynchronous function that writes the provided TypeScript configuration object to a tsconfig.json file.
|
|
5
|
-
* @param tsConfig The TypeScript configuration object to write. The type of `tsConfig` is `TsConfigJson`.
|
|
6
|
-
* @param options Optional. The write options and the current working directory. The type of `options` is an
|
|
7
|
-
* intersection type of `WriteOptions` and a Record type with an optional `cwd` key of type `string`.
|
|
8
|
-
* @returns A `Promise` that resolves when the tsconfig.json file has been written.
|
|
9
|
-
* The return type of function is `Promise<void>`.
|
|
10
|
-
*/
|
|
11
|
-
export declare const writeTsConfig: (tsConfig: TsConfigJson, options?: WriteJsonOptions & {
|
|
12
|
-
cwd?: URL | string;
|
|
13
|
-
}) => Promise<void>;
|
|
14
|
-
/**
|
|
15
|
-
* A function that writes the provided TypeScript configuration object to a tsconfig.json file.
|
|
16
|
-
* @param tsConfig The TypeScript configuration object to write. The type of `tsConfig` is `TsConfigJson`.
|
|
17
|
-
* @param options Optional. The write options and the current working directory. The type of `options` is an
|
|
18
|
-
* intersection type of `WriteOptions` and a Record type with an optional `cwd` key of type `string`.
|
|
19
|
-
* @returns A `Promise` that resolves when the tsconfig.json file has been written.
|
|
20
|
-
* The return type of function is `Promise<void>`.
|
|
21
|
-
*/
|
|
22
|
-
export declare const writeTsConfigSync: (tsConfig: TsConfigJson, options?: WriteJsonOptions & {
|
|
23
|
-
cwd?: URL | string;
|
|
24
|
-
}) => void;
|