@openrewrite/rewrite 8.69.0-20251207-160255 → 8.69.0-20251207-214914
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/cli/cli-utils.d.ts.map +1 -1
- package/dist/cli/cli-utils.js +3 -2
- package/dist/cli/cli-utils.js.map +1 -1
- package/dist/cli/rewrite.js +2 -1
- package/dist/cli/rewrite.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/javascript/add-import.d.ts.map +1 -1
- package/dist/javascript/add-import.js +99 -56
- package/dist/javascript/add-import.js.map +1 -1
- package/dist/javascript/parser.d.ts.map +1 -1
- package/dist/javascript/parser.js +48 -8
- package/dist/javascript/parser.js.map +1 -1
- package/dist/javascript/recipes/async-callback-in-sync-array-method.d.ts +40 -0
- package/dist/javascript/recipes/async-callback-in-sync-array-method.d.ts.map +1 -0
- package/dist/javascript/recipes/async-callback-in-sync-array-method.js +232 -0
- package/dist/javascript/recipes/async-callback-in-sync-array-method.js.map +1 -0
- package/dist/javascript/recipes/change-import.d.ts +51 -0
- package/dist/javascript/recipes/change-import.d.ts.map +1 -0
- package/dist/javascript/recipes/change-import.js +658 -0
- package/dist/javascript/recipes/change-import.js.map +1 -0
- package/dist/javascript/recipes/index.d.ts +3 -0
- package/dist/javascript/recipes/index.d.ts.map +1 -1
- package/dist/javascript/recipes/index.js +3 -0
- package/dist/javascript/recipes/index.js.map +1 -1
- package/dist/javascript/recipes/order-imports.d.ts +10 -0
- package/dist/javascript/recipes/order-imports.d.ts.map +1 -0
- package/dist/javascript/recipes/order-imports.js +240 -0
- package/dist/javascript/recipes/order-imports.js.map +1 -0
- package/dist/javascript/templating/index.d.ts +1 -1
- package/dist/javascript/templating/index.d.ts.map +1 -1
- package/dist/javascript/templating/index.js +2 -1
- package/dist/javascript/templating/index.js.map +1 -1
- package/dist/javascript/templating/rewrite.d.ts +36 -2
- package/dist/javascript/templating/rewrite.d.ts.map +1 -1
- package/dist/javascript/templating/rewrite.js +76 -0
- package/dist/javascript/templating/rewrite.js.map +1 -1
- package/dist/json/parser.js +78 -30
- package/dist/json/parser.js.map +1 -1
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +7 -4
- package/dist/run.js.map +1 -1
- package/dist/version.txt +1 -1
- package/package.json +1 -1
- package/src/cli/cli-utils.ts +3 -2
- package/src/cli/rewrite.ts +2 -1
- package/src/index.ts +3 -2
- package/src/javascript/add-import.ts +125 -69
- package/src/javascript/parser.ts +49 -8
- package/src/javascript/recipes/async-callback-in-sync-array-method.ts +237 -0
- package/src/javascript/recipes/change-import.ts +700 -0
- package/src/javascript/recipes/index.ts +3 -0
- package/src/javascript/recipes/order-imports.ts +242 -0
- package/src/javascript/templating/index.ts +2 -1
- package/src/javascript/templating/rewrite.ts +89 -4
- package/src/json/parser.ts +69 -24
- package/src/run.ts +5 -4
- package/dist/recipe/index.d.ts +0 -2
- package/dist/recipe/index.d.ts.map +0 -1
- package/dist/recipe/index.js +0 -21
- package/dist/recipe/index.js.map +0 -1
- package/dist/recipe/order-imports.d.ts +0 -10
- package/dist/recipe/order-imports.d.ts.map +0 -1
- package/dist/recipe/order-imports.js +0 -213
- package/dist/recipe/order-imports.js.map +0 -1
- package/src/recipe/index.ts +0 -17
- package/src/recipe/order-imports.ts +0 -195
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"change-import.js","sourceRoot":"","sources":["../../../src/javascript/recipes/change-import.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;AAEH,yCAA4C;AAG5C,oCAA+C;AAC/C,8CAA6C;AAC7C,qCAAiD;AACjD,iCAA6C;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAa,YAAa,SAAQ,eAAM;IAyCpC,YAAY,OAMX;QACG,KAAK,CAAC,OAAO,CAAC,CAAC;QA/CV,SAAI,GAAG,0CAA0C,CAAC;QAClD,gBAAW,GAAG,eAAe,CAAC;QAC9B,gBAAW,GAAG,sFAAsF,CAAC;IA8C9G,CAAC;IAEK,MAAM;;;YACR,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,MAAM,SAAS,GAAG,MAAA,IAAI,CAAC,SAAS,mCAAI,SAAS,CAAC;YAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAE/B,0DAA0D;YAC1D,MAAM,MAAM,GAAG,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,GAAG;gBACvD,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,GAAG,SAAS,IAAI,SAAS,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,GAAG;gBACvD,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,GAAG,SAAS,IAAI,SAAS,EAAE,CAAC;YAElC,OAAO,IAAI,KAAM,SAAQ,yBAAmC;gBAAjD;;oBACC,iBAAY,GAAG,KAAK,CAAC;oBAErB,sBAAiB,GAAG,KAAK,CAAC;gBA+jBtC,CAAC;gBA7jBkB,sBAAsB,CAAC,EAAsB,EAAE,GAAqB;;;;;;wBAC/E,+BAA+B;wBAC/B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;wBAC1B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;wBAC1B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;wBAE/B,mEAAmE;wBACnE,KAAK,MAAM,SAAS,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;4BACpC,MAAM,IAAI,GAAG,MAAA,SAAS,CAAC,OAAO,mCAAI,SAAS,CAAC;4BAC5C,IAAI,IAAI,CAAC,IAAI,KAAK,UAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gCAC/B,MAAM,QAAQ,GAAG,IAAiB,CAAC;gCACnC,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;gCACnD,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;oCAClB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;oCACzB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC;oCAChC,MAAM;gCACV,CAAC;4BACL,CAAC;wBACL,CAAC;wBAED,6EAA6E;wBAC7E,IAAI,MAAM,GAAG,MAAM,OAAM,sBAAsB,YAAC,EAAE,EAAE,GAAG,CAAuB,CAAC;wBAE/E,kFAAkF;wBAClF,yEAAyE;wBACzE,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;4BAC/C,MAAM,UAAU,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,IAAI,CAAC,QAAQ,CAAC;4BAE7C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gCAC1B,IAAA,2BAAc,EAAC,IAAI,EAAE;oCACjB,MAAM,EAAE,SAAS;oCACjB,MAAM,EAAE,SAAS;oCACjB,KAAK,EAAE,UAAU;oCACjB,gBAAgB,EAAE,KAAK;iCAC1B,CAAC,CAAC;4BACP,CAAC;iCAAM,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;gCAC3B,IAAA,2BAAc,EAAC,IAAI,EAAE;oCACjB,MAAM,EAAE,SAAS;oCACjB,MAAM,EAAE,GAAG;oCACX,KAAK,EAAE,UAAU;oCACjB,gBAAgB,EAAE,KAAK;iCAC1B,CAAC,CAAC;4BACP,CAAC;iCAAM,IAAI,UAAU,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gCAChD,IAAA,2BAAc,EAAC,IAAI,EAAE;oCACjB,MAAM,EAAE,SAAS;oCACjB,MAAM,EAAE,SAAS;oCACjB,KAAK,EAAE,UAAU;oCACjB,gBAAgB,EAAE,KAAK;iCAC1B,CAAC,CAAC;4BACP,CAAC;iCAAM,CAAC;gCACJ,IAAA,2BAAc,EAAC,IAAI,EAAE;oCACjB,MAAM,EAAE,SAAS;oCACjB,MAAM,EAAE,SAAS;oCACjB,gBAAgB,EAAE,KAAK;iCAC1B,CAAC,CAAC;4BACP,CAAC;wBACL,CAAC;wBAED,OAAO,MAAM,CAAC;oBAClB,CAAC;iBAAA;gBAEc,sBAAsB,CAAC,QAAmB,EAAE,GAAqB;;;;;;wBAC5E,IAAI,GAAG,GAAG,MAAM,OAAM,sBAAsB,YAAC,QAAQ,EAAE,GAAG,CAAc,CAAC;wBAEzE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;4BACrB,OAAO,GAAG,CAAC;wBACf,CAAC;wBAED,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;wBAC9C,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;4BACnB,OAAO,GAAG,CAAC;wBACf,CAAC;wBAED,uDAAuD;wBACvD,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;wBAC/C,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,KAAK,CAAC;4BAC1C,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,CAAA,MAAA,GAAG,CAAC,YAAY,0CAAE,aAAa,CAAA,CAAC;4BAC7D,CAAC,SAAS,KAAK,GAAG,CAAC,CAAC;wBAExB,IAAI,YAAY,EAAE,CAAC;4BACf,0CAA0C;4BAC1C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;4BAC9B,OAAO,IAAA,eAAO,EAAC,GAAG,EAAE,KAAK,CAAC,EAAE;;gCACxB,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;oCACxB,MAAM,OAAO,GAAG,KAAK,CAAC,eAAe,CAAC,OAAmC,CAAC;oCAC1E,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC;oCAC1B,6CAA6C;oCAC7C,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,SAAS,GAAG,CAAC;oCAC/D,MAAM,SAAS,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;oCAC7D,OAAO,CAAC,WAAW,GAAG,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,EAAE,CAAC;gCACjE,CAAC;gCACD,iEAAiE;gCACjE,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;oCAC1E,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;oCACxC,IAAI,CAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,aAAa,0CAAE,IAAI,MAAK,UAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;wCAC7D,MAAM,YAAY,GAAG,YAAY,CAAC,aAA+C,CAAC;wCAClF,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;4CAChD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC;4CAC/B,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,UAAU;gDAC9C,SAAS,CAAC,SAAS,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gDAC/C,SAAS,CAAC,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC;4CAC/C,CAAC;wCACL,CAAC;oCACL,CAAC;gCACL,CAAC;4BACL,CAAC,CAAC,CAAC;wBACP,CAAC;6BAAM,CAAC;4BACJ,kDAAkD;4BAClD,yCAAyC;4BACzC,OAAO,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;wBAC7D,CAAC;oBACL,CAAC;iBAAA;gBAEa,uBAAuB,CAAC,GAAc,EAAE,cAAsB,EAAE,IAAsB;;wBAChG,OAAO,IAAA,eAAO,EAAC,GAAG,EAAE,KAAK,CAAC,EAAE;4BACxB,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;4BACxC,IAAI,CAAC,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,aAAa,CAAA;gCAAE,OAAO;4BACzC,IAAI,YAAY,CAAC,aAAa,CAAC,IAAI,KAAK,UAAE,CAAC,IAAI,CAAC,YAAY;gCAAE,OAAO;4BAErE,MAAM,YAAY,GAAG,YAAY,CAAC,aAA+C,CAAC;4BAClF,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC;4BAChD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;gCAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC;gCAC/B,MAAM,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC;gCAE1C,IAAI,aAAa,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;oCAC3C,OAAO,aAAa,CAAC,UAAU,KAAK,cAAc,CAAC;gCACvD,CAAC;gCAED,IAAI,aAAa,CAAC,IAAI,KAAK,UAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;oCACvC,MAAM,KAAK,GAAG,aAAyB,CAAC;oCACxC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC;oCAChD,IAAI,YAAY,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;wCAC1C,OAAO,YAAY,CAAC,UAAU,KAAK,cAAc,CAAC;oCACtD,CAAC;gCACL,CAAC;gCAED,OAAO,IAAI,CAAC;4BAChB,CAAC,CAAC,CAAC;4BAEH,YAAY,CAAC,QAAQ,CAAC,QAAQ,GAAG,gBAAgB,CAAC;wBACtD,CAAC,CAAC,CAAC;oBACP,CAAC;iBAAA;gBAEO,eAAe,CAAC,GAAc;oBAClC,MAAM,OAAO,GAAa,EAAE,CAAC;oBAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;oBACtC,IAAI,CAAC,YAAY;wBAAE,OAAO,OAAO,CAAC;oBAElC,MAAM,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;oBACjD,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,IAAI,KAAK,UAAE,CAAC,IAAI,CAAC,YAAY;wBAAE,OAAO,OAAO,CAAC;oBAElF,MAAM,YAAY,GAAG,aAAgC,CAAC;oBACtD,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;wBAChD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC;wBAC/B,MAAM,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC;wBAE1C,IAAI,IAAA,mBAAY,EAAC,aAAa,CAAC,EAAE,CAAC;4BAC9B,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;wBAC3C,CAAC;6BAAM,IAAI,aAAa,CAAC,IAAI,KAAK,UAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;4BAC9C,MAAM,KAAK,GAAG,aAAyB,CAAC;4BACxC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC;4BAChD,IAAI,IAAA,mBAAY,EAAC,YAAY,CAAC,EAAE,CAAC;gCAC7B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;4BAC1C,CAAC;wBACL,CAAC;oBACL,CAAC;oBAED,OAAO,OAAO,CAAC;gBACnB,CAAC;gBAEc,eAAe,CAAC,UAAwB,EAAE,GAAqB;;;;;wBAC1E,IAAI,KAAK,GAAG,MAAM,OAAM,eAAe,YAAC,UAAU,EAAE,GAAG,CAAiB,CAAC;wBAEzE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;4BACrB,OAAO,KAAK,CAAC;wBACjB,CAAC;wBAED,oCAAoC;wBACpC,IAAI,OAAO,GAAG,KAAK,CAAC;wBAEpB,8CAA8C;wBAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAChD,IAAI,WAAW,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;4BAC7B,OAAO,GAAG,IAAI,CAAC;wBACnB,CAAC;wBAED,mDAAmD;wBACnD,6EAA6E;wBAC7E,IAAI,gBAAgB,GAA8B,KAAK,CAAC,SAAS,CAAC;wBAClE,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;4BAClB,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;4BACzD,IAAI,OAAO,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;gCAC9B,gBAAgB,GAAG,OAAO,CAAC;gCAC3B,OAAO,GAAG,IAAI,CAAC;4BACnB,CAAC;wBACL,CAAC;wBAED,IAAI,OAAO,EAAE,CAAC;4BACV,OAAO,IAAA,eAAO,EAAC,KAAK,EAAE,KAAK,CAAC,EAAE;gCAC1B,IAAI,WAAW,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;oCAC7B,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC;gCAC7B,CAAC;gCACD,IAAI,gBAAgB,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;oCACvC,KAAK,CAAC,SAAS,GAAG,gBAAgB,CAAC;gCACvC,CAAC;4BACL,CAAC,CAAC,CAAC;wBACP,CAAC;wBAED,OAAO,KAAK,CAAC;oBACjB,CAAC;iBAAA;gBAEc,qBAAqB,CAAC,MAA0B,EAAE,GAAqB;;;;;wBAClF,IAAI,CAAC,GAAG,MAAM,OAAM,qBAAqB,YAAC,MAAM,EAAE,GAAG,CAAuB,CAAC;wBAE7E,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;4BACrB,OAAO,CAAC,CAAC;wBACb,CAAC;wBAED,oDAAoD;wBACpD,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;wBAC9D,IAAI,iBAAiB,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;4BACrC,OAAO,IAAA,eAAO,EAAC,CAAC,EAAE,KAAK,CAAC,EAAE;gCACtB,KAAK,CAAC,UAAU,GAAG,iBAAiB,CAAC;4BACzC,CAAC,CAAC,CAAC;wBACP,CAAC;wBAED,OAAO,CAAC,CAAC;oBACb,CAAC;iBAAA;gBAEc,gBAAgB,CAAC,WAA0B,EAAE,GAAqB;;;;;wBAC7E,IAAI,EAAE,GAAG,MAAM,OAAM,gBAAgB,YAAC,WAAW,EAAE,GAAG,CAAkB,CAAC;wBAEzE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;4BACrB,OAAO,EAAE,CAAC;wBACd,CAAC;wBAED,8CAA8C;wBAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;wBAC7C,IAAI,WAAW,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;4BAC1B,OAAO,IAAA,eAAO,EAAC,EAAE,EAAE,KAAK,CAAC,EAAE;gCACvB,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC;4BAC7B,CAAC,CAAC,CAAC;wBACP,CAAC;wBAED,OAAO,EAAE,CAAC;oBACd,CAAC;iBAAA;gBAEc,iBAAiB,CAAC,YAA6B,EAAE,GAAqB;;;;;wBACjF,IAAI,EAAE,GAAG,MAAM,OAAM,iBAAiB,YAAC,YAAY,EAAE,GAAG,CAAoB,CAAC;wBAE7E,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;4BACrB,OAAO,EAAE,CAAC;wBACd,CAAC;wBAED,oDAAoD;wBACpD,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;wBAC/D,IAAI,iBAAiB,KAAK,EAAE,CAAC,UAAU,EAAE,CAAC;4BACtC,OAAO,IAAA,eAAO,EAAC,EAAE,EAAE,KAAK,CAAC,EAAE;gCACvB,KAAK,CAAC,UAAU,GAAG,iBAAiB,CAAC;4BACzC,CAAC,CAAC,CAAC;wBACP,CAAC;wBAED,OAAO,EAAE,CAAC;oBACd,CAAC;iBAAA;gBAEc,aAAa,CAAC,QAAoB,EAAE,GAAqB;;;;;wBACpE,IAAI,EAAE,GAAG,MAAM,OAAM,aAAa,YAAC,QAAQ,EAAE,GAAG,CAAe,CAAC;wBAEhE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;4BACrB,OAAO,EAAE,CAAC;wBACd,CAAC;wBAED,IAAI,OAAO,GAAG,KAAK,CAAC;wBAEpB,oDAAoD;wBACpD,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;wBAC/D,IAAI,iBAAiB,KAAK,EAAE,CAAC,UAAU,EAAE,CAAC;4BACtC,OAAO,GAAG,IAAI,CAAC;wBACnB,CAAC;wBAED,yDAAyD;wBACzD,MAAM,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;wBACzE,IAAI,sBAAsB,KAAK,EAAE,CAAC,eAAe,EAAE,CAAC;4BAChD,OAAO,GAAG,IAAI,CAAC;wBACnB,CAAC;wBAED,8CAA8C;wBAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;wBAC7C,IAAI,WAAW,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;4BAC1B,OAAO,GAAG,IAAI,CAAC;wBACnB,CAAC;wBAED,IAAI,OAAO,EAAE,CAAC;4BACV,OAAO,IAAA,eAAO,EAAC,EAAE,EAAE,KAAK,CAAC,EAAE;gCACvB,IAAI,iBAAiB,KAAK,EAAE,CAAC,UAAU,EAAE,CAAC;oCACtC,KAAK,CAAC,UAAU,GAAG,iBAAiB,CAAC;gCACzC,CAAC;gCACD,IAAI,sBAAsB,KAAK,EAAE,CAAC,eAAe,EAAE,CAAC;oCAChD,KAAK,CAAC,eAAe,GAAG,sBAAsB,CAAC;gCACnD,CAAC;gCACD,IAAI,WAAW,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;oCAC1B,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC;gCAC7B,CAAC;4BACL,CAAC,CAAC,CAAC;wBACP,CAAC;wBAED,OAAO,EAAE,CAAC;oBACd,CAAC;iBAAA;gBAED;;mBAEG;gBACK,UAAU,CAAC,IAAsB;oBACrC,IAAI,CAAC,IAAI;wBAAE,OAAO,IAAI,CAAC;oBAEvB,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;wBAChB,KAAK,WAAI,CAAC,IAAI,CAAC,KAAK,CAAC;wBACrB,KAAK,WAAI,CAAC,IAAI,CAAC,YAAY;4BACvB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAkB,CAAC,CAAC;wBAEpD,KAAK,WAAI,CAAC,IAAI,CAAC,MAAM;4BACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAmB,CAAC,CAAC;wBAEtD,KAAK,WAAI,CAAC,IAAI,CAAC,QAAQ;4BACnB,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAqB,CAAC,CAAC;wBAE1D,KAAK,WAAI,CAAC,IAAI,CAAC,aAAa;4BACxB,OAAO,IAAI,CAAC,uBAAuB,CAAC,IAA0B,CAAC,CAAC;wBAEpE,KAAK,WAAI,CAAC,IAAI,CAAC,KAAK;4BAChB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAkB,CAAC,CAAC;wBAEpD;4BACI,OAAO,IAAI,CAAC;oBACpB,CAAC;gBACL,CAAC;gBAED;;mBAEG;gBACK,eAAe,CAAC,SAAqB;oBACzC,IAAI,OAAO,GAAG,KAAK,CAAC;oBACpB,IAAI,qBAAqB,GAAG,SAAS,CAAC,kBAAkB,CAAC;oBACzD,IAAI,cAAc,GAAG,SAAS,CAAC,WAAW,CAAC;oBAE3C,yDAAyD;oBACzD,IAAI,SAAS,CAAC,kBAAkB,KAAK,MAAM,EAAE,CAAC;wBAC1C,qBAAqB,GAAG,MAAM,CAAC;wBAC/B,OAAO,GAAG,IAAI,CAAC;oBACnB,CAAC;yBAAM,IAAI,SAAS,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;wBACpD,qBAAqB,GAAG,SAAS,CAAC;wBAClC,OAAO,GAAG,IAAI,CAAC;oBACnB,CAAC;yBAAM,IAAI,SAAS,CAAC,kBAAkB,CAAC,UAAU,CAAC,SAAS,GAAG,GAAG,CAAC,EAAE,CAAC;wBAClE,qBAAqB,GAAG,SAAS,GAAG,SAAS,CAAC,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAC7F,OAAO,GAAG,IAAI,CAAC;oBACnB,CAAC;oBAED,iCAAiC;oBACjC,IAAI,SAAS,CAAC,WAAW,EAAE,CAAC;wBACxB,MAAM,kBAAkB,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;wBACvE,IAAI,kBAAkB,KAAK,SAAS,CAAC,WAAW,EAAE,CAAC;4BAC/C,cAAc,GAAG,kBAAkB,CAAC;4BACpC,OAAO,GAAG,IAAI,CAAC;wBACnB,CAAC;oBACL,CAAC;oBAED,IAAI,OAAO,EAAE,CAAC;wBACV,8EAA8E;wBAC9E,OAAO,gCACA,SAAS,KACZ,kBAAkB,EAAE,qBAAqB,EACzC,WAAW,EAAE,cAAc,GAChB,CAAC;oBACpB,CAAC;oBAED,OAAO,SAAS,CAAC;gBACrB,CAAC;gBAED;;mBAEG;gBACK,gBAAgB,CAAC,UAAmC;oBACxD,IAAI,CAAC,UAAU;wBAAE,OAAO,UAAU,CAAC;oBAEnC,4BAA4B;oBAC5B,IAAI,WAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;wBAClD,MAAM,gBAAgB,GAAG,WAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;wBAE7F,IAAI,gBAAgB,KAAK,SAAS;4BAC9B,gBAAgB,KAAK,MAAM;4BAC3B,gBAAgB,CAAC,UAAU,CAAC,SAAS,GAAG,GAAG,CAAC,EAAE,CAAC;4BAE/C,oCAAoC;4BACpC,MAAM,oBAAoB,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,aAAa,CAAwB,CAAC;4BAE9F,2DAA2D;4BAC3D,MAAM,WAAW,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,GAAG;gCAC7C,UAAU,CAAC,IAAI,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,CAAC;gCACzE,CAAC,CAAC,SAAS;gCACX,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;4BAEtB,8EAA8E;4BAC9E,OAAO,gCACA,UAAU,KACb,aAAa,EAAE,oBAAoB,EACnC,IAAI,EAAE,WAAW,GACL,CAAC;wBACrB,CAAC;oBACL,CAAC;oBAED,OAAO,UAAU,CAAC;gBACtB,CAAC;gBAED;;mBAEG;gBACK,kBAAkB,CAAC,YAA2B;oBAClD,IAAI,OAAO,GAAG,KAAK,CAAC;oBACpB,IAAI,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC;oBAClC,IAAI,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC;oBAErC,+CAA+C;oBAC/C,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;wBACrB,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;wBACzD,IAAI,YAAY,KAAK,YAAY,CAAC,KAAK,EAAE,CAAC;4BACtC,QAAQ,GAAG,YAAY,CAAC;4BACxB,OAAO,GAAG,IAAI,CAAC;wBACnB,CAAC;oBACL,CAAC;oBAED,oDAAoD;oBACpD,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;oBAC5D,IAAI,gBAAgB,KAAK,YAAY,CAAC,IAAI,EAAE,CAAC;wBACzC,YAAY,GAAG,gBAAiB,CAAC;wBACjC,OAAO,GAAG,IAAI,CAAC;oBACnB,CAAC;oBAED,IAAI,OAAO,EAAE,CAAC;wBACV,8EAA8E;wBAC9E,OAAO,gCACA,YAAY,KACf,KAAK,EAAE,QAAQ,EACf,IAAI,EAAE,YAAY,GACJ,CAAC;oBACvB,CAAC;oBAED,OAAO,YAAY,CAAC;gBACxB,CAAC;gBAED;;mBAEG;gBACK,uBAAuB,CAAC,SAA6B;oBACzD,IAAI,OAAO,GAAG,KAAK,CAAC;oBACpB,IAAI,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC;oBACjC,IAAI,aAAa,GAAG,SAAS,CAAC,cAAc,CAAC;oBAE7C,mBAAmB;oBACnB,IAAI,WAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;wBACxC,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAwB,CAAC;wBAC3E,IAAI,WAAW,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;4BACjC,WAAW,GAAG,WAAW,CAAC;4BAC1B,OAAO,GAAG,IAAI,CAAC;wBACnB,CAAC;oBACL,CAAC;oBAED,yBAAyB;oBACzB,MAAM,aAAa,GAAG,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAE,CAAC,CAAC;oBAC/E,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBAClE,aAAa,GAAG,aAAa,CAAC;wBAC9B,OAAO,GAAG,IAAI,CAAC;oBACnB,CAAC;oBAED,IAAI,OAAO,EAAE,CAAC;wBACV,8EAA8E;wBAC9E,OAAO,gCACA,SAAS,KACZ,IAAI,EAAE,WAAW,EACjB,cAAc,EAAE,aAAa,GACV,CAAC;oBAC5B,CAAC;oBAED,OAAO,SAAS,CAAC;gBACrB,CAAC;gBAED;;mBAEG;gBACK,eAAe,CAAC,SAAqB;oBACzC,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;oBAC5D,IAAI,eAAe,KAAK,SAAS,CAAC,QAAQ,EAAE,CAAC;wBACzC,8EAA8E;wBAC9E,OAAO,gCACA,SAAS,KACZ,QAAQ,EAAE,eAAgB,GACf,CAAC;oBACpB,CAAC;oBACD,OAAO,SAAS,CAAC;gBACrB,CAAC;gBAEO,iBAAiB,CAAC,QAAmB;oBACzC,8CAA8C;oBAC9C,MAAM,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC;oBACjD,IAAI,CAAC,eAAe;wBAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;oBAE9C,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC;oBACxC,IAAI,OAAO,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,OAAO;wBAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;oBAE7D,MAAM,KAAK,GAAI,OAAqB,CAAC,KAAK,CAAC;oBAC3C,IAAI,KAAK,KAAK,SAAS;wBAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;oBAEjD,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;oBAC3C,IAAI,CAAC,YAAY,EAAE,CAAC;wBAChB,kDAAkD;wBAClD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;oBAC5B,CAAC;oBAED,2BAA2B;oBAC3B,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;wBAC1B,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;4BACpB,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;4BAC3C,IAAI,IAAA,mBAAY,EAAC,QAAQ,CAAC,EAAE,CAAC;gCACzB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC;4BACvD,CAAC;wBACL,CAAC;wBACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;oBAC5B,CAAC;oBAED,6BAA6B;oBAC7B,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;wBACpB,MAAM,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;wBACjD,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,MAAK,UAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;4BACxC,MAAM,KAAK,GAAG,aAAyB,CAAC;4BACxC,IAAI,IAAA,mBAAY,EAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gCAC5B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;4BAC1D,CAAC;wBACL,CAAC;wBACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;oBAC5B,CAAC;oBAED,0BAA0B;oBAC1B,MAAM,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;oBACjD,IAAI,CAAC,aAAa;wBAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;oBAE5C,IAAI,aAAa,CAAC,IAAI,KAAK,UAAE,CAAC,IAAI,CAAC,YAAY;wBAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;oBAEzE,MAAM,YAAY,GAAG,aAAgC,CAAC;oBACtD,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAEhD,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;wBAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC;wBAC/B,MAAM,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC;wBAE1C,uCAAuC;wBACvC,IAAI,IAAA,mBAAY,EAAC,aAAa,CAAC,IAAI,aAAa,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;4BACxE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;wBAC3B,CAAC;wBAED,qDAAqD;wBACrD,IAAI,aAAa,CAAC,IAAI,KAAK,UAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;4BACvC,MAAM,KAAK,GAAG,aAAyB,CAAC;4BACxC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC;4BAChD,IAAI,IAAA,mBAAY,EAAC,YAAY,CAAC,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gCACtE,IAAI,IAAA,mBAAY,EAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;oCAC5B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;gCAC1D,CAAC;4BACL,CAAC;wBACL,CAAC;oBACL,CAAC;oBAED,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;gBAC5B,CAAC;aACJ,EAAE,CAAC;QACR,CAAC;KAAA;CACJ;AAtoBD,oCAsoBC;AA5nBG;IALC,IAAA,eAAM,EAAC;QACJ,WAAW,EAAE,YAAY;QACzB,WAAW,EAAE,mCAAmC;QAChD,OAAO,EAAE,sBAAsB;KAClC,CAAC;+CACiB;AAOnB;IALC,IAAA,eAAM,EAAC;QACJ,WAAW,EAAE,YAAY;QACzB,WAAW,EAAE,oFAAoF;QACjG,OAAO,EAAE,KAAK;KACjB,CAAC;+CACiB;AAOnB;IALC,IAAA,eAAM,EAAC;QACJ,WAAW,EAAE,YAAY;QACzB,WAAW,EAAE,iCAAiC;QAC9C,OAAO,EAAE,OAAO;KACnB,CAAC;+CACiB;AAQnB;IANC,IAAA,eAAM,EAAC;QACJ,WAAW,EAAE,YAAY;QACzB,WAAW,EAAE,oEAAoE;QACjF,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,KAAK;KAClB,CAAC;+CACiB;AAOnB;IALC,IAAA,eAAM,EAAC;QACJ,WAAW,EAAE,WAAW;QACxB,WAAW,EAAE,iFAAiF;QAC9F,QAAQ,EAAE,KAAK;KAClB,CAAC;8CACgB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/javascript/recipes/index.ts"],"names":[],"mappings":"AAgBA,cAAc,8BAA8B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/javascript/recipes/index.ts"],"names":[],"mappings":"AAgBA,cAAc,uCAAuC,CAAC;AACtD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
|
|
@@ -29,5 +29,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
29
29
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
30
30
|
};
|
|
31
31
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
|
+
__exportStar(require("./async-callback-in-sync-array-method"), exports);
|
|
32
33
|
__exportStar(require("./upgrade-dependency-version"), exports);
|
|
34
|
+
__exportStar(require("./order-imports"), exports);
|
|
35
|
+
__exportStar(require("./change-import"), exports);
|
|
33
36
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/javascript/recipes/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;AAEH,+DAA6C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/javascript/recipes/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;AAEH,wEAAsD;AACtD,+DAA6C;AAC7C,kDAAgC;AAChC,kDAAgC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Recipe } from "../../recipe";
|
|
2
|
+
import { TreeVisitor } from "../../visitor";
|
|
3
|
+
import { ExecutionContext } from "../../execution";
|
|
4
|
+
export declare class OrderImports extends Recipe {
|
|
5
|
+
readonly name = "org.openrewrite.javascript.cleanup.order-imports";
|
|
6
|
+
readonly displayName = "Order imports";
|
|
7
|
+
readonly description = "Sort imports by category and module path. Categories: side-effect, namespace, default, named, type. Within each category, imports are sorted alphabetically by module path. Named specifiers within each import are also sorted alphabetically.";
|
|
8
|
+
editor(): Promise<TreeVisitor<any, ExecutionContext>>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=order-imports.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-imports.d.ts","sourceRoot":"","sources":["../../../src/javascript/recipes/order-imports.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAe,WAAW,EAAC,MAAM,eAAe,CAAC;AACxD,OAAO,EAAC,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AAsBjD,qBAAa,YAAa,SAAQ,MAAM;IACpC,QAAQ,CAAC,IAAI,sDAAsD;IACnE,QAAQ,CAAC,WAAW,mBAAmB;IACvC,QAAQ,CAAC,WAAW,qPAAqP;IAGnQ,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;CAmM9D"}
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2025 the original author or authors.
|
|
4
|
+
* <p>
|
|
5
|
+
* Licensed under the Moderne Source Available License (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
* <p>
|
|
9
|
+
* https://docs.moderne.io/licensing/moderne-source-available-license
|
|
10
|
+
* <p>
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
18
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
19
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
20
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
21
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
22
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
23
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
+
exports.OrderImports = void 0;
|
|
28
|
+
const recipe_1 = require("../../recipe");
|
|
29
|
+
const visitor_1 = require("../../visitor");
|
|
30
|
+
const index_1 = require("../index");
|
|
31
|
+
const java_1 = require("../../java");
|
|
32
|
+
const immer_1 = require("immer");
|
|
33
|
+
const style_1 = require("../style");
|
|
34
|
+
/**
|
|
35
|
+
* Import type categories for sorting order:
|
|
36
|
+
* 1. Side-effect imports (no specifier): import 'module';
|
|
37
|
+
* 2. Namespace imports: import * as foo from 'module';
|
|
38
|
+
* 3. Default imports: import foo from 'module';
|
|
39
|
+
* 4. Named imports: import { foo } from 'module';
|
|
40
|
+
* 5. Type imports: import type { Foo } from 'module';
|
|
41
|
+
*/
|
|
42
|
+
var ImportCategory;
|
|
43
|
+
(function (ImportCategory) {
|
|
44
|
+
ImportCategory[ImportCategory["SideEffect"] = 0] = "SideEffect";
|
|
45
|
+
ImportCategory[ImportCategory["Namespace"] = 1] = "Namespace";
|
|
46
|
+
ImportCategory[ImportCategory["Default"] = 2] = "Default";
|
|
47
|
+
ImportCategory[ImportCategory["Named"] = 3] = "Named";
|
|
48
|
+
ImportCategory[ImportCategory["Type"] = 4] = "Type";
|
|
49
|
+
})(ImportCategory || (ImportCategory = {}));
|
|
50
|
+
class OrderImports extends recipe_1.Recipe {
|
|
51
|
+
constructor() {
|
|
52
|
+
super(...arguments);
|
|
53
|
+
this.name = "org.openrewrite.javascript.cleanup.order-imports";
|
|
54
|
+
this.displayName = "Order imports";
|
|
55
|
+
this.description = "Sort imports by category and module path. Categories: side-effect, namespace, default, named, type. Within each category, imports are sorted alphabetically by module path. Named specifiers within each import are also sorted alphabetically.";
|
|
56
|
+
}
|
|
57
|
+
editor() {
|
|
58
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
+
return new class extends index_1.JavaScriptVisitor {
|
|
60
|
+
visitJsCompilationUnit(cu, p) {
|
|
61
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
var _a;
|
|
63
|
+
const importCount = this.countImports(cu);
|
|
64
|
+
if (importCount === 0) {
|
|
65
|
+
return cu;
|
|
66
|
+
}
|
|
67
|
+
const imports = cu.statements.slice(0, importCount);
|
|
68
|
+
const originalImportPosition = Object.fromEntries(imports.map((item, i) => [item.element.id, i]));
|
|
69
|
+
const restStatements = cu.statements.slice(importCount);
|
|
70
|
+
// Get style for consistent brace spacing
|
|
71
|
+
const spacesStyle = (0, style_1.styleFromSourceFile)(style_1.StyleKind.SpacesStyle, cu);
|
|
72
|
+
const useBraceSpaces = (_a = spacesStyle === null || spacesStyle === void 0 ? void 0 : spacesStyle.within.es6ImportExportBraces) !== null && _a !== void 0 ? _a : false;
|
|
73
|
+
// Sort named specifiers within each import
|
|
74
|
+
const sortedSpecifiers = this.sortNamedSpecifiersWithinImports(imports, useBraceSpaces);
|
|
75
|
+
// Sort imports by category and module path
|
|
76
|
+
sortedSpecifiers.sort((aPadded, bPadded) => {
|
|
77
|
+
const a = aPadded.element;
|
|
78
|
+
const b = bPadded.element;
|
|
79
|
+
// First, compare by category
|
|
80
|
+
const categoryA = this.getImportCategory(a);
|
|
81
|
+
const categoryB = this.getImportCategory(b);
|
|
82
|
+
if (categoryA !== categoryB) {
|
|
83
|
+
return categoryA - categoryB;
|
|
84
|
+
}
|
|
85
|
+
// Within same category, sort by module path (case-insensitive)
|
|
86
|
+
const modulePathA = this.getModulePath(a).toLowerCase();
|
|
87
|
+
const modulePathB = this.getModulePath(b).toLowerCase();
|
|
88
|
+
const pathComparison = modulePathA.localeCompare(modulePathB);
|
|
89
|
+
if (pathComparison !== 0) {
|
|
90
|
+
return pathComparison;
|
|
91
|
+
}
|
|
92
|
+
// Tiebreaker: keep original order for stability
|
|
93
|
+
return originalImportPosition[aPadded.element.id] - originalImportPosition[bPadded.element.id];
|
|
94
|
+
});
|
|
95
|
+
const cuWithImportsSorted = yield (0, visitor_1.produceAsync)(cu, (draft) => __awaiter(this, void 0, void 0, function* () {
|
|
96
|
+
draft.statements = [...sortedSpecifiers, ...restStatements];
|
|
97
|
+
}));
|
|
98
|
+
return (0, immer_1.produce)(cuWithImportsSorted, draft => {
|
|
99
|
+
for (let i = 0; i < importCount; i++) {
|
|
100
|
+
draft.statements[i].element.prefix.whitespace = i > 0 ? "\n" : "";
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Determine the category of an import for sorting purposes.
|
|
107
|
+
*/
|
|
108
|
+
getImportCategory(import_) {
|
|
109
|
+
var _a, _b;
|
|
110
|
+
// Type imports: import type { Foo } from 'module'
|
|
111
|
+
if ((_a = import_.importClause) === null || _a === void 0 ? void 0 : _a.typeOnly) {
|
|
112
|
+
return ImportCategory.Type;
|
|
113
|
+
}
|
|
114
|
+
// Side-effect imports: import 'module'
|
|
115
|
+
if (import_.importClause === undefined) {
|
|
116
|
+
return ImportCategory.SideEffect;
|
|
117
|
+
}
|
|
118
|
+
// Namespace imports: import * as foo from 'module'
|
|
119
|
+
if (((_b = import_.importClause.namedBindings) === null || _b === void 0 ? void 0 : _b.kind) === index_1.JS.Kind.Alias) {
|
|
120
|
+
const alias = import_.importClause.namedBindings;
|
|
121
|
+
if (alias.propertyName.element.simpleName === "*") {
|
|
122
|
+
return ImportCategory.Namespace;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
// Default imports (without named imports): import foo from 'module'
|
|
126
|
+
if (import_.importClause.name && !import_.importClause.namedBindings) {
|
|
127
|
+
return ImportCategory.Default;
|
|
128
|
+
}
|
|
129
|
+
// Default with named imports or just named imports: import foo, { bar } from 'module' or import { foo } from 'module'
|
|
130
|
+
return ImportCategory.Named;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Extract the module path from an import statement.
|
|
134
|
+
*/
|
|
135
|
+
getModulePath(import_) {
|
|
136
|
+
var _a, _b;
|
|
137
|
+
if (((_a = import_.moduleSpecifier) === null || _a === void 0 ? void 0 : _a.element.kind) === java_1.J.Kind.Literal) {
|
|
138
|
+
const literal = import_.moduleSpecifier.element;
|
|
139
|
+
// Remove quotes from the value
|
|
140
|
+
return String((_b = literal.value) !== null && _b !== void 0 ? _b : '');
|
|
141
|
+
}
|
|
142
|
+
return '';
|
|
143
|
+
}
|
|
144
|
+
countImports(cu) {
|
|
145
|
+
let i = 0;
|
|
146
|
+
while ((i < cu.statements.length) && (cu.statements[i].element.kind === index_1.JS.Kind.Import)) {
|
|
147
|
+
i++;
|
|
148
|
+
}
|
|
149
|
+
return i;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Sort named specifiers within each import statement alphabetically.
|
|
153
|
+
*/
|
|
154
|
+
sortNamedSpecifiersWithinImports(imports, useBraceSpaces) {
|
|
155
|
+
const ret = [];
|
|
156
|
+
for (const importPadded of imports) {
|
|
157
|
+
const import_ = importPadded.element;
|
|
158
|
+
if (this.hasNamedImports(import_)) {
|
|
159
|
+
const importSorted = (0, immer_1.produce)(import_, draft => {
|
|
160
|
+
var _a;
|
|
161
|
+
const namedBindings = draft.importClause.namedBindings;
|
|
162
|
+
let elements = namedBindings.elements.elements;
|
|
163
|
+
if (elements.length <= 1) {
|
|
164
|
+
return; // Nothing to sort
|
|
165
|
+
}
|
|
166
|
+
// Handle trailing comma
|
|
167
|
+
const trailingComma = elements.length > 0 &&
|
|
168
|
+
((_a = elements[elements.length - 1].markers) === null || _a === void 0 ? void 0 : _a.markers.find(m => m.kind === java_1.J.Markers.TrailingComma));
|
|
169
|
+
if (trailingComma) {
|
|
170
|
+
elements[elements.length - 1].markers.markers =
|
|
171
|
+
elements[elements.length - 1].markers.markers.filter(m => m.kind !== java_1.J.Markers.TrailingComma);
|
|
172
|
+
}
|
|
173
|
+
// Sort by the imported name (not alias)
|
|
174
|
+
elements.sort((a, b) => {
|
|
175
|
+
const nameA = this.getSpecifierSortKey(a.element);
|
|
176
|
+
const nameB = this.getSpecifierSortKey(b.element);
|
|
177
|
+
return nameA.localeCompare(nameB);
|
|
178
|
+
});
|
|
179
|
+
// Normalize spacing based on es6ImportExportBraces style
|
|
180
|
+
const braceSpace = useBraceSpaces ? " " : "";
|
|
181
|
+
for (let i = 0; i < elements.length; i++) {
|
|
182
|
+
if (i === 0) {
|
|
183
|
+
// First element: space after opening brace based on style
|
|
184
|
+
elements[i].element.prefix = { kind: java_1.J.Kind.Space, whitespace: braceSpace, comments: [] };
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
// Other elements: space after comma
|
|
188
|
+
elements[i].element.prefix = { kind: java_1.J.Kind.Space, whitespace: ' ', comments: [] };
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
// Last element: space before closing brace based on style
|
|
192
|
+
elements[elements.length - 1].after = { kind: java_1.J.Kind.Space, whitespace: braceSpace, comments: [] };
|
|
193
|
+
// Restore trailing comma to last element
|
|
194
|
+
if (trailingComma && elements.length > 0 &&
|
|
195
|
+
!elements[elements.length - 1].markers.markers.find(m => m.kind === java_1.J.Markers.TrailingComma)) {
|
|
196
|
+
elements[elements.length - 1].markers.markers.push(trailingComma);
|
|
197
|
+
}
|
|
198
|
+
});
|
|
199
|
+
ret.push((0, immer_1.produce)(importPadded, draft => {
|
|
200
|
+
draft.element = importSorted;
|
|
201
|
+
}));
|
|
202
|
+
}
|
|
203
|
+
else {
|
|
204
|
+
ret.push(importPadded);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
return ret;
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Check if an import has named imports that can be sorted.
|
|
211
|
+
*/
|
|
212
|
+
hasNamedImports(import_) {
|
|
213
|
+
var _a, _b;
|
|
214
|
+
if (((_b = (_a = import_.importClause) === null || _a === void 0 ? void 0 : _a.namedBindings) === null || _b === void 0 ? void 0 : _b.kind) === index_1.JS.Kind.NamedImports) {
|
|
215
|
+
const namedImports = import_.importClause.namedBindings;
|
|
216
|
+
return namedImports.elements.kind === java_1.J.Kind.Container &&
|
|
217
|
+
namedImports.elements.elements.length > 1;
|
|
218
|
+
}
|
|
219
|
+
return false;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Get the sort key for an import specifier (the original name, not alias).
|
|
223
|
+
*/
|
|
224
|
+
getSpecifierSortKey(specifier) {
|
|
225
|
+
if (specifier.specifier.kind === index_1.JS.Kind.Alias) {
|
|
226
|
+
// import { foo as bar } - sort by 'foo'
|
|
227
|
+
return specifier.specifier.propertyName.element.simpleName;
|
|
228
|
+
}
|
|
229
|
+
else if (specifier.specifier.kind === java_1.J.Kind.Identifier) {
|
|
230
|
+
// import { foo } - sort by 'foo'
|
|
231
|
+
return specifier.specifier.simpleName;
|
|
232
|
+
}
|
|
233
|
+
return '';
|
|
234
|
+
}
|
|
235
|
+
};
|
|
236
|
+
});
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
exports.OrderImports = OrderImports;
|
|
240
|
+
//# sourceMappingURL=order-imports.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-imports.js","sourceRoot":"","sources":["../../../src/javascript/recipes/order-imports.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export type { VariadicOptions, CaptureOptions, Capture, Any, TemplateParam, PatternOptions, MatchOptions, TemplateParameter, TemplateOptions, RewriteRule, RewriteConfig, DebugOptions, DebugLogEntry, MatchExplanation, MatchAttemptResult } from './types';
|
|
2
2
|
export { and, or, not, capture, any, param, raw, _ } from './capture';
|
|
3
3
|
export { Pattern, PatternBuilder, MatchResult, pattern } from './pattern';
|
|
4
|
-
export { rewrite, fromRecipe } from './rewrite';
|
|
4
|
+
export { rewrite, fromRecipe, flattenBlock } from './rewrite';
|
|
5
5
|
export { Template, TemplateBuilder, template } from './template';
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/index.ts"],"names":[],"mappings":"AAiBA,YAAY,EACR,eAAe,EACf,cAAc,EACd,OAAO,EACP,GAAG,EACH,aAAa,EACb,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,aAAa,EACb,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EACrB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACH,GAAG,EACH,EAAE,EACF,GAAG,EACH,OAAO,EACP,GAAG,EACH,KAAK,EACL,GAAG,EACH,CAAC,EACJ,MAAM,WAAW,CAAC;AAGnB,OAAO,EACH,OAAO,EACP,cAAc,EACd,WAAW,EACX,OAAO,EACV,MAAM,WAAW,CAAC;AAGnB,OAAO,EACH,OAAO,EACP,UAAU,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/index.ts"],"names":[],"mappings":"AAiBA,YAAY,EACR,eAAe,EACf,cAAc,EACd,OAAO,EACP,GAAG,EACH,aAAa,EACb,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,aAAa,EACb,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EACrB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACH,GAAG,EACH,EAAE,EACF,GAAG,EACH,OAAO,EACP,GAAG,EACH,KAAK,EACL,GAAG,EACH,CAAC,EACJ,MAAM,WAAW,CAAC;AAGnB,OAAO,EACH,OAAO,EACP,cAAc,EACd,WAAW,EACX,OAAO,EACV,MAAM,WAAW,CAAC;AAGnB,OAAO,EACH,OAAO,EACP,UAAU,EACV,YAAY,EACf,MAAM,WAAW,CAAC;AAGnB,OAAO,EACH,QAAQ,EACR,eAAe,EACf,QAAQ,EACX,MAAM,YAAY,CAAC"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.template = exports.TemplateBuilder = exports.Template = exports.fromRecipe = exports.rewrite = exports.pattern = exports.MatchResult = exports.PatternBuilder = exports.Pattern = exports._ = exports.raw = exports.param = exports.any = exports.capture = exports.not = exports.or = exports.and = void 0;
|
|
18
|
+
exports.template = exports.TemplateBuilder = exports.Template = exports.flattenBlock = exports.fromRecipe = exports.rewrite = exports.pattern = exports.MatchResult = exports.PatternBuilder = exports.Pattern = exports._ = exports.raw = exports.param = exports.any = exports.capture = exports.not = exports.or = exports.and = void 0;
|
|
19
19
|
// Export capture functionality
|
|
20
20
|
var capture_1 = require("./capture");
|
|
21
21
|
Object.defineProperty(exports, "and", { enumerable: true, get: function () { return capture_1.and; } });
|
|
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "pattern", { enumerable: true, get: function () {
|
|
|
36
36
|
var rewrite_1 = require("./rewrite");
|
|
37
37
|
Object.defineProperty(exports, "rewrite", { enumerable: true, get: function () { return rewrite_1.rewrite; } });
|
|
38
38
|
Object.defineProperty(exports, "fromRecipe", { enumerable: true, get: function () { return rewrite_1.fromRecipe; } });
|
|
39
|
+
Object.defineProperty(exports, "flattenBlock", { enumerable: true, get: function () { return rewrite_1.flattenBlock; } });
|
|
39
40
|
// Export template functionality
|
|
40
41
|
var template_1 = require("./template");
|
|
41
42
|
Object.defineProperty(exports, "Template", { enumerable: true, get: function () { return template_1.Template; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/javascript/templating/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAqBH,+BAA+B;AAC/B,qCASmB;AARf,8FAAA,GAAG,OAAA;AACH,6FAAA,EAAE,OAAA;AACF,8FAAA,GAAG,OAAA;AACH,kGAAA,OAAO,OAAA;AACP,8FAAA,GAAG,OAAA;AACH,gGAAA,KAAK,OAAA;AACL,8FAAA,GAAG,OAAA;AACH,4FAAA,CAAC,OAAA;AAGL,+BAA+B;AAC/B,qCAKmB;AAJf,kGAAA,OAAO,OAAA;AACP,yGAAA,cAAc,OAAA;AACd,sGAAA,WAAW,OAAA;AACX,kGAAA,OAAO,OAAA;AAGX,+BAA+B;AAC/B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/javascript/templating/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAqBH,+BAA+B;AAC/B,qCASmB;AARf,8FAAA,GAAG,OAAA;AACH,6FAAA,EAAE,OAAA;AACF,8FAAA,GAAG,OAAA;AACH,kGAAA,OAAO,OAAA;AACP,8FAAA,GAAG,OAAA;AACH,gGAAA,KAAK,OAAA;AACL,8FAAA,GAAG,OAAA;AACH,4FAAA,CAAC,OAAA;AAGL,+BAA+B;AAC/B,qCAKmB;AAJf,kGAAA,OAAO,OAAA;AACP,yGAAA,cAAc,OAAA;AACd,sGAAA,WAAW,OAAA;AACX,kGAAA,OAAO,OAAA;AAGX,+BAA+B;AAC/B,qCAImB;AAHf,kGAAA,OAAO,OAAA;AACP,qGAAA,UAAU,OAAA;AACV,uGAAA,YAAY,OAAA;AAGhB,gCAAgC;AAChC,uCAIoB;AAHhB,oGAAA,QAAQ,OAAA;AACR,2GAAA,eAAe,OAAA;AACf,oGAAA,QAAQ,OAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { ExecutionContext, Recipe } from '../..';
|
|
2
|
-
import {
|
|
1
|
+
import { ExecutionContext, Recipe, TreeVisitor } from '../..';
|
|
2
|
+
import { J } from '../../java';
|
|
3
|
+
import { RewriteConfig, RewriteRule } from './types';
|
|
3
4
|
/**
|
|
4
5
|
* Creates a replacement rule using a capture context and configuration.
|
|
5
6
|
*
|
|
@@ -81,4 +82,37 @@ export declare function rewrite(builderFn: () => RewriteConfig): RewriteRule;
|
|
|
81
82
|
* ```
|
|
82
83
|
*/
|
|
83
84
|
export declare const fromRecipe: (recipe: Recipe, ctx: ExecutionContext) => RewriteRule;
|
|
85
|
+
/**
|
|
86
|
+
* Registers an after-visitor that will flatten a block's statements into its parent block.
|
|
87
|
+
*
|
|
88
|
+
* When a rewrite template produces a J.Block containing multiple statements, but you want
|
|
89
|
+
* those statements to be inserted directly into the parent block (not nested), use this
|
|
90
|
+
* function to register a follow-up visitor that performs the flattening.
|
|
91
|
+
*
|
|
92
|
+
* @param visitor The current visitor instance (to register the after-visitor)
|
|
93
|
+
* @param block The block whose statements should be flattened into its parent
|
|
94
|
+
* @returns The block (for chaining in return statements)
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```typescript
|
|
98
|
+
* override async visitReturn(ret: J.Return, ctx: ExecutionContext): Promise<J | undefined> {
|
|
99
|
+
* const result = await rewrite(() => ({
|
|
100
|
+
* before: pattern`return #{cond} || #{arr}.some(#{cb})`,
|
|
101
|
+
* after: template`{
|
|
102
|
+
* if (#{cond}) return true;
|
|
103
|
+
* for (const item of #{arr}) {
|
|
104
|
+
* if (await #{cb}(item)) return true;
|
|
105
|
+
* }
|
|
106
|
+
* return false;
|
|
107
|
+
* }`
|
|
108
|
+
* })).tryOn(this.cursor, ret);
|
|
109
|
+
*
|
|
110
|
+
* if (result && result.kind === J.Kind.Block) {
|
|
111
|
+
* return flattenBlock(this, result as J.Block);
|
|
112
|
+
* }
|
|
113
|
+
* return result ?? ret;
|
|
114
|
+
* }
|
|
115
|
+
* ```
|
|
116
|
+
*/
|
|
117
|
+
export declare function flattenBlock<P>(visitor: TreeVisitor<any, P>, block: J.Block): J.Block;
|
|
84
118
|
//# sourceMappingURL=rewrite.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewrite.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/rewrite.ts"],"names":[],"mappings":"AAeA,OAAO,EAAS,gBAAgB,EAAE,MAAM,EAAC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"rewrite.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/rewrite.ts"],"names":[],"mappings":"AAeA,OAAO,EAAS,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAC,MAAM,OAAO,CAAC;AACpE,OAAO,EAAC,CAAC,EAAY,MAAM,YAAY,CAAC;AACxC,OAAO,EAAoC,aAAa,EAAE,WAAW,EAAC,MAAM,SAAS,CAAC;AAoGtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAgB,OAAO,CACnB,SAAS,EAAE,MAAM,aAAa,GAC/B,WAAW,CAcb;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,UAAU,GAAI,QAAQ,MAAM,EAAE,KAAK,gBAAgB,KAAG,WAgBlE,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC1B,OAAO,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,EAC5B,KAAK,EAAE,CAAC,CAAC,KAAK,GACf,CAAC,CAAC,KAAK,CA+CT"}
|
|
@@ -11,6 +11,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.fromRecipe = void 0;
|
|
13
13
|
exports.rewrite = rewrite;
|
|
14
|
+
exports.flattenBlock = flattenBlock;
|
|
15
|
+
const visitor_1 = require("../visitor");
|
|
14
16
|
/**
|
|
15
17
|
* Implementation of a replacement rule.
|
|
16
18
|
*/
|
|
@@ -206,4 +208,78 @@ const fromRecipe = (recipe, ctx) => {
|
|
|
206
208
|
})();
|
|
207
209
|
};
|
|
208
210
|
exports.fromRecipe = fromRecipe;
|
|
211
|
+
/**
|
|
212
|
+
* Registers an after-visitor that will flatten a block's statements into its parent block.
|
|
213
|
+
*
|
|
214
|
+
* When a rewrite template produces a J.Block containing multiple statements, but you want
|
|
215
|
+
* those statements to be inserted directly into the parent block (not nested), use this
|
|
216
|
+
* function to register a follow-up visitor that performs the flattening.
|
|
217
|
+
*
|
|
218
|
+
* @param visitor The current visitor instance (to register the after-visitor)
|
|
219
|
+
* @param block The block whose statements should be flattened into its parent
|
|
220
|
+
* @returns The block (for chaining in return statements)
|
|
221
|
+
*
|
|
222
|
+
* @example
|
|
223
|
+
* ```typescript
|
|
224
|
+
* override async visitReturn(ret: J.Return, ctx: ExecutionContext): Promise<J | undefined> {
|
|
225
|
+
* const result = await rewrite(() => ({
|
|
226
|
+
* before: pattern`return #{cond} || #{arr}.some(#{cb})`,
|
|
227
|
+
* after: template`{
|
|
228
|
+
* if (#{cond}) return true;
|
|
229
|
+
* for (const item of #{arr}) {
|
|
230
|
+
* if (await #{cb}(item)) return true;
|
|
231
|
+
* }
|
|
232
|
+
* return false;
|
|
233
|
+
* }`
|
|
234
|
+
* })).tryOn(this.cursor, ret);
|
|
235
|
+
*
|
|
236
|
+
* if (result && result.kind === J.Kind.Block) {
|
|
237
|
+
* return flattenBlock(this, result as J.Block);
|
|
238
|
+
* }
|
|
239
|
+
* return result ?? ret;
|
|
240
|
+
* }
|
|
241
|
+
* ```
|
|
242
|
+
*/
|
|
243
|
+
function flattenBlock(visitor, block) {
|
|
244
|
+
// Create a visitor that will flatten this specific block when found in a parent block
|
|
245
|
+
const flattenVisitor = new class extends visitor_1.JavaScriptVisitor {
|
|
246
|
+
visitBlock(parentBlock, p) {
|
|
247
|
+
const _super = Object.create(null, {
|
|
248
|
+
visitBlock: { get: () => super.visitBlock }
|
|
249
|
+
});
|
|
250
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
251
|
+
let modified = false;
|
|
252
|
+
const newStatements = [];
|
|
253
|
+
for (const stmt of parentBlock.statements) {
|
|
254
|
+
// Check if this statement is the block we want to flatten
|
|
255
|
+
if (stmt.element === block || stmt.element.id === block.id) {
|
|
256
|
+
// Splice in the inner block's statements
|
|
257
|
+
for (let i = 0; i < block.statements.length; i++) {
|
|
258
|
+
const innerStmt = block.statements[i];
|
|
259
|
+
if (i === 0) {
|
|
260
|
+
// First statement inherits the outer statement's padding
|
|
261
|
+
newStatements.push(Object.assign(Object.assign({}, innerStmt), { element: Object.assign(Object.assign({}, innerStmt.element), { prefix: stmt.element.prefix // Use the original statement's prefix
|
|
262
|
+
}) }));
|
|
263
|
+
}
|
|
264
|
+
else {
|
|
265
|
+
newStatements.push(innerStmt);
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
modified = true;
|
|
269
|
+
}
|
|
270
|
+
else {
|
|
271
|
+
newStatements.push(stmt);
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
if (modified) {
|
|
275
|
+
return Object.assign(Object.assign({}, parentBlock), { statements: newStatements });
|
|
276
|
+
}
|
|
277
|
+
return _super.visitBlock.call(this, parentBlock, p);
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
}();
|
|
281
|
+
// Register the flatten visitor to run after the main visitor completes
|
|
282
|
+
visitor.afterVisit.push(flattenVisitor);
|
|
283
|
+
return block;
|
|
284
|
+
}
|
|
209
285
|
//# sourceMappingURL=rewrite.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewrite.js","sourceRoot":"","sources":["../../../src/javascript/templating/rewrite.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"rewrite.js","sourceRoot":"","sources":["../../../src/javascript/templating/rewrite.ts"],"names":[],"mappings":"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"}
|