Codemods

The American Express Design System provides a unified language for designing American Express websites and experiences. The design system provides design resources that match our coded components and are aligned with the American Express brand. Included are colors, components, icons and glyphs, type styles, and graphic assets to get you up and running quickly.

Back to All Codemods

OverflowMenu Transform

Converts a v6 OverflowMenu component to a v7 Menu component with a custom trigger.

Automatic Changes

  • Attempts to transform the deprecated theme prop to the className prop. If it cannot, deletes the theme prop.
  • Renames the import and usages of OverflowMenu to Menu.
  • Removes the align prop, which has beeen deprecated.
  • Adds a customTrigger, which is a button with the new menu icon.
  • Moves the id and label prop to the customTrigger prop.

For example:

import { OverflowMenu } from '@americanexpress/dls-react6';

export default function Page() {

return (

<OverflowMenu

align="left"

id="id"

label="menu"

theme={{ color: 'red' }}

{...otherProps}

>

{/** Children */}

</OverflowMenu>

);

}

Transforms into:

import { Menu } from '@americanexpress/dls-react';

export default function Page() {

return (

<Menu

customTrigger={

<IconToggleButton id="id" label="menu" shape="square">

<IconMenu />

</IconToggleButton>

}

{...otherProps}

>

{/** Children */}

</Menu>

);

}

Questions?

Connect with the DLS Team on Slack or by email.

Resources

Check out additional resources.