import { ReactNode } from 'react'; import { Edit, Briefcase, Plane } from '@transferwise/icons'; import { fn } from 'storybook/test'; import { Flag } from '@wise/art'; import { lorem20 } from '../../test-utils'; import Link from '../../link'; import { ListItem } from '../ListItem'; export type SB_ListItem_ControlType = | 'non-interactive' | 'button' | 'buttonAsLink' | 'partialButton' | 'partialButtonAsLink' | 'iconButton' | 'iconButtonAsLink' | 'iconButtonWithLabel' | 'iconButtonAsLinkWithLabel' | 'partialIconButton' | 'partialIconButtonAsLink' | 'partialIconButtonWithLabel' | 'partialIconButtonAsLinkWithLabel' | 'navigation' | 'navigationAsButton' | 'checkbox' | 'radio' | 'switch'; export const SB_LIST_ITEM_TEXT = { title: 'This is a title', subtitle: 'And it also has a subtitle', valueTitle: '100 GBP', valueSubtitle: '200 USD', longTitle: `This is a long title. ${lorem20}`, longSubtitle: `And it also has a long subtitle. ${lorem20}`, longValueTitle: ( <> This value title
is made to span
across few lines ), }; export const SB_LIST_ITEM_CONTROLS: Record = { 'non-interactive': null, button: {}}>Click me, buttonAsLink: Click me, partialButton: ( {}}> Click me ), partialButtonAsLink: ( Click me ), navigation: , navigationAsButton: , checkbox: {}} />, radio: {}} />, switch: {}} />, iconButton: ( {}}> ), iconButtonAsLink: ( ), iconButtonWithLabel: ( {}}> ), iconButtonAsLinkWithLabel: ( ), partialIconButton: ( {}}> ), partialIconButtonAsLink: ( ), partialIconButtonWithLabel: ( {}}> ), partialIconButtonAsLinkWithLabel: ( ), } as const; export const SB_LIST_ITEM_ADDITIONAL_INFO = { interactive: ( Which is augmented with additional info. ), nonInteractive: ( Which is augmented with additional info. ), } as const; export const SB_LIST_ITEM_PROMPTS = { interactive: ( Finally, there is a prompt{' '} referencing some details {' '} for your convenience. ), nonInteractive: ( Finally, there is a prompt. ), } as const; export const SB_LIST_ITEM_MEDIA = { image: ( ), avatarFlag: ( ), avatarSingle: ( ), avatarDouble: }, { asset: '7+' }]} />, avatarDiagonal: ( }, { asset: }]} /> ), } as const;