mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-23 09:52:26 +01:00
Convert knobs and actions to controls/args ConfirmEncryptionPublicKey story (#14319)
* Convert ConfirmEncryptionPublicKey story to controls * Updating fromAccount as per suggestion Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
This commit is contained in:
parent
422aef569a
commit
1faace0115
@ -1,49 +1,85 @@
|
|||||||
import React, { useEffect } from 'react';
|
import React from 'react';
|
||||||
import { select } from '@storybook/addon-knobs';
|
import { Provider } from 'react-redux';
|
||||||
|
import { action } from '@storybook/addon-actions';
|
||||||
|
import configureStore from '../../store/store';
|
||||||
|
import testData from '../../../.storybook/test-data';
|
||||||
|
import ConfirmEncryptionPublicKey from './confirm-encryption-public-key.component';
|
||||||
|
|
||||||
import { store, getNewState } from '../../../.storybook/preview';
|
const store = configureStore(testData);
|
||||||
import { updateMetamaskState } from '../../store/actions';
|
const { confirmTransaction, history, metamask } = store.getState();
|
||||||
import ConfirmEncryptionPublicKey from '.';
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
title: 'Pages/ConfirmEncryptionPublicKey',
|
title: 'Pages/ConfirmEncryptionPublicKey',
|
||||||
id: __filename,
|
id: __filename,
|
||||||
|
component: ConfirmEncryptionPublicKey,
|
||||||
|
decorators: [(story) => <Provider store={store}>{story()}</Provider>],
|
||||||
|
argTypes: {
|
||||||
|
fromAccount: {
|
||||||
|
control: {
|
||||||
|
type: 'object',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
clearConfirmTransaction: {
|
||||||
|
action: 'clearConfirmTransaction',
|
||||||
|
},
|
||||||
|
cancelEncryptionPublicKey: {
|
||||||
|
action: 'cancelEncryptionPublicKey',
|
||||||
|
},
|
||||||
|
encryptionPublicKey: {
|
||||||
|
action: 'encryptionPublicKey',
|
||||||
|
},
|
||||||
|
conversionRate: {
|
||||||
|
control: {
|
||||||
|
type: 'number',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
history: {
|
||||||
|
control: {
|
||||||
|
type: 'object',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
requesterAddress: {
|
||||||
|
control: {
|
||||||
|
type: 'text',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
txData: {
|
||||||
|
control: {
|
||||||
|
type: 'object',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
subjectMetadata: {
|
||||||
|
control: {
|
||||||
|
type: 'object',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mostRecentOverviewPage: {
|
||||||
|
control: {
|
||||||
|
type: 'text',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
nativeCurrency: {
|
||||||
|
control: {
|
||||||
|
type: 'text',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
args: {
|
||||||
|
fromAccount: metamask.accountArray[0],
|
||||||
|
conversionRate: metamask.conversionRate,
|
||||||
|
history: {
|
||||||
|
push: action('history.push()'),
|
||||||
|
},
|
||||||
|
requesterAddress: confirmTransaction.txData.txParams.from,
|
||||||
|
txData: confirmTransaction.txData,
|
||||||
|
subjectMetadata: metamask.subjectMetadata,
|
||||||
|
mostRecentOverviewPage: history.mostRecentOverviewPage,
|
||||||
|
nativeCurrency: metamask.nativeCurrency,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const PageSet = ({ children }) => {
|
export const DefaultStory = (args) => {
|
||||||
const state = store.getState();
|
return <ConfirmEncryptionPublicKey {...args} />;
|
||||||
const options = [];
|
|
||||||
const { identities, unapprovedEncryptionPublicKeyMsgs } = state.metamask;
|
|
||||||
Object.keys(identities).forEach(function (key) {
|
|
||||||
options.push({
|
|
||||||
label: identities[key].name,
|
|
||||||
name: identities[key].name,
|
|
||||||
address: key,
|
|
||||||
});
|
|
||||||
});
|
|
||||||
const account = select('Account', options, options[0]);
|
|
||||||
|
|
||||||
useEffect(() => {
|
|
||||||
unapprovedEncryptionPublicKeyMsgs['7786962153682822'].msgParams =
|
|
||||||
account.address;
|
|
||||||
store.dispatch(
|
|
||||||
updateMetamaskState(
|
|
||||||
getNewState(state.metamask, {
|
|
||||||
unapprovedEncryptionPublicKeyMsgs,
|
|
||||||
}),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
}, [account, unapprovedEncryptionPublicKeyMsgs, state.metamask]);
|
|
||||||
|
|
||||||
return children;
|
|
||||||
};
|
|
||||||
|
|
||||||
export const DefaultStory = () => {
|
|
||||||
return (
|
|
||||||
<PageSet>
|
|
||||||
<ConfirmEncryptionPublicKey />
|
|
||||||
</PageSet>
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
DefaultStory.storyName = 'Default';
|
DefaultStory.storyName = 'Default';
|
||||||
|
Loading…
Reference in New Issue
Block a user