@atlaskit/codemod-cli 0.11.4 → 0.12.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.
Files changed (60) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/cjs/cli.js +72 -75
  3. package/dist/cjs/filepath.js +29 -83
  4. package/dist/cjs/index.js +3 -6
  5. package/dist/cjs/main.js +165 -441
  6. package/dist/cjs/presets/css-to-design-tokens/css-to-design-tokens.js +44 -135
  7. package/dist/cjs/presets/css-to-design-tokens/utils/legacy-colors.js +3 -4
  8. package/dist/cjs/presets/css-to-design-tokens/utils/meta.js +6 -29
  9. package/dist/cjs/presets/index.js +2 -9
  10. package/dist/cjs/presets/styled-to-emotion/styled-to-emotion.js +13 -25
  11. package/dist/cjs/presets/theme-to-design-tokens/theme-to-design-tokens.js +34 -82
  12. package/dist/cjs/presets/theme-to-design-tokens/utils/ast-meta.js +14 -41
  13. package/dist/cjs/presets/theme-to-design-tokens/utils/ast.js +0 -2
  14. package/dist/cjs/presets/theme-to-design-tokens/utils/color.js +9 -28
  15. package/dist/cjs/presets/theme-to-design-tokens/utils/fuzzy-search.js +44 -106
  16. package/dist/cjs/presets/theme-to-design-tokens/utils/legacy-colors.js +3 -3
  17. package/dist/cjs/presets/theme-to-design-tokens/utils/named-colors.js +1 -1
  18. package/dist/cjs/presets/theme-to-design-tokens/utils/tokens.js +2 -22
  19. package/dist/cjs/sinceRef.js +36 -92
  20. package/dist/cjs/transforms.js +27 -72
  21. package/dist/cjs/types.js +2 -45
  22. package/dist/cjs/utils.js +7 -20
  23. package/dist/cjs/version.json +1 -1
  24. package/dist/es2019/filepath.js +7 -5
  25. package/dist/es2019/main.js +17 -51
  26. package/dist/es2019/presets/css-to-design-tokens/css-to-design-tokens.js +19 -51
  27. package/dist/es2019/presets/css-to-design-tokens/utils/legacy-colors.js +0 -1
  28. package/dist/es2019/presets/css-to-design-tokens/utils/meta.js +0 -6
  29. package/dist/es2019/presets/index.js +1 -1
  30. package/dist/es2019/presets/styled-to-emotion/styled-to-emotion.js +1 -4
  31. package/dist/es2019/presets/theme-to-design-tokens/theme-to-design-tokens.js +4 -14
  32. package/dist/es2019/presets/theme-to-design-tokens/utils/ast-meta.js +2 -11
  33. package/dist/es2019/presets/theme-to-design-tokens/utils/color.js +2 -7
  34. package/dist/es2019/presets/theme-to-design-tokens/utils/fuzzy-search.js +38 -95
  35. package/dist/es2019/presets/theme-to-design-tokens/utils/tokens.js +0 -1
  36. package/dist/es2019/sinceRef.js +2 -11
  37. package/dist/es2019/transforms.js +3 -13
  38. package/dist/es2019/types.js +1 -0
  39. package/dist/es2019/utils.js +1 -12
  40. package/dist/es2019/version.json +1 -1
  41. package/dist/esm/cli.js +53 -57
  42. package/dist/esm/filepath.js +51 -63
  43. package/dist/esm/main.js +221 -322
  44. package/dist/esm/presets/css-to-design-tokens/css-to-design-tokens.js +33 -71
  45. package/dist/esm/presets/css-to-design-tokens/utils/legacy-colors.js +0 -1
  46. package/dist/esm/presets/css-to-design-tokens/utils/meta.js +0 -6
  47. package/dist/esm/presets/index.js +1 -1
  48. package/dist/esm/presets/styled-to-emotion/styled-to-emotion.js +1 -4
  49. package/dist/esm/presets/theme-to-design-tokens/theme-to-design-tokens.js +4 -15
  50. package/dist/esm/presets/theme-to-design-tokens/utils/ast-meta.js +2 -11
  51. package/dist/esm/presets/theme-to-design-tokens/utils/color.js +2 -7
  52. package/dist/esm/presets/theme-to-design-tokens/utils/fuzzy-search.js +38 -95
  53. package/dist/esm/presets/theme-to-design-tokens/utils/tokens.js +0 -1
  54. package/dist/esm/sinceRef.js +49 -65
  55. package/dist/esm/transforms.js +4 -14
  56. package/dist/esm/types.js +1 -11
  57. package/dist/esm/utils.js +1 -12
  58. package/dist/esm/version.json +1 -1
  59. package/package.json +2 -2
  60. package/tmp/api-report-tmp.d.ts +0 -66
