@atlaskit/codemod-cli 0.11.5 → 0.12.1

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 (51) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/cjs/cli.js +75 -68
  3. package/dist/cjs/filepath.js +29 -69
  4. package/dist/cjs/index.js +3 -3
  5. package/dist/cjs/main.js +167 -337
  6. package/dist/cjs/presets/css-to-design-tokens/css-to-design-tokens.js +31 -73
  7. package/dist/cjs/presets/css-to-design-tokens/utils/legacy-colors.js +3 -3
  8. package/dist/cjs/presets/css-to-design-tokens/utils/meta.js +6 -19
  9. package/dist/cjs/presets/index.js +1 -3
  10. package/dist/cjs/presets/styled-to-emotion/styled-to-emotion.js +12 -19
  11. package/dist/cjs/presets/theme-to-design-tokens/theme-to-design-tokens.js +32 -61
  12. package/dist/cjs/presets/theme-to-design-tokens/utils/ast-meta.js +13 -26
  13. package/dist/cjs/presets/theme-to-design-tokens/utils/color.js +7 -11
  14. package/dist/cjs/presets/theme-to-design-tokens/utils/fuzzy-search.js +6 -10
  15. package/dist/cjs/presets/theme-to-design-tokens/utils/legacy-colors.js +3 -3
  16. package/dist/cjs/presets/theme-to-design-tokens/utils/named-colors.js +1 -1
  17. package/dist/cjs/presets/theme-to-design-tokens/utils/tokens.js +2 -16
  18. package/dist/cjs/sinceRef.js +35 -70
  19. package/dist/cjs/transforms.js +26 -44
  20. package/dist/cjs/types.js +3 -27
  21. package/dist/cjs/utils.js +6 -6
  22. package/dist/cjs/version.json +1 -1
  23. package/dist/es2019/version.json +1 -1
  24. package/dist/esm/cli.js +53 -55
  25. package/dist/esm/filepath.js +50 -54
  26. package/dist/esm/main.js +220 -230
  27. package/dist/esm/presets/css-to-design-tokens/css-to-design-tokens.js +11 -13
  28. package/dist/esm/sinceRef.js +48 -50
  29. package/dist/esm/version.json +1 -1
  30. package/dist/types-ts4.0/cli.d.ts +1 -0
  31. package/dist/types-ts4.0/filepath.d.ts +2 -0
  32. package/dist/types-ts4.0/index.d.ts +4 -0
  33. package/dist/types-ts4.0/main.d.ts +19 -0
  34. package/dist/types-ts4.0/presets/css-to-design-tokens/css-to-design-tokens.d.ts +2 -0
  35. package/dist/types-ts4.0/presets/css-to-design-tokens/utils/legacy-colors.d.ts +3 -0
  36. package/dist/types-ts4.0/presets/css-to-design-tokens/utils/meta.d.ts +1 -0
  37. package/dist/types-ts4.0/presets/index.d.ts +9 -0
  38. package/dist/types-ts4.0/presets/styled-to-emotion/styled-to-emotion.d.ts +6 -0
  39. package/dist/types-ts4.0/presets/theme-to-design-tokens/theme-to-design-tokens.d.ts +2 -0
  40. package/dist/types-ts4.0/presets/theme-to-design-tokens/utils/ast-meta.d.ts +3 -0
  41. package/dist/types-ts4.0/presets/theme-to-design-tokens/utils/ast.d.ts +3 -0
  42. package/dist/types-ts4.0/presets/theme-to-design-tokens/utils/color.d.ts +4 -0
  43. package/dist/types-ts4.0/presets/theme-to-design-tokens/utils/fuzzy-search.d.ts +5 -0
  44. package/dist/types-ts4.0/presets/theme-to-design-tokens/utils/legacy-colors.d.ts +3 -0
  45. package/dist/types-ts4.0/presets/theme-to-design-tokens/utils/named-colors.d.ts +1 -0
  46. package/dist/types-ts4.0/presets/theme-to-design-tokens/utils/tokens.d.ts +2 -0
  47. package/dist/types-ts4.0/sinceRef.d.ts +5 -0
  48. package/dist/types-ts4.0/transforms.d.ts +10 -0
  49. package/dist/types-ts4.0/types.d.ts +59 -0
  50. package/dist/types-ts4.0/utils.d.ts +1 -0
  51. package/package.json +2 -2
