eslint-plugin-ts-data-forge 0.10.7 → 0.10.9
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/rules/prefer-arr-scan.mjs +12 -8
- package/dist/rules/prefer-arr-scan.mjs.map +1 -1
- package/dist/rules/prefer-arr-uniq.mjs +7 -2
- package/dist/rules/prefer-arr-uniq.mjs.map +1 -1
- package/package.json +7 -7
- package/src/rules/prefer-arr-is-non-empty.test.mts +36 -0
- package/src/rules/prefer-arr-scan.mts +12 -11
- package/src/rules/prefer-arr-scan.test.mts +17 -0
- package/src/rules/prefer-arr-uniq.mts +8 -2
- package/src/rules/prefer-arr-uniq.test.mts +37 -0
|
@@ -436,20 +436,24 @@ callback) => {
|
|
|
436
436
|
return false;
|
|
437
437
|
}
|
|
438
438
|
const { body } = callback;
|
|
439
|
-
|
|
440
|
-
|
|
439
|
+
|
|
440
|
+
|
|
441
|
+
|
|
442
|
+
|
|
443
|
+
const copied = body.type === AST_NODE_TYPES.ArrayExpression
|
|
444
|
+
? body.elements[0]?.type === AST_NODE_TYPES.SpreadElement
|
|
445
|
+
? body.elements[0].argument
|
|
446
|
+
: undefined
|
|
441
447
|
: body.type === AST_NODE_TYPES.CallExpression &&
|
|
442
448
|
body.callee.type === AST_NODE_TYPES.MemberExpression &&
|
|
443
449
|
!body.callee.computed &&
|
|
444
450
|
body.callee.property.type === AST_NODE_TYPES.Identifier &&
|
|
445
|
-
body.callee.property.name === 'toPushed'
|
|
451
|
+
body.callee.property.name === 'toPushed' &&
|
|
452
|
+
body.arguments.length >= 2 &&
|
|
453
|
+
body.arguments[0]?.type !== AST_NODE_TYPES.SpreadElement
|
|
446
454
|
? body.arguments[0]
|
|
447
455
|
: undefined;
|
|
448
|
-
const target =
|
|
449
|
-
? undefined
|
|
450
|
-
: skipTypeWrappers(spelling.type === AST_NODE_TYPES.SpreadElement
|
|
451
|
-
? spelling.argument
|
|
452
|
-
: spelling);
|
|
456
|
+
const target = copied === undefined ? undefined : skipTypeWrappers(copied);
|
|
453
457
|
return (target?.type === AST_NODE_TYPES.Identifier &&
|
|
454
458
|
target.name === accumulatorParam.name);
|
|
455
459
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefer-arr-scan.mjs","sourceRoot":"","sources":["../../src/rules/prefer-arr-scan.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,GAGf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEpC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAM1D,uFAAuF;AACvF,MAAM,eAAe,GAAwB,IAAI,GAAG,CAAS;IAC3D,OAAO;IACP,UAAU;CACX,CAAC,CAAC;AA6CH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0FG;AACH,MAAM,CAAC,MAAM,aAAa,GAA6C;IACrE,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,8PAA8P;SACjQ;QACD,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACR,mBAAmB,EACjB,iRAAiR;YACnR,uBAAuB,EACrB,6LAA6L;SAChM;QACD,cAAc,EAAE,EAAE;KACnB;IAED,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;QAClB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAEtC,MAAM,QAAQ,GAAG,UAAU,CAAC,cAAc,CAAC;QAE3C,MAAM,OAAO,GAAG,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;QAEpD;;;;WAIG;QACH,MAAM,SAAS,GAAG;QAChB,8EAA8E;QAC9E,IAAmB,EACV,EAAE;YACX,MAAM,MAAM,GAAG,QAAQ,EAAE,qBAAqB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAE1D,IAAI,OAAO,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAClD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAE/C,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAChD,CAAC,WAAW,EAAE,EAAE,CACd,CAAC,WAAW,CAAC,KAAK;gBAChB,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI;oBAChB,EAAE,CAAC,SAAS,CAAC,SAAS;oBACtB,EAAE,CAAC,SAAS,CAAC,IAAI;oBACjB,EAAE,CAAC,SAAS,CAAC,GAAG;oBAChB,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBAC1B,CAAC,CACJ,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,cAAc,GAAsB,EAAE,CAAC;QAE7C,MAAM,UAAU,GAAgB,EAAE,CAAC;QAEnC,MAAM,iBAAiB,GAA4B,EAAE,CAAC;QAEtD;;;;WAIG;QACH,MAAM,kBAAkB,GAAG;QACzB,8EAA8E;QAC9E,IAA6B;QAC7B,8EAA8E;QAC9E,QAAwE;QACxE,8EAA8E;QAC9E,OAAsB;QACtB,8EAA8E;QAC9E,YAA0B,EACN,EAAE;YACtB,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACzC,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,qEAAqE;YACrE,sEAAsE;YACtE,yDAAyD;YACzD,IACE,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBAC1B,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM;gBAC1B,QAAQ,CAAC,MAAM,CAAC,IAAI,CAClB,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU;oBACxC,KAAK,CAAC,cAAc,KAAK,SAAS,CACrC,EACD,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;YAEnE,2EAA2E;YAC3E,IACE,OAAO,CAAC,IAAI,KAAK,cAAc,CAAC,eAAe;gBAC/C,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,EAC5C,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;YAEhC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,aAAa,EAAE,CAAC;gBAChE,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE5C,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CACtC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,gBAAgB,CAAC,IAAI,CACtD,CAAC;YAEF,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,0EAA0E;YAC1E,0EAA0E;YAC1E,wEAAwE;YACxE,wEAAwE;YACxE,yEAAyE;YACzE,0EAA0E;YAC1E,qEAAqE;YACrE,0EAA0E;YAC1E,kBAAkB;YAClB,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACnD,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CACxC,CAAC;YAEF,MAAM,aAAa,GAAa,EAAE,CAAC;YAEnC,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;gBAC/C,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;gBAExC,kEAAkE;gBAClE,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;oBAClC,SAAS;gBACX,CAAC;gBAED,IAAI,UAAU,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU,EAAE,CAAC;oBAClD,OAAO,SAAS,CAAC;gBACnB,CAAC;gBAED,MAAM,QAAQ,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBAE/C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,OAAO,SAAS,CAAC;gBACnB,CAAC;gBAED,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;gBAExE,aAAa,CAAC,IAAI,CAAC;oBACjB,KAAK,EAAE,CAAC,KAAK,IAAI,QAAQ,CAAC,CAAC,KAAK;oBAChC,IAAI,EAAE,gBAAgB,CAAC,IAAI;iBAC5B,CAAC,CAAC;YACL,CAAC;YAED,uEAAuE;YACvE,0EAA0E;YAC1E,IAAI,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC5B,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,wEAAwE;YACxE,mEAAmE;YACnE,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/B,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;iBAClC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;iBACzC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEd,MAAM,WAAW,GAAG,YAAY,CAC9B,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,EAC3B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAChB,aAAa,CACd,CAAC;YAEF,MAAM,SAAS,GAAG,eAAe,CAC/B,UAAU,EAAE,oEAAoE;YAC/E,IAAI,CAAC,MAAoC,CAAC,MAAM,CAClD,CAAC;YAEF,yEAAyE;YACzE,yEAAyE;YACzE,0BAA0B;YAC1B,MAAM,QAAQ,GACZ,WAAW,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;gBACvC,OAAO,CAAC,IAAI,KAAK,cAAc,CAAC,kBAAkB;gBAChD,CAAC,CAAC,IAAI,WAAW,GAAG;gBACpB,CAAC,CAAC,WAAW,CAAC;YAElB,OAAO,QAAQ,SAAS,MAAM,aAAa,QAAQ,QAAQ,KAAK,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC;QACvG,CAAC,CAAC;QAEF;;;;;WAKG;QACH,MAAM,YAAY,GAAG;QACnB,8EAA8E;QAC9E,QAAwE,EAClC,EAAE;YACxC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;YAEnD,IACE,YAAY,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU;gBAC/C,UAAU,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU,EAC7C,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE5C,MAAM,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAC1C,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CAClD,CAAC;YAEF,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CACxC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAChD,CAAC;YAEF,IAAI,eAAe,KAAK,SAAS,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBACjE,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,IAAI,eAAe,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,OAAO,aAAa,CAAC,UAAU,CAAC,GAAG,CACjC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAA2B,CACrD,CAAC;QACJ,CAAC,CAAC;QAEF,OAAO;YACL,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE;gBACvB,IACE,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,gBAAgB;oBACpD,IAAI,CAAC,MAAM,CAAC,QAAQ;oBACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU,EACvD,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAE7C,oEAAoE;gBACpE,sCAAsC;gBACtC,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAClC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CACrC,CAAC;gBAEF,IAAI,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;oBACpC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC7C,CAAC;gBAED,MAAM,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;gBAE3C,IACE,QAAQ,KAAK,SAAS;oBACtB,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,uBAAuB;wBACvD,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,kBAAkB,CAAC,EACtD,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,QAAQ,UAAU,EAAE,CAAC;oBACnB,KAAK,KAAK,EAAE,CAAC;wBACX,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACpB,MAAM;wBACR,CAAC;wBAED,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;wBAE1C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;4BAC7B,MAAM;wBACR,CAAC;wBAED,cAAc,CAAC,IAAI,CAAC;4BAClB,IAAI,EAAE,IAAI;4BACV,SAAS;4BACT,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,UAAU;yBACX,CAAC,CAAC;wBAEH,MAAM;oBACR,CAAC;oBAED,KAAK,QAAQ,EAAE,CAAC;wBACd,mEAAmE;wBACnE,8DAA8D;wBAC9D,mBAAmB;wBACnB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC5D,MAAM;wBACR,CAAC;wBAED,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;wBAEvB,MAAM,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;wBAE9C,iBAAiB,CAAC,IAAI,CAAC;4BACrB,IAAI,EAAE,IAAI;4BACV,WAAW,EACT,OAAO,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS;gCACjD,CAAC,CAAC,SAAS;gCACX,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC;yBAChE,CAAC,CAAC;wBAEH,MAAM;oBACR,CAAC;oBAED;wBACE,MAAM;gBACV,CAAC;YACH,CAAC;YAED,uEAAuE;YACvE,2EAA2E;YAC3E,mBAAmB;YACnB,cAAc,EAAE,GAAG,EAAE;gBACnB,MAAM,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBAEpD,KAAK,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,iBAAiB,EAAE,CAAC;oBACtD,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;oBAExB,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,IAAI;wBACV,SAAS,EAAE,yBAAyB;wBACpC,GAAG,EACD,WAAW,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS;4BAC5C,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;gCACT,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;gCACnB,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,SAAS,IAAI,WAAW,EAAE,CAAC;6BAC3D;qBACR,CAAC,CAAC;gBACL,CAAC;gBAED,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;oBACvC,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAC7B,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,SAAS;wBACvC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;wBACpC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACjC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACrC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CACzB,CACF,CACJ,CAAC;oBAEF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;wBAC1B,SAAS;oBACX,CAAC;oBAED,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,SAAS,CAAC,IAAI;wBACpB,SAAS,EAAE,qBAAqB;wBAChC,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,EAAE;qBACrC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACO,CAAC;AAEX;;;;GAIG;AACH,MAAM,iBAAiB,GAAG;AACxB,8EAA8E;AAC9E,UAA+B,EACM,EAAE;IACvC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAEjC,IACE,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,gBAAgB;QAC/C,MAAM,CAAC,MAAM,KAAK,UAAU;QAC5B,MAAM,CAAC,QAAQ;QACf,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU;QAClD,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,EAC7B,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;IAE3B,IACE,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,cAAc;QAC3C,IAAI,CAAC,MAAM,KAAK,MAAM;QACtB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,EAC1C,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;IAElC,4DAA4D;IAC5D,OAAO,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,eAAe;QACrD,QAAQ,CAAC,QAAQ,KAAK,GAAG;QACzB,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,OAAO;QACjD,QAAQ,CAAC,QAAQ,CAAC,KAAK,KAAK,CAAC;QAC7B,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,kBAAkB,GAAG;AACzB,8EAA8E;AAC9E,IAA6B,EACW,EAAE;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAE3B,OAAO,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,iBAAiB;QACrD,MAAM,CAAC,QAAQ,KAAK,IAAI;QACxB,MAAM,CAAC,IAAI,KAAK,IAAI;QACpB,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC,CAAC;AAEF,+DAA+D;AAC/D,MAAM,QAAQ,GAAG,CAAC,OAA0B,EAAW,EAAE,CACvD,OAAO;KACJ,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC3C,IAAI,CACH,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CACxB,KAAK,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CACpE,CAAC;AAEN;;;GAGG;AACH,MAAM,YAAY,GAAG,CACnB,IAAY,EACZ,MAAc,EACd,OAA0B,EAClB,EAAE,CACV,OAAO;KACJ,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC3C,MAAM,CACL,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CACnB,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,EAC3G,IAAI,CACL,CAAC;AAEN;;;GAGG;AACH,MAAM,QAAQ,GAAG;AACf,8EAA8E;AAC9E,KAAoB;AACpB,8EAA8E;AAC9E,KAAoB,EACX,EAAE,CACX,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAEvE;;;;;GAKG;AACH,MAAM,uBAAuB,GAAG;AAC9B,8EAA8E;AAC9E,QAAwE,EAC/D,EAAE;IACX,MAAM,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;IAE3C,IAAI,gBAAgB,EAAE,IAAI,KAAK,cAAc,CAAC,UAAU,EAAE,CAAC;QACzD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;IAE1B,MAAM,QAAQ,GACZ,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,eAAe;QAC1C,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,cAAc;YACzC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,gBAAgB;YACpD,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ;YACrB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU;YACvD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU;YAC1C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YACnB,CAAC,CAAC,SAAS,CAAC;IAElB,MAAM,MAAM,GACV,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI;QACzC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,gBAAgB,CACd,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,aAAa;YAC5C,CAAC,CAAC,QAAQ,CAAC,QAAQ;YACnB,CAAC,CAAC,QAAQ,CACb,CAAC;IAER,OAAO,CACL,MAAM,EAAE,IAAI,KAAK,cAAc,CAAC,UAAU;QAC1C,MAAM,CAAC,IAAI,KAAK,gBAAgB,CAAC,IAAI,CACtC,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,cAAc,GAAG;AACrB,8EAA8E;AAC9E,QAAwE,EAC9C,EAAE;IAC5B,MAAM,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;IAE3C,IAAI,gBAAgB,EAAE,IAAI,KAAK,cAAc,CAAC,UAAU,EAAE,CAAC;QACzD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;IAE1B,2EAA2E;IAC3E,gCAAgC;IAChC,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,eAAe,EAAE,CAAC;QACjD,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9C,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QAExC,MAAM,YAAY,GAChB,MAAM,EAAE,IAAI,KAAK,cAAc,CAAC,aAAa;YAC3C,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC;YACnC,CAAC,CAAC,SAAS,CAAC;QAEhB,OAAO,OAAO,KAAK,IAAI;YACrB,OAAO,CAAC,IAAI,KAAK,cAAc,CAAC,aAAa;YAC7C,YAAY,EAAE,IAAI,KAAK,cAAc,CAAC,UAAU;YAChD,YAAY,CAAC,IAAI,KAAK,gBAAgB,CAAC,IAAI;YAC3C,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,EAAE,gBAAgB,EAAE,cAAc,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;IAClE,CAAC;IAED,0EAA0E;IAC1E,sCAAsC;IACtC,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,cAAc,EAAE,CAAC;QAChD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAExB,IACE,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,gBAAgB;YAC/C,MAAM,CAAC,QAAQ;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU;YAClD,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU;YACnC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,EAC1C,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;QAEhD,MAAM,MAAM,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAE/C,OAAO,OAAO,CAAC,IAAI,KAAK,cAAc,CAAC,aAAa;YAClD,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU;YACzC,MAAM,CAAC,IAAI,KAAK,gBAAgB,CAAC,IAAI;YACrC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC5D,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"prefer-arr-scan.mjs","sourceRoot":"","sources":["../../src/rules/prefer-arr-scan.mts"],"names":[],"mappings":"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"}
|
|
@@ -186,8 +186,13 @@ checker,
|
|
|
186
186
|
|
|
187
187
|
type) => {
|
|
188
188
|
const resolved = resolveConstraint(checker, type);
|
|
189
|
-
|
|
190
|
-
|
|
189
|
+
if (resolved.isUnion()) {
|
|
190
|
+
return resolved.types.every((t) => isPrimitiveType(checker, t));
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
return resolved.isIntersection()
|
|
195
|
+
? resolved.types.some((t) => isPrimitiveType(checker, t))
|
|
191
196
|
: (resolved.flags & primitiveTypeFlags) !== 0;
|
|
192
197
|
};
|
|
193
198
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefer-arr-uniq.mjs","sourceRoot":"","sources":["../../src/rules/prefer-arr-uniq.mts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"prefer-arr-uniq.mjs","sourceRoot":"","sources":["../../src/rules/prefer-arr-uniq.mts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eslint-plugin-ts-data-forge",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.9",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "ESLint rules that steer code toward ts-data-forge idioms.",
|
|
6
6
|
"keywords": [
|
|
@@ -35,21 +35,21 @@
|
|
|
35
35
|
],
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"@typescript-eslint/utils": "^8.72.0",
|
|
38
|
-
"eslint-rule-forge": "^0.5.
|
|
39
|
-
"ts-data-forge": "14.
|
|
38
|
+
"eslint-rule-forge": "^0.5.1",
|
|
39
|
+
"ts-data-forge": "14.11.0",
|
|
40
40
|
"ts-type-forge": "~9.2.2"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@typescript-eslint/parser": "8.72.0",
|
|
44
44
|
"@typescript-eslint/rule-tester": "8.72.0",
|
|
45
45
|
"dedent": "1.7.2",
|
|
46
|
-
"eslint-config-typed": "7.
|
|
47
|
-
"eslint-plugin-ts-fortress": "1.3.
|
|
48
|
-
"eslint-plugin-ts-type-forge": "0.8.
|
|
46
|
+
"eslint-config-typed": "7.4.0",
|
|
47
|
+
"eslint-plugin-ts-fortress": "1.3.13",
|
|
48
|
+
"eslint-plugin-ts-type-forge": "0.8.18",
|
|
49
49
|
"prettier": "3.9.10",
|
|
50
50
|
"prettier-plugin-organize-imports": "4.3.0",
|
|
51
51
|
"prettier-plugin-packagejson": "3.0.2",
|
|
52
|
-
"ts-repo-utils": "10.7.
|
|
52
|
+
"ts-repo-utils": "10.7.2"
|
|
53
53
|
},
|
|
54
54
|
"peerDependencies": {
|
|
55
55
|
"eslint": ">=9.0.0",
|
|
@@ -248,6 +248,42 @@ describe('prefer-arr-is-non-empty and the import it adds', () => {
|
|
|
248
248
|
output: null,
|
|
249
249
|
errors: [{ messageId: 'useIsNonEmpty' }],
|
|
250
250
|
},
|
|
251
|
+
{
|
|
252
|
+
name: 'a type parameter of the name does not take the value',
|
|
253
|
+
code: dedent`
|
|
254
|
+
declare const xs: readonly number[];
|
|
255
|
+
function f<Arr>() {
|
|
256
|
+
return xs.length > 0;
|
|
257
|
+
}
|
|
258
|
+
`,
|
|
259
|
+
output: dedent`
|
|
260
|
+
import { Arr } from 'ts-data-forge';
|
|
261
|
+
declare const xs: readonly number[];
|
|
262
|
+
function f<Arr>() {
|
|
263
|
+
return Arr.isNonEmpty(xs);
|
|
264
|
+
}
|
|
265
|
+
`,
|
|
266
|
+
errors: [{ messageId: 'useIsNonEmpty' }],
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
name: 'a local type alias of the name does not take the value',
|
|
270
|
+
code: dedent`
|
|
271
|
+
declare const xs: readonly number[];
|
|
272
|
+
function f() {
|
|
273
|
+
type Arr = number;
|
|
274
|
+
return xs.length > 0;
|
|
275
|
+
}
|
|
276
|
+
`,
|
|
277
|
+
output: dedent`
|
|
278
|
+
import { Arr } from 'ts-data-forge';
|
|
279
|
+
declare const xs: readonly number[];
|
|
280
|
+
function f() {
|
|
281
|
+
type Arr = number;
|
|
282
|
+
return Arr.isNonEmpty(xs);
|
|
283
|
+
}
|
|
284
|
+
`,
|
|
285
|
+
errors: [{ messageId: 'useIsNonEmpty' }],
|
|
286
|
+
},
|
|
251
287
|
{
|
|
252
288
|
name: 'each fix adds the import it needs, one per pass',
|
|
253
289
|
code: dedent`
|
|
@@ -648,25 +648,26 @@ const appendsToItsAccumulator = (
|
|
|
648
648
|
|
|
649
649
|
const { body } = callback;
|
|
650
650
|
|
|
651
|
-
|
|
651
|
+
// In an array literal only `...acc` copies the accumulator; a bare `acc`
|
|
652
|
+
// element, as in `[acc, x]`, nests it and costs nothing per step. Likewise
|
|
653
|
+
// `Arr.toPushed(acc, x)` copies it, while the curried `Arr.toPushed(acc)`
|
|
654
|
+
// takes it as the value to push.
|
|
655
|
+
const copied =
|
|
652
656
|
body.type === AST_NODE_TYPES.ArrayExpression
|
|
653
|
-
? body.elements[0]
|
|
657
|
+
? body.elements[0]?.type === AST_NODE_TYPES.SpreadElement
|
|
658
|
+
? body.elements[0].argument
|
|
659
|
+
: undefined
|
|
654
660
|
: body.type === AST_NODE_TYPES.CallExpression &&
|
|
655
661
|
body.callee.type === AST_NODE_TYPES.MemberExpression &&
|
|
656
662
|
!body.callee.computed &&
|
|
657
663
|
body.callee.property.type === AST_NODE_TYPES.Identifier &&
|
|
658
|
-
body.callee.property.name === 'toPushed'
|
|
664
|
+
body.callee.property.name === 'toPushed' &&
|
|
665
|
+
body.arguments.length >= 2 &&
|
|
666
|
+
body.arguments[0]?.type !== AST_NODE_TYPES.SpreadElement
|
|
659
667
|
? body.arguments[0]
|
|
660
668
|
: undefined;
|
|
661
669
|
|
|
662
|
-
const target =
|
|
663
|
-
spelling === undefined || spelling === null
|
|
664
|
-
? undefined
|
|
665
|
-
: skipTypeWrappers(
|
|
666
|
-
spelling.type === AST_NODE_TYPES.SpreadElement
|
|
667
|
-
? spelling.argument
|
|
668
|
-
: spelling,
|
|
669
|
-
);
|
|
670
|
+
const target = copied === undefined ? undefined : skipTypeWrappers(copied);
|
|
670
671
|
|
|
671
672
|
return (
|
|
672
673
|
target?.type === AST_NODE_TYPES.Identifier &&
|
|
@@ -90,6 +90,23 @@ describe('prefer-arr-scan', () => {
|
|
|
90
90
|
const ys = xs.reduce<readonly number[]>((acc, x) => [...seed, x], []);
|
|
91
91
|
`,
|
|
92
92
|
},
|
|
93
|
+
{
|
|
94
|
+
name: 'reduce nesting its accumulator rather than spreading it',
|
|
95
|
+
code: dedent`
|
|
96
|
+
type Nested = readonly [Nested, number] | undefined;
|
|
97
|
+
declare const xs: readonly number[];
|
|
98
|
+
declare const seed: Nested;
|
|
99
|
+
const ys = xs.reduce<Nested>((acc, x) => [acc, x], seed);
|
|
100
|
+
`,
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
name: 'curried toPushed taking the accumulator as the value to push',
|
|
104
|
+
code: dedent`
|
|
105
|
+
import { Arr } from 'ts-data-forge';
|
|
106
|
+
declare const xs: readonly number[];
|
|
107
|
+
const f = xs.reduce<unknown>((acc) => Arr.toPushed(acc), undefined);
|
|
108
|
+
`,
|
|
109
|
+
},
|
|
93
110
|
],
|
|
94
111
|
invalid: [
|
|
95
112
|
{
|
|
@@ -264,8 +264,14 @@ const isPrimitiveType = (
|
|
|
264
264
|
): boolean => {
|
|
265
265
|
const resolved = resolveConstraint(checker, type);
|
|
266
266
|
|
|
267
|
-
|
|
268
|
-
|
|
267
|
+
if (resolved.isUnion()) {
|
|
268
|
+
return resolved.types.every((t) => isPrimitiveType(checker, t));
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
// A branded primitive (`Int`, `string & Readonly<{ brand: 'Id' }>`): one
|
|
272
|
+
// primitive member makes the whole a primitive, as at the array level below.
|
|
273
|
+
return resolved.isIntersection()
|
|
274
|
+
? resolved.types.some((t) => isPrimitiveType(checker, t))
|
|
269
275
|
: (resolved.flags & primitiveTypeFlags) !== 0;
|
|
270
276
|
};
|
|
271
277
|
|
|
@@ -36,6 +36,13 @@ describe('prefer-arr-uniq', () => {
|
|
|
36
36
|
const zs = [...new Set(xs)];
|
|
37
37
|
`,
|
|
38
38
|
},
|
|
39
|
+
{
|
|
40
|
+
name: 'ignores an array of intersections of objects',
|
|
41
|
+
code: dedent`
|
|
42
|
+
declare const xs: readonly (Readonly<{ a: 1 }> & Readonly<{ b: 2 }>)[];
|
|
43
|
+
const ys = Array.from(new Set(xs));
|
|
44
|
+
`,
|
|
45
|
+
},
|
|
39
46
|
{
|
|
40
47
|
name: 'ignores an array of unions including objects',
|
|
41
48
|
code: dedent`
|
|
@@ -265,6 +272,36 @@ describe('prefer-arr-uniq', () => {
|
|
|
265
272
|
`,
|
|
266
273
|
errors: [{ messageId: 'useArrUniq' }],
|
|
267
274
|
},
|
|
275
|
+
{
|
|
276
|
+
name: 'accepts an array of branded numbers',
|
|
277
|
+
code: dedent`
|
|
278
|
+
type Int = number & Readonly<{ 'Int': true }>;
|
|
279
|
+
declare const xs: readonly Int[];
|
|
280
|
+
const ys: readonly Int[] = Array.from(new Set(xs));
|
|
281
|
+
`,
|
|
282
|
+
output: dedent`
|
|
283
|
+
import { Arr } from 'ts-data-forge';
|
|
284
|
+
type Int = number & Readonly<{ 'Int': true }>;
|
|
285
|
+
declare const xs: readonly Int[];
|
|
286
|
+
const ys: readonly Int[] = Arr.uniq(xs);
|
|
287
|
+
`,
|
|
288
|
+
errors: [{ messageId: 'useArrUniq' }],
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
name: 'accepts an array of branded strings',
|
|
292
|
+
code: dedent`
|
|
293
|
+
type Id = string & Readonly<{ brand: 'Id' }>;
|
|
294
|
+
declare const xs: readonly Id[];
|
|
295
|
+
const ys: readonly Id[] = [...new Set(xs)];
|
|
296
|
+
`,
|
|
297
|
+
output: dedent`
|
|
298
|
+
import { Arr } from 'ts-data-forge';
|
|
299
|
+
type Id = string & Readonly<{ brand: 'Id' }>;
|
|
300
|
+
declare const xs: readonly Id[];
|
|
301
|
+
const ys: readonly Id[] = Arr.uniq(xs);
|
|
302
|
+
`,
|
|
303
|
+
errors: [{ messageId: 'useArrUniq' }],
|
|
304
|
+
},
|
|
268
305
|
{
|
|
269
306
|
name: 'accepts a readonly array parameter',
|
|
270
307
|
code: dedent`
|