package/dist/esm/main.js CHANGED
@@ -1,37 +1,26 @@
1
1
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
2
  import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
3
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
-
5
4
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
6
-
7
5
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
-
9
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
-
6
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
7
  import _regeneratorRuntime from "@babel/runtime/regenerator";
12
-
13
8
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
14
-
15
9
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
16
-
17
10
  import chalk from 'chalk';
18
11
  import fs from 'fs';
19
12
  import spawn from 'projector-spawn';
20
13
  import { AutoComplete } from 'enquirer';
21
14
  import semver from 'semver';
22
-
23
15
  var jscodeshift = require.resolve('.bin/jscodeshift');
24
-
25
16
  import { fixLineEnding } from './utils';
26
17
  import { getTransforms, getTransformPath, hasTransform, parseTransformPath, getTransformModule } from './transforms';
27
18
  import { ValidationError, NoTransformsExistError } from './types';
28
19
  import { getPackagesSinceRef } from './sinceRef';
29
20
  import { findDependentPackagePaths } from './filepath';
30
-
31
21
  var applyTransformMeta = function applyTransformMeta(transforms) {
32
22
  return transforms.map(function (transform) {
33
23
  var moduleMatch = transform.dir.match(/\/@atlaskit\/[^\/]+\//);
34
-
35
24
  if (moduleMatch) {
36
25
  var moduleName = moduleMatch[0].substring(1, moduleMatch[0].length - 1);
37
26
  var transformName = transform.name === 'index' ? transform.dir.slice(transform.dir.lastIndexOf('/') + 1) : transform.name;
@@ -39,225 +28,181 @@ var applyTransformMeta = function applyTransformMeta(transforms) {
39
28
  id: "".concat(moduleName, ": ").concat(transformName)
40
29
  });
41
30
  }
42
-
43
31
  var presetMatch = transform.dir.match(/\/codemod-cli\/.+\/presets/);
44
-
45
32
  if (presetMatch) {
46
33
  var _transformName = transform.name === 'index' ? transform.dir.slice(transform.dir.lastIndexOf('/') + 1) : transform.name;
47
-
48
34
  return _objectSpread(_objectSpread({}, transform), {}, {
49
35
  id: "@atlaskit/codemod-cli: ".concat(_transformName)
50
36
  });
51
37
  }
52
-
53
38
  return _objectSpread(_objectSpread({}, transform), {}, {
54
39
  id: "".concat(transform.dir, "/").concat(transform.name)
55
40
  });
56
41
  });
57
42
  };