@@ -12,60 +12,56 @@ function _findDependentPackagePaths() {
12
12
  _findDependentPackagePaths = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(crawlPaths, dependencyPackage) {
13
13
  var searchStrings, globString, packageJsonPaths, productPackageJsonPathPromises, productPackageJsonPaths, productPackagePaths;
14
14
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
15
- while (1) {
16
- switch (_context2.prev = _context2.next) {
17
- case 0:
18
- // Get file paths leading to package.jsons
19
- searchStrings = crawlPaths.map(function (crawlPath) {
20
- //Replace leading './' due to bug with node-glob not properly ignoring files https://github.com/isaacs/node-glob/issues/309
21
- return "".concat(crawlPath.replace(/^\.\//, ''), "/**/package.json");
22
- }); // Convert array into glob string
23
- globString = searchStrings.length > 1 ? "{".concat(searchStrings.join(','), "}") : searchStrings[0];
24
- packageJsonPaths = glob.sync(globString, {
25
- ignore: '**/node_modules/**',
26
- nodir: true
27
- });
28
- productPackageJsonPathPromises = packageJsonPaths.map( /*#__PURE__*/function () {
29
- var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(filePath) {
30
- var fileContents, isMatch;
31
- return _regeneratorRuntime.wrap(function _callee$(_context) {
32
- while (1) {
33
- switch (_context.prev = _context.next) {
34
- case 0:
35
- fileContents = readFile(filePath, 'utf8'); // Grep for installedPackage
36
- _context.next = 3;
37
- return fileContents;
38
- case 3:
39
- isMatch = _context.sent.toString().split(/\n/).some(function (line) {
40
- return line.match(dependencyPackage);
41
- });
42
- return _context.abrupt("return", isMatch && filePath);
43
- case 5:
44
- case "end":
45
- return _context.stop();
46
- }
47
- }
48
- }, _callee);
49
- }));
50
- return function (_x3) {
51
- return _ref.apply(this, arguments);
52
- };
53
- }());
54
- _context2.next = 6;
55
- return Promise.all(productPackageJsonPathPromises);
56
- case 6:
57
- productPackageJsonPaths = _context2.sent.filter(function (path) {
58
- return path !== false;
59
- });
60
- // Get directory
61
- productPackagePaths = productPackageJsonPaths.map(function (line) {
62
- return line.replace('/package.json', '');
63
- });
64
- return _context2.abrupt("return", productPackagePaths);
65
- case 9:
66
- case "end":
67
- return _context2.stop();
68
- }
15
+ while (1) switch (_context2.prev = _context2.next) {
16
+ case 0:
17
+ // Get file paths leading to package.jsons
18
+ searchStrings = crawlPaths.map(function (crawlPath) {
19
+ //Replace leading './' due to bug with node-glob not properly ignoring files https://github.com/isaacs/node-glob/issues/309
20
+ return "".concat(crawlPath.replace(/^\.\//, ''), "/**/package.json");
21
+ }); // Convert array into glob string
22
+ globString = searchStrings.length > 1 ? "{".concat(searchStrings.join(','), "}") : searchStrings[0];
23
+ packageJsonPaths = glob.sync(globString, {
24
+ ignore: '**/node_modules/**',
25
+ nodir: true
26
+ });
27
+ productPackageJsonPathPromises = packageJsonPaths.map( /*#__PURE__*/function () {
28
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(filePath) {
29
+ var fileContents, isMatch;
30
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
31
+ while (1) switch (_context.prev = _context.next) {
32
+ case 0:
33
+ fileContents = readFile(filePath, 'utf8'); // Grep for installedPackage
34
+ _context.next = 3;
35
+ return fileContents;
36
+ case 3:
37
+ isMatch = _context.sent.toString().split(/\n/).some(function (line) {
38
+ return line.match(dependencyPackage);
39
+ });
40
+ return _context.abrupt("return", isMatch && filePath);
41
+ case 5:
42
+ case "end":
43
+ return _context.stop();
44
+ }
45
+ }, _callee);
46
+ }));
47
+ return function (_x3) {
48
+ return _ref.apply(this, arguments);
49
+ };
50
+ }());
51
+ _context2.next = 6;
52
+ return Promise.all(productPackageJsonPathPromises);
53
+ case 6:
54
+ productPackageJsonPaths = _context2.sent.filter(function (path) {
55
+ return path !== false;
56
+ });
57
+ // Get directory
58
+ productPackagePaths = productPackageJsonPaths.map(function (line) {
59
+ return line.replace('/package.json', '');
60
+ });
61
+ return _context2.abrupt("return", productPackagePaths);
62
+ case 9:
63
+ case "end":
64
+ return _context2.stop();
69
65
  }
70
66
  }, _callee2);
