diff --git a/static/app/icons/ctas.stories.tsx b/static/app/icons/ctas.stories.tsx new file mode 100644 index 00000000000000..acef00c1f2628c --- /dev/null +++ b/static/app/icons/ctas.stories.tsx @@ -0,0 +1,121 @@ +import {Fragment} from 'react'; +import styled from '@emotion/styled'; + +import {PanelTable} from 'sentry/components/panels/panelTable'; +import { + IconAdd, + IconChevron, + IconClock, + IconClose, + IconDelete, + IconDocs, + IconEdit, + IconOpen, + IconStar, + IconSubtract, +} from 'sentry/icons'; + +const FixedWidth = styled('div')` + max-width: 800px; +`; + +interface CTAItem { + ctaName: string; + description: string; + icon: React.ReactNode; +} + +const CTA_RECOMENDATIONS: CTAItem[] = [ + { + icon: , + ctaName: 'Create', + description: 'Spawn something from nothing', + }, + { + icon: , + ctaName: 'Add', + description: 'Append another thing in the group', + }, + {icon: , ctaName: 'Delete', description: 'Destroy thing in the group'}, + { + icon: , + ctaName: 'Remove', + description: 'Disconnect thing in the group', + }, + { + icon: null, + ctaName: 'Manage', + description: 'Broader meaning, includes bulk order, add, remove, etc.', + }, + { + icon: , + ctaName: 'Edit', + description: 'Modifies fundamental attribute of the thing', + }, + { + icon: , + ctaName: 'Open in [Product]', + description: 'Leaves existing view and goes to another product', + }, + { + icon: , + ctaName: 'Close', + description: 'Potentially reopen this again later', + }, + { + icon: , + ctaName: 'Read Docs', + description: 'Sim to Open in but always goes to Sentry Docs', + }, + { + icon: null, + ctaName: 'More [Samples]', + description: 'See more samples of the same thing', + }, + { + icon: null, + ctaName: 'Show More', + description: 'Accordions down to reveal more content', + }, + { + icon: , + ctaName: 'Expand', + description: 'Content is completely hidden except for title', + }, + { + icon: , + ctaName: 'Collapse', + description: 'Content is completely shown and need to hide except title', + }, + {icon: null, ctaName: 'Dismiss', description: 'Get rid of forever'}, + { + icon: , + ctaName: 'Remind Me Later', + description: 'Pop something up again later', + }, + { + icon: , + ctaName: 'Pin/Bookmark/Star', + description: 'Favoriting/saving something', + }, +]; + +export default function CTAs() { + return ( + +

Call to Action recommendations

+

Here is some recomended iconography to use with call to actions.

+ + {CTA_RECOMENDATIONS.map(({icon, ctaName, description}) => { + return ( + +
{icon}
+
{ctaName}
+
{description}
+
+ ); + })} +
+
+ ); +}