58
-
59
43
  var getTransformPrompt = /*#__PURE__*/function () {
60
44
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(transforms) {
61
45
  var transformMeta;
62
46
  return _regeneratorRuntime.wrap(function _callee$(_context) {
63
- while (1) {
64
- switch (_context.prev = _context.next) {
65
- case 0:
66
- transformMeta = applyTransformMeta(transforms);
67
- _context.next = 3;
68
- return new AutoComplete({
69
- message: 'Select which transform would you like to run? 🤔',
70
- limit: 18,
71
- choices: transformMeta.map(function (_ref2) {
72
- var id = _ref2.id,
73
- name = _ref2.name,
74
- dir = _ref2.dir;
75
- return id ? id : "".concat(dir, "/").concat(name);
76
- }),
77
- result: function result(choice) {
78
- return transformMeta.find(function (_ref3) {
79
- var id = _ref3.id,
80
- dir = _ref3.dir;
81
- return id === choice || dir === choice;
82
- });
83
- }
84
- }).run();
85
-
86
- case 3:
87
- return _context.abrupt("return", _context.sent);
88
-
89
- case 4:
90
- case "end":
91
- return _context.stop();
92
- }
47
+ while (1) switch (_context.prev = _context.next) {
48
+ case 0:
49
+ transformMeta = applyTransformMeta(transforms);
50
+ _context.next = 3;
51
+ return new AutoComplete({
52
+ message: 'Select which transform would you like to run? 🤔',
53
+ limit: 18,
54
+ choices: transformMeta.map(function (_ref2) {
55
+ var id = _ref2.id,
56
+ name = _ref2.name,
57
+ dir = _ref2.dir;
58
+ return id ? id : "".concat(dir, "/").concat(name);
59
+ }),
60
+ result: function result(choice) {
61
+ return transformMeta.find(function (_ref3) {
62
+ var id = _ref3.id,
63
+ dir = _ref3.dir;
64
+ return id === choice || dir === choice;
65
+ });
66
+ }
67
+ }).run();
68
+ case 3:
69
+ return _context.abrupt("return", _context.sent);
70
+ case 4:
71
+ case "end":
72
+ return _context.stop();
93
73
  }
94
74
  }, _callee);
95
75
  }));
96
-
97
76
  return function getTransformPrompt(_x) {
98
77
  return _ref.apply(this, arguments);
99
78
  };
100
79
  }();
101
-
102
80
  var resolveTransform = /*#__PURE__*/function () {
103
81
  var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(flags, transforms) {
104
82
  var transform;
105
83
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
106
- while (1) {
107
- switch (_context2.prev = _context2.next) {
108
- case 0:
109
- if (!flags.preset) {
110
- _context2.next = 7;
111
- break;
112
- }
113
-
114
- transform = transforms.find(function (_ref5) {
115
- var name = _ref5.name;
116
- return name === flags.preset;
117
- });
118
-
119
- if (transform) {
120
- _context2.next = 6;
121
- break;
122
- }
123
-
124
- console.warn("No preset found for: ".concat(chalk.bgRed(flags.preset)));
84
+ while (1) switch (_context2.prev = _context2.next) {
85
+ case 0:
86
+ if (!flags.preset) {
125
87
  _context2.next = 7;
126
88
  break;
127
-
128
- case 6:
129
- return _context2.abrupt("return", transform);
130
-
131
- case 7:
132
- if (!(flags.transform && hasTransform(flags.transform))) {
133
- _context2.next = 9;
134
- break;
135
- }
136
-
137
- return _context2.abrupt("return", parseTransformPath(flags.transform));
138
-
139
- case 9:
140
- if (flags.transform && !hasTransform(flags.transform)) {
141
- console.warn("No available transform found for: ".concat(chalk.bgRed(flags.transform)));
142
- }
143
-
144
- _context2.next = 12;
145
- return getTransformPrompt(transforms);
146
-
147
- case 12:
148
- return _context2.abrupt("return", _context2.sent);
149
-
150
- case 13:
151
- case "end":
152
- return _context2.stop();
153
- }
89
+ }
90
+ transform = transforms.find(function (_ref5) {
91
+ var name = _ref5.name;
92
+ return name === flags.preset;
93
+ });
94
+ if (transform) {
95
+ _context2.next = 6;
96
+ break;
97
+ }
98
+ console.warn("No preset found for: ".concat(chalk.bgRed(flags.preset)));
99
+ _context2.next = 7;
100
+ break;
101
+ case 6:
102
+ return _context2.abrupt("return", transform);
103
+ case 7:
104
+ if (!(flags.transform && hasTransform(flags.transform))) {
105
+ _context2.next = 9;
106
+ break;
107
+ }
108
+ return _context2.abrupt("return", parseTransformPath(flags.transform));
109
+ case 9:
110
+ if (flags.transform && !hasTransform(flags.transform)) {
111
+ console.warn("No available transform found for: ".concat(chalk.bgRed(flags.transform)));
112
+ }
113
+ _context2.next = 12;
114
+ return getTransformPrompt(transforms);
115
+ case 12:
116
+ return _context2.abrupt("return", _context2.sent);
117
+ case 13:
118
+ case "end":
119
+ return _context2.stop();
154
120
  }
155
121
  }, _callee2);
156
122
  }));