71
67
  }));
package/dist/esm/main.js CHANGED
@@ -3,7 +3,7 @@ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
3
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
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; } } }; }
5
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); }
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; }
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; }
7
7
  import _regeneratorRuntime from "@babel/runtime/regenerator";
8
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; }
9
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; }
@@ -44,34 +44,32 @@ var getTransformPrompt = /*#__PURE__*/function () {
44
44
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(transforms) {
45
45
  var transformMeta;
46
46
  return _regeneratorRuntime.wrap(function _callee$(_context) {
47
- while (1) {
48
- switch (_context.prev = _context.next) {
49
- case 0:
50
- transformMeta = applyTransformMeta(transforms);
51
- _context.next = 3;
52
- return new AutoComplete({
53
- message: 'Select which transform would you like to run? 🤔',
54
- limit: 18,
55
- choices: transformMeta.map(function (_ref2) {
56
- var id = _ref2.id,
57
- name = _ref2.name,
58
- dir = _ref2.dir;
59
- return id ? id : "".concat(dir, "/").concat(name);
60
- }),
61
- result: function result(choice) {
62
- return transformMeta.find(function (_ref3) {
63
- var id = _ref3.id,
64
- dir = _ref3.dir;
65
- return id === choice || dir === choice;
66
- });
67
- }
68
- }).run();
69
- case 3:
70
- return _context.abrupt("return", _context.sent);
71
- case 4:
72
- case "end":
73
- return _context.stop();
74
- }
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();
75
73
  }
76
74
  }, _callee);
77
75
  }));
@@ -83,44 +81,42 @@ var resolveTransform = /*#__PURE__*/function () {
83
81
  var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(flags, transforms) {
84
82
  var transform;
85
83
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
86
- while (1) {
87
- switch (_context2.prev = _context2.next) {
88
- case 0:
89
- if (!flags.preset) {
90
- _context2.next = 7;
91
- break;
92
- }
93
- transform = transforms.find(function (_ref5) {
94
- var name = _ref5.name;
95
- return name === flags.preset;
96
- });
97
- if (transform) {
98
- _context2.next = 6;
99
- break;
100
- }
101
- 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) {
102
87
  _context2.next = 7;
103
88
  break;
104
- case 6:
105
- return _context2.abrupt("return", transform);
106
- case 7:
107
- if (!(flags.transform && hasTransform(flags.transform))) {
108
- _context2.next = 9;
109
- break;
110
- }
111
- return _context2.abrupt("return", parseTransformPath(flags.transform));
112
- case 9:
113
- if (flags.transform && !hasTransform(flags.transform)) {
114
- console.warn("No available transform found for: ".concat(chalk.bgRed(flags.transform)));
115
- }
116
- _context2.next = 12;
117
- return getTransformPrompt(transforms);
118
- case 12:
119
- return _context2.abrupt("return", _context2.sent);
120
- case 13:
121
- case "end":
122
- return _context2.stop();
123
- }
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();
124
120
  }
125
121
  }, _callee2);
126
122
  }));
