ts-codemod-lib 3.4.2 → 3.4.3
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/dist/functions/ast-transformers/convert-to-readonly.d.mts.map +1 -1
- package/dist/functions/ast-transformers/convert-to-readonly.mjs +26 -1
- package/dist/functions/ast-transformers/convert-to-readonly.mjs.map +1 -1
- package/package.json +4 -4
- package/src/functions/ast-transformers/convert-to-readonly.mts +39 -2
- package/src/functions/ast-transformers/convert-to-readonly.test.mts +114 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert-to-readonly.d.mts","sourceRoot":"","sources":["../../../src/functions/ast-transformers/convert-to-readonly.mts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"convert-to-readonly.d.mts","sourceRoot":"","sources":["../../../src/functions/ast-transformers/convert-to-readonly.mts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,eAAe,CAAC;AAwBvB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAItD,eAAO,MAAM,4BAA4B,aAC7B,0BAA0B,KACnC,kBAwCF,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,YAAY,CAAC;IACpD;;OAEG;IACH,YAAY,CAAC,EAAE;QACb;;;;WAIG;QACH,QAAQ,CAAC,EAAE,MAAM,CAAC;KA2BnB,CAAC;IAEF;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAEjC;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;;;;;;;;;;;;;;;;OAiBG;IACH,WAAW,CAAC,EAAE,kBAAkB,GAAG,gBAAgB,CAAC;IAEpD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC,CAAC"}
|
|
@@ -372,6 +372,11 @@ node, readonlyContext, options) => {
|
|
|
372
372
|
return;
|
|
373
373
|
}
|
|
374
374
|
|
|
375
|
+
if (getDeepReadonlyTypeArg(T, options.DeepReadonly.typeName) !== undefined) {
|
|
376
|
+
options.replaceNode(node, TText);
|
|
377
|
+
return;
|
|
378
|
+
}
|
|
379
|
+
|
|
375
380
|
if (isAtomicTypeNode(T)) {
|
|
376
381
|
options.replaceNode(node, TText);
|
|
377
382
|
return;
|
|
@@ -827,7 +832,8 @@ node, readonlyContext, options, operator) => {
|
|
|
827
832
|
unionToString({
|
|
828
833
|
types: nonEmptyTypeLiterals.map((n) => withLeadingComments(n, isMergeableReadonlyTypeReferenceNode(n, operator)
|
|
829
834
|
?
|
|
830
|
-
|
|
835
|
+
|
|
836
|
+
readonlyTypeArgTextSplicedInto(n, operator)
|
|
831
837
|
: n.isKind(tsm.SyntaxKind.TypeLiteral)
|
|
832
838
|
? n.getText()
|
|
833
839
|
:
|
|
@@ -999,6 +1005,25 @@ member) => commentsBetween(node.getSourceFile(), node
|
|
|
999
1005
|
|
|
1000
1006
|
|
|
1001
1007
|
|
|
1008
|
+
const readonlyTypeArgTextSplicedInto = (
|
|
1009
|
+
|
|
1010
|
+
node, operator) => {
|
|
1011
|
+
const typeArgument = node.getTypeArguments()[0];
|
|
1012
|
+
const T = removeParentheses(typeArgument);
|
|
1013
|
+
return T.isKind(operator === '|'
|
|
1014
|
+
? tsm.SyntaxKind.UnionType
|
|
1015
|
+
: tsm.SyntaxKind.IntersectionType)
|
|
1016
|
+
? textWithoutParentheses(typeArgument, T)
|
|
1017
|
+
: unwrapReadonlyTypeArgText(node);
|
|
1018
|
+
};
|
|
1019
|
+
|
|
1020
|
+
|
|
1021
|
+
|
|
1022
|
+
|
|
1023
|
+
|
|
1024
|
+
|
|
1025
|
+
|
|
1026
|
+
|
|
1002
1027
|
const textWithoutParentheses = (
|
|
1003
1028
|
|
|
1004
1029
|
outer,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert-to-readonly.mjs","sourceRoot":"","sources":["../../../src/functions/ast-transformers/convert-to-readonly.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"convert-to-readonly.mjs","sourceRoot":"","sources":["../../../src/functions/ast-transformers/convert-to-readonly.mts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ts-codemod-lib",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.3",
|
|
4
4
|
"private": false,
|
|
5
5
|
"keywords": [
|
|
6
6
|
"typescript",
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"dedent": "1.7.2",
|
|
52
52
|
"esbuild": "0.28.2",
|
|
53
53
|
"eslint": "10.12.0",
|
|
54
|
-
"eslint-config-typed": "5.17.
|
|
54
|
+
"eslint-config-typed": "5.17.2",
|
|
55
55
|
"eslint-plugin-ts-data-forge": "0.8.4",
|
|
56
56
|
"eslint-plugin-ts-fortress": "1.3.1",
|
|
57
57
|
"eslint-plugin-ts-type-forge": "0.8.6",
|
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
"check:cspell": "cspell \"**\" --gitignore --gitignore-root ../../ --no-progress",
|
|
87
87
|
"check:dist": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/check-dist.mts",
|
|
88
88
|
"check:ext": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/check-ext.mts",
|
|
89
|
-
"check:lint": "eslint .",
|
|
89
|
+
"check:lint": "oxlint . && eslint .",
|
|
90
90
|
"check:test": "pnpm run z:vitest:node run",
|
|
91
91
|
"check:test:browser": "pnpm run z:vitest --project='Browser' run",
|
|
92
92
|
"check:test:cov": "pnpm run z:vitest:node run --coverage",
|
|
@@ -102,7 +102,7 @@
|
|
|
102
102
|
"fix:fmt": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ../../libs/ts-repo-utils/src/cmd/format-uncommitted.mts --cwd .",
|
|
103
103
|
"fix:fmt:diff": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ../../libs/ts-repo-utils/src/cmd/format-diff-from.mts origin/main --cwd .",
|
|
104
104
|
"fix:fmt:full": "prettier --write .",
|
|
105
|
-
"fix:lint": "eslint . --fix",
|
|
105
|
+
"fix:lint": "oxlint . --fix && eslint . --fix",
|
|
106
106
|
"fmt": "pnpm run fix:fmt",
|
|
107
107
|
"gen": "run-s gen:index gen:readme gen:jsdoc",
|
|
108
108
|
"gen:index": "run-s gen:index:src fix:fmt",
|
|
@@ -27,6 +27,7 @@ import {
|
|
|
27
27
|
shouldAvoidParenthesesForReadonly,
|
|
28
28
|
unwrapReadonlyTypeArgText,
|
|
29
29
|
wrapWithParentheses,
|
|
30
|
+
type ReadonlyTypeReferenceNode,
|
|
30
31
|
} from '../functions/index.mjs';
|
|
31
32
|
import { replaceNodeWithDebugPrint } from '../utils/index.mjs';
|
|
32
33
|
import {
|
|
@@ -698,6 +699,15 @@ const transformTypeReferenceNode = (
|
|
|
698
699
|
return;
|
|
699
700
|
}
|
|
700
701
|
|
|
702
|
+
// Readonly<DeepReadonly<T>> -> DeepReadonly<T>
|
|
703
|
+
if (
|
|
704
|
+
getDeepReadonlyTypeArg(T, options.DeepReadonly.typeName) !== undefined
|
|
705
|
+
) {
|
|
706
|
+
options.replaceNode(node, TText);
|
|
707
|
+
|
|
708
|
+
return;
|
|
709
|
+
}
|
|
710
|
+
|
|
701
711
|
// Readonly<number> -> number
|
|
702
712
|
if (isAtomicTypeNode(T)) {
|
|
703
713
|
options.replaceNode(node, TText);
|
|
@@ -1422,8 +1432,9 @@ const transformUnionOrIntersectionTypeNodeImpl = (
|
|
|
1422
1432
|
withLeadingComments(
|
|
1423
1433
|
n,
|
|
1424
1434
|
isMergeableReadonlyTypeReferenceNode(n, operator)
|
|
1425
|
-
? // NOTE: Readonly<A & B> -> (A & B)
|
|
1426
|
-
|
|
1435
|
+
? // NOTE: Readonly<A & B> -> (A & B) (spliced into `|`)
|
|
1436
|
+
// NOTE: Readonly<A | B> -> A | B (spliced into `|`)
|
|
1437
|
+
readonlyTypeArgTextSplicedInto(n, operator)
|
|
1427
1438
|
: n.isKind(tsm.SyntaxKind.TypeLiteral)
|
|
1428
1439
|
? n.getText()
|
|
1429
1440
|
: // A member kept under `Readonly`; see `underReadonly`
|
|
@@ -1660,6 +1671,32 @@ const leadingCommentsOfMember = (
|
|
|
1660
1671
|
member.getStart(),
|
|
1661
1672
|
);
|
|
1662
1673
|
|
|
1674
|
+
/**
|
|
1675
|
+
* `Readonly<T>` |-> the text of `T`, to be spliced into a union (`|`) or an
|
|
1676
|
+
* intersection (`&`) of the members it is merged with.
|
|
1677
|
+
*
|
|
1678
|
+
* `T` is wrapped in parentheses for precedence safety (a function type
|
|
1679
|
+
* argument needs them), unless it is a union spliced into a union or an
|
|
1680
|
+
* intersection spliced into an intersection, which needs none.
|
|
1681
|
+
*/
|
|
1682
|
+
const readonlyTypeArgTextSplicedInto = (
|
|
1683
|
+
// eslint-disable-next-line @typescript-eslint/prefer-readonly-parameter-types
|
|
1684
|
+
node: ReadonlyTypeReferenceNode,
|
|
1685
|
+
operator: '&' | '|',
|
|
1686
|
+
): string => {
|
|
1687
|
+
const typeArgument = node.getTypeArguments()[0];
|
|
1688
|
+
|
|
1689
|
+
const T = removeParentheses(typeArgument);
|
|
1690
|
+
|
|
1691
|
+
return T.isKind(
|
|
1692
|
+
operator === '|'
|
|
1693
|
+
? tsm.SyntaxKind.UnionType
|
|
1694
|
+
: tsm.SyntaxKind.IntersectionType,
|
|
1695
|
+
)
|
|
1696
|
+
? textWithoutParentheses(typeArgument, T)
|
|
1697
|
+
: unwrapReadonlyTypeArgText(node);
|
|
1698
|
+
};
|
|
1699
|
+
|
|
1663
1700
|
/**
|
|
1664
1701
|
* The text of `inner`, a type `removeParentheses` took out of `outer`, with
|
|
1665
1702
|
* the comments in `outer`'s full text in front of it — before the parentheses
|
|
@@ -540,6 +540,55 @@ describe(convertToReadonlyTransformer, () => {
|
|
|
540
540
|
type T = readonly Readonly<{ x: 1 } | { y: 2 }>[]
|
|
541
541
|
`,
|
|
542
542
|
},
|
|
543
|
+
{
|
|
544
|
+
name: 'DeepReadonly wrapped with `Readonly`',
|
|
545
|
+
source: dedent`
|
|
546
|
+
type T = Readonly<DeepReadonly<{ a: number[] }>>
|
|
547
|
+
`,
|
|
548
|
+
expected: dedent`
|
|
549
|
+
type T = DeepReadonly<{ a: number[] }>
|
|
550
|
+
`, // Readonly<DeepReadonly<T>> -> DeepReadonly<T>
|
|
551
|
+
},
|
|
552
|
+
{
|
|
553
|
+
name: 'Parenthesized DeepReadonly wrapped with `Readonly`',
|
|
554
|
+
source: dedent`
|
|
555
|
+
type T = Readonly<(DeepReadonly<{ a: number[] }>)>
|
|
556
|
+
`,
|
|
557
|
+
expected: dedent`
|
|
558
|
+
type T = DeepReadonly<{ a: number[] }>
|
|
559
|
+
`,
|
|
560
|
+
},
|
|
561
|
+
{
|
|
562
|
+
name: 'Generic DeepReadonly wrapped with `Readonly`',
|
|
563
|
+
source: dedent`
|
|
564
|
+
type T<A> = Readonly<DeepReadonly<A>>
|
|
565
|
+
`,
|
|
566
|
+
expected: dedent`
|
|
567
|
+
type T<A> = DeepReadonly<A>
|
|
568
|
+
`,
|
|
569
|
+
},
|
|
570
|
+
{
|
|
571
|
+
name: 'DeepReadonly wrapped with `Readonly` under a custom typeName',
|
|
572
|
+
source: dedent`
|
|
573
|
+
type T = Readonly<DeepRO<{ a: number[] }>>
|
|
574
|
+
`,
|
|
575
|
+
expected: dedent`
|
|
576
|
+
type T = DeepRO<{ a: number[] }>
|
|
577
|
+
`,
|
|
578
|
+
options: { DeepReadonly: { typeName: 'DeepRO' } },
|
|
579
|
+
},
|
|
580
|
+
{
|
|
581
|
+
// `DeepReadonly` is not the configured name here, so it is an
|
|
582
|
+
// ordinary generic and the `Readonly` around it stays.
|
|
583
|
+
name: 'A type named DeepReadonly is not unwrapped under a custom typeName',
|
|
584
|
+
source: dedent`
|
|
585
|
+
type T<A> = Readonly<DeepReadonly<A>>
|
|
586
|
+
`,
|
|
587
|
+
expected: dedent`
|
|
588
|
+
type T<A> = Readonly<DeepReadonly<A>>
|
|
589
|
+
`,
|
|
590
|
+
options: { DeepReadonly: { typeName: 'DeepRO' } },
|
|
591
|
+
},
|
|
543
592
|
])('$name', testFn);
|
|
544
593
|
});
|
|
545
594
|
|
|
@@ -2774,7 +2823,7 @@ describe(convertToReadonlyTransformer, () => {
|
|
|
2774
2823
|
type NestedIntersection = ({ a: string; } & { b: number; }) & { c: boolean[]; };
|
|
2775
2824
|
`,
|
|
2776
2825
|
expected: dedent`
|
|
2777
|
-
type NestedIntersection = Readonly<
|
|
2826
|
+
type NestedIntersection = Readonly<{ a: string; } & { b: number; } & { c: readonly boolean[]; }>;
|
|
2778
2827
|
`,
|
|
2779
2828
|
},
|
|
2780
2829
|
{
|
|
@@ -2832,6 +2881,52 @@ describe(convertToReadonlyTransformer, () => {
|
|
|
2832
2881
|
type ReadonlyUnion = Readonly<{ a: readonly string[]; } | { b: readonly number[]; }>;
|
|
2833
2882
|
`,
|
|
2834
2883
|
},
|
|
2884
|
+
{
|
|
2885
|
+
name: 'Readonly members whose argument is a union are merged without parentheses',
|
|
2886
|
+
source: dedent`
|
|
2887
|
+
type T = Readonly<{ a: number } | { b: number }> | Readonly<{ c: number }>;
|
|
2888
|
+
`,
|
|
2889
|
+
expected: dedent`
|
|
2890
|
+
type T = Readonly<{ a: number } | { b: number } | { c: number }>;
|
|
2891
|
+
`,
|
|
2892
|
+
},
|
|
2893
|
+
{
|
|
2894
|
+
name: 'Readonly members whose argument is a parenthesized union are merged without parentheses',
|
|
2895
|
+
source: dedent`
|
|
2896
|
+
type T = Readonly<{ a: number }> | Readonly<({ b: number } | { c: number })>;
|
|
2897
|
+
`,
|
|
2898
|
+
expected: dedent`
|
|
2899
|
+
type T = Readonly<{ a: number } | { b: number } | { c: number }>;
|
|
2900
|
+
`,
|
|
2901
|
+
},
|
|
2902
|
+
{
|
|
2903
|
+
name: 'Readonly members whose argument is an intersection are merged without parentheses',
|
|
2904
|
+
source: dedent`
|
|
2905
|
+
type T = Readonly<{ a: number } & { b: number }> & Readonly<{ c: number }>;
|
|
2906
|
+
`,
|
|
2907
|
+
expected: dedent`
|
|
2908
|
+
type T = Readonly<{ a: number } & { b: number } & { c: number }>;
|
|
2909
|
+
`,
|
|
2910
|
+
},
|
|
2911
|
+
{
|
|
2912
|
+
// An intersection argument spliced into a union keeps its parentheses.
|
|
2913
|
+
name: 'An intersection argument merged into a union of Readonly members keeps its parentheses',
|
|
2914
|
+
source: dedent`
|
|
2915
|
+
type T = Readonly<{ a: number } & { b: number }> | Readonly<{ c: number }>;
|
|
2916
|
+
`,
|
|
2917
|
+
expected: dedent`
|
|
2918
|
+
type T = Readonly<({ a: number } & { b: number }) | { c: number }>;
|
|
2919
|
+
`,
|
|
2920
|
+
},
|
|
2921
|
+
{
|
|
2922
|
+
name: 'A union argument merged into an intersection of Readonly members keeps its parentheses',
|
|
2923
|
+
source: dedent`
|
|
2924
|
+
type T = Readonly<{ a: number } | { b: number }> & Readonly<{ c: number }>;
|
|
2925
|
+
`,
|
|
2926
|
+
expected: dedent`
|
|
2927
|
+
type T = Readonly<({ a: number } | { b: number }) & { c: number }>;
|
|
2928
|
+
`,
|
|
2929
|
+
},
|
|
2835
2930
|
])('$name', testFn);
|
|
2836
2931
|
});
|
|
2837
2932
|
|
|
@@ -3369,6 +3464,24 @@ describe(convertToReadonlyTransformer, () => {
|
|
|
3369
3464
|
type T = /** a */ /** b */ readonly number[];
|
|
3370
3465
|
`,
|
|
3371
3466
|
},
|
|
3467
|
+
{
|
|
3468
|
+
name: 'Comments around a DeepReadonly argument that Readonly<T> unwraps',
|
|
3469
|
+
source: dedent`
|
|
3470
|
+
type T = Readonly</** a */ (/** b */ DeepReadonly<{ a: number[] }>)>;
|
|
3471
|
+
`,
|
|
3472
|
+
expected: dedent`
|
|
3473
|
+
type T = /** a */ /** b */ DeepReadonly<{ a: number[] }>;
|
|
3474
|
+
`,
|
|
3475
|
+
},
|
|
3476
|
+
{
|
|
3477
|
+
name: 'Comments around a union argument spliced into a merged union',
|
|
3478
|
+
source: dedent`
|
|
3479
|
+
type T = Readonly</** a */ (/** b */ { a: number } | { b: number })> | Readonly<{ c: number }>;
|
|
3480
|
+
`,
|
|
3481
|
+
expected: dedent`
|
|
3482
|
+
type T = /** a */ /** b */ Readonly<{ a: number } | { b: number } | { c: number }>;
|
|
3483
|
+
`,
|
|
3484
|
+
},
|
|
3372
3485
|
{
|
|
3373
3486
|
name: 'Comments around parentheses in a rest element',
|
|
3374
3487
|
source: dedent`
|