157
-
158
123
  return function resolveTransform(_x2, _x3) {
159
124
  return _ref4.apply(this, arguments);
160
125
  };
161
126
  }();
162
-
163
127
  var runTransform = /*#__PURE__*/function () {
164
128
  var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(filePaths, transform, flags) {
165
129
  var logger, codemodDirs, transformPath, args, jscodeshiftContent, jscodeshiftContentNew;
166
130
  return _regeneratorRuntime.wrap(function _callee3$(_context3) {
167
- while (1) {
168
- switch (_context3.prev = _context3.next) {
169
- case 0:
170
- logger = flags.logger;
171
- logger.log(chalk.green("Running transform '".concat(chalk.bold(transform.name), "' over ").concat(chalk.bold(filePaths.join(', ')), "...")));
131
+ while (1) switch (_context3.prev = _context3.next) {
132
+ case 0:
133
+ logger = flags.logger;
134
+ logger.log(chalk.green("Running transform '".concat(chalk.bold(transform.name), "' over ").concat(chalk.bold(filePaths.join(', ')), "...")));
135
+ codemodDirs = filePaths;
136
+ if (!flags.filterPaths) {
137
+ _context3.next = 9;
138
+ break;
139
+ }
140
+ logger.log(chalk.green("Running filtering logic for module ".concat(transform.module, "...")));
141
+ _context3.next = 7;
142
+ return findDependentPackagePaths(filePaths, transform.module);
143
+ case 7:
144
+ codemodDirs = _context3.sent;
145
+ if (codemodDirs.length === 0) {
146
+ // Fallback to non-filter logic if filtering returns no directories
147
+ logger.log(chalk.yellow("Could not filter source paths for ".concat(transform.module, ", falling back to running over all specified paths. (See --no-filter-paths flag)")));
172
148
  codemodDirs = filePaths;
173
-
174
- if (!flags.filterPaths) {
175
- _context3.next = 9;
176
- break;
177
- }
178
-
179
- logger.log(chalk.green("Running filtering logic for module ".concat(transform.module, "...")));
180
- _context3.next = 7;
181
- return findDependentPackagePaths(filePaths, transform.module);
182
-
183
- case 7:
184
- codemodDirs = _context3.sent;
185
-
186
- if (codemodDirs.length === 0) {
187
- // Fallback to non-filter logic if filtering returns no directories
188
- logger.log(chalk.yellow("Could not filter source paths for ".concat(transform.module, ", falling back to running over all specified paths. (See --no-filter-paths flag)")));
189
- codemodDirs = filePaths;
190
- } else {
191
- logger.log(chalk.green("Running transform '".concat(chalk.bold(transform.name), "' over filtered dirs ").concat(chalk.bold(codemodDirs.join(', ')), "...")));
192
- }
193
-
194
- case 9:
195
- logger.log(chalk.green("Transforming files matching these extensions '".concat(chalk.bold(flags.extensions), "'...")));
196
- transformPath = getTransformPath(transform); // Limit CPUs to 8 to prevent issues when running on CI with a large amount of cpus
197
-
198
- args = ["--transform=".concat(transformPath), "--ignore-pattern=".concat(flags.ignorePattern), "--parser=".concat(flags.parser), "--extensions=".concat(flags.extensions), '--cpus=8'].concat(_toConsumableArray(codemodDirs));
199
-
200
- if (flags.failOnError) {
201
- args.unshift('--fail-on-error');
202
- } // To avoid https://github.com/facebook/jscodeshift/issues/424 where the jscodeshift.js file is `CRLF` ending.
203
- // The workaround to use only the `node_modules` indicated in this ticket will not work as we run this code as CLI in products repository
204
- // that may not have jscodeshift installed.
205
-
206
-
207
- jscodeshiftContent = fs.readFileSync(jscodeshift, 'utf8');
208
- jscodeshiftContentNew = fixLineEnding(jscodeshiftContent, 'LF');
209
- fs.writeFileSync(jscodeshift, jscodeshiftContentNew);
210
- _context3.next = 18;
211
- return spawn(jscodeshift, args, {
212
- stdio: 'inherit'
213
- });
214
-
215
- case 18:
216
- case "end":
217
- return _context3.stop();
218
- }
149
+ } else {
150
+ logger.log(chalk.green("Running transform '".concat(chalk.bold(transform.name), "' over filtered dirs ").concat(chalk.bold(codemodDirs.join(', ')), "...")));
151
+ }
152
+ case 9:
153
+ logger.log(chalk.green("Transforming files matching these extensions '".concat(chalk.bold(flags.extensions), "'...")));
154
+ transformPath = getTransformPath(transform); // Limit CPUs to 8 to prevent issues when running on CI with a large amount of cpus
155
+ args = ["--transform=".concat(transformPath), "--ignore-pattern=".concat(flags.ignorePattern), "--parser=".concat(flags.parser), "--extensions=".concat(flags.extensions), '--cpus=8'].concat(_toConsumableArray(codemodDirs));
156
+ if (flags.failOnError) {
157
+ args.unshift('--fail-on-error');
158
+ }
159
+
160
+ // To avoid https://github.com/facebook/jscodeshift/issues/424 where the jscodeshift.js file is `CRLF` ending.
161
+ // The workaround to use only the `node_modules` indicated in this ticket will not work as we run this code as CLI in products repository
162
+ // that may not have jscodeshift installed.
163
+ jscodeshiftContent = fs.readFileSync(jscodeshift, 'utf8');
164
+ jscodeshiftContentNew = fixLineEnding(jscodeshiftContent, 'LF');
165
+ fs.writeFileSync(jscodeshift, jscodeshiftContentNew);
166
+ _context3.next = 18;
167
+ return spawn(jscodeshift, args, {
168
+ stdio: 'inherit'
169
+ });
170
+ case 18:
171
+ case "end":
172
+ return _context3.stop();
219
173
  }
220
174
  }, _callee3);
221
175
  }));
