@atlaskit/codemod-cli 0.27.1 → 0.27.3
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 +15 -0
- package/dist/cjs/cli.js +3 -3
- package/dist/cjs/filepath.js +4 -2
- package/dist/cjs/main.js +90 -38
- package/dist/cjs/presets/index.js +2 -1
- package/dist/cjs/presets/migrate-to-link/codemods/migrate-to-link.js +2 -2
- package/dist/cjs/presets/migrate-to-new-buttons/codemods/next-split-imports.js +1 -1
- package/dist/cjs/presets/migrate-to-new-buttons/migrate-to-new-buttons.js +2 -2
- package/dist/cjs/presets/migrate-to-new-buttons/utils/add-comment-for-custom-theme-buttons.js +1 -1
- package/dist/cjs/presets/remove-token-fallbacks/remove-token-fallbacks.js +225 -0
- package/dist/cjs/presets/remove-token-fallbacks/types.js +5 -0
- package/dist/cjs/presets/remove-token-fallbacks/utils/all-tokens.js +44 -0
- package/dist/cjs/presets/remove-token-fallbacks/utils/color-utils.js +93 -0
- package/dist/cjs/presets/remove-token-fallbacks/utils/get-team-info.js +51 -0
- package/dist/cjs/presets/remove-token-fallbacks/utils/normalize-values.js +113 -0
- package/dist/cjs/presets/remove-token-fallbacks/utils/remove-unused-imports.js +61 -0
- package/dist/cjs/presets/remove-token-fallbacks/utils/remove-unused-variables.js +37 -0
- package/dist/cjs/presets/remove-token-fallbacks/utils/reporter.js +310 -0
- package/dist/cjs/presets/remove-token-fallbacks/utils/token-processor.js +632 -0
- package/dist/cjs/presets/remove-token-fallbacks/utils/update-comments.js +58 -0
- package/dist/cjs/presets/upgrade-pragmatic-drag-and-drop-to-stable/upgrade-pragmatic-drag-and-drop-to-stable.js +3 -3
- package/dist/cjs/sinceRef.js +2 -1
- package/dist/cjs/transforms.js +3 -1
- package/dist/cjs/types.js +2 -1
- package/dist/es2019/cli.js +3 -3
- package/dist/es2019/filepath.js +4 -2
- package/dist/es2019/main.js +30 -6
- package/dist/es2019/presets/index.js +2 -1
- package/dist/es2019/presets/migrate-to-link/codemods/migrate-to-link.js +2 -3
- package/dist/es2019/presets/migrate-to-new-buttons/codemods/next-remove-unsafe-size.js +1 -1
- package/dist/es2019/presets/migrate-to-new-buttons/codemods/next-split-imports.js +2 -2
- package/dist/es2019/presets/migrate-to-new-buttons/migrate-to-new-buttons.js +2 -2
- package/dist/es2019/presets/migrate-to-new-buttons/utils/add-comment-for-custom-theme-buttons.js +1 -1
- package/dist/es2019/presets/migrate-to-new-buttons/utils/migrate-fit-container-icon-button.js +1 -1
- package/dist/es2019/presets/remove-token-fallbacks/remove-token-fallbacks.js +130 -0
- package/dist/es2019/presets/remove-token-fallbacks/types.js +1 -0
- package/dist/es2019/presets/remove-token-fallbacks/utils/all-tokens.js +30 -0
- package/dist/es2019/presets/remove-token-fallbacks/utils/color-utils.js +84 -0
- package/dist/es2019/presets/remove-token-fallbacks/utils/get-team-info.js +22 -0
- package/dist/es2019/presets/remove-token-fallbacks/utils/normalize-values.js +104 -0
- package/dist/es2019/presets/remove-token-fallbacks/utils/remove-unused-imports.js +51 -0
- package/dist/es2019/presets/remove-token-fallbacks/utils/remove-unused-variables.js +31 -0
- package/dist/es2019/presets/remove-token-fallbacks/utils/reporter.js +118 -0
- package/dist/es2019/presets/remove-token-fallbacks/utils/token-processor.js +377 -0
- package/dist/es2019/presets/remove-token-fallbacks/utils/update-comments.js +46 -0
- package/dist/es2019/presets/theme-remove-deprecated-mixins/theme-remove-deprecated-mixins.js +1 -1
- package/dist/es2019/presets/upgrade-pragmatic-drag-and-drop-to-stable/upgrade-pragmatic-drag-and-drop-to-stable.js +3 -3
- package/dist/es2019/sinceRef.js +2 -1
- package/dist/es2019/transforms.js +3 -1
- package/dist/es2019/types.js +2 -1
- package/dist/esm/cli.js +3 -3
- package/dist/esm/filepath.js +4 -2
- package/dist/esm/main.js +91 -39
- package/dist/esm/presets/index.js +2 -1
- package/dist/esm/presets/migrate-to-link/codemods/migrate-to-link.js +2 -3
- package/dist/esm/presets/migrate-to-new-buttons/codemods/next-remove-unsafe-size.js +1 -1
- package/dist/esm/presets/migrate-to-new-buttons/codemods/next-split-imports.js +2 -2
- package/dist/esm/presets/migrate-to-new-buttons/migrate-to-new-buttons.js +2 -2
- package/dist/esm/presets/migrate-to-new-buttons/utils/add-comment-for-custom-theme-buttons.js +1 -1
- package/dist/esm/presets/migrate-to-new-buttons/utils/migrate-fit-container-icon-button.js +1 -1
- package/dist/esm/presets/remove-token-fallbacks/remove-token-fallbacks.js +215 -0
- package/dist/esm/presets/remove-token-fallbacks/types.js +1 -0
- package/dist/esm/presets/remove-token-fallbacks/utils/all-tokens.js +38 -0
- package/dist/esm/presets/remove-token-fallbacks/utils/color-utils.js +86 -0
- package/dist/esm/presets/remove-token-fallbacks/utils/get-team-info.js +44 -0
- package/dist/esm/presets/remove-token-fallbacks/utils/normalize-values.js +107 -0
- package/dist/esm/presets/remove-token-fallbacks/utils/remove-unused-imports.js +55 -0
- package/dist/esm/presets/remove-token-fallbacks/utils/remove-unused-variables.js +31 -0
- package/dist/esm/presets/remove-token-fallbacks/utils/reporter.js +302 -0
- package/dist/esm/presets/remove-token-fallbacks/utils/token-processor.js +625 -0
- package/dist/esm/presets/remove-token-fallbacks/utils/update-comments.js +51 -0
- package/dist/esm/presets/theme-remove-deprecated-mixins/theme-remove-deprecated-mixins.js +1 -1
- package/dist/esm/presets/upgrade-pragmatic-drag-and-drop-to-stable/upgrade-pragmatic-drag-and-drop-to-stable.js +3 -3
- package/dist/esm/sinceRef.js +2 -1
- package/dist/esm/transforms.js +3 -1
- package/dist/esm/types.js +2 -1
- package/dist/types/filepath.d.ts +3 -1
- package/dist/types/main.d.ts +1 -1
- package/dist/types/presets/index.d.ts +1 -0
- package/dist/types/presets/migrate-to-new-buttons/utils/import-types-from-new-entry-point.d.ts +1 -1
- package/dist/types/presets/migrate-to-new-buttons/utils/move-icon-value-from-link-button-to-link-children.d.ts +1 -1
- package/dist/types/presets/remove-token-fallbacks/remove-token-fallbacks.d.ts +29 -0
- package/dist/types/presets/remove-token-fallbacks/types.d.ts +39 -0
- package/dist/types/presets/remove-token-fallbacks/utils/all-tokens.d.ts +1 -0
- package/dist/types/presets/remove-token-fallbacks/utils/color-utils.d.ts +3 -0
- package/dist/types/presets/remove-token-fallbacks/utils/get-team-info.d.ts +8 -0
- package/dist/types/presets/remove-token-fallbacks/utils/normalize-values.d.ts +8 -0
- package/dist/types/presets/remove-token-fallbacks/utils/remove-unused-imports.d.ts +2 -0
- package/dist/types/presets/remove-token-fallbacks/utils/remove-unused-variables.d.ts +2 -0
- package/dist/types/presets/remove-token-fallbacks/utils/reporter.d.ts +4 -0
- package/dist/types/presets/remove-token-fallbacks/utils/token-processor.d.ts +30 -0
- package/dist/types/presets/remove-token-fallbacks/utils/update-comments.d.ts +2 -0
- package/dist/types/presets/styled-to-emotion/styled-to-emotion.d.ts +1 -1
- package/dist/types/presets/upgrade-pragmatic-drag-and-drop-to-stable/upgrade-pragmatic-drag-and-drop-to-stable.d.ts +1 -1
- package/dist/types/sinceRef.d.ts +2 -1
- package/dist/types/transforms.d.ts +3 -1
- package/dist/types/types.d.ts +3 -2
- package/dist/types-ts4.5/filepath.d.ts +3 -1
- package/dist/types-ts4.5/main.d.ts +1 -1
- package/dist/types-ts4.5/presets/index.d.ts +1 -0
- package/dist/types-ts4.5/presets/migrate-to-new-buttons/utils/import-types-from-new-entry-point.d.ts +1 -1
- package/dist/types-ts4.5/presets/migrate-to-new-buttons/utils/move-icon-value-from-link-button-to-link-children.d.ts +1 -1
- package/dist/types-ts4.5/presets/remove-token-fallbacks/remove-token-fallbacks.d.ts +29 -0
- package/dist/types-ts4.5/presets/remove-token-fallbacks/types.d.ts +39 -0
- package/dist/types-ts4.5/presets/remove-token-fallbacks/utils/all-tokens.d.ts +1 -0
- package/dist/types-ts4.5/presets/remove-token-fallbacks/utils/color-utils.d.ts +3 -0
- package/dist/types-ts4.5/presets/remove-token-fallbacks/utils/get-team-info.d.ts +8 -0
- package/dist/types-ts4.5/presets/remove-token-fallbacks/utils/normalize-values.d.ts +8 -0
- package/dist/types-ts4.5/presets/remove-token-fallbacks/utils/remove-unused-imports.d.ts +2 -0
- package/dist/types-ts4.5/presets/remove-token-fallbacks/utils/remove-unused-variables.d.ts +2 -0
- package/dist/types-ts4.5/presets/remove-token-fallbacks/utils/reporter.d.ts +4 -0
- package/dist/types-ts4.5/presets/remove-token-fallbacks/utils/token-processor.d.ts +30 -0
- package/dist/types-ts4.5/presets/remove-token-fallbacks/utils/update-comments.d.ts +2 -0
- package/dist/types-ts4.5/presets/styled-to-emotion/styled-to-emotion.d.ts +1 -1
- package/dist/types-ts4.5/presets/upgrade-pragmatic-drag-and-drop-to-stable/upgrade-pragmatic-drag-and-drop-to-stable.d.ts +1 -1
- package/dist/types-ts4.5/sinceRef.d.ts +2 -1
- package/dist/types-ts4.5/transforms.d.ts +3 -1
- package/dist/types-ts4.5/types.d.ts +3 -2
- package/package.json +8 -3
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export function addOrUpdateEslintIgnoreComment(j, tokenValue, fallbackValue, callPath) {
|
|
2
|
+
const commentText = `eslint-disable-next-line @atlaskit/design-system/no-unsafe-design-token-usage -- The token value "${tokenValue}" and fallback "${fallbackValue}" do not match and can't be replaced automatically.`;
|
|
3
|
+
// first see if we can add the comment to the parent object property
|
|
4
|
+
const updatedCommentInObjectExpression = addOrUpdateEslintIgnoreCommentForParentInObjectExpression(j, commentText, callPath);
|
|
5
|
+
// if the comment was not added to the parent object property, add it to the node itself
|
|
6
|
+
if (!updatedCommentInObjectExpression) {
|
|
7
|
+
addOrUpdateEslintIgnoreCommentForNodeItself(j, commentText, callPath);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
function addOrUpdateEslintIgnoreCommentForNodeItself(j, commentText, callPath) {
|
|
11
|
+
const leadingComments = callPath.node.leadingComments || [];
|
|
12
|
+
const existingCommentIndex = leadingComments.findIndex(comment => comment.value.includes('eslint-disable-next-line @atlaskit/design-system/no-unsafe-design-token-usage'));
|
|
13
|
+
const commentLine = j.commentLine(commentText, true);
|
|
14
|
+
if (existingCommentIndex !== -1) {
|
|
15
|
+
// Replace the existing comment
|
|
16
|
+
// Note: in order to modify the comment, it's fine to update it in the `leadingComments` array
|
|
17
|
+
leadingComments[existingCommentIndex] = commentLine;
|
|
18
|
+
} else {
|
|
19
|
+
// Add a new comment if none exists
|
|
20
|
+
// Note: Adding new comment to 'leadingComments' doesn't affect anything, we need to add it to 'comments' property
|
|
21
|
+
callPath.node.comments = [commentLine];
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
function addOrUpdateEslintIgnoreCommentForParentInObjectExpression(j, commentText, callPath) {
|
|
25
|
+
const parent = callPath.parentPath;
|
|
26
|
+
// Check if the parent node is an ObjectProperty
|
|
27
|
+
if (parent && parent.node.type === 'ObjectProperty') {
|
|
28
|
+
const grandparent = parent.parentPath;
|
|
29
|
+
// Check if the grandparent is an ObjectExpression
|
|
30
|
+
if (grandparent && grandparent.node.type === 'ObjectExpression') {
|
|
31
|
+
// Check for existing leading comments
|
|
32
|
+
const leadingComments = parent.node.leadingComments || [];
|
|
33
|
+
const existingCommentIndex = leadingComments.findIndex(comment => comment.value.includes('eslint-disable-next-line @atlaskit/design-system/no-unsafe-design-token-usage'));
|
|
34
|
+
const commentLine = j.commentLine(commentText, true);
|
|
35
|
+
if (existingCommentIndex !== -1) {
|
|
36
|
+
// Replace the existing comment
|
|
37
|
+
leadingComments[existingCommentIndex] = commentLine;
|
|
38
|
+
} else {
|
|
39
|
+
// Add a new comment if none exists
|
|
40
|
+
parent.node.comments = [commentLine, ...(parent.node.comments || [])];
|
|
41
|
+
}
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return false;
|
|
46
|
+
}
|
package/dist/es2019/presets/theme-remove-deprecated-mixins/theme-remove-deprecated-mixins.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getImportDeclaration, hasImportDeclaration, insertImportSpecifier } from '@codeshift/utils';
|
|
2
2
|
import { colorReplacements } from './utils/replacements';
|
|
3
3
|
function isDecendantOfType(j, path, type) {
|
|
4
4
|
return j(path).closest(type).length > 0;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { updateAutoScroll } from './transformers/auto-scroll';
|
|
2
|
+
import { shiftCanMonitorArgType } from './transformers/element-adapter-types';
|
|
2
3
|
import { moveFromFileAdapterToExternalAdapter } from './transformers/external-adapter';
|
|
3
4
|
import { moveToReactDropIndicator } from './transformers/move-to-react-drop-indicator';
|
|
4
|
-
import { updateAutoScroll } from './transformers/auto-scroll';
|
|
5
5
|
import { shiftToPointerOutsideOfPreview } from './transformers/pointer-outside-of-preview';
|
|
6
6
|
import { shiftToPreventUnhandled } from './transformers/prevent-unhandled';
|
|
7
|
-
import {
|
|
7
|
+
import { updateSafeImports } from './transformers/update-safe-imports';
|
|
8
8
|
const transformers = [updateSafeImports, moveFromFileAdapterToExternalAdapter, moveToReactDropIndicator, updateAutoScroll, shiftToPointerOutsideOfPreview, shiftToPreventUnhandled, shiftCanMonitorArgType];
|
|
9
9
|
export default function transformer(file, api) {
|
|
10
10
|
let source = file.source;
|
package/dist/es2019/sinceRef.js
CHANGED
|
@@ -14,7 +14,8 @@ const parseDiffLine = line => {
|
|
|
14
14
|
};
|
|
15
15
|
};
|
|
16
16
|
|
|
17
|
-
/**
|
|
17
|
+
/**
|
|
18
|
+
* Returns packages that have been upgraded in package.json since ref. The version refers to their previous
|
|
18
19
|
* version
|
|
19
20
|
*/
|
|
20
21
|
export const getPackagesSinceRef = async ref => {
|
|
@@ -8,7 +8,9 @@ const basePath = packages => {
|
|
|
8
8
|
};
|
|
9
9
|
export const hasTransform = transformPath => globSync(transformPath).length > 0;
|
|
10
10
|
|
|
11
|
-
/**
|
|
11
|
+
/**
|
|
12
|
+
* Retrieves transforms for `packages` if provided, otherwise all transforms including presets
|
|
13
|
+
*/
|
|
12
14
|
export const getTransforms = packages => {
|
|
13
15
|
const transforms = [path.join(basePath(packages), '*.@(ts|tsx|js)'), path.join(basePath(packages), '*', 'index.@(ts|tsx|js)')];
|
|
14
16
|
if (!packages) {
|
package/dist/es2019/types.js
CHANGED
package/dist/esm/cli.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
2
2
|
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
3
|
+
import chalk from 'chalk';
|
|
3
4
|
import meow from 'meow';
|
|
4
|
-
import { ValidationError, NoTransformsExistError } from './types';
|
|
5
5
|
import main from './main';
|
|
6
|
-
import
|
|
6
|
+
import { NoTransformsExistError, ValidationError } from './types';
|
|
7
7
|
export function run() {
|
|
8
8
|
return _run.apply(this, arguments);
|
|
9
9
|
}
|
|
@@ -13,7 +13,7 @@ function _run() {
|
|
|
13
13
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
14
14
|
while (1) switch (_context.prev = _context.next) {
|
|
15
15
|
case 0:
|
|
16
|
-
cli = meow("\nUsage\n $ npx @atlaskit/codemod-cli [options] <file-paths>...\n\nOptions\n --preset, -n select transform by preset name, avoid user interaction\n --transform, -t the transform to run, will prompt for a transform if not provided and no module is passed\n --since-ref, runs transforms for all packages that have been upgraded since the specified git ref\n --packages, runs transforms for the specified comma separated list of packages, optionally include a version for each package to run all transforms since that version\n --parser, -p babel|babylon|flow|ts|tsx parser to use for parsing the source files (default: babel)\n --extensions, -e transform files with these file extensions (comma separated list) (default: js)\n --ignore-pattern, ignore files that match a provided glob expression\n --fail-on-error, return a 1 exit code when errors were found during execution of codemods\n --version, -v version number\n --no-filter-paths disables dependant package file path filtering logic
|
|
16
|
+
cli = meow("\nUsage\n $ npx @atlaskit/codemod-cli [options] <file-paths>...\n\nOptions\n --preset, -n select transform by preset name, avoid user interaction\n --transform, -t the transform to run, will prompt for a transform if not provided and no module is passed\n --since-ref, runs transforms for all packages that have been upgraded since the specified git ref\n --packages, runs transforms for the specified comma separated list of packages, optionally include a version for each package to run all transforms since that version\n --parser, -p babel|babylon|flow|ts|tsx parser to use for parsing the source files (default: babel)\n --extensions, -e transform files with these file extensions (comma separated list) (default: js)\n --ignore-pattern, ignore files that match a provided glob expression\n --fail-on-error, return a 1 exit code when errors were found during execution of codemods\n --version, -v version number\n --no-filter-paths disables dependant package file path filtering logic\n --help Help me \uD83D\uDE31\n\nExamples\n # Run a codemod over the /project/src directory, will be prompted for which codemod to run\n $ npx @atlaskit/codemod-cli /project/src\n\n # Run the \"4.0.0-remove-appearance-prop\" transform of the \"button\" package\n $ npx @atlaskit/codemod-cli -t button@4.0.0-remove-appearance-prop /project/src\n\n # Run all transforms for \"@atlaskit/button\" greater than version 3.0.0 and @atlaskit/range greater than 4.0.0\n $ npx @atlaskit/codemod-cli --packages @atlaskit/button@3.0.0,@atlaskit/range@4.0.0 /project/src\n", {
|
|
17
17
|
flags: {
|
|
18
18
|
transform: {
|
|
19
19
|
type: 'string',
|
package/dist/esm/filepath.js
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
2
2
|
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
3
|
-
import { globSync } from 'glob';
|
|
4
3
|
import { promises } from 'fs';
|
|
4
|
+
import { globSync } from 'glob';
|
|
5
5
|
var readFile = promises.readFile;
|
|
6
6
|
|
|
7
|
-
/**
|
|
7
|
+
/**
|
|
8
|
+
* Return products packages filePaths for running codemods from specified dependent package
|
|
9
|
+
*/
|
|
8
10
|
export function findDependentPackagePaths(_x, _x2) {
|
|
9
11
|
return _findDependentPackagePaths.apply(this, arguments);
|
|
10
12
|
}
|
package/dist/esm/main.js
CHANGED
|
@@ -7,17 +7,17 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
|
|
|
7
7
|
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
8
8
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
9
9
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
10
|
-
import chalk from 'chalk';
|
|
11
10
|
import fs from 'fs';
|
|
12
|
-
import
|
|
11
|
+
import chalk from 'chalk';
|
|
13
12
|
import { AutoComplete } from 'enquirer';
|
|
13
|
+
import spawn from 'projector-spawn';
|
|
14
14
|
import semver from 'semver';
|
|
15
15
|
var jscodeshift = require.resolve('.bin/jscodeshift');
|
|
16
|
-
import { fixLineEnding } from './utils';
|
|
17
|
-
import { getTransforms, getTransformPath, hasTransform, parseTransformPath, getTransformModule } from './transforms';
|
|
18
|
-
import { ValidationError, NoTransformsExistError } from './types';
|
|
19
|
-
import { getPackagesSinceRef } from './sinceRef';
|
|
20
16
|
import { findDependentPackagePaths } from './filepath';
|
|
17
|
+
import { getPackagesSinceRef } from './sinceRef';
|
|
18
|
+
import { getTransformModule, getTransformPath, getTransforms, hasTransform, parseTransformPath } from './transforms';
|
|
19
|
+
import { NoTransformsExistError, ValidationError } from './types';
|
|
20
|
+
import { fixLineEnding } from './utils';
|
|
21
21
|
var applyTransformMeta = function applyTransformMeta(transforms) {
|
|
22
22
|
return transforms.map(function (transform) {
|
|
23
23
|
var moduleMatch = transform.dir.match(/\/@atlaskit\/[^\/]+\//);
|
|
@@ -128,7 +128,7 @@ var resolveTransform = /*#__PURE__*/function () {
|
|
|
128
128
|
}();
|
|
129
129
|
var runTransform = /*#__PURE__*/function () {
|
|
130
130
|
var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(filePaths, transform, flags) {
|
|
131
|
-
var logger, codemodDirs, transformPath, args, jscodeshiftContent, jscodeshiftContentNew;
|
|
131
|
+
var logger, codemodDirs, transformPath, args, jscodeshiftContent, jscodeshiftContentNew, transformModule;
|
|
132
132
|
return _regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
133
133
|
while (1) switch (_context3.prev = _context3.next) {
|
|
134
134
|
case 0:
|
|
@@ -172,11 +172,31 @@ var runTransform = /*#__PURE__*/function () {
|
|
|
172
172
|
jscodeshiftContent = fs.readFileSync(jscodeshift, 'utf8');
|
|
173
173
|
jscodeshiftContentNew = fixLineEnding(jscodeshiftContent, 'LF');
|
|
174
174
|
fs.writeFileSync(jscodeshift, jscodeshiftContentNew);
|
|
175
|
-
|
|
175
|
+
try {
|
|
176
|
+
transformModule = require(transformPath);
|
|
177
|
+
} catch (error) {
|
|
178
|
+
// eslint-disable-next-line no-console
|
|
179
|
+
console.warn("Error loading transform module: ".concat(transformPath, ". Skipping lifecycle hooks."));
|
|
180
|
+
}
|
|
181
|
+
if (!transformModule) {
|
|
182
|
+
_context3.next = 20;
|
|
183
|
+
break;
|
|
184
|
+
}
|
|
185
|
+
_context3.next = 20;
|
|
186
|
+
return processLifecycleHook('beforeAll', transformModule, logger, transform, flags);
|
|
187
|
+
case 20:
|
|
188
|
+
_context3.next = 22;
|
|
176
189
|
return spawn(jscodeshift, args, {
|
|
177
190
|
stdio: 'inherit'
|
|
178
191
|
});
|
|
179
|
-
case
|
|
192
|
+
case 22:
|
|
193
|
+
if (!transformModule) {
|
|
194
|
+
_context3.next = 25;
|
|
195
|
+
break;
|
|
196
|
+
}
|
|
197
|
+
_context3.next = 25;
|
|
198
|
+
return processLifecycleHook('afterAll', transformModule, logger, transform, flags);
|
|
199
|
+
case 25:
|
|
180
200
|
case "end":
|
|
181
201
|
return _context3.stop();
|
|
182
202
|
}
|
|
@@ -282,23 +302,55 @@ var defaultFlags = {
|
|
|
282
302
|
ignorePattern: 'node_modules',
|
|
283
303
|
logger: console
|
|
284
304
|
};
|
|
285
|
-
|
|
305
|
+
function processLifecycleHook(_x9, _x10, _x11, _x12, _x13) {
|
|
306
|
+
return _processLifecycleHook.apply(this, arguments);
|
|
307
|
+
}
|
|
308
|
+
function _processLifecycleHook() {
|
|
309
|
+
_processLifecycleHook = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee5(hookName, transformModule, logger, transform, flags) {
|
|
310
|
+
return _regeneratorRuntime.wrap(function _callee5$(_context5) {
|
|
311
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
312
|
+
case 0:
|
|
313
|
+
if (!(typeof transformModule[hookName] === 'function')) {
|
|
314
|
+
_context5.next = 11;
|
|
315
|
+
break;
|
|
316
|
+
}
|
|
317
|
+
_context5.prev = 1;
|
|
318
|
+
logger.log(chalk.green("Executing ".concat(hookName, " for transform '").concat(transform.name, "'...")));
|
|
319
|
+
_context5.next = 5;
|
|
320
|
+
return transformModule[hookName](flags);
|
|
321
|
+
case 5:
|
|
322
|
+
_context5.next = 11;
|
|
323
|
+
break;
|
|
324
|
+
case 7:
|
|
325
|
+
_context5.prev = 7;
|
|
326
|
+
_context5.t0 = _context5["catch"](1);
|
|
327
|
+
logger.log(chalk.red("Error in ".concat(hookName, " for transform '").concat(transform.name, "': ").concat(_context5.t0)));
|
|
328
|
+
throw _context5.t0;
|
|
329
|
+
case 11:
|
|
330
|
+
case "end":
|
|
331
|
+
return _context5.stop();
|
|
332
|
+
}
|
|
333
|
+
}, _callee5, null, [[1, 7]]);
|
|
334
|
+
}));
|
|
335
|
+
return _processLifecycleHook.apply(this, arguments);
|
|
336
|
+
}
|
|
337
|
+
export default function main(_x14, _x15) {
|
|
286
338
|
return _main.apply(this, arguments);
|
|
287
339
|
}
|
|
288
340
|
function _main() {
|
|
289
|
-
_main = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function
|
|
341
|
+
_main = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee6(input, userFlags) {
|
|
290
342
|
var flags, logger, _yield$parseArgs, packages, _process$env$_PACKAGE, _PACKAGE_VERSION_, shouldHavePackages, availableTransforms, transforms, transformsWithModule, _iterator, _step, transform;
|
|
291
|
-
return _regeneratorRuntime.wrap(function
|
|
292
|
-
while (1) switch (
|
|
343
|
+
return _regeneratorRuntime.wrap(function _callee6$(_context6) {
|
|
344
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
293
345
|
case 0:
|
|
294
346
|
flags = _objectSpread(_objectSpread({}, defaultFlags), userFlags);
|
|
295
347
|
logger = flags.logger;
|
|
296
|
-
|
|
348
|
+
_context6.next = 4;
|
|
297
349
|
return parseArgs(input, flags);
|
|
298
350
|
case 4:
|
|
299
|
-
_yield$parseArgs =
|
|
351
|
+
_yield$parseArgs = _context6.sent;
|
|
300
352
|
packages = _yield$parseArgs.packages;
|
|
301
|
-
_process$env$_PACKAGE = "0.27.
|
|
353
|
+
_process$env$_PACKAGE = "0.27.3", _PACKAGE_VERSION_ = _process$env$_PACKAGE === void 0 ? '0.0.0-dev' : _process$env$_PACKAGE;
|
|
302
354
|
logger.log(chalk.bgBlue(chalk.black("\uD83D\uDCDA Atlassian-Frontend codemod library @ ".concat(_PACKAGE_VERSION_, " \uD83D\uDCDA"))));
|
|
303
355
|
if (packages && packages.length > 0) {
|
|
304
356
|
logger.log(chalk.gray("Searching for codemods for newer versions of the following packages: ".concat(packages.map(function (pkg) {
|
|
@@ -307,36 +359,36 @@ function _main() {
|
|
|
307
359
|
}
|
|
308
360
|
shouldHavePackages = flags.sinceRef || flags.packages && flags.packages.length > 0;
|
|
309
361
|
if (!(shouldHavePackages && (packages === null || packages === void 0 ? void 0 : packages.length) === 0)) {
|
|
310
|
-
|
|
362
|
+
_context6.next = 13;
|
|
311
363
|
break;
|
|
312
364
|
}
|
|
313
365
|
logger.log(chalk.gray("Did not find updated packages, exiting"));
|
|
314
|
-
return
|
|
366
|
+
return _context6.abrupt("return", {
|
|
315
367
|
transforms: []
|
|
316
368
|
});
|
|
317
369
|
case 13:
|
|
318
370
|
availableTransforms = getTransforms(packages);
|
|
319
371
|
if (!(availableTransforms.length === 0)) {
|
|
320
|
-
|
|
372
|
+
_context6.next = 16;
|
|
321
373
|
break;
|
|
322
374
|
}
|
|
323
375
|
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
376
|
case 16:
|
|
325
377
|
if (!packages) {
|
|
326
|
-
|
|
378
|
+
_context6.next = 20;
|
|
327
379
|
break;
|
|
328
380
|
}
|
|
329
|
-
|
|
330
|
-
|
|
381
|
+
_context6.t0 = availableTransforms;
|
|
382
|
+
_context6.next = 24;
|
|
331
383
|
break;
|
|
332
384
|
case 20:
|
|
333
|
-
|
|
385
|
+
_context6.next = 22;
|
|
334
386
|
return resolveTransform(flags, availableTransforms);
|
|
335
387
|
case 22:
|
|
336
|
-
|
|
337
|
-
|
|
388
|
+
_context6.t1 = _context6.sent;
|
|
389
|
+
_context6.t0 = [_context6.t1];
|
|
338
390
|
case 24:
|
|
339
|
-
transforms =
|
|
391
|
+
transforms = _context6.t0;
|
|
340
392
|
transformsWithModule = transforms.map(function (transform) {
|
|
341
393
|
return _objectSpread(_objectSpread({}, transform), {}, {
|
|
342
394
|
module: getTransformModule(transform)
|
|
@@ -346,39 +398,39 @@ function _main() {
|
|
|
346
398
|
return "".concat(transform.module, ": ").concat(transform.name);
|
|
347
399
|
}).join('\n')))));
|
|
348
400
|
_iterator = _createForOfIteratorHelper(transformsWithModule);
|
|
349
|
-
|
|
401
|
+
_context6.prev = 28;
|
|
350
402
|
_iterator.s();
|
|
351
403
|
case 30:
|
|
352
404
|
if ((_step = _iterator.n()).done) {
|
|
353
|
-
|
|
405
|
+
_context6.next = 36;
|
|
354
406
|
break;
|
|
355
407
|
}
|
|
356
408
|
transform = _step.value;
|
|
357
|
-
|
|
409
|
+
_context6.next = 34;
|
|
358
410
|
return runTransform(input, transform, flags);
|
|
359
411
|
case 34:
|
|
360
|
-
|
|
412
|
+
_context6.next = 30;
|
|
361
413
|
break;
|
|
362
414
|
case 36:
|
|
363
|
-
|
|
415
|
+
_context6.next = 41;
|
|
364
416
|
break;
|
|
365
417
|
case 38:
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
_iterator.e(
|
|
418
|
+
_context6.prev = 38;
|
|
419
|
+
_context6.t2 = _context6["catch"](28);
|
|
420
|
+
_iterator.e(_context6.t2);
|
|
369
421
|
case 41:
|
|
370
|
-
|
|
422
|
+
_context6.prev = 41;
|
|
371
423
|
_iterator.f();
|
|
372
|
-
return
|
|
424
|
+
return _context6.finish(41);
|
|
373
425
|
case 44:
|
|
374
|
-
return
|
|
426
|
+
return _context6.abrupt("return", {
|
|
375
427
|
transforms: transformsWithModule
|
|
376
428
|
});
|
|
377
429
|
case 45:
|
|
378
430
|
case "end":
|
|
379
|
-
return
|
|
431
|
+
return _context6.stop();
|
|
380
432
|
}
|
|
381
|
-
},
|
|
433
|
+
}, _callee6, null, [[28, 38, 41, 44]]);
|
|
382
434
|
}));
|
|
383
435
|
return _main.apply(this, arguments);
|
|
384
436
|
}
|
|
@@ -10,7 +10,8 @@ import './migrate-to-link/migrate-to-link';
|
|
|
10
10
|
import './migrate-to-new-buttons/migrate-to-new-buttons';
|
|
11
11
|
import './upgrade-pragmatic-drag-and-drop-to-stable/upgrade-pragmatic-drag-and-drop-to-stable';
|
|
12
12
|
import './remove-dark-theme-vr-options/remove-dark-theme-vr-options';
|
|
13
|
-
|
|
13
|
+
import './remove-token-fallbacks/remove-token-fallbacks';
|
|
14
|
+
var presets = ['styled-to-emotion', 'theme-remove-deprecated-mixins', 'migrate-to-link', 'migrate-to-new-buttons', 'upgrade-pragmatic-drag-and-drop-to-stable', 'remove-dark-theme-vr-options', 'remove-token-fallbacks'].map(function (preset) {
|
|
14
15
|
return path.join(__dirname, preset, "".concat(preset, ".@(ts|js|tsx)"));
|
|
15
16
|
});
|
|
16
17
|
export default presets;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
/* eslint-disable @repo/internal/fs/filename-pattern-match */
|
|
2
|
-
|
|
3
|
-
import { addCommentBefore } from '@atlaskit/codemod-utils';
|
|
4
2
|
import { getImportDeclaration } from '@hypermod/utils';
|
|
5
|
-
import {
|
|
3
|
+
import { addCommentBefore } from '@atlaskit/codemod-utils';
|
|
6
4
|
import { genericUnsupportedMigrationComment, spreadPropsComment, stylePropComment } from '../utils/comments';
|
|
5
|
+
import { LINK_ENTRY_POINT, LINK_EXPORT_NAME, PRINT_SETTINGS, UNSUPPORTED_STYLE_PROPS } from '../utils/constants';
|
|
7
6
|
import { findJSXAttributeWithValue } from '../utils/find-attribute-with-value';
|
|
8
7
|
export default function transformer(file, api) {
|
|
9
8
|
var j = api.jscodeshift;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getImportDeclaration, hasJSXAttributes } from '@hypermod/utils';
|
|
2
|
-
import {
|
|
2
|
+
import { NEW_BUTTON_ENTRY_POINT, PRINT_SETTINGS, UNSAFE_SIZE_PROPS_MAP } from '../utils/constants';
|
|
3
3
|
function transformer(file, api) {
|
|
4
4
|
var j = api.jscodeshift;
|
|
5
5
|
var source = j(file.source);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
-
import { PRINT_SETTINGS, entryPointsMapping, BUTTON_TYPES, NEW_BUTTON_ENTRY_POINT } from '../utils/constants';
|
|
3
|
-
import renameElements from '../utils/rename-elements';
|
|
4
2
|
import { getDefaultImportSpecifierName } from '@hypermod/utils';
|
|
3
|
+
import { BUTTON_TYPES, entryPointsMapping, NEW_BUTTON_ENTRY_POINT, PRINT_SETTINGS } from '../utils/constants';
|
|
4
|
+
import renameElements from '../utils/rename-elements';
|
|
5
5
|
var transformer = function transformer(file, api) {
|
|
6
6
|
var j = api.jscodeshift;
|
|
7
7
|
var fileSource = j(file.source);
|
|
@@ -3,10 +3,10 @@ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
|
3
3
|
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
4
4
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
5
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
-
import
|
|
6
|
+
import migrateLinkButtonToLinkTransformer from './codemods/next-migrate-link-button-to-link';
|
|
7
7
|
import migrateToNewButtonVariantsTransformer from './codemods/next-migrate-to-new-button-variants';
|
|
8
8
|
import removeUnsafeSizeTransformer from './codemods/next-remove-unsafe-size';
|
|
9
|
-
import
|
|
9
|
+
import splitImportsTransformer from './codemods/next-split-imports';
|
|
10
10
|
export default function transformer(_x, _x2) {
|
|
11
11
|
return _transformer.apply(this, arguments);
|
|
12
12
|
}
|
package/dist/esm/presets/migrate-to-new-buttons/utils/add-comment-for-custom-theme-buttons.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { addCommentBefore } from '@atlaskit/codemod-utils';
|
|
2
|
-
import { entryPointsMapping, customThemeButtonComment } from './constants';
|
|
3
2
|
import { addCommentForOverlayProp } from './add-comment-for-overlay-prop';
|
|
3
|
+
import { customThemeButtonComment, entryPointsMapping } from './constants';
|
|
4
4
|
export var addCommentForCustomThemeButtons = function addCommentForCustomThemeButtons(fileSource, j) {
|
|
5
5
|
var _fileSource$find$filt;
|
|
6
6
|
var customThemeButtonImportName;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { addCommentBefore } from '@atlaskit/codemod-utils';
|
|
2
2
|
import { getIconAttributes, getIconElement } from '../utils/generate-new-button-element';
|
|
3
|
-
import {
|
|
3
|
+
import { migrateFitContainerButtonToDefaultButtonComment, migrateFitContainerButtonToIconButtonComment, NEW_BUTTON_VARIANTS } from './constants';
|
|
4
4
|
export var migrateFitContainerIconButton = function migrateFitContainerIconButton(element, j) {
|
|
5
5
|
var _iconElement$openingE, _labelAttribute$value;
|
|
6
6
|
var attributes = element.value.openingElement.attributes;
|