Skip to content

Commit

Permalink
Create v12-react-update-component-prop-shadow migrations
Browse files Browse the repository at this point in the history
  • Loading branch information
sophschneider committed Oct 13, 2023
1 parent 599d213 commit 486a0e8
Show file tree
Hide file tree
Showing 6 changed files with 86 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@ import {
replacementMap1,
replacementMap2,
} from '../v12-styles-replace-custom-property-color/transform';

import type {ComponentFromPropsMap} from './utils';
import {getReplacementMaps} from './utils';
import type {ComponentFromPropsMap} from '../react-update-component-prop/utils';
import {getReplacementMaps} from '../react-update-component-prop/utils';

const normalizedReplacementMap1 = Object.fromEntries(
Object.entries(replacementMap1).map(([fromValue, toValue]) => [
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import React from 'react';
import {Box} from '@shopify/polaris';

declare function Child(props: any): JSX.Element;

const BoxWrapper = Box;

export function App() {
return (
<>
<Box shadow="sm" padding="0">
Hello
<Child shadow="sm" />
<BoxWrapper />
<Box shadow="border-inset-experimental" />
<Box shadow="card-lg-experimental" />
</Box>
</>
);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import React from 'react';
import {Box} from '@shopify/polaris';

declare function Child(props: any): JSX.Element;

const BoxWrapper =
/* polaris-migrator: Unable to migrate the following expression. Please upgrade manually. */
Box;

export function App() {
return (
<>
<Box shadow="200" padding="0">
Hello
<Child shadow="sm" />
<BoxWrapper />
<Box shadow="border-inset" />
<Box shadow="300" />
</Box>
</>
);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import {check} from '../../../utilities/check';

const transform = 'v12-react-update-component-prop-space';
const fixtures = [
{
name: 'basic',
},
];

for (const fixture of fixtures) {
check(__dirname, {
fixture: fixture.name,
transform,
});
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import type {FileInfo, API} from 'jscodeshift';

import {replacementMaps} from '../v12-styles-replace-custom-property-shadow/transform';
import reactUpdateComponentProp from '../react-update-component-prop/transform';
import type {ComponentReplacementOptions} from '../react-update-component-prop/utils';
import {getReplacementMaps} from '../react-update-component-prop/utils';

const normalizedReplacementMap = Object.fromEntries(
Object.entries(replacementMaps['/.+/']).map(([fromValue, toValue]) => [
fromValue.replace('--p-shadow-', ''),
toValue.replace('--p-shadow-', ''),
]),
);

const componentReplacementOptions: ComponentReplacementOptions = {
Box: ['shadow'],
};

export default function transformer(fileInfo: FileInfo, _: API) {
return reactUpdateComponentProp(fileInfo, _, {
replacementMaps: getReplacementMaps(
componentReplacementOptions,
normalizedReplacementMap,
),
});
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export default function transformer(fileInfo: FileInfo, _: API) {
return stylesReplaceCustomProperty(fileInfo, _, {replacementMaps});
}

const replacementMaps = {
export const replacementMaps = {
'/.+/': {
'--p-shadow-inset-lg': '--p-shadow-inset-200',
'--p-shadow-inset-md': '--p-shadow-inset-200',
Expand Down

0 comments on commit 486a0e8

Please sign in to comment.