222
-
223
176
  return function runTransform(_x4, _x5, _x6) {
224
177
  return _ref6.apply(this, arguments);
225
178
  };
226
179
  }();
227
-
228
180
  var parsePkg = function parsePkg(pkg) {
229
181
  if (!pkg.startsWith('@')) {
230
182
  throw new ValidationError('Package names must be fully qualified and begin with "@"');
231
183
  }
232
-
233
184
  var name = pkg;
234
185
  var version = null;
235
186
  var parts = pkg.split('@');
236
-
237
187
  if (parts.length > 2) {
238
188
  name = "@".concat(parts[1]);
239
189
  version = parts[parts.length - 1];
240
190
  }
241
-
242
191
  return {
243
192
  name: name,
244
193
  version: version
245
194
  };
246
195
  };
247
-
248
196
  var parsePackagesFlag = function parsePackagesFlag(packages) {
249
197
  return packages.split(',').map(parsePkg);
250
198
  };
251
-
252
199
  var validatePackages = function validatePackages(packages, errorCallback) {
253
200
  if (!packages) {
254
201
  return;
255
202
  }
256
-
257
203
  var errors = [];
258
204
  var transformedPackages = packages.map(function (pkg) {
259
205
  var version = null;
260
-
261
206
  if (pkg.version != null) {
262
207
  if (semver.validRange(pkg.version)) {
263
208
  version = semver.valid(semver.minVersion(pkg.version));
@@ -265,80 +210,63 @@ var validatePackages = function validatePackages(packages, errorCallback) {
265
210
  errors.push("Invalid version \"".concat(pkg.version, "\" for package \"").concat(pkg.name, "\""));
266
211
  }
267
212
  }
268
-
269
213
  return _objectSpread(_objectSpread({}, pkg), {}, {
270
214
  version: version
271
215
  });
272
216
  });
273
-
274
217
  if (errors.length > 0) {
275
218
  errorCallback && errorCallback(errors);
276
219
  }
277
-
278
220
  return transformedPackages;
279
221
  };
280
-
281
222
  var parseArgs = /*#__PURE__*/function () {
282
223
  var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(input, flags) {
283
224
  var packages, unvalidatedPackages, _unvalidatedPackages;
284
-
285
225
  return _regeneratorRuntime.wrap(function _callee4$(_context4) {
286
- while (1) {
287
- switch (_context4.prev = _context4.next) {
288
- case 0:
289
- if (input[0]) {
290
- _context4.next = 2;
291
- break;
292
- }
293
-
294
- throw new ValidationError('Please supply a path to the source files you wish to modify');
295
-
296
- case 2:
297
- if (!flags.packages) {
298
- _context4.next = 7;
299
- break;
300
- }
301
-
302
- unvalidatedPackages = parsePackagesFlag(flags.packages);
303
- packages = validatePackages(unvalidatedPackages, function (errors) {
304
- throw new ValidationError(errors.join('\n'));
305
- });
226
+ while (1) switch (_context4.prev = _context4.next) {
227
+ case 0:
228
+ if (input[0]) {
229
+ _context4.next = 2;
230
+ break;
231
+ }
232
+ throw new ValidationError('Please supply a path to the source files you wish to modify');
233
+ case 2:
234
+ if (!flags.packages) {
235
+ _context4.next = 7;
236
+ break;
237
+ }
238
+ unvalidatedPackages = parsePackagesFlag(flags.packages);
239
+ packages = validatePackages(unvalidatedPackages, function (errors) {
240
+ throw new ValidationError(errors.join('\n'));
241
+ });
242
+ _context4.next = 12;
243
+ break;
244
+ case 7:
245
+ if (!flags.sinceRef) {
306
246
  _context4.next = 12;
307
247
  break;
308
-
309
- case 7:
310
- if (!flags.sinceRef) {
311
- _context4.next = 12;
312
- break;
313
- }
314
-
315
- _context4.next = 10;
316
- return getPackagesSinceRef(flags.sinceRef);
317
-
318
- case 10:
319
- _unvalidatedPackages = _context4.sent;
320
- packages = validatePackages(_unvalidatedPackages, function (errors) {
321
- throw new Error("Detected invalid previous versions of packages upgraded since \"".concat(flags.sinceRef, "\". Previous versions must be valid semver.\n").concat(errors.join('\n')));
322
- });
323
-
324
- case 12:
325
- return _context4.abrupt("return", {
326
- packages: packages
327
- });
328
-
329
- case 13:
330
- case "end":
331
- return _context4.stop();
332
- }
248
+ }
249
+ _context4.next = 10;
250
+ return getPackagesSinceRef(flags.sinceRef);
251
+ case 10:
252
+ _unvalidatedPackages = _context4.sent;
253
+ packages = validatePackages(_unvalidatedPackages, function (errors) {
254
+ throw new Error("Detected invalid previous versions of packages upgraded since \"".concat(flags.sinceRef, "\". Previous versions must be valid semver.\n").concat(errors.join('\n')));
255
+ });
256
+ case 12:
257
+ return _context4.abrupt("return", {
258
+ packages: packages
259
+ });
260
+ case 13:
261
+ case "end":
262
+ return _context4.stop();
333
263
  }
334
264
  }, _callee4);
335
265
  }));
336
-
337
266
  return function parseArgs(_x7, _x8) {
338
267
  return _ref7.apply(this, arguments);
339
268
  };
340
269
  }();
