1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-27 12:56:01 +01:00
metamask-extension/ui/components/app/flask/snap-settings-card
Erik Marks 35ac762e10
Add Snaps via Flask (#13462)
This PR adds `snaps` under Flask build flags to the extension. This branch is mostly equivalent to the current production version of Flask, excepting some bug fixes and tweaks.

Closes #11626
2022-02-14 16:02:51 -08:00
..
index.js Adding SnapSettingsCard ui component (#12655) 2021-12-01 16:10:51 -05:00
index.scss Adding SnapSettingsCard ui component (#12655) 2021-12-01 16:10:51 -05:00
README.mdx Adding SnapSettingsCard ui component (#12655) 2021-12-01 16:10:51 -05:00
snap-settings-card.js Add Snaps via Flask (#13462) 2022-02-14 16:02:51 -08:00
snap-settings-card.stories.js Adding SnapSettingsCard ui component (#12655) 2021-12-01 16:10:51 -05:00
snap-settings-card.test.js Adding SnapSettingsCard ui component (#12655) 2021-12-01 16:10:51 -05:00

import { Story, Canvas, ArgsTable } from '@storybook/addon-docs';

import SnapSettingsCard from '.';

# SnapSettingsCard

A card component that displays information and the status of a snap. The `SnapSettingsCard` component is made up of the `Card`, `IconBorder`, `IconWithFallback`, `ToggleButton`, `Chip`, `ColorIndicator` and `Button` components

<Canvas>
  <Story id="ui-components-app-flask-snap-settings-card-snap-settings-card-stories-js--default-story" />
</Canvas>

## Component API

<ArgsTable of={SnapSettingsCard} />

## Usage

The following describes the props and example usage for this component.

### Status

There are 4 statuses the `SnapSettingsCard` can have: `'installing'`,`'running'`,`'stopped'` and `'crashed'`.

<Canvas>
  <Story id="ui-components-app-flask-snap-settings-card-snap-settings-card-stories-js--status" />
</Canvas>

### isEnabled / onToggle

Use the `isEnabled` and `onToggle` to control the `ToggleButton` component inside of the `SnapSettingsCard`

```jsx
const [isEnabled, setIsEnabled] = React.useState(false);

const handleOnToggle = () => {
  setIsEnabled(!isEnabled);
};

return <SnapSettingsCard isEnabled={isEnabled} onToggle={handleOnToggle} />;
```