@@ -132,50 +128,48 @@ var runTransform = /*#__PURE__*/function () {
132
128
  var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(filePaths, transform, flags) {
133
129
  var logger, codemodDirs, transformPath, args, jscodeshiftContent, jscodeshiftContentNew;
134
130
  return _regeneratorRuntime.wrap(function _callee3$(_context3) {
135
- while (1) {
136
- switch (_context3.prev = _context3.next) {
137
- case 0:
138
- logger = flags.logger;
139
- 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)")));
140
148
  codemodDirs = filePaths;
141
- if (!flags.filterPaths) {
142
- _context3.next = 9;
143
- break;
144
- }
145
- logger.log(chalk.green("Running filtering logic for module ".concat(transform.module, "...")));
146
- _context3.next = 7;
147
- return findDependentPackagePaths(filePaths, transform.module);
148
- case 7:
149
- codemodDirs = _context3.sent;
150
- if (codemodDirs.length === 0) {
151
- // Fallback to non-filter logic if filtering returns no directories
152
- 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)")));
153
- codemodDirs = filePaths;
154
- } else {
155
- logger.log(chalk.green("Running transform '".concat(chalk.bold(transform.name), "' over filtered dirs ").concat(chalk.bold(codemodDirs.join(', ')), "...")));
156
- }
157
- case 9:
158
- logger.log(chalk.green("Transforming files matching these extensions '".concat(chalk.bold(flags.extensions), "'...")));
159
- transformPath = getTransformPath(transform); // Limit CPUs to 8 to prevent issues when running on CI with a large amount of cpus
160
- args = ["--transform=".concat(transformPath), "--ignore-pattern=".concat(flags.ignorePattern), "--parser=".concat(flags.parser), "--extensions=".concat(flags.extensions), '--cpus=8'].concat(_toConsumableArray(codemodDirs));
161
- if (flags.failOnError) {
162
- args.unshift('--fail-on-error');
163
- }
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
+ }
164
159
 
165
- // To avoid https://github.com/facebook/jscodeshift/issues/424 where the jscodeshift.js file is `CRLF` ending.
166
- // 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
167
- // that may not have jscodeshift installed.
168
- jscodeshiftContent = fs.readFileSync(jscodeshift, 'utf8');
169
- jscodeshiftContentNew = fixLineEnding(jscodeshiftContent, 'LF');
170
- fs.writeFileSync(jscodeshift, jscodeshiftContentNew);
171
- _context3.next = 18;
172
- return spawn(jscodeshift, args, {
173
- stdio: 'inherit'
174
- });
175
- case 18:
176
- case "end":
177
- return _context3.stop();
178
- }
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();
179
173
  }
180
174
  }, _callee3);
181
175
  }));
@@ -229,45 +223,43 @@ var parseArgs = /*#__PURE__*/function () {
229
223
  var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(input, flags) {
230
224
  var packages, unvalidatedPackages, _unvalidatedPackages;
231
225
  return _regeneratorRuntime.wrap(function _callee4$(_context4) {
232
- while (1) {
233
- switch (_context4.prev = _context4.next) {
234
- case 0:
235
- if (input[0]) {
236
- _context4.next = 2;
237
- break;
238
- }
239
- throw new ValidationError('Please supply a path to the source files you wish to modify');
240
- case 2:
241
- if (!flags.packages) {
242
- _context4.next = 7;
243
- break;
244
- }
245
- unvalidatedPackages = parsePackagesFlag(flags.packages);
246
- packages = validatePackages(unvalidatedPackages, function (errors) {
247
- throw new ValidationError(errors.join('\n'));
248
- });
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) {
249
246
  _context4.next = 12;
250
247
  break;
251
- case 7:
252
- if (!flags.sinceRef) {
253
- _context4.next = 12;
254
- break;
255
- }
256
- _context4.next = 10;
257
- return getPackagesSinceRef(flags.sinceRef);
258
- case 10:
259
- _unvalidatedPackages = _context4.sent;
260
- packages = validatePackages(_unvalidatedPackages, function (errors) {
261
- 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')));
262
- });
263
- case 12:
264
- return _context4.abrupt("return", {
265
- packages: packages
266
- });
267
- case 13:
268
- case "end":
269
- return _context4.stop();
270
- }
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();
271
263
  }
272
264
  }, _callee4);
273
265
  }));
