@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.
- package/CHANGELOG.md +17 -0
- package/dist/cjs/cli.js +72 -75
- package/dist/cjs/filepath.js +29 -83
- package/dist/cjs/index.js +3 -6
- package/dist/cjs/main.js +165 -441
- package/dist/cjs/presets/css-to-design-tokens/css-to-design-tokens.js +44 -135
- package/dist/cjs/presets/css-to-design-tokens/utils/legacy-colors.js +3 -4
- package/dist/cjs/presets/css-to-design-tokens/utils/meta.js +6 -29
- package/dist/cjs/presets/index.js +2 -9
- package/dist/cjs/presets/styled-to-emotion/styled-to-emotion.js +13 -25
- package/dist/cjs/presets/theme-to-design-tokens/theme-to-design-tokens.js +34 -82
- package/dist/cjs/presets/theme-to-design-tokens/utils/ast-meta.js +14 -41
- package/dist/cjs/presets/theme-to-design-tokens/utils/ast.js +0 -2
- package/dist/cjs/presets/theme-to-design-tokens/utils/color.js +9 -28
- package/dist/cjs/presets/theme-to-design-tokens/utils/fuzzy-search.js +44 -106
- package/dist/cjs/presets/theme-to-design-tokens/utils/legacy-colors.js +3 -3
- package/dist/cjs/presets/theme-to-design-tokens/utils/named-colors.js +1 -1
- package/dist/cjs/presets/theme-to-design-tokens/utils/tokens.js +2 -22
- package/dist/cjs/sinceRef.js +36 -92
- package/dist/cjs/transforms.js +27 -72
- package/dist/cjs/types.js +2 -45
- package/dist/cjs/utils.js +7 -20
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/filepath.js +7 -5
- package/dist/es2019/main.js +17 -51
- package/dist/es2019/presets/css-to-design-tokens/css-to-design-tokens.js +19 -51
- package/dist/es2019/presets/css-to-design-tokens/utils/legacy-colors.js +0 -1
- package/dist/es2019/presets/css-to-design-tokens/utils/meta.js +0 -6
- package/dist/es2019/presets/index.js +1 -1
- package/dist/es2019/presets/styled-to-emotion/styled-to-emotion.js +1 -4
- package/dist/es2019/presets/theme-to-design-tokens/theme-to-design-tokens.js +4 -14
- package/dist/es2019/presets/theme-to-design-tokens/utils/ast-meta.js +2 -11
- package/dist/es2019/presets/theme-to-design-tokens/utils/color.js +2 -7
- package/dist/es2019/presets/theme-to-design-tokens/utils/fuzzy-search.js +38 -95
- package/dist/es2019/presets/theme-to-design-tokens/utils/tokens.js +0 -1
- package/dist/es2019/sinceRef.js +2 -11
- package/dist/es2019/transforms.js +3 -13
- package/dist/es2019/types.js +1 -0
- package/dist/es2019/utils.js +1 -12
- package/dist/es2019/version.json +1 -1
- package/dist/esm/cli.js +53 -57
- package/dist/esm/filepath.js +51 -63
- package/dist/esm/main.js +221 -322
- package/dist/esm/presets/css-to-design-tokens/css-to-design-tokens.js +33 -71
- package/dist/esm/presets/css-to-design-tokens/utils/legacy-colors.js +0 -1
- package/dist/esm/presets/css-to-design-tokens/utils/meta.js +0 -6
- package/dist/esm/presets/index.js +1 -1
- package/dist/esm/presets/styled-to-emotion/styled-to-emotion.js +1 -4
- package/dist/esm/presets/theme-to-design-tokens/theme-to-design-tokens.js +4 -15
- package/dist/esm/presets/theme-to-design-tokens/utils/ast-meta.js +2 -11
- package/dist/esm/presets/theme-to-design-tokens/utils/color.js +2 -7
- package/dist/esm/presets/theme-to-design-tokens/utils/fuzzy-search.js +38 -95
- package/dist/esm/presets/theme-to-design-tokens/utils/tokens.js +0 -1
- package/dist/esm/sinceRef.js +49 -65
- package/dist/esm/transforms.js +4 -14
- package/dist/esm/types.js +1 -11
- package/dist/esm/utils.js +1 -12
- package/dist/esm/version.json +1 -1
- package/package.json +2 -2
- package/tmp/api-report-tmp.d.ts +0 -66
|
@@ -16,12 +16,10 @@ var FuzzySet = function FuzzySet() {
|
|
|
16
16
|
matchDict: {},
|
|
17
17
|
items: {}
|
|
18
18
|
};
|
|
19
|
-
|
|
20
19
|
var levenshtein = function levenshtein(str1, str2) {
|
|
21
20
|
var current = [];
|
|
22
21
|
var prev;
|
|
23
22
|
var value;
|
|
24
|
-
|
|
25
23
|
for (var i = 0; i <= str2.length; i++) {
|
|
26
24
|
for (var j = 0; j <= str1.length; j++) {
|
|
27
25
|
if (i && j) {
|
|
@@ -35,65 +33,52 @@ var FuzzySet = function FuzzySet() {
|
|
|
35
33
|
} else {
|
|
36
34
|
value = i + j;
|
|
37
35
|
}
|
|
38
|
-
|
|
39
36
|
prev = current[j];
|
|
40
37
|
current[j] = value;
|
|
41
38
|
}
|
|
42
39
|
}
|
|
43
|
-
|
|
44
40
|
return current.pop();
|
|
45
|
-
};
|
|
46
|
-
|
|
41
|
+
};
|
|
47
42
|
|
|
43
|
+
// return an edit distance from 0 to 1
|
|
48
44
|
var _distance = function _distance(str1, str2) {
|
|
49
45
|
if (str1 === null && str2 === null) {
|
|
50
46
|
throw new Error('Trying to compare two null values');
|
|
51
47
|
}
|
|
52
|
-
|
|
53
48
|
if (str1 === null || str2 === null) {
|
|
54
49
|
return 0;
|
|
55
50
|
}
|
|
56
|
-
|
|
57
51
|
str1 = String(str1);
|
|
58
52
|
str2 = String(str2);
|
|
59
53
|
var distance = levenshtein(str1, str2);
|
|
60
|
-
|
|
61
54
|
if (str1.length > str2.length) {
|
|
62
55
|
return 1 - distance / str1.length;
|
|
63
56
|
} else {
|
|
64
57
|
return 1 - distance / str2.length;
|
|
65
58
|
}
|
|
66
59
|
};
|
|
67
|
-
|
|
68
60
|
var _nonWordRe = /[^a-zA-Z0-9\u00C0-\u00FF, ]+/g;
|
|
69
|
-
|
|
70
61
|
var _iterateGrams = function _iterateGrams(value, gramSize) {
|
|
71
62
|
gramSize = gramSize || 2;
|
|
72
63
|
var simplified = '-' + value.toLowerCase().replace(_nonWordRe, '') + '-',
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
64
|
+
lenDiff = gramSize - simplified.length,
|
|
65
|
+
results = [];
|
|
76
66
|
if (lenDiff > 0) {
|
|
77
67
|
for (var i = 0; i < lenDiff; ++i) {
|
|
78
68
|
simplified += '-';
|
|
79
69
|
}
|
|
80
70
|
}
|
|
81
|
-
|
|
82
71
|
for (var i = 0; i < simplified.length - gramSize + 1; ++i) {
|
|
83
72
|
results.push(simplified.slice(i, i + gramSize));
|
|
84
73
|
}
|
|
85
|
-
|
|
86
74
|
return results;
|
|
87
75
|
};
|
|
88
|
-
|
|
89
76
|
var _gramCounter = function _gramCounter(value, gramSize) {
|
|
90
77
|
// return an object where key=gram, value=number of occurrences
|
|
91
78
|
gramSize = gramSize || 2;
|
|
92
|
-
|
|
93
79
|
var result = {},
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
80
|
+
grams = _iterateGrams(value, gramSize),
|
|
81
|
+
i = 0;
|
|
97
82
|
for (i; i < grams.length; ++i) {
|
|
98
83
|
if (grams[i] in result) {
|
|
99
84
|
// @ts-expect-error
|
|
@@ -103,62 +88,51 @@ var FuzzySet = function FuzzySet() {
|
|
|
103
88
|
result[grams[i]] = 1;
|
|
104
89
|
}
|
|
105
90
|
}
|
|
106
|
-
|
|
107
91
|
return result;
|
|
108
|
-
};
|
|
109
|
-
|
|
92
|
+
};
|
|
110
93
|
|
|
94
|
+
// the main functions
|
|
111
95
|
fuzzyset.get = function (value, defaultValue, minMatchScore) {
|
|
112
96
|
// check for value in set, returning defaultValue or null if none found
|
|
113
97
|
if (minMatchScore === undefined) {
|
|
114
98
|
minMatchScore = 0.33;
|
|
115
99
|
}
|
|
116
|
-
|
|
117
100
|
var result = this._get(value, minMatchScore);
|
|
118
|
-
|
|
119
101
|
if (!result && typeof defaultValue !== 'undefined') {
|
|
120
102
|
return defaultValue;
|
|
121
103
|
}
|
|
122
|
-
|
|
123
104
|
return result;
|
|
124
105
|
};
|
|
125
|
-
|
|
126
106
|
fuzzyset._get = function (value, minMatchScore) {
|
|
127
|
-
var results = [];
|
|
128
|
-
|
|
107
|
+
var results = [];
|
|
108
|
+
// start with high gram size and if there are no results, go to lower gram sizes
|
|
129
109
|
for (var gramSize = this.gramSizeUpper; gramSize >= this.gramSizeLower; --gramSize) {
|
|
130
110
|
results = this.__get(value, gramSize, minMatchScore);
|
|
131
|
-
|
|
132
111
|
if (results && results.length > 0) {
|
|
133
112
|
return results;
|
|
134
113
|
}
|
|
135
114
|
}
|
|
136
|
-
|
|
137
115
|
return null;
|
|
138
116
|
};
|
|
139
|
-
|
|
140
117
|
fuzzyset.__get = function (value, gramSize, minMatchScore) {
|
|
141
118
|
var normalizedValue = this._normalizeStr(value),
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
119
|
+
matches = {},
|
|
120
|
+
gramCounts = _gramCounter(normalizedValue, gramSize),
|
|
121
|
+
items = this.items[gramSize],
|
|
122
|
+
sumOfSquareGramCounts = 0,
|
|
123
|
+
gram,
|
|
124
|
+
gramCount,
|
|
125
|
+
i,
|
|
126
|
+
index,
|
|
127
|
+
otherGramCount;
|
|
152
128
|
for (gram in gramCounts) {
|
|
153
129
|
// @ts-expect-error
|
|
154
130
|
gramCount = gramCounts[gram];
|
|
155
131
|
sumOfSquareGramCounts += Math.pow(gramCount, 2);
|
|
156
|
-
|
|
157
132
|
if (gram in this.matchDict) {
|
|
158
133
|
for (i = 0; i < this.matchDict[gram].length; ++i) {
|
|
159
134
|
index = this.matchDict[gram][i][0];
|
|
160
135
|
otherGramCount = this.matchDict[gram][i][1];
|
|
161
|
-
|
|
162
136
|
if (index in matches) {
|
|
163
137
|
// @ts-expect-error
|
|
164
138
|
matches[index] += gramCount * otherGramCount;
|
|
@@ -169,31 +143,26 @@ var FuzzySet = function FuzzySet() {
|
|
|
169
143
|
}
|
|
170
144
|
}
|
|
171
145
|
}
|
|
172
|
-
|
|
173
146
|
function isEmptyObject(obj) {
|
|
174
147
|
for (var prop in obj) {
|
|
175
148
|
if (obj.hasOwnProperty(prop)) {
|
|
176
149
|
return false;
|
|
177
150
|
}
|
|
178
151
|
}
|
|
179
|
-
|
|
180
152
|
return true;
|
|
181
153
|
}
|
|
182
|
-
|
|
183
154
|
if (isEmptyObject(matches)) {
|
|
184
155
|
return null;
|
|
185
156
|
}
|
|
186
|
-
|
|
187
157
|
var vectorNormal = Math.sqrt(sumOfSquareGramCounts),
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
158
|
+
results = [],
|
|
159
|
+
matchScore;
|
|
160
|
+
// build a results list of [score, str]
|
|
191
161
|
for (var matchIndex in matches) {
|
|
192
162
|
// @ts-expect-error
|
|
193
163
|
matchScore = matches[matchIndex];
|
|
194
164
|
results.push([matchScore / (vectorNormal * items[matchIndex][0]), items[matchIndex][1]]);
|
|
195
165
|
}
|
|
196
|
-
|
|
197
166
|
var sortDescending = function sortDescending(a, b) {
|
|
198
167
|
if (a[0] < b[0]) {
|
|
199
168
|
return 1;
|
|
@@ -203,23 +172,19 @@ var FuzzySet = function FuzzySet() {
|
|
|
203
172
|
return 0;
|
|
204
173
|
}
|
|
205
174
|
};
|
|
206
|
-
|
|
207
175
|
results.sort(sortDescending);
|
|
208
|
-
|
|
209
176
|
if (this.useLevenshtein) {
|
|
210
177
|
var newResults = [],
|
|
211
|
-
|
|
178
|
+
endIndex = Math.min(50, results.length);
|
|
179
|
+
// truncate somewhat arbitrarily to 50
|
|
212
180
|
// @ts-expect-error
|
|
213
|
-
|
|
214
181
|
for (var i = 0; i < endIndex; ++i) {
|
|
215
182
|
// @ts-expect-error
|
|
216
183
|
newResults.push([_distance(results[i][1], normalizedValue), results[i][1]]);
|
|
217
184
|
}
|
|
218
|
-
|
|
219
185
|
results = newResults;
|
|
220
186
|
results.sort(sortDescending);
|
|
221
187
|
}
|
|
222
|
-
|
|
223
188
|
newResults = [];
|
|
224
189
|
results.forEach(function (scoreWordPair) {
|
|
225
190
|
if (scoreWordPair[0] >= minMatchScore) {
|
|
@@ -229,112 +194,90 @@ var FuzzySet = function FuzzySet() {
|
|
|
229
194
|
}.bind(this));
|
|
230
195
|
return newResults;
|
|
231
196
|
};
|
|
232
|
-
|
|
233
197
|
fuzzyset.add = function (value) {
|
|
234
198
|
var normalizedValue = this._normalizeStr(value);
|
|
235
|
-
|
|
236
199
|
if (normalizedValue in this.exactSet) {
|
|
237
200
|
return false;
|
|
238
201
|
}
|
|
239
|
-
|
|
240
202
|
var i = this.gramSizeLower;
|
|
241
|
-
|
|
242
203
|
for (i; i < this.gramSizeUpper + 1; ++i) {
|
|
243
204
|
this._add(value, i);
|
|
244
205
|
}
|
|
245
206
|
};
|
|
246
|
-
|
|
247
207
|
fuzzyset._add = function (value, gramSize) {
|
|
248
208
|
var normalizedValue = this._normalizeStr(value),
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
209
|
+
items = this.items[gramSize] || [],
|
|
210
|
+
index = items.length;
|
|
252
211
|
items.push(0);
|
|
253
|
-
|
|
254
212
|
var gramCounts = _gramCounter(normalizedValue, gramSize);
|
|
255
|
-
|
|
256
213
|
var sumOfSquareGramCounts = 0;
|
|
257
214
|
var gram;
|
|
258
215
|
var gramCount;
|
|
259
|
-
|
|
260
216
|
for (gram in gramCounts) {
|
|
261
217
|
// @ts-expect-error
|
|
262
218
|
gramCount = gramCounts[gram];
|
|
263
219
|
sumOfSquareGramCounts += Math.pow(gramCount, 2);
|
|
264
|
-
|
|
265
220
|
if (gram in this.matchDict) {
|
|
266
221
|
this.matchDict[gram].push([index, gramCount]);
|
|
267
222
|
} else {
|
|
268
223
|
this.matchDict[gram] = [[index, gramCount]];
|
|
269
224
|
}
|
|
270
225
|
}
|
|
271
|
-
|
|
272
226
|
var vectorNormal = Math.sqrt(sumOfSquareGramCounts);
|
|
273
227
|
items[index] = [vectorNormal, normalizedValue];
|
|
274
228
|
this.items[gramSize] = items;
|
|
275
229
|
this.exactSet[normalizedValue] = value;
|
|
276
230
|
};
|
|
277
|
-
|
|
278
231
|
fuzzyset._normalizeStr = function (str) {
|
|
279
232
|
if (Object.prototype.toString.call(str) !== '[object String]') {
|
|
280
233
|
throw new Error('Must use a string as argument to FuzzySet functions');
|
|
281
234
|
}
|
|
282
|
-
|
|
283
235
|
return str.toLowerCase();
|
|
284
|
-
};
|
|
285
|
-
|
|
236
|
+
};
|
|
286
237
|
|
|
238
|
+
// return length of items in set
|
|
287
239
|
fuzzyset.length = function () {
|
|
288
240
|
var count = 0,
|
|
289
|
-
|
|
290
|
-
|
|
241
|
+
prop;
|
|
291
242
|
for (prop in this.exactSet) {
|
|
292
243
|
if (this.exactSet.hasOwnProperty(prop)) {
|
|
293
244
|
count += 1;
|
|
294
245
|
}
|
|
295
246
|
}
|
|
296
|
-
|
|
297
247
|
return count;
|
|
298
|
-
};
|
|
299
|
-
|
|
248
|
+
};
|
|
300
249
|
|
|
250
|
+
// return is set is empty
|
|
301
251
|
fuzzyset.isEmpty = function () {
|
|
302
252
|
for (var prop in this.exactSet) {
|
|
303
253
|
if (this.exactSet.hasOwnProperty(prop)) {
|
|
304
254
|
return false;
|
|
305
255
|
}
|
|
306
256
|
}
|
|
307
|
-
|
|
308
257
|
return true;
|
|
309
|
-
};
|
|
310
|
-
|
|
258
|
+
};
|
|
311
259
|
|
|
260
|
+
// return list of values loaded into set
|
|
312
261
|
fuzzyset.values = function () {
|
|
313
262
|
var values = [],
|
|
314
|
-
|
|
315
|
-
|
|
263
|
+
prop;
|
|
316
264
|
for (prop in this.exactSet) {
|
|
317
265
|
if (this.exactSet.hasOwnProperty(prop)) {
|
|
318
266
|
values.push(this.exactSet[prop]);
|
|
319
267
|
}
|
|
320
268
|
}
|
|
321
|
-
|
|
322
269
|
return values;
|
|
323
|
-
};
|
|
324
|
-
|
|
270
|
+
};
|
|
325
271
|
|
|
272
|
+
// initialization
|
|
326
273
|
var i = fuzzyset.gramSizeLower;
|
|
327
|
-
|
|
328
274
|
for (i; i < fuzzyset.gramSizeUpper + 1; ++i) {
|
|
329
275
|
fuzzyset.items[i] = [];
|
|
330
|
-
}
|
|
331
|
-
|
|
332
|
-
|
|
276
|
+
}
|
|
277
|
+
// add all the items to the set
|
|
333
278
|
for (i = 0; i < arr.length; ++i) {
|
|
334
279
|
fuzzyset.add(arr[i]);
|
|
335
280
|
}
|
|
336
|
-
|
|
337
281
|
return fuzzyset;
|
|
338
282
|
};
|
|
339
|
-
|
|
340
283
|
export default FuzzySet;
|
package/dist/esm/sinceRef.js
CHANGED
|
@@ -3,97 +3,81 @@ import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
|
3
3
|
import simpleGit from 'simple-git';
|
|
4
4
|
import { ValidationError } from './types';
|
|
5
5
|
var packageRegex = /"(@(?:atlaskit|atlassian|atlassiansox)\/.*)": "(.*)"/;
|
|
6
|
-
|
|
7
6
|
var parseDiffLine = function parseDiffLine(line) {
|
|
8
7
|
var type = line.startsWith('-') ? 'deleted' : line.startsWith('+') ? 'added' : null;
|
|
9
8
|
var match = line.match(packageRegex);
|
|
10
|
-
|
|
11
9
|
if (!type || !match) {
|
|
12
10
|
return null;
|
|
13
11
|
}
|
|
14
|
-
|
|
15
12
|
return {
|
|
16
13
|
type: type,
|
|
17
14
|
name: match[1],
|
|
18
15
|
version: match[2]
|
|
19
16
|
};
|
|
20
17
|
};
|
|
18
|
+
|
|
21
19
|
/** Returns packages that have been upgraded in package.json since ref. The version refers to their previous
|
|
22
20
|
* version
|
|
23
21
|
*/
|
|
24
|
-
|
|
25
|
-
|
|
26
22
|
export var getPackagesSinceRef = /*#__PURE__*/function () {
|
|
27
23
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(ref) {
|
|
28
24
|
var git, commit, diff, modifiedPackages, addedPackages, upgradedPackages;
|
|
29
25
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
30
|
-
while (1) {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
return
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
name: name,
|
|
79
|
-
version: version
|
|
80
|
-
};
|
|
81
|
-
});
|
|
82
|
-
return _context.abrupt("return", upgradedPackages);
|
|
83
|
-
|
|
84
|
-
case 17:
|
|
85
|
-
case "end":
|
|
86
|
-
return _context.stop();
|
|
87
|
-
}
|
|
26
|
+
while (1) switch (_context.prev = _context.next) {
|
|
27
|
+
case 0:
|
|
28
|
+
git = simpleGit();
|
|
29
|
+
_context.prev = 1;
|
|
30
|
+
_context.next = 4;
|
|
31
|
+
return git.revparse(['--verify', ref]);
|
|
32
|
+
case 4:
|
|
33
|
+
commit = _context.sent;
|
|
34
|
+
_context.next = 10;
|
|
35
|
+
break;
|
|
36
|
+
case 7:
|
|
37
|
+
_context.prev = 7;
|
|
38
|
+
_context.t0 = _context["catch"](1);
|
|
39
|
+
throw new ValidationError("Invalid git ref \"".concat(ref, "\""));
|
|
40
|
+
case 10:
|
|
41
|
+
_context.next = 12;
|
|
42
|
+
return git.diff([commit, '--', 'package.json']);
|
|
43
|
+
case 12:
|
|
44
|
+
diff = _context.sent;
|
|
45
|
+
modifiedPackages = diff.split('\n').map(parseDiffLine).filter(function (pkg) {
|
|
46
|
+
return Boolean(pkg);
|
|
47
|
+
});
|
|
48
|
+
addedPackages = new Map(modifiedPackages.filter(function (pkg) {
|
|
49
|
+
return pkg.type === 'added';
|
|
50
|
+
}).map(function (pkg) {
|
|
51
|
+
return [pkg.name, pkg];
|
|
52
|
+
}));
|
|
53
|
+
/* This is holds the previous version of packages that have been upgraded. Packages are treated as
|
|
54
|
+
* upgraded if they have both an addition/deletion entry in the diff and their versions differ
|
|
55
|
+
*/
|
|
56
|
+
upgradedPackages = modifiedPackages.filter(function (pkg) {
|
|
57
|
+
var addedEntry = addedPackages.get(pkg.name);
|
|
58
|
+
if (pkg.type !== 'deleted' || !addedEntry) {
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
return pkg.version !== addedEntry.version;
|
|
62
|
+
}).map(function (_ref2) {
|
|
63
|
+
var name = _ref2.name,
|
|
64
|
+
version = _ref2.version;
|
|
65
|
+
return {
|
|
66
|
+
name: name,
|
|
67
|
+
version: version
|
|
68
|
+
};
|
|
69
|
+
});
|
|
70
|
+
return _context.abrupt("return", upgradedPackages);
|
|
71
|
+
case 17:
|
|
72
|
+
case "end":
|
|
73
|
+
return _context.stop();
|
|
88
74
|
}
|
|
89
75
|
}, _callee, null, [[1, 7]]);
|
|
90
76
|
}));
|
|
91
|
-
|
|
92
77
|
return function getPackagesSinceRef(_x) {
|
|
93
78
|
return _ref.apply(this, arguments);
|
|
94
79
|
};
|
|
95
80
|
}();
|
|
96
|
-
|
|
97
81
|
if (require.main === module) {
|
|
98
82
|
getPackagesSinceRef(process.argv[2]).then(function (res) {
|
|
99
83
|
return console.log(res);
|
package/dist/esm/transforms.js
CHANGED
|
@@ -3,26 +3,22 @@ import path from 'path';
|
|
|
3
3
|
import glob from 'glob';
|
|
4
4
|
import semver from 'semver';
|
|
5
5
|
import presets from './presets';
|
|
6
|
-
|
|
7
6
|
var basePath = function basePath(packages) {
|
|
8
7
|
var packageDirectory = packages && packages.length > 0 ? ["{".concat(packages.map(function (pkg) {
|
|
9
8
|
return pkg.name;
|
|
10
9
|
}).join(','), ",}")] : ['@{atlaskit,atlassian,atlassiansox}', '*'];
|
|
11
10
|
return path.join.apply(path, [process.cwd(), 'node_modules'].concat(packageDirectory, ['codemods']));
|
|
12
11
|
};
|
|
13
|
-
|
|
14
12
|
export var hasTransform = function hasTransform(transformPath) {
|
|
15
13
|
return glob.sync(transformPath).length > 0;
|
|
16
14
|
};
|
|
17
|
-
/** Retrieves transforms for `packages` if provided, otherwise all transforms including presets */
|
|
18
15
|
|
|
16
|
+
/** Retrieves transforms for `packages` if provided, otherwise all transforms including presets */
|
|
19
17
|
export var getTransforms = function getTransforms(packages) {
|
|
20
18
|
var transforms = [path.join(basePath(packages), '*.@(ts|tsx|js)'), path.join(basePath(packages), '*', 'index.@(ts|tsx|js)')];
|
|
21
|
-
|
|
22
19
|
if (!packages) {
|
|
23
20
|
transforms.unshift.apply(transforms, _toConsumableArray(presets));
|
|
24
21
|
}
|
|
25
|
-
|
|
26
22
|
return transforms.map(function (transform) {
|
|
27
23
|
return glob.sync(transform);
|
|
28
24
|
}).reduce(function (acc, val) {
|
|
@@ -36,44 +32,38 @@ export var parseTransformPath = function parseTransformPath(transformPath) {
|
|
|
36
32
|
};
|
|
37
33
|
export var getTransformPath = function getTransformPath(_ref) {
|
|
38
34
|
var dir = _ref.dir,
|
|
39
|
-
|
|
35
|
+
base = _ref.base;
|
|
40
36
|
return "".concat(dir, "/").concat(base);
|
|
41
37
|
};
|
|
42
38
|
export var getTransformModule = function getTransformModule(transform) {
|
|
43
39
|
var pathSegments = transform.dir.split(path.sep);
|
|
44
|
-
var nodeModulesIdx = pathSegments.indexOf('node_modules');
|
|
45
|
-
|
|
40
|
+
var nodeModulesIdx = pathSegments.indexOf('node_modules');
|
|
41
|
+
// pathSegments will be of the form [node_modules, '@atlaskit', 'avatar', 'codemods']
|
|
46
42
|
return pathSegments.slice(nodeModulesIdx + 1, nodeModulesIdx + 3).join('/');
|
|
47
43
|
};
|
|
48
44
|
export var getTransformVersion = function getTransformVersion(transform) {
|
|
49
45
|
var transformName = transform.base;
|
|
50
|
-
|
|
51
46
|
if (transformName.startsWith('index.')) {
|
|
52
47
|
var pathSegments = transform.dir.split(path.sep);
|
|
53
48
|
transformName = pathSegments[pathSegments.length - 1];
|
|
54
49
|
}
|
|
55
|
-
|
|
56
50
|
return transformName.split('-')[0];
|
|
57
51
|
};
|
|
58
|
-
|
|
59
52
|
var filterTransforms = function filterTransforms(packages) {
|
|
60
53
|
if (!packages || packages.length === 0) {
|
|
61
54
|
return function () {
|
|
62
55
|
return true;
|
|
63
56
|
};
|
|
64
57
|
}
|
|
65
|
-
|
|
66
58
|
var packageMap = new Map(packages.map(function (pkg) {
|
|
67
59
|
return [pkg.name, pkg.version];
|
|
68
60
|
}));
|
|
69
61
|
return function (transform) {
|
|
70
62
|
var transformVersion = getTransformVersion(transform);
|
|
71
63
|
var pkgVersion = packageMap.get(getTransformModule(transform));
|
|
72
|
-
|
|
73
64
|
if (pkgVersion === undefined) {
|
|
74
65
|
throw Error("No corresponding package found for transform \"".concat(transform.dir, "/").concat(transform.base));
|
|
75
66
|
}
|
|
76
|
-
|
|
77
67
|
if (transformVersion === 'next' || pkgVersion === null) {
|
|
78
68
|
return true;
|
|
79
69
|
} else if (semver.valid(transformVersion)) {
|
package/dist/esm/types.js
CHANGED
|
@@ -4,37 +4,27 @@ import _inherits from "@babel/runtime/helpers/inherits";
|
|
|
4
4
|
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
5
5
|
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
6
6
|
import _wrapNativeSuper from "@babel/runtime/helpers/wrapNativeSuper";
|
|
7
|
-
|
|
8
7
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
9
|
-
|
|
10
8
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
11
|
-
|
|
12
9
|
/** Converts required args to optional if they have a default
|
|
13
10
|
* Example: export type UserFlags = Default<Flags, keyof typeof defaultFlags>;
|
|
14
11
|
*/
|
|
12
|
+
|
|
15
13
|
export var ValidationError = /*#__PURE__*/function (_Error) {
|
|
16
14
|
_inherits(ValidationError, _Error);
|
|
17
|
-
|
|
18
15
|
var _super = _createSuper(ValidationError);
|
|
19
|
-
|
|
20
16
|
function ValidationError() {
|
|
21
17
|
_classCallCheck(this, ValidationError);
|
|
22
|
-
|
|
23
18
|
return _super.apply(this, arguments);
|
|
24
19
|
}
|
|
25
|
-
|
|
26
20
|
return _createClass(ValidationError);
|
|
27
21
|
}( /*#__PURE__*/_wrapNativeSuper(Error));
|
|
28
22
|
export var NoTransformsExistError = /*#__PURE__*/function (_Error2) {
|
|
29
23
|
_inherits(NoTransformsExistError, _Error2);
|
|
30
|
-
|
|
31
24
|
var _super2 = _createSuper(NoTransformsExistError);
|
|
32
|
-
|
|
33
25
|
function NoTransformsExistError() {
|
|
34
26
|
_classCallCheck(this, NoTransformsExistError);
|
|
35
|
-
|
|
36
27
|
return _super2.apply(this, arguments);
|
|
37
28
|
}
|
|
38
|
-
|
|
39
29
|
return _createClass(NoTransformsExistError);
|
|
40
30
|
}( /*#__PURE__*/_wrapNativeSuper(Error));
|
package/dist/esm/utils.js
CHANGED
|
@@ -1,55 +1,44 @@
|
|
|
1
1
|
/* Utility functions to be used in codemod-cli. */
|
|
2
|
+
|
|
2
3
|
var returnLineEnding = function returnLineEnding(source) {
|
|
3
4
|
var cr = source.split('\r').length;
|
|
4
5
|
var lf = source.split('\n').length;
|
|
5
6
|
var crlf = source.split('\r\n').length;
|
|
6
|
-
|
|
7
7
|
if (cr + lf === 0) {
|
|
8
8
|
return 'NONE';
|
|
9
9
|
}
|
|
10
|
-
|
|
11
10
|
if (crlf === cr && crlf === lf) {
|
|
12
11
|
return 'CRLF';
|
|
13
12
|
}
|
|
14
|
-
|
|
15
13
|
if (cr > lf) {
|
|
16
14
|
return 'CR';
|
|
17
15
|
} else {
|
|
18
16
|
return 'LF';
|
|
19
17
|
}
|
|
20
18
|
};
|
|
21
|
-
|
|
22
19
|
var getLineEndingRegex = function getLineEndingRegex(type) {
|
|
23
20
|
if (['CR', 'LF', 'CRLF'].indexOf(type) === -1) {
|
|
24
21
|
throw new Error("Line ending '" + type + "' is not supported, use CR, LF or CRLF");
|
|
25
22
|
}
|
|
26
|
-
|
|
27
23
|
if (type === 'LF') {
|
|
28
24
|
return '\n';
|
|
29
25
|
}
|
|
30
|
-
|
|
31
26
|
if (type === 'CR') {
|
|
32
27
|
return '\r';
|
|
33
28
|
}
|
|
34
|
-
|
|
35
29
|
if (type === 'CRLF') {
|
|
36
30
|
return '\r\n';
|
|
37
31
|
}
|
|
38
32
|
};
|
|
39
|
-
|
|
40
33
|
export var fixLineEnding = function fixLineEnding(source, lineEnding) {
|
|
41
34
|
var current = returnLineEnding(source);
|
|
42
|
-
|
|
43
35
|
if (current === lineEnding) {
|
|
44
36
|
return source;
|
|
45
37
|
}
|
|
46
|
-
|
|
47
38
|
var regexCurrentLineEnding = getLineEndingRegex(current);
|
|
48
39
|
var regexLineEnding = getLineEndingRegex(lineEnding);
|
|
49
|
-
|
|
50
40
|
if (current && regexLineEnding && regexCurrentLineEnding) {
|
|
51
41
|
return source.replace(new RegExp(regexCurrentLineEnding, 'g'), regexLineEnding);
|
|
52
42
|
}
|
|
53
|
-
|
|
54
43
|
return source;
|
|
55
44
|
};
|
package/dist/esm/version.json
CHANGED