ts-codemod-lib 3.4.2 → 3.4.4
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/append-as-const.mjs +36 -4
- package/dist/functions/ast-transformers/append-as-const.mjs.map +1 -1
- 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/dist/functions/ast-transformers/enable-no-unchecked-indexed-access.d.mts +1 -1
- package/dist/functions/ast-transformers/enable-no-unchecked-indexed-access.mjs +4 -0
- package/dist/functions/ast-transformers/enable-no-unchecked-indexed-access.mjs.map +1 -1
- package/dist/functions/functions/wrap-with-parentheses.d.mts +5 -5
- package/package.json +9 -9
- package/src/functions/ast-transformers/append-as-const.mts +52 -4
- package/src/functions/ast-transformers/append-as-const.test.mts +119 -0
- package/src/functions/ast-transformers/convert-to-readonly.mts +39 -2
- package/src/functions/ast-transformers/convert-to-readonly.test.mts +114 -1
- package/src/functions/ast-transformers/enable-no-unchecked-indexed-access.mts +5 -1
- package/src/functions/ast-transformers/enable-no-unchecked-indexed-access.test.mts +36 -0
- package/src/functions/functions/wrap-with-parentheses.mts +5 -5
|
@@ -84,7 +84,8 @@ const transformNode = (node, context, options) => {
|
|
|
84
84
|
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
if (tsm.Node.isAsExpression(node)
|
|
87
|
+
if ((tsm.Node.isAsExpression(node) || tsm.Node.isTypeAssertion(node)) &&
|
|
88
|
+
!isConstAssertionNode(node)) {
|
|
88
89
|
return;
|
|
89
90
|
}
|
|
90
91
|
|
|
@@ -160,7 +161,16 @@ const transformNode = (node, context, options) => {
|
|
|
160
161
|
return;
|
|
161
162
|
}
|
|
162
163
|
|
|
163
|
-
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
if (tsm.Node.isTypeAssertion(node) && isConstAssertionNode(node)) {
|
|
167
|
+
const asConstText = `${node.getExpression().getText()} as const`;
|
|
168
|
+
options.debugPrint(`${node.getText()} -> ${asConstText}`);
|
|
169
|
+
transformNode(node.replaceWithText(asConstText), context, options);
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
if (isConstAssertionNode(node)) {
|
|
164
174
|
if (context.isDirectUnderConstInitializer) {
|
|
165
175
|
|
|
166
176
|
transformNode(node.getExpression(), {
|
|
@@ -233,7 +243,7 @@ sourceAst, options) => {
|
|
|
233
243
|
}
|
|
234
244
|
const args = call.getArguments();
|
|
235
245
|
|
|
236
|
-
if (args.every((arg) => !
|
|
246
|
+
if (args.every((arg) => !isConstAssertionNode(skipParenthesizedExpressions(arg)))) {
|
|
237
247
|
continue;
|
|
238
248
|
}
|
|
239
249
|
if (hasDisableNextLineComment(call, TRANSFORMER_NAME)) {
|
|
@@ -272,7 +282,7 @@ callTarget, options) => {
|
|
|
272
282
|
}
|
|
273
283
|
|
|
274
284
|
const asConst = skipParenthesizedExpressions(argument);
|
|
275
|
-
if (!
|
|
285
|
+
if (!isConstAssertionNode(asConst)) {
|
|
276
286
|
continue;
|
|
277
287
|
}
|
|
278
288
|
if (hasDisableNextLineComment(argument, TRANSFORMER_NAME)) {
|
|
@@ -289,6 +299,23 @@ callTarget, options) => {
|
|
|
289
299
|
}
|
|
290
300
|
};
|
|
291
301
|
|
|
302
|
+
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
const isConstAssertionNode = (node) => {
|
|
306
|
+
if (isAsConstNode(node)) {
|
|
307
|
+
return true;
|
|
308
|
+
}
|
|
309
|
+
if (!tsm.Node.isTypeAssertion(node)) {
|
|
310
|
+
return false;
|
|
311
|
+
}
|
|
312
|
+
const typeNode = node.getTypeNode();
|
|
313
|
+
return (typeNode !== undefined &&
|
|
314
|
+
typeNode.isKind(tsm.SyntaxKind.TypeReference) &&
|
|
315
|
+
typeNode.getTypeName().getText() === 'const' &&
|
|
316
|
+
Arr.isEmpty(typeNode.getTypeArguments()));
|
|
317
|
+
};
|
|
318
|
+
|
|
292
319
|
const skipParenthesizedExpressions = (node) => tsm.Node.isParenthesizedExpression(node)
|
|
293
320
|
? skipParenthesizedExpressions(node.getExpression())
|
|
294
321
|
: node;
|
|
@@ -308,6 +335,11 @@ call) => {
|
|
|
308
335
|
|
|
309
336
|
|
|
310
337
|
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
|
|
311
343
|
if (!Arr.isFixedLengthArray(1, call.getExpression().getType().getCallSignatures())) {
|
|
312
344
|
return undefined;
|
|
313
345
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"append-as-const.mjs","sourceRoot":"","sources":["../../../src/functions/ast-transformers/append-as-const.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAEhC,OAAO,EACL,yBAAyB,EACzB,aAAa,GACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAG/D,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAE3C,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,OAAyC,EACrB,EAAE;IACtB,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAChC,OAAO,EAAE,cAAc,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAC/D,CAAC;IAEF,MAAM,eAAe,GAA4C;QAC/D,UAAU,EAAE,OAAO,EAAE,UAAU,IAAI,qBAAqB;QACxD,eAAe,EAAE,cAAc;QAC/B,mCAAmC,EACjC,OAAO,EAAE,mCAAmC,IAAI,IAAI;QAEtD,UAAU,EAAE,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,GAAE,CAAC;QAC9D,WAAW,EACT,OAAO,EAAE,KAAK,KAAK,IAAI;YACrB,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC;KACtD,CAAC;IAEX,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,SAAS,EAAE,CAAC,SAAS,EAAE,EAAE;YACvB,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,oBAAoB,CAC/C,GAAG,CAAC,UAAU,CAAC,mBAAmB,CACnC,EAAE,CAAC;gBACF,aAAa,CACX,IAAI,EACJ;oBACE,mBAAmB,EAAE,KAAK;oBAC1B,6BAA6B,EAAE,KAAK;iBACrC,EACD,eAAe,CAChB,CAAC;YACJ,CAAC;YAED,IAAI,eAAe,CAAC,mCAAmC,EAAE,CAAC;gBACxD,qCAAqC,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AA8DF,MAAM,aAAa,GAAG,CACpB,IAAc,EACd,OAAuB,EACvB,OAAgD,EAC1C,EAAE;IACR,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;QACxB,OAAO;IACT,CAAC;IAED,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAEpE,IAAI,yBAAyB,CAAC,IAAI,EAAE,gBAAgB,CAAC,EAAE,CAAC;QACtD,OAAO,CAAC,UAAU,CAAC,sCAAsC,CAAC,CAAC;QAE3D,OAAO;IACT,CAAC;IAED,IACE,OAAO,CAAC,UAAU,KAAK,qBAAqB;QAC5C,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAC/B,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAEhC,yBAAyB;QACzB,IAAI,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,kEAAkE;YAClE,wFAAwF;YACxF,OAAO,CAAC,UAAU,CAAC,gDAAgD,CAAC,CAAC;YAErE,OAAO;QACT,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAEtD,IACE,iBAAiB,KAAK,SAAS;YAC/B,yBAAyB,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,EAC9D,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE1C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,MAAM,uBAAuB,GAAG,IAAI;aACjC,oBAAoB,EAAE;YACvB,EAAE,0BAA0B,EAAE;aAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAE3B,IACE,uBAAuB,KAAK,SAAS;YACrC,GAAG,CAAC,kBAAkB,CAAC,CAAC,EAAE,uBAAuB,CAAC,EAClD,CAAC;YACD,aAAa,CACX,WAAW,EACX;gBACE,6BAA6B,EAAE,uBAAuB,CAAC,CAAC,CAAC,KAAK,OAAO;gBACrE,mBAAmB,EAAE,KAAK;aAC3B,EACD,OAAO,CACR,CAAC;YAEF,OAAO;QACT,CAAC;QAED,sBAAsB;QACtB,uDAAuD;QACvD,4CAA4C;QAC5C,0DAA0D;QAC1D,IAAI;QAEJ,wBAAwB;QACxB,wDAAwD;QACxD,6CAA6C;QAC7C,0DAA0D;QAC1D,IAAI;IACN,CAAC;IAED,mCAAmC;IACnC,IAAI,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1D,OAAO;IACT,CAAC;IAED,uBAAuB;IACvB,IAAI,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7C,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAEtD,OAAO;IACT,CAAC;IAED,mCAAmC;IACnC,IAAI,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAEtD,OAAO;IACT,CAAC;IAED,uDAAuD;IACvD,IAAI,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE1C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,aAAa,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO;IACT,CAAC;IAED,+CAA+C;IAC/C,IAAI,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAE5B,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAEtC,OAAO;IACT,CAAC;IAED,uCAAuC;IACvC,IAAI,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAEtD,OAAO;IACT,CAAC;IAED,IACE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,6BAA6B,CAAC,IAAI,QAAQ;QACrE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,MAAM;QACpD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,OAAO;QACpD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,QAAQ;QACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,OAAO;QAClD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,QAAQ;MACjD,CAAC;QACD,IACE,CAAC,OAAO,CAAC,6BAA6B;YACtC,CAAC,OAAO,CAAC,mBAAmB,EAC5B,CAAC;YACD,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC1D,CAAC;QAED,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;YACjC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC1D,CAAC;QAED,OAAO;IACT,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACpC,aAAa,CACX,EAAE,EACF;gBACE,mBAAmB,EAAE,IAAI,EAAE,iBAAiB;gBAC5C,6BAA6B,EAAE,KAAK;aACrC,EACD,OAAO,CACR,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;YACjC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC1D,CAAC;QAED,OAAO;IACT,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7C,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;YACtC,aAAa,CACX,EAAE,EACF;gBACE,mBAAmB,EAAE,IAAI,EAAE,iBAAiB;gBAC5C,6BAA6B,EAAE,KAAK;aACrC,EACD,OAAO,CACR,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;YACjC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC1D,CAAC;QAED,OAAO;IACT,CAAC;IAED,kBAAkB;IAClB,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,IAAI,OAAO,CAAC,6BAA6B,EAAE,CAAC;YAC1C,gGAAgG;YAEhG,aAAa,CACX,IAAI,CAAC,aAAa,EAAE,EACpB;gBACE,mBAAmB,EAAE,KAAK;gBAC1B,6BAA6B,EAAE,IAAI;aACpC,EACD,OAAO,CACR,CAAC;YAEF,OAAO,CAAC,WAAW,CACjB,IAAI;YACJ,0CAA0C;YAC1C,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,CAC/B,CAAC,CAAC,oBAAoB;YAEvB,OAAO;QACT,CAAC;QAED,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAChC,aAAa,CACX,IAAI,CAAC,aAAa,EAAE,EACpB;gBACE,mBAAmB,EAAE,IAAI;gBACzB,6BAA6B,EAAE,KAAK;aACrC,EACD,OAAO,CACR,CAAC;YAEF,OAAO,CAAC,WAAW,CACjB,IAAI;YACJ,0CAA0C;YAC1C,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,CAC/B,CAAC,CAAC,oBAAoB;YAEvB,OAAO;QACT,CAAC;QAED,aAAa,CACX,IAAI,CAAC,aAAa,EAAE,EACpB;YACE,mBAAmB,EAAE,IAAI;YACzB,6BAA6B,EAAE,KAAK;SACrC,EACD,OAAO,CACR,CAAC;QAEF,OAAO;IACT,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,OAAO;IACT,CAAC;IAED,6EAA6E;IAC7E,aAAa,CACX,IAAI,CAAC,WAAW,EAAE,EAClB;QACE,6BAA6B,EAAE,OAAO,CAAC,6BAA6B;QACpE,mBAAmB,EAAE,KAAK;KAC3B,EACD,OAAO,CACR,CAAC;IAEF,aAAa,CACX,IAAI,CAAC,YAAY,EAAE,EACnB;QACE,6BAA6B,EAAE,OAAO,CAAC,6BAA6B;QACpE,mBAAmB,EAAE,KAAK;KAC3B,EACD,OAAO,CACR,CAAC;IAEF,UAAU;AACZ,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,qCAAqC,GAAG;AAC5C,8EAA8E;AAC9E,SAAyB,EACzB,OAAgD,EAC1C,EAAE;IACR,oEAAoE;IACpE,uEAAuE;IACvE,KAAK,MAAM,IAAI,IAAI,SAAS;SACzB,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC;SACnD,UAAU,EAAE,EAAE,CAAC;QAChB,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACxB,SAAS;QACX,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAEjC,6DAA6D;QAC7D,IACE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC,CAAC,EACtE,CAAC;YACD,SAAS;QACX,CAAC;QAED,IAAI,yBAAyB,CAAC,IAAI,EAAE,gBAAgB,CAAC,EAAE,CAAC;YACtD,SAAS;QACX,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CACnD,GAAG,CAAC,UAAU,CAAC,iBAAiB,CACjC,CAAC;QAEF,IACE,iBAAiB,KAAK,SAAS;YAC/B,yBAAyB,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,EAC9D,CAAC;YACD,SAAS;QACX,CAAC;QAED,uEAAuE;QACvE,yCAAyC;QACzC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC;YAC1C,SAAS;QACX,CAAC;QAED,MAAM,UAAU,GAAG,gCAAgC,CAAC,IAAI,CAAC,CAAC;QAE1D,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,SAAS;QACX,CAAC;QAED,uBAAuB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAC9B,IAAyB;AACzB,8EAA8E;AAC9E,UAA8B,EAC9B,OAAgD,EAC1C,EAAE;IACR,yEAAyE;IACzE,wBAAwB;IACxB,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5C,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,CACvC,CAAC;IAEF,MAAM,gBAAgB,GACpB,gBAAgB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAE3D,KAAK,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACvD,IAAI,aAAa,IAAI,gBAAgB,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QAED,IAAI,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC;YAC5B,SAAS;QACX,CAAC;QAED,iEAAiE;QACjE,MAAM,OAAO,GAAG,4BAA4B,CAAC,QAAQ,CAAC,CAAC;QAEvD,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,SAAS;QACX,CAAC;QAED,IAAI,yBAAyB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE,CAAC;YAC1D,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,mBAAmB,CAAC,UAAU,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QAE5E,IACE,SAAS,KAAK,SAAS;YACvB,CAAC,iCAAiC,CAChC,SAAS,EACT,UAAU,CAAC,uBAAuB,CACnC,EACD,CAAC;YACD,SAAS;QACX,CAAC;QAED,OAAO,CAAC,UAAU,CAChB,8DAA8D,EAC9D,QAAQ,CAAC,OAAO,EAAE,CACnB,CAAC;QAEF,iEAAiE;QACjE,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACnE,CAAC;AACH,CAAC,CAAC;AAEF,+DAA+D;AAC/D,MAAM,4BAA4B,GAAG,CAAC,IAAc,EAAY,EAAE,CAChE,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC;IACtC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;IACpD,CAAC,CAAC,IAAI,CAAC;AAOX;;;;;;;;GAQG;AACH,MAAM,gCAAgC,GAAG;AACvC,8EAA8E;AAC9E,IAAwB,EACQ,EAAE;IAClC,yEAAyE;IACzE,sDAAsD;IACtD,yEAAyE;IACzE,wBAAwB;IACxB,IACE,CAAC,GAAG,CAAC,kBAAkB,CACrB,CAAC,EACD,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,CAAC,iBAAiB,EAAE,CACnD,EACD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,WAAW,GAAG,IAAI;SACrB,UAAU,EAAE;SACZ,cAAc,EAAE;SAChB,oBAAoB,CAAC,IAAI,CAAC;QAC3B,EAAE,cAAc,EAAE,CAAC;IAErB,IACE,WAAW,KAAK,SAAS;QACzB,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;QACpC,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,EACxC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,yEAAyE;IACzE,yEAAyE;IACzE,wEAAwE;IACxE,MAAM,uBAAuB,GAAG,IAAI,CAAC,MAAM,CACzC,WAAW;SACR,iBAAiB,EAAE;SACnB,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;SAC3D,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAC7B,CAAC;IAEF,IAAI,uBAAuB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACvC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;QACL,UAAU,EAAE,WAAW,CAAC,aAAa,EAAE;QACvC,uBAAuB;KACf,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG;AAC1B,8EAA8E;AAC9E,UAA+C,EAC/C,aAAqB,EACiB,EAAE;IACxC,IAAI,aAAa,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;QACtC,OAAO,UAAU,CAAC,aAAa,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,aAAa,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAExC,OAAO,aAAa,EAAE,eAAe,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/E,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,iCAAiC,GAAG;AACxC,8EAA8E;AAC9E,SAAmC,EACnC,uBAAqC,EAC5B,EAAE;IACX,MAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IAEzC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IAExC,OAAO,CACL,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC;QAC1C,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QACxC,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAChD,CAAC;AACJ,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"append-as-const.mjs","sourceRoot":"","sources":["../../../src/functions/ast-transformers/append-as-const.mts"],"names":[],"mappings":"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"}
|
|
@@ -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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"}
|
|
@@ -114,6 +114,10 @@ sourceAst, options) => {
|
|
|
114
114
|
strictNullChecks: true,
|
|
115
115
|
noUncheckedIndexedAccess: true,
|
|
116
116
|
});
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
|
|
117
121
|
const widened = candidates.filter((node) => typeIncludesUndefined(node.getType()) &&
|
|
118
122
|
!(options.applyLevel === 'avoidWhereUndefinedIsAllowed' &&
|
|
119
123
|
contextAcceptsUndefined(node)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enable-no-unchecked-indexed-access.mjs","sourceRoot":"","sources":["../../../src/functions/ast-transformers/enable-no-unchecked-indexed-access.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"enable-no-unchecked-indexed-access.mjs","sourceRoot":"","sources":["../../../src/functions/ast-transformers/enable-no-unchecked-indexed-access.mts"],"names":[],"mappings":"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"}
|
|
@@ -6,17 +6,17 @@
|
|
|
6
6
|
* @example
|
|
7
7
|
*
|
|
8
8
|
* ```ts
|
|
9
|
-
* assert.
|
|
9
|
+
* assert.strictEqual(wrapWithParentheses('A'), '(A)');
|
|
10
10
|
*
|
|
11
11
|
* // already wrapped, so not '((A))'
|
|
12
|
-
* assert.
|
|
12
|
+
* assert.strictEqual(wrapWithParentheses('(A)'), '(A)');
|
|
13
13
|
*
|
|
14
|
-
* assert.
|
|
14
|
+
* assert.strictEqual(wrapWithParentheses('A | B'), '(A | B)');
|
|
15
15
|
*
|
|
16
|
-
* assert.
|
|
16
|
+
* assert.strictEqual(wrapWithParentheses('(A | B)'), '(A | B)');
|
|
17
17
|
*
|
|
18
18
|
* // the outer parentheses do not span everything, so a pair is added
|
|
19
|
-
* assert.
|
|
19
|
+
* assert.strictEqual(wrapWithParentheses('(A) | (B)'), '((A) | (B))');
|
|
20
20
|
* ```
|
|
21
21
|
*/
|
|
22
22
|
export declare const wrapWithParentheses: (nodeStr: string) => string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ts-codemod-lib",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.4",
|
|
4
4
|
"private": false,
|
|
5
5
|
"keywords": [
|
|
6
6
|
"typescript",
|
|
@@ -51,13 +51,13 @@
|
|
|
51
51
|
"dedent": "1.7.2",
|
|
52
52
|
"esbuild": "0.28.2",
|
|
53
53
|
"eslint": "10.12.0",
|
|
54
|
-
"eslint-config-typed": "5.
|
|
55
|
-
"eslint-plugin-ts-data-forge": "0.8.
|
|
56
|
-
"eslint-plugin-ts-fortress": "1.3.
|
|
57
|
-
"eslint-plugin-ts-type-forge": "0.8.
|
|
54
|
+
"eslint-config-typed": "5.18.0",
|
|
55
|
+
"eslint-plugin-ts-data-forge": "0.8.6",
|
|
56
|
+
"eslint-plugin-ts-fortress": "1.3.3",
|
|
57
|
+
"eslint-plugin-ts-type-forge": "0.8.8",
|
|
58
58
|
"jiti": "2.7.0",
|
|
59
59
|
"npm-run-all2": "9.0.3",
|
|
60
|
-
"playwright": "1.
|
|
60
|
+
"playwright": "1.64.0",
|
|
61
61
|
"prettier": "3.9.9",
|
|
62
62
|
"prettier-plugin-organize-imports": "4.3.0",
|
|
63
63
|
"prettier-plugin-packagejson": "3.0.2",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"typedoc-github-theme": "0.4.0",
|
|
68
68
|
"typescript": "6.0.3",
|
|
69
69
|
"typescript-native": "npm:typescript@7.0.2",
|
|
70
|
-
"vite": "8.3.
|
|
70
|
+
"vite": "8.3.3",
|
|
71
71
|
"vitest": "5.0.3"
|
|
72
72
|
},
|
|
73
73
|
"engines": {
|
|
@@ -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",
|
|
@@ -199,7 +199,10 @@ const transformNode = (
|
|
|
199
199
|
}
|
|
200
200
|
|
|
201
201
|
// Skip already type asserted nodes
|
|
202
|
-
if (
|
|
202
|
+
if (
|
|
203
|
+
(tsm.Node.isAsExpression(node) || tsm.Node.isTypeAssertion(node)) &&
|
|
204
|
+
!isConstAssertionNode(node)
|
|
205
|
+
) {
|
|
203
206
|
return;
|
|
204
207
|
}
|
|
205
208
|
|
|
@@ -308,8 +311,21 @@ const transformNode = (
|
|
|
308
311
|
return;
|
|
309
312
|
}
|
|
310
313
|
|
|
314
|
+
// `<const>x` is handled as the `x as const` it means. Appending `as const`
|
|
315
|
+
// to `x` in place would read as `(<const>x) as const`, and every position
|
|
316
|
+
// that reaches here already takes an `as` expression.
|
|
317
|
+
if (tsm.Node.isTypeAssertion(node) && isConstAssertionNode(node)) {
|
|
318
|
+
const asConstText = `${node.getExpression().getText()} as const` as const;
|
|
319
|
+
|
|
320
|
+
options.debugPrint(`${node.getText()} -> ${asConstText}`);
|
|
321
|
+
|
|
322
|
+
transformNode(node.replaceWithText(asConstText), context, options);
|
|
323
|
+
|
|
324
|
+
return;
|
|
325
|
+
}
|
|
326
|
+
|
|
311
327
|
// `as const` node
|
|
312
|
-
if (
|
|
328
|
+
if (isConstAssertionNode(node)) {
|
|
313
329
|
if (context.isDirectUnderConstInitializer) {
|
|
314
330
|
// In const variable declarations, remove `as const` first and then re-append it later if needed
|
|
315
331
|
|
|
@@ -424,7 +440,9 @@ const removeAsConstInConstTypeParameterArgs = (
|
|
|
424
440
|
|
|
425
441
|
// Cheap syntactic pre-check before touching the type checker
|
|
426
442
|
if (
|
|
427
|
-
args.every(
|
|
443
|
+
args.every(
|
|
444
|
+
(arg) => !isConstAssertionNode(skipParenthesizedExpressions(arg)),
|
|
445
|
+
)
|
|
428
446
|
) {
|
|
429
447
|
continue;
|
|
430
448
|
}
|
|
@@ -487,7 +505,7 @@ const removeAsConstArgsOfCall = (
|
|
|
487
505
|
// `f(([1] as const))` is the same argument as `f([1] as const)`.
|
|
488
506
|
const asConst = skipParenthesizedExpressions(argument);
|
|
489
507
|
|
|
490
|
-
if (!
|
|
508
|
+
if (!isConstAssertionNode(asConst)) {
|
|
491
509
|
continue;
|
|
492
510
|
}
|
|
493
511
|
|
|
@@ -517,6 +535,31 @@ const removeAsConstArgsOfCall = (
|
|
|
517
535
|
}
|
|
518
536
|
};
|
|
519
537
|
|
|
538
|
+
/**
|
|
539
|
+
* `x as const`, or `<const>x`, the angle-bracket spelling TypeScript treats
|
|
540
|
+
* identically (outside `.tsx`, where it does not parse).
|
|
541
|
+
*/
|
|
542
|
+
const isConstAssertionNode = (
|
|
543
|
+
node: tsm.Node,
|
|
544
|
+
): node is tsm.AsExpression | tsm.TypeAssertion => {
|
|
545
|
+
if (isAsConstNode(node)) {
|
|
546
|
+
return true;
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
if (!tsm.Node.isTypeAssertion(node)) {
|
|
550
|
+
return false;
|
|
551
|
+
}
|
|
552
|
+
|
|
553
|
+
const typeNode = node.getTypeNode();
|
|
554
|
+
|
|
555
|
+
return (
|
|
556
|
+
typeNode !== undefined &&
|
|
557
|
+
typeNode.isKind(tsm.SyntaxKind.TypeReference) &&
|
|
558
|
+
typeNode.getTypeName().getText() === 'const' &&
|
|
559
|
+
Arr.isEmpty(typeNode.getTypeArguments())
|
|
560
|
+
);
|
|
561
|
+
};
|
|
562
|
+
|
|
520
563
|
/** `node` with the parentheses written around it taken off. */
|
|
521
564
|
const skipParenthesizedExpressions = (node: tsm.Node): tsm.Node =>
|
|
522
565
|
tsm.Node.isParenthesizedExpression(node)
|
|
@@ -541,6 +584,11 @@ const resolveSingleSignatureCallTarget = (
|
|
|
541
584
|
// eslint-disable-next-line @typescript-eslint/prefer-readonly-parameter-types
|
|
542
585
|
call: tsm.CallExpression,
|
|
543
586
|
): ResolvedCallTarget | undefined => {
|
|
587
|
+
// The callee's type is read as the call sees it, after any `as`,
|
|
588
|
+
// `satisfies` or `!` around it: that is the signature the argument is
|
|
589
|
+
// inferred against, and an `as const` has no run-time effect for an inner
|
|
590
|
+
// layer to contradict.
|
|
591
|
+
//
|
|
544
592
|
// 0 signatures: the callee is unresolved (e.g. imported, since each file
|
|
545
593
|
// is transformed in an isolated single-file project).
|
|
546
594
|
// 2+ signatures: overloads, where removing `as const` could change which
|
|
@@ -894,6 +894,125 @@ describe(appendAsConstTransformer, () => {
|
|
|
894
894
|
])('$name', testFn);
|
|
895
895
|
});
|
|
896
896
|
|
|
897
|
+
describe('Callee judged by its type at the call, through type wrappers', () => {
|
|
898
|
+
test.each([
|
|
899
|
+
{
|
|
900
|
+
name: 'widening as to a const type parameter signature should remove as const',
|
|
901
|
+
source: dedent`
|
|
902
|
+
const g = <T,>(x: T): T => x;
|
|
903
|
+
const a = (g as <const T>(x: T) => T)([1, 2] as const);
|
|
904
|
+
`,
|
|
905
|
+
expected: dedent`
|
|
906
|
+
const g = <T,>(x: T): T => x;
|
|
907
|
+
const a = (g as <const T>(x: T) => T)([1, 2]);
|
|
908
|
+
`,
|
|
909
|
+
},
|
|
910
|
+
{
|
|
911
|
+
name: 'as to a non-const type parameter signature should keep as const',
|
|
912
|
+
source: dedent`
|
|
913
|
+
const g = <const T,>(x: T): T => x;
|
|
914
|
+
const a = (g as <T>(x: T) => T)([1, 2] as const);
|
|
915
|
+
`,
|
|
916
|
+
expected: dedent`
|
|
917
|
+
const g = <const T,>(x: T): T => x;
|
|
918
|
+
const a = (g as <T>(x: T) => T)([1, 2] as const);
|
|
919
|
+
`,
|
|
920
|
+
},
|
|
921
|
+
{
|
|
922
|
+
name: 'satisfies keeps the callee type, so as const should be removed',
|
|
923
|
+
source: dedent`
|
|
924
|
+
const g = <const T,>(x: T): T => x;
|
|
925
|
+
const a = (g satisfies unknown)([1, 2] as const);
|
|
926
|
+
`,
|
|
927
|
+
expected: dedent`
|
|
928
|
+
const g = <const T,>(x: T): T => x;
|
|
929
|
+
const a = (g satisfies unknown)([1, 2]);
|
|
930
|
+
`,
|
|
931
|
+
},
|
|
932
|
+
{
|
|
933
|
+
name: 'non-null asserted callee should remove as const',
|
|
934
|
+
source: dedent`
|
|
935
|
+
declare const g: (<const T>(x: T) => T) | undefined;
|
|
936
|
+
const a = g!([1, 2] as const);
|
|
937
|
+
`,
|
|
938
|
+
expected: dedent`
|
|
939
|
+
declare const g: (<const T>(x: T) => T) | undefined;
|
|
940
|
+
const a = g!([1, 2]);
|
|
941
|
+
`,
|
|
942
|
+
},
|
|
943
|
+
{
|
|
944
|
+
name: 'parenthesized callee should remove as const',
|
|
945
|
+
source: dedent`
|
|
946
|
+
const g = <const T,>(x: T): T => x;
|
|
947
|
+
const a = ((g))([1, 2] as const);
|
|
948
|
+
`,
|
|
949
|
+
expected: dedent`
|
|
950
|
+
const g = <const T,>(x: T): T => x;
|
|
951
|
+
const a = ((g))([1, 2]);
|
|
952
|
+
`,
|
|
953
|
+
},
|
|
954
|
+
])('$name', testFn);
|
|
955
|
+
});
|
|
956
|
+
|
|
957
|
+
describe('Angle-bracket const assertions (<const>x)', () => {
|
|
958
|
+
test.each([
|
|
959
|
+
{
|
|
960
|
+
name: 'should be removed inside an array literal that gets as const',
|
|
961
|
+
source: 'const c = [<const>[1], 2];',
|
|
962
|
+
expected: 'const c = [[1], 2] as const;',
|
|
963
|
+
},
|
|
964
|
+
{
|
|
965
|
+
name: 'should be removed inside an object literal that gets as const',
|
|
966
|
+
source: 'const o = { a: <const>[1] };',
|
|
967
|
+
expected: 'const o = { a: [1] } as const;',
|
|
968
|
+
},
|
|
969
|
+
{
|
|
970
|
+
name: 'should be spelled as const on a const initializer',
|
|
971
|
+
source: 'const b = <const>[1, 2];',
|
|
972
|
+
expected: 'const b = [1, 2] as const;',
|
|
973
|
+
},
|
|
974
|
+
{
|
|
975
|
+
name: 'should be removed from a primitive const initializer',
|
|
976
|
+
source: "const s = <const>'a';",
|
|
977
|
+
expected: "const s = 'a';",
|
|
978
|
+
},
|
|
979
|
+
{
|
|
980
|
+
name: 'should be removed inside an outer as const',
|
|
981
|
+
source: 'const n = [<const>[1], 2] as const;',
|
|
982
|
+
expected: 'const n = [[1], 2] as const;',
|
|
983
|
+
},
|
|
984
|
+
{
|
|
985
|
+
name: 'const type parameter should remove it from an argument',
|
|
986
|
+
source: dedent`
|
|
987
|
+
function f<const T>(x: T): T { return x; }
|
|
988
|
+
const a = f(<const>[1, 2]);
|
|
989
|
+
const b = f((<const>[1, 2]));
|
|
990
|
+
`,
|
|
991
|
+
expected: dedent`
|
|
992
|
+
function f<const T>(x: T): T { return x; }
|
|
993
|
+
const a = f([1, 2]);
|
|
994
|
+
const b = f([1, 2]);
|
|
995
|
+
`,
|
|
996
|
+
},
|
|
997
|
+
{
|
|
998
|
+
name: 'non-const type parameter should keep it in an argument',
|
|
999
|
+
source: dedent`
|
|
1000
|
+
function g<T>(x: T): T { return x; }
|
|
1001
|
+
const a = g(<const>[1, 2]);
|
|
1002
|
+
`,
|
|
1003
|
+
expected: dedent`
|
|
1004
|
+
function g<T>(x: T): T { return x; }
|
|
1005
|
+
const a = g(<const>[1, 2]);
|
|
1006
|
+
`,
|
|
1007
|
+
},
|
|
1008
|
+
{
|
|
1009
|
+
name: 'other angle-bracket assertions should be left as they are',
|
|
1010
|
+
source: 'const d = <readonly number[]>[1, 2];',
|
|
1011
|
+
expected: 'const d = <readonly number[]>[1, 2];',
|
|
1012
|
+
},
|
|
1013
|
+
])('$name', testFn);
|
|
1014
|
+
});
|
|
1015
|
+
|
|
897
1016
|
describe('ignorePrefixes option (mut_ prefix)', () => {
|
|
898
1017
|
test.each([
|
|
899
1018
|
{
|
|
@@ -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`
|
|
@@ -56,7 +56,7 @@ const TRANSFORMER_NAME = 'enable-no-unchecked-indexed-access';
|
|
|
56
56
|
* enableNoUncheckedIndexedAccessTransformer(),
|
|
57
57
|
* ]);
|
|
58
58
|
*
|
|
59
|
-
* assert.
|
|
59
|
+
* assert.strictEqual(
|
|
60
60
|
* after.trim(),
|
|
61
61
|
* dedent`
|
|
62
62
|
* declare const xs: readonly number[];
|
|
@@ -169,6 +169,10 @@ const collectAssertionPositions = (
|
|
|
169
169
|
noUncheckedIndexedAccess: true,
|
|
170
170
|
});
|
|
171
171
|
|
|
172
|
+
// The type asked is the access's own, so an `as`, `satisfies` or `!` on
|
|
173
|
+
// its object is already in it. That is the type the option's error is
|
|
174
|
+
// reported against, and the `!` appended has no run-time effect for the
|
|
175
|
+
// unwrapped object to contradict.
|
|
172
176
|
const widened = candidates.filter(
|
|
173
177
|
(node) =>
|
|
174
178
|
typeIncludesUndefined(node.getType()) &&
|
|
@@ -481,6 +481,42 @@ describe(enableNoUncheckedIndexedAccessTransformer, () => {
|
|
|
481
481
|
])('$name', testFn);
|
|
482
482
|
});
|
|
483
483
|
|
|
484
|
+
describe('objects judged by the type the access reads, through type wrappers', () => {
|
|
485
|
+
test.each([
|
|
486
|
+
{
|
|
487
|
+
name: 'as to an element type without undefined needs the assertion',
|
|
488
|
+
source: 'console.log((sparse as readonly number[])[0].toFixed());',
|
|
489
|
+
expected: 'console.log((sparse as readonly number[])[0]!.toFixed());',
|
|
490
|
+
},
|
|
491
|
+
{
|
|
492
|
+
name: 'as to an element type with undefined needs none',
|
|
493
|
+
source:
|
|
494
|
+
'console.log((xs as readonly (number | undefined)[])[0]?.toFixed());',
|
|
495
|
+
expected:
|
|
496
|
+
'console.log((xs as readonly (number | undefined)[])[0]?.toFixed());',
|
|
497
|
+
},
|
|
498
|
+
{
|
|
499
|
+
name: 'angle-bracket assertion to an element type without undefined',
|
|
500
|
+
source: 'console.log((<readonly number[]>sparse)[0].toFixed());',
|
|
501
|
+
expected: 'console.log((<readonly number[]>sparse)[0]!.toFixed());',
|
|
502
|
+
},
|
|
503
|
+
{
|
|
504
|
+
name: 'satisfies keeps the type of the object it wraps',
|
|
505
|
+
source:
|
|
506
|
+
'console.log((xs satisfies readonly (number | undefined)[])[0].toFixed());',
|
|
507
|
+
expected:
|
|
508
|
+
'console.log((xs satisfies readonly (number | undefined)[])[0]!.toFixed());',
|
|
509
|
+
},
|
|
510
|
+
{
|
|
511
|
+
name: 'non-null assertion on the object',
|
|
512
|
+
source:
|
|
513
|
+
'declare const maybe: readonly number[] | undefined; console.log(maybe![0].toFixed());',
|
|
514
|
+
expected:
|
|
515
|
+
'declare const maybe: readonly number[] | undefined; console.log(maybe![0]!.toFixed());',
|
|
516
|
+
},
|
|
517
|
+
])('$name', testFn);
|
|
518
|
+
});
|
|
519
|
+
|
|
484
520
|
describe('applyLevel: "avoidWhereUndefinedIsAllowed"', () => {
|
|
485
521
|
test.each([
|
|
486
522
|
{
|
|
@@ -60,17 +60,17 @@ const isWrappedWithParentheses = (str: string): boolean => {
|
|
|
60
60
|
* @example
|
|
61
61
|
*
|
|
62
62
|
* ```ts
|
|
63
|
-
* assert.
|
|
63
|
+
* assert.strictEqual(wrapWithParentheses('A'), '(A)');
|
|
64
64
|
*
|
|
65
65
|
* // already wrapped, so not '((A))'
|
|
66
|
-
* assert.
|
|
66
|
+
* assert.strictEqual(wrapWithParentheses('(A)'), '(A)');
|
|
67
67
|
*
|
|
68
|
-
* assert.
|
|
68
|
+
* assert.strictEqual(wrapWithParentheses('A | B'), '(A | B)');
|
|
69
69
|
*
|
|
70
|
-
* assert.
|
|
70
|
+
* assert.strictEqual(wrapWithParentheses('(A | B)'), '(A | B)');
|
|
71
71
|
*
|
|
72
72
|
* // the outer parentheses do not span everything, so a pair is added
|
|
73
|
-
* assert.
|
|
73
|
+
* assert.strictEqual(wrapWithParentheses('(A) | (B)'), '((A) | (B))');
|
|
74
74
|
* ```
|
|
75
75
|
*/
|
|
76
76
|
export const wrapWithParentheses = (nodeStr: string): string => {
|