@@ -288,96 +280,94 @@ function _main() {
288
280
  _main = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee5(input, userFlags) {
289
281
  var flags, logger, _yield$parseArgs, packages, _process$env$_PACKAGE, _PACKAGE_VERSION_, shouldHavePackages, availableTransforms, transforms, transformsWithModule, _iterator, _step, transform;
290
282
  return _regeneratorRuntime.wrap(function _callee5$(_context5) {
291
- while (1) {
292
- switch (_context5.prev = _context5.next) {
293
- case 0:
294
- flags = _objectSpread(_objectSpread({}, defaultFlags), userFlags);
295
- logger = flags.logger;
296
- _context5.next = 4;
297
- return parseArgs(input, flags);
298
- case 4:
299
- _yield$parseArgs = _context5.sent;
300
- packages = _yield$parseArgs.packages;
301
- _process$env$_PACKAGE = "0.11.5", _PACKAGE_VERSION_ = _process$env$_PACKAGE === void 0 ? '0.0.0-dev' : _process$env$_PACKAGE;
302
- logger.log(chalk.bgBlue(chalk.black("\uD83D\uDCDA Atlassian-Frontend codemod library @ ".concat(_PACKAGE_VERSION_, " \uD83D\uDCDA"))));
303
- if (packages && packages.length > 0) {
304
- logger.log(chalk.gray("Searching for codemods for newer versions of the following packages: ".concat(packages.map(function (pkg) {
305
- return "".concat(pkg.name).concat(pkg.version ? '@' + pkg.version : '');
306
- }))));
307
- }
308
- shouldHavePackages = flags.sinceRef || flags.packages && flags.packages.length > 0;
309
- if (!(shouldHavePackages && (packages === null || packages === void 0 ? void 0 : packages.length) === 0)) {
310
- _context5.next = 13;
311
- break;
312
- }
313
- logger.log(chalk.gray("Did not find updated packages, exiting"));
314
- return _context5.abrupt("return", {
315
- transforms: []
316
- });
317
- case 13:
318
- availableTransforms = getTransforms(packages);
319
- if (!(availableTransforms.length === 0)) {
320
- _context5.next = 16;
321
- break;
322
- }
323
- 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');
324
- case 16:
325
- if (!packages) {
326
- _context5.next = 20;
327
- break;
328
- }
329
- _context5.t0 = availableTransforms;
330
- _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.1", _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;
331
302
  break;
332
- case 20:
333
- _context5.next = 22;
334
- return resolveTransform(flags, availableTransforms);
335
- case 22:
336
- _context5.t1 = _context5.sent;
337
- _context5.t0 = [_context5.t1];
338
- case 24:
339
- transforms = _context5.t0;
340
- transformsWithModule = transforms.map(function (transform) {
341
- return _objectSpread(_objectSpread({}, transform), {}, {
342
- module: getTransformModule(transform)
343
- });
344
- });
345
- logger.log(chalk.cyan("Running the following transforms \n".concat(chalk.bold(transformsWithModule.map(function (transform) {
346
- return "".concat(transform.module, ": ").concat(transform.name);
347
- }).join('\n')))));
348
- _iterator = _createForOfIteratorHelper(transformsWithModule);
349
- _context5.prev = 28;
350
- _iterator.s();
351
- case 30:
352
- if ((_step = _iterator.n()).done) {
353
- _context5.next = 36;
354
- break;
355
- }
356
- transform = _step.value;
357
- _context5.next = 34;
358
- return runTransform(input, transform, flags);
359
- case 34:
360
- _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;
361
312
  break;
362
- case 36:
363
- _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;
364
318
  break;
365
- case 38:
366
- _context5.prev = 38;
367
- _context5.t2 = _context5["catch"](28);
368
- _iterator.e(_context5.t2);
369
- case 41:
370
- _context5.prev = 41;
371
- _iterator.f();
372
- return _context5.finish(41);
373
- case 44:
374
- return _context5.abrupt("return", {
375
- 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)
376
334
  });
377
- case 45:
378
- case "end":
379
- return _context5.stop();
380
- }
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();
381
371
  }
382
372
  }, _callee5, null, [[28, 38, 41, 44]]);
383
373
  }));