341
-
342
270
  var defaultFlags = {
343
271
  parser: 'babel',
344
272
  extensions: 'js',
@@ -348,127 +276,98 @@ var defaultFlags = {
348
276
  export default function main(_x9, _x10) {
349
277
  return _main.apply(this, arguments);
350
278
  }
351
-
352
279
  function _main() {
353
280
  _main = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee5(input, userFlags) {
354
281
  var flags, logger, _yield$parseArgs, packages, _process$env$_PACKAGE, _PACKAGE_VERSION_, shouldHavePackages, availableTransforms, transforms, transformsWithModule, _iterator, _step, transform;
355
-
356
282
  return _regeneratorRuntime.wrap(function _callee5$(_context5) {
357
- while (1) {
358
- switch (_context5.prev = _context5.next) {
359
- case 0:
360
- flags = _objectSpread(_objectSpread({}, defaultFlags), userFlags);
361
- logger = flags.logger;
362
- _context5.next = 4;
363
- return parseArgs(input, flags);
364
-
365
- case 4:
366
- _yield$parseArgs = _context5.sent;
367
- packages = _yield$parseArgs.packages;
368
- _process$env$_PACKAGE = "0.11.4", _PACKAGE_VERSION_ = _process$env$_PACKAGE === void 0 ? '0.0.0-dev' : _process$env$_PACKAGE;
369
- logger.log(chalk.bgBlue(chalk.black("\uD83D\uDCDA Atlassian-Frontend codemod library @ ".concat(_PACKAGE_VERSION_, " \uD83D\uDCDA"))));
370
-
371
- if (packages && packages.length > 0) {
372
- logger.log(chalk.gray("Searching for codemods for newer versions of the following packages: ".concat(packages.map(function (pkg) {
373
- return "".concat(pkg.name).concat(pkg.version ? '@' + pkg.version : '');
374
- }))));
375
- }
376
-
377
- shouldHavePackages = flags.sinceRef || flags.packages && flags.packages.length > 0;
378
-
379
- if (!(shouldHavePackages && (packages === null || packages === void 0 ? void 0 : packages.length) === 0)) {
380
- _context5.next = 13;
381
- break;
382
- }
383
-
384
- logger.log(chalk.gray("Did not find updated packages, exiting"));
385
- return _context5.abrupt("return", {
386
- transforms: []
387
- });
388
-
389
- case 13:
390
- availableTransforms = getTransforms(packages);
391
-
392
- if (!(availableTransforms.length === 0)) {
393
- _context5.next = 16;
394
- break;
395
- }
396
-
397
- throw new NoTransformsExistError('No codemods available. Please make sure you have the latest version of the packages you are trying to upgrade before running the codemod');
398
-
399
- case 16:
400
- if (!packages) {
401
- _context5.next = 20;
402
- break;
403
- }
404
-
405
- _context5.t0 = availableTransforms;
406
- _context5.next = 24;
283
+ while (1) switch (_context5.prev = _context5.next) {
284
+ case 0:
285
+ flags = _objectSpread(_objectSpread({}, defaultFlags), userFlags);
286
+ logger = flags.logger;
287
+ _context5.next = 4;
288
+ return parseArgs(input, flags);
289
+ case 4:
290
+ _yield$parseArgs = _context5.sent;
291
+ packages = _yield$parseArgs.packages;
292
+ _process$env$_PACKAGE = "0.12.0", _PACKAGE_VERSION_ = _process$env$_PACKAGE === void 0 ? '0.0.0-dev' : _process$env$_PACKAGE;
293
+ logger.log(chalk.bgBlue(chalk.black("\uD83D\uDCDA Atlassian-Frontend codemod library @ ".concat(_PACKAGE_VERSION_, " \uD83D\uDCDA"))));
294
+ if (packages && packages.length > 0) {
295
+ logger.log(chalk.gray("Searching for codemods for newer versions of the following packages: ".concat(packages.map(function (pkg) {
296
+ return "".concat(pkg.name).concat(pkg.version ? '@' + pkg.version : '');
297
+ }))));
298
+ }
299
+ shouldHavePackages = flags.sinceRef || flags.packages && flags.packages.length > 0;
300
+ if (!(shouldHavePackages && (packages === null || packages === void 0 ? void 0 : packages.length) === 0)) {
301
+ _context5.next = 13;
407
302
  break;
408
-
409
- case 20:
410
- _context5.next = 22;
411
- return resolveTransform(flags, availableTransforms);
412
-
413
- case 22:
414
- _context5.t1 = _context5.sent;
415
- _context5.t0 = [_context5.t1];
416
-
417
- case 24:
418
- transforms = _context5.t0;
419
- transformsWithModule = transforms.map(function (transform) {
420
- return _objectSpread(_objectSpread({}, transform), {}, {
421
- module: getTransformModule(transform)
422
- });
423
- });
424
- logger.log(chalk.cyan("Running the following transforms \n".concat(chalk.bold(transformsWithModule.map(function (transform) {
425
- return "".concat(transform.module, ": ").concat(transform.name);
426
- }).join('\n')))));
427
- _iterator = _createForOfIteratorHelper(transformsWithModule);
428
- _context5.prev = 28;
429
-
430
- _iterator.s();
431
-
432
- case 30:
433
- if ((_step = _iterator.n()).done) {
434
- _context5.next = 36;
435
- break;
436
- }
437
-
438
- transform = _step.value;
439
- _context5.next = 34;
440
- return runTransform(input, transform, flags);
441
-
442
- case 34:
443
- _context5.next = 30;
303
+ }
304
+ logger.log(chalk.gray("Did not find updated packages, exiting"));
305
+ return _context5.abrupt("return", {
306
+ transforms: []
307
+ });
308
+ case 13:
309
+ availableTransforms = getTransforms(packages);
310
+ if (!(availableTransforms.length === 0)) {
311
+ _context5.next = 16;
444
312
  break;
445
-
446
- case 36:
447
- _context5.next = 41;
313
+ }
314
+ throw new NoTransformsExistError('No codemods available. Please make sure you have the latest version of the packages you are trying to upgrade before running the codemod');
315
+ case 16:
316
+ if (!packages) {
317
+ _context5.next = 20;
448
318
  break;
449
-
450
- case 38:
451
- _context5.prev = 38;
452
- _context5.t2 = _context5["catch"](28);
453
-
454
- _iterator.e(_context5.t2);
455
-
456
- case 41:
457
- _context5.prev = 41;
458
-
459
- _iterator.f();
460
-
461
- return _context5.finish(41);
462
-
463
- case 44:
464
- return _context5.abrupt("return", {
465
- transforms: transformsWithModule
319
+ }
320
+ _context5.t0 = availableTransforms;
321
+ _context5.next = 24;
322
+ break;
323
+ case 20:
324
+ _context5.next = 22;
325
+ return resolveTransform(flags, availableTransforms);
326
+ case 22:
327
+ _context5.t1 = _context5.sent;
328
+ _context5.t0 = [_context5.t1];
329
+ case 24:
330
+ transforms = _context5.t0;
331
+ transformsWithModule = transforms.map(function (transform) {
332
+ return _objectSpread(_objectSpread({}, transform), {}, {
333
+ module: getTransformModule(transform)
466
334
  });
467
-
468
- case 45:
469
- case "end":
470
- return _context5.stop();
471
- }
335
+ });
336
+ logger.log(chalk.cyan("Running the following transforms \n".concat(chalk.bold(transformsWithModule.map(function (transform) {
337
+ return "".concat(transform.module, ": ").concat(transform.name);
338
+ }).join('\n')))));
339
+ _iterator = _createForOfIteratorHelper(transformsWithModule);
340
+ _context5.prev = 28;
341
+ _iterator.s();
342
+ case 30:
343
+ if ((_step = _iterator.n()).done) {
344
+ _context5.next = 36;
345
+ break;
346
+ }
347
+ transform = _step.value;
348
+ _context5.next = 34;
349
+ return runTransform(input, transform, flags);
350
+ case 34:
351
+ _context5.next = 30;
352
+ break;
353
+ case 36:
354
+ _context5.next = 41;
355
+ break;
356
+ case 38:
357
+ _context5.prev = 38;
358
+ _context5.t2 = _context5["catch"](28);
359
+ _iterator.e(_context5.t2);
360
+ case 41:
361
+ _context5.prev = 41;
362
+ _iterator.f();
363
+ return _context5.finish(41);
364
+ case 44:
365
+ return _context5.abrupt("return", {
366
+ transforms: transformsWithModule
367
+ });
368
+ case 45:
369
+ case "end":
370
+ return _context5.stop();
472
371
  }
473
372
  }, _callee5, null, [[28, 38, 41, 44]]);
474
373
  }));