]}
items={[
{label: 'ID', value: item.id},
- {label: t('form.alias'), value: item.alias},
+ {label: t('form.alias'), value: item.alias, editUrl: `/accounts/${item.id}/alias`},
{label: t('form.xpubs'), value: (item.xpubs || []).length},
{label: t('form.quorum') , value: item.quorum},
]}
}
case 'UPDATED_ACCOUNT': {
- return newSuccess(state, <p>
- Updated account tags.
- </p>)
+ return newSuccess(state, 'UPDATED_ACCOUNT')
+ }
+
+ case 'UPDATED_KEY': {
+ return newSuccess(state, 'UPDATED_KEY')
}
case 'UPDATED_ASSET': {
})
}
-update.submitUpdateForm = (data, xpub) => {
- let promise = Promise.resolve()
-
- return function(dispatch) {
- return promise.then(() => clientApi().updateAlias({
- xpub: xpub,
- newAlias: data.alias,
- }).then((resp) => {
- if (resp.status === 'fail') {
- throw resp
- }
- dispatch(update.updated())
-
- dispatch(push({
- pathname: `/${type}s/${xpub}`,
- state: {
- preserveFlash: true
- }
- }))
- }))
- }
-}
-
const resetPassword = {
submitResetForm: (params) => {
let promise = Promise.resolve()
import React from 'react'
import styles from './Flash.scss'
-const messageLabel =[
- 'CREATED_ASSET',
- 'CREATED_ACCOUNT',
- 'CREATED_TRANSACTION',
- 'CREATED_KEY',
- 'RESET_PASSWORD_KEY',
- 'CREATE_REGISTER_ACCOUNT',
- 'RESTORE_SUCCESS',
- 'UPDATED_ASSET'
-]
-
class Flash extends React.Component {
constructor(props) {
super(props)
return null
}
- const t = this.props.t
+ const {t} = this.props
const messages = []
// Flash messages are stored in an objecty key with a random UUID. If
// multiple messages are displayed, we rely on the browser maintaining
// were created.
Object.keys(this.props.messages).forEach(key => {
const item = this.props.messages[key]
- const messageKey = (messageLabel).filter(key => key === item.message)
- const messageContent = messageKey.length === 0? item.message: <p>{t(`message.${messageKey}`)}</p>
+ const messageContent = t([`message.${item.message}`, item.message])
+
messages.push(
<div className={`${styles.alert} ${styles[item.type]} ${styles.main}`} key={key}>
<div className={styles.content}>
"RESET_PASSWORD_KEY": "Key password has been reset successfully.",
"CREATE_REGISTER_ACCOUNT": "Default account and key have been initialized successfully.",
"RESTORE_SUCCESS":"Wallet restore successfully",
- "UPDATED_ASSET":"Updated asset alias."
+ "UPDATED_ASSET":"Updated asset alias.",
+ "UPDATED_ACCOUNT":"Updated account alias.",
+ "UPDATED_KEY":"Updated key alias."
},
"btmError":{
"BTM000": "Bytom API Error",
"RESET_PASSWORD_KEY": "密钥密码已经重置成功。",
"CREATE_REGISTER_ACCOUNT": "默认账户和密钥已经初始化成功。",
"RESTORE_SUCCESS":"钱包已经成功恢复。",
- "UPDATED_ASSET":"资产别名更改成功。"
+ "UPDATED_ASSET":"资产别名更改成功。",
+ "UPDATED_ACCOUNT":"账户别名更改成功。",
+ "UPDATED_KEY":"密钥别名更改成功。"
},
"btmError":{
"BTM000": "非比原标准错误",
updateTagsBatch: (params, cb) => shared.batchRequest(client, '/update-account-tags', params, cb),
+ updateAlias: (params, cb) => {
+ const finalParams = {
+ account_id: params.id,
+ new_alias: params.alias
+ }
+ return shared.singletonBatchRequest(client, '/update-account-alias', finalParams, cb)
+ },
+
query: (params, cb) => shared.query(client, 'accounts', '/list-accounts', params, {cb}),
queryAll: (params, processor, cb) => shared.queryAll(client, 'accounts', params, processor, cb),
resetPassword: (params) => client.request('/reset-key-password', params),
- updateAlias: (params) => client.request('/update-key-alias', params),
+ updateAlias: (params, cb) => {
+ const finalParams = {
+ xpub: params.id,
+ new_alias: params.alias
+ }
+ return shared.singletonBatchRequest(client, '/update-key-alias', finalParams, cb)
+ },
checkPassword: (params) => client.request('/check-key-password', params),