SecurityView.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. import React, { Component, Fragment } from 'react';
  2. import { formatMessage, FormattedMessage } from 'umi/locale';
  3. import { List } from 'antd';
  4. // import { getTimeDistance } from '@/utils/utils';
  5. const passwordStrength = {
  6. strong: (
  7. <font className="strong">
  8. <FormattedMessage id="app.settings.security.strong" defaultMessage="Strong" />
  9. </font>
  10. ),
  11. medium: (
  12. <font className="medium">
  13. <FormattedMessage id="app.settings.security.medium" defaultMessage="Medium" />
  14. </font>
  15. ),
  16. weak: (
  17. <font className="weak">
  18. <FormattedMessage id="app.settings.security.weak" defaultMessage="Weak" />
  19. Weak
  20. </font>
  21. ),
  22. };
  23. class SecurityView extends Component {
  24. getData = () => [
  25. {
  26. title: formatMessage({ id: 'app.settings.security.password' }, {}),
  27. description: (
  28. <Fragment>
  29. {formatMessage({ id: 'app.settings.security.password-description' })}:
  30. {passwordStrength.strong}
  31. </Fragment>
  32. ),
  33. actions: [
  34. <a>
  35. <FormattedMessage id="app.settings.security.modify" defaultMessage="Modify" />
  36. </a>,
  37. ],
  38. },
  39. {
  40. title: formatMessage({ id: 'app.settings.security.phone' }, {}),
  41. description: `${formatMessage(
  42. { id: 'app.settings.security.phone-description' },
  43. {}
  44. )}:138****8293`,
  45. actions: [
  46. <a>
  47. <FormattedMessage id="app.settings.security.modify" defaultMessage="Modify" />
  48. </a>,
  49. ],
  50. },
  51. {
  52. title: formatMessage({ id: 'app.settings.security.question' }, {}),
  53. description: formatMessage({ id: 'app.settings.security.question-description' }, {}),
  54. actions: [
  55. <a>
  56. <FormattedMessage id="app.settings.security.set" defaultMessage="Set" />
  57. </a>,
  58. ],
  59. },
  60. {
  61. title: formatMessage({ id: 'app.settings.security.email' }, {}),
  62. description: `${formatMessage(
  63. { id: 'app.settings.security.email-description' },
  64. {}
  65. )}:ant***sign.com`,
  66. actions: [
  67. <a>
  68. <FormattedMessage id="app.settings.security.modify" defaultMessage="Modify" />
  69. </a>,
  70. ],
  71. },
  72. {
  73. title: formatMessage({ id: 'app.settings.security.mfa' }, {}),
  74. description: formatMessage({ id: 'app.settings.security.mfa-description' }, {}),
  75. actions: [
  76. <a>
  77. <FormattedMessage id="app.settings.security.bind" defaultMessage="Bind" />
  78. </a>,
  79. ],
  80. },
  81. ];
  82. render() {
  83. return (
  84. <Fragment>
  85. <List
  86. itemLayout="horizontal"
  87. dataSource={this.getData()}
  88. renderItem={item => (
  89. <List.Item actions={item.actions}>
  90. <List.Item.Meta title={item.title} description={item.description} />
  91. </List.Item>
  92. )}
  93. />
  94. </Fragment>
  95. );
  96. }
  97. }
  98. export default SecurityView;