eslint-plugin-ts-data-forge 0.8.5 → 0.9.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/README.md +20 -19
- package/dist/plugin.d.mts +2 -0
- package/dist/plugin.d.mts.map +1 -1
- package/dist/plugin.mjs +1 -0
- package/dist/plugin.mjs.map +1 -1
- package/dist/rule-types.d.mts +16 -1
- package/dist/rule-types.d.mts.map +1 -1
- package/dist/rule-types.mjs.map +1 -1
- package/dist/rules/ast-utils.d.mts +21 -34
- package/dist/rules/ast-utils.d.mts.map +1 -1
- package/dist/rules/ast-utils.mjs +53 -58
- package/dist/rules/ast-utils.mjs.map +1 -1
- package/dist/rules/constants.d.mts +2 -0
- package/dist/rules/constants.d.mts.map +1 -1
- package/dist/rules/constants.mjs +9 -0
- package/dist/rules/constants.mjs.map +1 -1
- package/dist/rules/mutable-result.d.mts +10 -0
- package/dist/rules/mutable-result.d.mts.map +1 -0
- package/dist/rules/mutable-result.mjs +145 -0
- package/dist/rules/mutable-result.mjs.map +1 -0
- package/dist/rules/no-unnecessary-type-guard.d.mts.map +1 -1
- package/dist/rules/no-unnecessary-type-guard.mjs +6 -6
- package/dist/rules/no-unnecessary-type-guard.mjs.map +1 -1
- package/dist/rules/prefer-arr-generate.d.mts +57 -0
- package/dist/rules/prefer-arr-generate.d.mts.map +1 -0
- package/dist/rules/prefer-arr-generate.mjs +588 -0
- package/dist/rules/prefer-arr-generate.mjs.map +1 -0
- package/dist/rules/prefer-arr-is-array.d.mts.map +1 -1
- package/dist/rules/prefer-arr-is-array.mjs +7 -5
- package/dist/rules/prefer-arr-is-array.mjs.map +1 -1
- package/dist/rules/prefer-arr-is-bounded-length-array.d.mts.map +1 -1
- package/dist/rules/prefer-arr-is-bounded-length-array.mjs +9 -6
- package/dist/rules/prefer-arr-is-bounded-length-array.mjs.map +1 -1
- package/dist/rules/prefer-arr-is-fixed-length-array.d.mts.map +1 -1
- package/dist/rules/prefer-arr-is-fixed-length-array.mjs +9 -6
- package/dist/rules/prefer-arr-is-fixed-length-array.mjs.map +1 -1
- package/dist/rules/prefer-arr-is-max-length-array.d.mts.map +1 -1
- package/dist/rules/prefer-arr-is-max-length-array.mjs +9 -6
- package/dist/rules/prefer-arr-is-max-length-array.mjs.map +1 -1
- package/dist/rules/prefer-arr-is-min-length-array.d.mts.map +1 -1
- package/dist/rules/prefer-arr-is-min-length-array.mjs +9 -6
- package/dist/rules/prefer-arr-is-min-length-array.mjs.map +1 -1
- package/dist/rules/prefer-arr-is-non-empty.d.mts.map +1 -1
- package/dist/rules/prefer-arr-is-non-empty.mjs +9 -6
- package/dist/rules/prefer-arr-is-non-empty.mjs.map +1 -1
- package/dist/rules/prefer-arr-scan.d.mts.map +1 -1
- package/dist/rules/prefer-arr-scan.mjs +8 -11
- package/dist/rules/prefer-arr-scan.mjs.map +1 -1
- package/dist/rules/prefer-arr-sum.d.mts.map +1 -1
- package/dist/rules/prefer-arr-sum.mjs +8 -6
- package/dist/rules/prefer-arr-sum.mjs.map +1 -1
- package/dist/rules/prefer-arr-uniq.d.mts.map +1 -1
- package/dist/rules/prefer-arr-uniq.mjs +12 -166
- package/dist/rules/prefer-arr-uniq.mjs.map +1 -1
- package/dist/rules/prefer-as-int.d.mts.map +1 -1
- package/dist/rules/prefer-as-int.mjs +6 -8
- package/dist/rules/prefer-as-int.mjs.map +1 -1
- package/dist/rules/prefer-canonical-array-slicing.d.mts.map +1 -1
- package/dist/rules/prefer-canonical-array-slicing.mjs +57 -34
- package/dist/rules/prefer-canonical-array-slicing.mjs.map +1 -1
- package/dist/rules/prefer-canonical-length-cast.d.mts.map +1 -1
- package/dist/rules/prefer-canonical-length-cast.mjs +3 -3
- package/dist/rules/prefer-canonical-length-cast.mjs.map +1 -1
- package/dist/rules/prefer-canonical-length-guard.d.mts.map +1 -1
- package/dist/rules/prefer-canonical-length-guard.mjs +4 -4
- package/dist/rules/prefer-canonical-length-guard.mjs.map +1 -1
- package/dist/rules/prefer-comparison-over-nullish-guard.d.mts.map +1 -1
- package/dist/rules/prefer-comparison-over-nullish-guard.mjs +3 -2
- package/dist/rules/prefer-comparison-over-nullish-guard.mjs.map +1 -1
- package/dist/rules/prefer-is-non-null-object.d.mts.map +1 -1
- package/dist/rules/prefer-is-non-null-object.mjs +113 -43
- package/dist/rules/prefer-is-non-null-object.mjs.map +1 -1
- package/dist/rules/prefer-is-record-and-has-key.d.mts.map +1 -1
- package/dist/rules/prefer-is-record-and-has-key.mjs +105 -48
- package/dist/rules/prefer-is-record-and-has-key.mjs.map +1 -1
- package/dist/rules/prefer-num-safe-parse-float.d.mts.map +1 -1
- package/dist/rules/prefer-num-safe-parse-float.mjs +6 -6
- package/dist/rules/prefer-num-safe-parse-float.mjs.map +1 -1
- package/dist/rules/prefer-num-safe-parse-int.d.mts.map +1 -1
- package/dist/rules/prefer-num-safe-parse-int.mjs +6 -6
- package/dist/rules/prefer-num-safe-parse-int.mjs.map +1 -1
- package/dist/rules/prefer-obj-over-entries-round-trip.d.mts.map +1 -1
- package/dist/rules/prefer-obj-over-entries-round-trip.mjs +9 -12
- package/dist/rules/prefer-obj-over-entries-round-trip.mjs.map +1 -1
- package/dist/rules/prefer-range-for-loop.d.mts.map +1 -1
- package/dist/rules/prefer-range-for-loop.mjs +104 -23
- package/dist/rules/prefer-range-for-loop.mjs.map +1 -1
- package/dist/rules/rules.d.mts +1 -0
- package/dist/rules/rules.d.mts.map +1 -1
- package/dist/rules/rules.mjs +2 -0
- package/dist/rules/rules.mjs.map +1 -1
- package/package.json +11 -10
- package/src/plugin.mts +1 -0
- package/src/rule-types.mts +17 -1
- package/src/rules/ast-utils.mts +73 -80
- package/src/rules/constants.mts +12 -0
- package/src/rules/mutable-result.mts +204 -0
- package/src/rules/no-unnecessary-type-guard.mts +14 -10
- package/src/rules/prefer-arr-generate.mts +918 -0
- package/src/rules/prefer-arr-generate.test.mts +967 -0
- package/src/rules/prefer-arr-is-array.mts +14 -7
- package/src/rules/prefer-arr-is-array.test.mts +14 -0
- package/src/rules/prefer-arr-is-bounded-length-array.mts +16 -10
- package/src/rules/prefer-arr-is-bounded-length-array.test.mts +19 -0
- package/src/rules/prefer-arr-is-fixed-length-array.mts +17 -11
- package/src/rules/prefer-arr-is-max-length-array.mts +17 -11
- package/src/rules/prefer-arr-is-max-length-array.test.mts +8 -0
- package/src/rules/prefer-arr-is-min-length-array.mts +17 -11
- package/src/rules/prefer-arr-is-min-length-array.test.mts +8 -0
- package/src/rules/prefer-arr-is-non-empty.mts +16 -13
- package/src/rules/prefer-arr-scan.mts +24 -19
- package/src/rules/prefer-arr-sum.mts +18 -14
- package/src/rules/prefer-arr-uniq.mts +25 -234
- package/src/rules/prefer-as-int.mts +19 -12
- package/src/rules/prefer-canonical-array-slicing.mts +79 -52
- package/src/rules/prefer-canonical-array-slicing.test.mts +55 -0
- package/src/rules/prefer-canonical-length-cast.mts +7 -3
- package/src/rules/prefer-canonical-length-guard.mts +9 -4
- package/src/rules/prefer-comparison-over-nullish-guard.mts +3 -2
- package/src/rules/prefer-comparison-over-nullish-guard.test.mts +16 -0
- package/src/rules/prefer-is-non-null-object.mts +171 -64
- package/src/rules/prefer-is-non-null-object.test.mts +138 -0
- package/src/rules/prefer-is-record-and-has-key.mts +159 -74
- package/src/rules/prefer-is-record-and-has-key.test.mts +118 -23
- package/src/rules/prefer-num-safe-parse-float.mts +15 -10
- package/src/rules/prefer-num-safe-parse-int.mts +15 -13
- package/src/rules/prefer-obj-over-entries-round-trip.mts +19 -22
- package/src/rules/prefer-range-for-loop.mts +157 -31
- package/src/rules/prefer-range-for-loop.test.mts +127 -5
- package/src/rules/rules.mts +2 -0
- package/dist/rules/import-utils.d.mts +0 -30
- package/dist/rules/import-utils.d.mts.map +0 -1
- package/dist/rules/import-utils.mjs +0 -98
- package/dist/rules/import-utils.mjs.map +0 -1
- package/src/rules/import-utils.mts +0 -175
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefer-is-record-and-has-key.mjs","sourceRoot":"","sources":["../../src/rules/prefer-is-record-and-has-key.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,GAGf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"prefer-is-record-and-has-key.mjs","sourceRoot":"","sources":["../../src/rules/prefer-is-record-and-has-key.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,GAGf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAMvD,MAAM,CAAC,MAAM,uBAAuB,GAClC;IACE,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,+GAA+G;SAClH;QACD,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACR,oBAAoB,EAClB,6GAA6G;YAC/G,SAAS,EACP,oFAAoF;SACvF;KACF;IAED,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;QAClB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAEtC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC;QAE/B,MAAM,kBAAkB,GAAG,qBAAqB,CAC9C,OAAO,EACP,oBAAoB,CACrB,CAAC;QAEF;;;;;;;;WAQG;QACH,MAAM,aAAa,GAAG;QACpB,8EAA8E;QAC9E,UAA+B,EACtB,EAAE,CACX,qBAAqB,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAC9D,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,CACnC,CAAC;QAEJ;;;;;;WAMG;QACH,MAAM,UAAU,GAAG;QACjB,8EAA8E;QAC9E,UAA+B,EACtB,EAAE,CACX,UAAU,CAAC,cAAc,EAAE,OAAO,IAAI,IAAI;YAC1C,CAAC,qBAAqB,CACpB,UAAU,EACV,UAAU,EACV,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAClD,CAAC;QAEJ,MAAM,cAAc,GAId,EAAE,CAAC;QAET,OAAO;YACL,iCAAiC;YACjC,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE;gBACvB,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAE7C,IACE,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,gBAAgB;oBAC/C,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC;oBAC3C,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU;oBAClD,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,EACjC,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,2CAA2C;gBAC3C,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAChC,OAAO;gBACT,CAAC;gBAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAEjC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAEjC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACjD,OAAO;gBACT,CAAC;gBAED,mEAAmE;gBACnE,IACE,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,aAAa;oBAC5C,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,aAAa;oBAC5C,UAAU,CAAC,MAAM,CAAC,EAClB,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,cAAc,CAAC,IAAI,CAAC;oBAClB,IAAI;oBACJ,aAAa,EAAE,MAAM;oBACrB,aAAa,EAAE,MAAM;iBACtB,CAAC,CAAC;YACL,CAAC;YAED,oBAAoB;YACpB,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;oBAC3B,OAAO;gBACT,CAAC;gBAED,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC;gBAEhC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC;gBAEjC,yEAAyE;gBACzE,IACE,aAAa,CAAC,IAAI,KAAK,cAAc,CAAC,iBAAiB;oBACvD,UAAU,CAAC,aAAa,CAAC,EACzB,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,cAAc,CAAC,IAAI,CAAC;oBAClB,IAAI;oBACJ,aAAa;oBACb,aAAa;iBACd,CAAC,CAAC;YACL,CAAC;YAED,cAAc,EAAE,GAAG,EAAE;gBACnB,MAAM,YAAY,GAAG,eAAe,CAAC,kBAAkB,CAAC,CAAC;gBAEzD,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;oBAC5C,kEAAkE;oBAClE,uDAAuD;oBACvD,MAAM,aAAa,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;oBAE1D,OAAO;wBACL,GAAG,KAAK;wBACR,aAAa;wBACb,6DAA6D;wBAC7D,OAAO,EAAE,CAAC,aAAa,IAAI,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC;qBACjE,CAAC;gBACJ,CAAC,CAAC,CAAC;gBAEH,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;gBAElE,MAAM,YAAY,GAAsB,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC;oBAClE,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC;wBACE,GAAG,CAAC,eAAe,CAAC,IAAI,CACtB,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,aAAa,CACrC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC;4BACrC,CAAC,CAAC,CAAC,UAAU,CAAC;4BACd,CAAC,CAAC,EAAE,CAAC;wBACP,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;qBACvD,CAAC;gBAEN,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;gBAEzC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;oBAC/B,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,GACzD,OAAO,CAAC;oBAEV,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;oBAE3D,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;oBAE3D,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBAE9C,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,WAAW;wBAC/D,IAAI,EAAE;4BACJ,QAAQ,EAAE,YAAY;4BACtB,OAAO,EAAE,OAAO;4BAChB,OAAO,EAAE,OAAO;yBACjB;wBACD,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO;4BACnB,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;gCACR,MAAM,WAAW,GAAG,aAAa;oCAC/B,CAAC,CAAC,aAAa,OAAO,eAAe,OAAO,KAAK,OAAO,IAAI;oCAC5D,CAAC,CAAC,UAAU,OAAO,KAAK,OAAO,GAAG,CAAC;gCAErC,qDAAqD;gCACrD,kDAAkD;gCAClD,0DAA0D;gCAC1D,kBAAkB;gCAClB,MAAM,WAAW,GACf,OAAO,KAAK,aAAa,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;oCAClD,CAAC,CAAC,mBAAmB,CACjB,KAAK,EACL,OAAO,EACP,oBAAoB,EACpB,YAAY,CACb;oCACH,CAAC,CAAC,EAAE,CAAC;gCAET,OAAO;oCACL,GAAG,WAAW;oCACd,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC;iCACrC,CAAC;4BACJ,CAAC;qBACN,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;IACD,cAAc,EAAE,EAAE;CACV,CAAC;AAEb;;;GAGG;AACH,MAAM,gBAAgB,GAAG;AACvB,8EAA8E;AAC9E,OAAsB,EACb,EAAE;IACX,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAEvC,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU;QACvC,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,cAAc;QAC3C,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,gBAAgB;YAC5C,CAAC,IAAI,CAAC,QAAQ;YACd,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CACjC,CAAC;AACJ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,cAAc,GAAG;AACrB,8EAA8E;AAC9E,OAAuB;AACvB,8EAA8E;AAC9E,IAAa,EACJ,EAAE;IACX,IAAI,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,IACE,CAAC,IAAI,CAAC,KAAK;QACT,CAAC,EAAE,CAAC,SAAS,CAAC,aAAa;YACzB,EAAE,CAAC,SAAS,CAAC,aAAa;YAC1B,EAAE,CAAC,SAAS,CAAC,WAAW;YACxB,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC/B,CAAC,EACD,CAAC;QACD,MAAM,UAAU,GAAG,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAEzD,OAAO,UAAU,KAAK,SAAS,IAAI,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,mBAAmB,GAAG;AAC1B,8EAA8E;AAC9E,OAAuB;AACvB,8EAA8E;AAC9E,IAAa,EACJ,EAAE,CACX,IAAI,CAAC,OAAO,EAAE;IACZ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,SAAS;QACnE,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACrE,GAAG,CAAC,OAAO,CACT,OAAO,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,CAC9D;QACD,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;QAC1B,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefer-num-safe-parse-float.d.mts","sourceRoot":"","sources":["../../src/rules/prefer-num-safe-parse-float.mts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,QAAQ,EAEd,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"prefer-num-safe-parse-float.d.mts","sourceRoot":"","sources":["../../src/rules/prefer-num-safe-parse-float.mts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,QAAQ,EAEd,MAAM,0BAA0B,CAAC;AAWlC,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAE3B,KAAK,UAAU,GAAG,mBAAmB,CAAC;AAkBtC;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAqJjE,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AST_NODE_TYPES, } from '@typescript-eslint/utils';
|
|
2
|
+
import { buildNamedImportFix, getArgumentText, getImportDeclarations, getNamedImports, typeWrapperLayers, } from 'eslint-rule-forge';
|
|
2
3
|
import * as ts from 'typescript';
|
|
3
|
-
import {
|
|
4
|
-
import { buildImportFixes, getNamedImports, getTsDataForgeImport, } from './import-utils.mjs';
|
|
4
|
+
import { TS_DATA_FORGE_MODULE } from './constants.mjs';
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
@@ -39,7 +39,7 @@ export const preferNumSafeParseFloat = {
|
|
|
39
39
|
create: (context) => {
|
|
40
40
|
const sourceCode = context.sourceCode;
|
|
41
41
|
const program = sourceCode.ast;
|
|
42
|
-
const
|
|
42
|
+
const tsDataForgeImports = getImportDeclarations(program, TS_DATA_FORGE_MODULE);
|
|
43
43
|
const services = context.sourceCode.parserServices;
|
|
44
44
|
const mut_nodesToFix = [];
|
|
45
45
|
return {
|
|
@@ -96,10 +96,10 @@ export const preferNumSafeParseFloat = {
|
|
|
96
96
|
mut_nodesToFix.push({ node, argExpression: firstArg });
|
|
97
97
|
},
|
|
98
98
|
'Program:exit': () => {
|
|
99
|
-
const namedImports = getNamedImports(
|
|
99
|
+
const namedImports = getNamedImports(tsDataForgeImports);
|
|
100
100
|
const missingImports = ['Num', 'Result'].filter((name) => !namedImports.includes(name));
|
|
101
101
|
for (const [index, { node, argExpression },] of mut_nodesToFix.entries()) {
|
|
102
|
-
const argText =
|
|
102
|
+
const argText = getArgumentText(sourceCode, argExpression);
|
|
103
103
|
const originalText = sourceCode.getText(node);
|
|
104
104
|
context.report({
|
|
105
105
|
node,
|
|
@@ -111,7 +111,7 @@ export const preferNumSafeParseFloat = {
|
|
|
111
111
|
fix: (fixer) => {
|
|
112
112
|
const core = `Result.unwrapOkOr(Num.safeParseFloat(${argText}), Number.NaN)`;
|
|
113
113
|
const importFixes = index === 0 && missingImports.length > 0
|
|
114
|
-
?
|
|
114
|
+
? buildNamedImportFix(fixer, program, TS_DATA_FORGE_MODULE, missingImports)
|
|
115
115
|
: [];
|
|
116
116
|
return [...importFixes, fixer.replaceText(node, core)];
|
|
117
117
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefer-num-safe-parse-float.mjs","sourceRoot":"","sources":["../../src/rules/prefer-num-safe-parse-float.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,GAGf,MAAM,0BAA0B,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"prefer-num-safe-parse-float.mjs","sourceRoot":"","sources":["../../src/rules/prefer-num-safe-parse-float.mts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefer-num-safe-parse-int.d.mts","sourceRoot":"","sources":["../../src/rules/prefer-num-safe-parse-int.mts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,QAAQ,EAEd,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"prefer-num-safe-parse-int.d.mts","sourceRoot":"","sources":["../../src/rules/prefer-num-safe-parse-int.mts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,QAAQ,EAEd,MAAM,0BAA0B,CAAC;AAYlC,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAE3B,KAAK,UAAU,GAAG,iBAAiB,CAAC;AAkBpC;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAqJjE,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AST_NODE_TYPES, } from '@typescript-eslint/utils';
|
|
2
|
+
import { buildNamedImportFix, getArgumentText, getImportDeclarations, getNamedImports, skipTypeWrappers, typeWrapperLayers, } from 'eslint-rule-forge';
|
|
2
3
|
import * as ts from 'typescript';
|
|
3
|
-
import {
|
|
4
|
-
import { buildImportFixes, getNamedImports, getTsDataForgeImport, } from './import-utils.mjs';
|
|
4
|
+
import { TS_DATA_FORGE_MODULE } from './constants.mjs';
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
@@ -37,7 +37,7 @@ export const preferNumSafeParseInt = {
|
|
|
37
37
|
create: (context) => {
|
|
38
38
|
const sourceCode = context.sourceCode;
|
|
39
39
|
const program = sourceCode.ast;
|
|
40
|
-
const
|
|
40
|
+
const tsDataForgeImports = getImportDeclarations(program, TS_DATA_FORGE_MODULE);
|
|
41
41
|
const services = context.sourceCode.parserServices;
|
|
42
42
|
const mut_nodesToFix = [];
|
|
43
43
|
return {
|
|
@@ -94,10 +94,10 @@ export const preferNumSafeParseInt = {
|
|
|
94
94
|
mut_nodesToFix.push({ node, argExpression: firstArg });
|
|
95
95
|
},
|
|
96
96
|
'Program:exit': () => {
|
|
97
|
-
const namedImports = getNamedImports(
|
|
97
|
+
const namedImports = getNamedImports(tsDataForgeImports);
|
|
98
98
|
const missingImports = ['Num', 'Result'].filter((name) => !namedImports.includes(name));
|
|
99
99
|
for (const [index, { node, argExpression },] of mut_nodesToFix.entries()) {
|
|
100
|
-
const argText =
|
|
100
|
+
const argText = getArgumentText(sourceCode, argExpression);
|
|
101
101
|
const originalText = sourceCode.getText(node);
|
|
102
102
|
context.report({
|
|
103
103
|
node,
|
|
@@ -109,7 +109,7 @@ export const preferNumSafeParseInt = {
|
|
|
109
109
|
fix: (fixer) => {
|
|
110
110
|
const core = `Result.unwrapOkOr(Num.safeParseInt(${argText}), Number.NaN)`;
|
|
111
111
|
const importFixes = index === 0 && missingImports.length > 0
|
|
112
|
-
?
|
|
112
|
+
? buildNamedImportFix(fixer, program, TS_DATA_FORGE_MODULE, missingImports)
|
|
113
113
|
: [];
|
|
114
114
|
return [...importFixes, fixer.replaceText(node, core)];
|
|
115
115
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefer-num-safe-parse-int.mjs","sourceRoot":"","sources":["../../src/rules/prefer-num-safe-parse-int.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,GAGf,MAAM,0BAA0B,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"prefer-num-safe-parse-int.mjs","sourceRoot":"","sources":["../../src/rules/prefer-num-safe-parse-int.mts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefer-obj-over-entries-round-trip.d.mts","sourceRoot":"","sources":["../../src/rules/prefer-obj-over-entries-round-trip.mts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,QAAQ,EAEd,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"prefer-obj-over-entries-round-trip.d.mts","sourceRoot":"","sources":["../../src/rules/prefer-obj-over-entries-round-trip.mts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,QAAQ,EAEd,MAAM,0BAA0B,CAAC;AAclC,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAE3B,KAAK,UAAU,GAAG,cAAc,GAAG,iBAAiB,GAAG,WAAW,CAAC;AAgDnE,eAAO,MAAM,6BAA6B,EAAE,QAAQ,CAAC,UAAU,CAC7D,UAAU,EACV,OAAO,CAuJC,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AST_NODE_TYPES, } from '@typescript-eslint/utils';
|
|
2
|
+
import { buildNamedImportFix, getArgumentText, getImportDeclarations, getImportedLocalName, getNamedImports, } from 'eslint-rule-forge';
|
|
2
3
|
import { Arr } from 'ts-data-forge';
|
|
3
|
-
import {
|
|
4
|
+
import { TS_DATA_FORGE_MODULE } from './constants.mjs';
|
|
4
5
|
const MESSAGE_ID_OF = {
|
|
5
6
|
map: 'useObjMap',
|
|
6
7
|
filter: 'useObjFilter',
|
|
@@ -23,7 +24,7 @@ export const preferObjOverEntriesRoundTrip = {
|
|
|
23
24
|
create: (context) => {
|
|
24
25
|
const sourceCode = context.sourceCode;
|
|
25
26
|
const program = sourceCode.ast;
|
|
26
|
-
const
|
|
27
|
+
const tsDataForgeImports = getImportDeclarations(program, TS_DATA_FORGE_MODULE);
|
|
27
28
|
const mut_roundTrips = [];
|
|
28
29
|
|
|
29
30
|
|
|
@@ -54,7 +55,7 @@ export const preferObjOverEntriesRoundTrip = {
|
|
|
54
55
|
return arrowBodyText(sourceCode.getText(body.expression), body.expression);
|
|
55
56
|
}
|
|
56
57
|
const testText = conditionalTestText(sourceCode.getText(body.test), body.test);
|
|
57
|
-
const someText = `${optionalName}.some(${
|
|
58
|
+
const someText = `${optionalName}.some(${getArgumentText(sourceCode, body.kept)})`;
|
|
58
59
|
const noneText = `${optionalName}.none`;
|
|
59
60
|
return body.keepOnTrue
|
|
60
61
|
? `${testText} ? ${someText} : ${noneText}`
|
|
@@ -69,9 +70,9 @@ export const preferObjOverEntriesRoundTrip = {
|
|
|
69
70
|
mut_roundTrips.push({ node, roundTrip });
|
|
70
71
|
},
|
|
71
72
|
'Program:exit': () => {
|
|
72
|
-
const namedImports = getNamedImports(
|
|
73
|
-
const objName = getImportedLocalName(
|
|
74
|
-
const optionalName = getImportedLocalName(
|
|
73
|
+
const namedImports = getNamedImports(tsDataForgeImports);
|
|
74
|
+
const objName = getImportedLocalName(tsDataForgeImports, 'Obj') ?? 'Obj';
|
|
75
|
+
const optionalName = getImportedLocalName(tsDataForgeImports, 'Optional') ?? 'Optional';
|
|
75
76
|
const needsOptional = mut_roundTrips.some(({ roundTrip }) => roundTrip.body.kind === 'optional');
|
|
76
77
|
const missingImports = ['Obj', 'Optional'].filter((name) => (name !== 'Optional' || needsOptional) &&
|
|
77
78
|
!namedImports.includes(name));
|
|
@@ -82,10 +83,10 @@ export const preferObjOverEntriesRoundTrip = {
|
|
|
82
83
|
node,
|
|
83
84
|
messageId: MESSAGE_ID_OF[roundTrip.method],
|
|
84
85
|
fix: (fixer) => {
|
|
85
|
-
const recordText =
|
|
86
|
+
const recordText = getArgumentText(sourceCode, roundTrip.record);
|
|
86
87
|
const replacement = `${objName}.${roundTrip.method}(${recordText}, ${buildParams(roundTrip)} => ${buildCallbackBody(roundTrip, optionalName)})`;
|
|
87
88
|
const importFixes = index === 0 && missingImports.length > 0
|
|
88
|
-
?
|
|
89
|
+
? buildNamedImportFix(fixer, program, TS_DATA_FORGE_MODULE, missingImports)
|
|
89
90
|
: [];
|
|
90
91
|
return [...importFixes, fixer.replaceText(node, replacement)];
|
|
91
92
|
},
|
|
@@ -320,10 +321,6 @@ const NEEDS_PARENS_AS_TEST = new Set([
|
|
|
320
321
|
]);
|
|
321
322
|
const conditionalTestText = (text, node) => NEEDS_PARENS_AS_TEST.has(node.type) ? `(${text})` : text;
|
|
322
323
|
|
|
323
|
-
const argumentText = (text, node) => node.type === AST_NODE_TYPES.SequenceExpression
|
|
324
|
-
? `(${text})`
|
|
325
|
-
: text;
|
|
326
|
-
|
|
327
324
|
|
|
328
325
|
|
|
329
326
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefer-obj-over-entries-round-trip.mjs","sourceRoot":"","sources":["../../src/rules/prefer-obj-over-entries-round-trip.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"prefer-obj-over-entries-round-trip.mjs","sourceRoot":"","sources":["../../src/rules/prefer-obj-over-entries-round-trip.mts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefer-range-for-loop.d.mts","sourceRoot":"","sources":["../../src/rules/prefer-range-for-loop.mts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"prefer-range-for-loop.d.mts","sourceRoot":"","sources":["../../src/rules/prefer-range-for-loop.mts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,QAAQ,EAEd,MAAM,0BAA0B,CAAC;AAWlC,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAE3B,KAAK,UAAU,GAAG,iBAAiB,CAAC;AAEpC,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAqP9D,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { AST_NODE_TYPES, } from '@typescript-eslint/utils';
|
|
1
|
+
import { AST_NODE_TYPES, ASTUtils, } from '@typescript-eslint/utils';
|
|
2
|
+
import { buildNamedImportFix, getArgumentText, getImportDeclarations, getNamedImports, skipTypeWrappers, } from 'eslint-rule-forge';
|
|
2
3
|
import { Arr } from 'ts-data-forge';
|
|
3
|
-
import {
|
|
4
|
-
import { buildImportFixes, getNamedImports, getTsDataForgeImport, } from './import-utils.mjs';
|
|
4
|
+
import { TS_DATA_FORGE_MODULE } from './constants.mjs';
|
|
5
5
|
export const preferRangeForLoop = {
|
|
6
6
|
meta: {
|
|
7
7
|
type: 'suggestion',
|
|
@@ -17,7 +17,28 @@ export const preferRangeForLoop = {
|
|
|
17
17
|
create: (context) => {
|
|
18
18
|
const sourceCode = context.sourceCode;
|
|
19
19
|
const program = sourceCode.ast;
|
|
20
|
-
const
|
|
20
|
+
const tsDataForgeImports = getImportDeclarations(program, TS_DATA_FORGE_MODULE);
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
const isStableBound = (
|
|
28
|
+
|
|
29
|
+
wrapped) => {
|
|
30
|
+
const node = skipTypeWrappers(wrapped);
|
|
31
|
+
if (node.type === AST_NODE_TYPES.Literal) {
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
if (node.type !== AST_NODE_TYPES.Identifier) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
const variable = ASTUtils.findVariable(sourceCode.getScope(node), node.name);
|
|
38
|
+
return (variable !== null &&
|
|
39
|
+
variable.defs.length > 0 &&
|
|
40
|
+
variable.references.every((reference) => !reference.isWrite() || reference.init === true));
|
|
41
|
+
};
|
|
21
42
|
const mut_nodesToFix = [];
|
|
22
43
|
return {
|
|
23
44
|
ForStatement: (node) => {
|
|
@@ -35,6 +56,10 @@ export const preferRangeForLoop = {
|
|
|
35
56
|
const varName = declaration.id.name;
|
|
36
57
|
const beginExpr = declaration.init;
|
|
37
58
|
|
|
59
|
+
if (isNonIntegerNumberLiteral(beginExpr)) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
|
|
38
63
|
|
|
39
64
|
|
|
40
65
|
if (node.test?.type !== AST_NODE_TYPES.BinaryExpression ||
|
|
@@ -72,35 +97,54 @@ export const preferRangeForLoop = {
|
|
|
72
97
|
if (stepValue.type === AST_NODE_TYPES.Literal) {
|
|
73
98
|
const stepNum = stepValue.value;
|
|
74
99
|
|
|
75
|
-
if (typeof stepNum === 'number' &&
|
|
100
|
+
if (typeof stepNum === 'number' &&
|
|
101
|
+
Number.isSafeInteger(stepNum) &&
|
|
102
|
+
stepNum > 0) {
|
|
76
103
|
mut_step = stepNum === 1 ? undefined : stepNum.toString();
|
|
77
104
|
}
|
|
78
105
|
else {
|
|
79
106
|
return;
|
|
80
107
|
}
|
|
81
108
|
}
|
|
109
|
+
else if (isNegatedLiteral(stepValue)) {
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
82
115
|
else {
|
|
83
116
|
|
|
84
|
-
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
mut_step = getArgumentText(sourceCode, node.update.right);
|
|
85
120
|
}
|
|
86
121
|
}
|
|
87
122
|
else {
|
|
88
123
|
return;
|
|
89
124
|
}
|
|
90
|
-
|
|
91
|
-
|
|
125
|
+
|
|
126
|
+
if (isAssignedOutsideUpdate(sourceCode, declaration, node.update)) {
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
const beginText = getArgumentText(sourceCode, beginExpr);
|
|
130
|
+
const endText = getArgumentText(sourceCode, endExpr);
|
|
92
131
|
mut_nodesToFix.push({
|
|
93
132
|
node,
|
|
94
133
|
varName,
|
|
95
134
|
begin: beginText,
|
|
96
135
|
end: endText,
|
|
97
136
|
step: mut_step,
|
|
137
|
+
fixable: isStableBound(endExpr) &&
|
|
138
|
+
(node.update.type !== AST_NODE_TYPES.AssignmentExpression ||
|
|
139
|
+
isStableBound(node.update.right)),
|
|
98
140
|
});
|
|
99
141
|
},
|
|
100
142
|
'Program:exit': () => {
|
|
101
|
-
const namedImports = getNamedImports(
|
|
143
|
+
const namedImports = getNamedImports(tsDataForgeImports);
|
|
102
144
|
const hasRangeImport = namedImports.includes('range');
|
|
103
|
-
|
|
145
|
+
const importCarrier = mut_nodesToFix.find(({ fixable }) => fixable);
|
|
146
|
+
for (const entry of mut_nodesToFix) {
|
|
147
|
+
const { node, varName, begin, end, step } = entry;
|
|
104
148
|
context.report({
|
|
105
149
|
node: node.init ?? node,
|
|
106
150
|
messageId: 'useRangeForLoop',
|
|
@@ -109,19 +153,22 @@ export const preferRangeForLoop = {
|
|
|
109
153
|
begin,
|
|
110
154
|
end,
|
|
111
155
|
},
|
|
112
|
-
fix:
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
156
|
+
fix: entry.fixable
|
|
157
|
+
? (fixer) => {
|
|
158
|
+
const bodyText = sourceCode.getText(node.body);
|
|
159
|
+
const rangeArgs = step === undefined
|
|
160
|
+
? `${begin}, ${end}`
|
|
161
|
+
: `${begin}, ${end}, ${step}`;
|
|
162
|
+
const replacement = `for (const ${varName} of range(${rangeArgs})) ${bodyText}`;
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
const importFixes = entry === importCarrier && !hasRangeImport
|
|
167
|
+
? buildNamedImportFix(fixer, program, TS_DATA_FORGE_MODULE, ['range'])
|
|
168
|
+
: [];
|
|
169
|
+
return [...importFixes, fixer.replaceText(node, replacement)];
|
|
170
|
+
}
|
|
171
|
+
: undefined,
|
|
125
172
|
});
|
|
126
173
|
}
|
|
127
174
|
},
|
|
@@ -129,4 +176,38 @@ export const preferRangeForLoop = {
|
|
|
129
176
|
},
|
|
130
177
|
defaultOptions: [],
|
|
131
178
|
};
|
|
179
|
+
const isNegatedLiteral = (
|
|
180
|
+
|
|
181
|
+
node) => node.type === AST_NODE_TYPES.UnaryExpression &&
|
|
182
|
+
node.operator === '-' &&
|
|
183
|
+
skipTypeWrappers(node.argument).type === AST_NODE_TYPES.Literal;
|
|
184
|
+
const isNonIntegerNumberLiteral = (
|
|
185
|
+
|
|
186
|
+
wrapped) => {
|
|
187
|
+
const node = skipTypeWrappers(wrapped);
|
|
188
|
+
return (node.type === AST_NODE_TYPES.Literal &&
|
|
189
|
+
typeof node.value === 'number' &&
|
|
190
|
+
!Number.isSafeInteger(node.value));
|
|
191
|
+
};
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
const isAssignedOutsideUpdate = (
|
|
197
|
+
|
|
198
|
+
sourceCode,
|
|
199
|
+
|
|
200
|
+
declaration,
|
|
201
|
+
|
|
202
|
+
update) => sourceCode
|
|
203
|
+
.getDeclaredVariables(declaration)
|
|
204
|
+
.flatMap((variable) => variable.references)
|
|
205
|
+
.some((reference) => reference.isWrite() &&
|
|
206
|
+
reference.init !== true &&
|
|
207
|
+
!isWithin(reference.identifier, update));
|
|
208
|
+
const isWithin = (
|
|
209
|
+
|
|
210
|
+
node,
|
|
211
|
+
|
|
212
|
+
container) => container.range[0] <= node.range[0] && node.range[1] <= container.range[1];
|
|
132
213
|
//# sourceMappingURL=prefer-range-for-loop.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefer-range-for-loop.mjs","sourceRoot":"","sources":["../../src/rules/prefer-range-for-loop.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,
|
|
1
|
+
{"version":3,"file":"prefer-range-for-loop.mjs","sourceRoot":"","sources":["../../src/rules/prefer-range-for-loop.mts"],"names":[],"mappings":"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"}
|
package/dist/rules/rules.d.mts
CHANGED
|
@@ -2,6 +2,7 @@ export declare const tsDataForgeRules: {
|
|
|
2
2
|
readonly 'prefer-canonical-array-slicing': import("@typescript-eslint/utils/ts-eslint").RuleModule<"preferCanonicalArraySlicing", readonly [], unknown, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
|
|
3
3
|
readonly 'prefer-canonical-length-guard': import("@typescript-eslint/utils/ts-eslint").RuleModule<"useCanonicalGuard" | "useIsBoundedLengthArray" | "useIsFixedLengthArray" | "useIsMaxLengthArray" | "useIsMinLengthArray" | "useIsNonEmpty", readonly [], unknown, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
|
|
4
4
|
readonly 'prefer-canonical-length-cast': import("@typescript-eslint/utils/ts-eslint").RuleModule<"useCanonicalCast", readonly [], unknown, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
|
|
5
|
+
readonly 'prefer-arr-generate': import("@typescript-eslint/utils/ts-eslint").RuleModule<"suggestArrGenerate" | "useArrGenerate", readonly [], unknown, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
|
|
5
6
|
readonly 'prefer-arr-is-array': import("@typescript-eslint/utils/ts-eslint").RuleModule<"useArrIsArray", readonly [], unknown, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
|
|
6
7
|
readonly 'prefer-arr-scan': import("@typescript-eslint/utils/ts-eslint").RuleModule<"preferArrScanAccumulate" | "preferArrScanPrefix", readonly [], unknown, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
|
|
7
8
|
readonly 'prefer-arr-sum': import("@typescript-eslint/utils/ts-eslint").RuleModule<"useArrSum" | "useArrSumBy", readonly [], unknown, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.d.mts","sourceRoot":"","sources":["../../src/rules/rules.mts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rules.d.mts","sourceRoot":"","sources":["../../src/rules/rules.mts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;CAmBa,CAAC"}
|
package/dist/rules/rules.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { noSideEffectImport } from './no-side-effect-import.mjs';
|
|
2
2
|
import { noUnnecessaryTypeGuard } from './no-unnecessary-type-guard.mjs';
|
|
3
|
+
import { preferArrGenerate } from './prefer-arr-generate.mjs';
|
|
3
4
|
import { preferArrIsArray } from './prefer-arr-is-array.mjs';
|
|
4
5
|
import { preferArrScan } from './prefer-arr-scan.mjs';
|
|
5
6
|
import { preferArrSum } from './prefer-arr-sum.mjs';
|
|
@@ -19,6 +20,7 @@ export const tsDataForgeRules = {
|
|
|
19
20
|
'prefer-canonical-array-slicing': preferCanonicalArraySlicing,
|
|
20
21
|
'prefer-canonical-length-guard': preferCanonicalLengthGuard,
|
|
21
22
|
'prefer-canonical-length-cast': preferCanonicalLengthCast,
|
|
23
|
+
'prefer-arr-generate': preferArrGenerate,
|
|
22
24
|
'prefer-arr-is-array': preferArrIsArray,
|
|
23
25
|
'prefer-arr-scan': preferArrScan,
|
|
24
26
|
'prefer-arr-sum': preferArrSum,
|
package/dist/rules/rules.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.mjs","sourceRoot":"","sources":["../../src/rules/rules.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,4CAA4C,CAAC;AAC9F,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AACzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,gCAAgC,EAAE,2BAA2B;IAC7D,+BAA+B,EAAE,0BAA0B;IAC3D,8BAA8B,EAAE,yBAAyB;IACzD,qBAAqB,EAAE,gBAAgB;IACvC,iBAAiB,EAAE,aAAa;IAChC,gBAAgB,EAAE,YAAY;IAC9B,iBAAiB,EAAE,aAAa;IAChC,eAAe,EAAE,WAAW;IAC5B,2BAA2B,EAAE,qBAAqB;IAClD,uBAAuB,EAAE,kBAAkB;IAC3C,8BAA8B,EAAE,uBAAuB;IACvD,2BAA2B,EAAE,qBAAqB;IAClD,6BAA6B,EAAE,uBAAuB;IACtD,uBAAuB,EAAE,kBAAkB;IAC3C,2BAA2B,EAAE,sBAAsB;IACnD,sCAAsC,EAAE,gCAAgC;IACxE,oCAAoC,EAAE,6BAA6B;CAC3B,CAAC"}
|
|
1
|
+
{"version":3,"file":"rules.mjs","sourceRoot":"","sources":["../../src/rules/rules.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,4CAA4C,CAAC;AAC9F,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AACzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,gCAAgC,EAAE,2BAA2B;IAC7D,+BAA+B,EAAE,0BAA0B;IAC3D,8BAA8B,EAAE,yBAAyB;IACzD,qBAAqB,EAAE,iBAAiB;IACxC,qBAAqB,EAAE,gBAAgB;IACvC,iBAAiB,EAAE,aAAa;IAChC,gBAAgB,EAAE,YAAY;IAC9B,iBAAiB,EAAE,aAAa;IAChC,eAAe,EAAE,WAAW;IAC5B,2BAA2B,EAAE,qBAAqB;IAClD,uBAAuB,EAAE,kBAAkB;IAC3C,8BAA8B,EAAE,uBAAuB;IACvD,2BAA2B,EAAE,qBAAqB;IAClD,6BAA6B,EAAE,uBAAuB;IACtD,uBAAuB,EAAE,kBAAkB;IAC3C,2BAA2B,EAAE,sBAAsB;IACnD,sCAAsC,EAAE,gCAAgC;IACxE,oCAAoC,EAAE,6BAA6B;CAC3B,CAAC"}
|