1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-28 23:06:37 +01:00
metamask-extension/ui/components/app/security-provider-banner-alert/security-provider-banner-alert.stories.js
Ariella Vu 136ede5d4c
Add Blockaid / PPOM Failed Request Security Alert (#20362)
* WIP blockaid: add request failed UI
- proposed to update reason value. planning to update upon update

* alphabetize

* BlockaidBannerAlert: update tkeys based on reason

* SecurityProviderBannerAlert: fix footer alignment

* BlockaidBannerAlert: rm footer w failed resultType

---------

Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com>
Co-authored-by: Jyoti Puri <jyotipuri@gmail.com>
2023-08-14 18:38:03 +02:00

91 lines
2.4 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import React from 'react';
import { Severity } from '../../../helpers/constants/design-system';
import { ButtonLink, ButtonLinkSize, Text } from '../../component-library';
import { SecurityProvider } from '../../../../shared/constants/security-provider';
import SecurityProviderBannerAlert from './security-provider-banner-alert';
const mockPlainText =
'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus sapien tellus, elementum sit ' +
'amet laoreet vitae, semper in est. Nulla vel tristique felis. Donec non tellus eget neque cursus malesuada.';
const MockDescriptionWithLinks = () => (
<>
Description shouldnt repeat title. 1-3 lines. Can contain a{' '}
<ButtonLink size={ButtonLinkSize.Inherit}>hyperlink</ButtonLink>. It can
also contain a toggle to enable progressive disclosure.
</>
);
const MockDetailsList = () => (
<Text as="ul">
<li> List item</li>
<li> List item</li>
<li> List item</li>
<li> List item</li>
</Text>
);
export default {
title: 'Components/App/SecurityProviderBannerAlert',
argTypes: {
description: {
control: {
type: 'select',
},
options: ['plainText', 'withLinks'],
mapping: {
plainText: mockPlainText,
withLinks: <MockDescriptionWithLinks />,
},
},
details: {
control: {
type: 'select',
},
options: ['none', 'plainText', 'withList'],
mapping: {
none: null,
plainText: mockPlainText,
withList: <MockDetailsList />,
},
},
provider: {
control: {
type: 'select',
},
options: ['none', ...Object.values(SecurityProvider)],
mapping: {
none: null,
},
},
severity: {
control: {
type: 'select',
},
options: [Severity.Danger, Severity.Warning],
},
title: {
control: 'text',
},
},
args: {
title: 'Title is sentence case no period',
description: <MockDescriptionWithLinks />,
details: <MockDetailsList />,
provider: SecurityProvider.Blockaid,
},
};
export const DefaultStory = (args) => (
<SecurityProviderBannerAlert severity={Severity.Warning} {...args} />
);
DefaultStory.storyName = 'Default';
export const Danger = (args) => (
<SecurityProviderBannerAlert severity={Severity.Danger} {...args} />
);
export const Warning = (args) => (
<SecurityProviderBannerAlert severity={Severity.Warning} {...args} />
);