@arcblock/ux 2.5.31 → 2.5.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -31,6 +31,8 @@ var _useBrowser = _interopRequireDefault(require("@arcblock/react-hooks/lib/useB
31
31
 
32
32
  var _OAuth = require("@arcblock/did-connect/lib/OAuth");
33
33
 
34
+ var _User = require("@arcblock/did-connect/lib/User");
35
+
34
36
  var _Theme = require("../Theme");
35
37
 
36
38
  var _Avatar = _interopRequireDefault(require("../Avatar"));
@@ -131,16 +133,25 @@ function SessionManager(_ref) {
131
133
  return (_session$user2 = session.user) === null || _session$user2 === void 0 ? void 0 : (_session$user2$passpo = _session$user2.passports) === null || _session$user2$passpo === void 0 ? void 0 : _session$user2$passpo.find(item => item.name === session.user.role);
132
134
  }, [session.user]);
133
135
  const browser = (0, _useBrowser.default)();
136
+ const {
137
+ walletDid
138
+ } = (0, _User.useDid)({
139
+ session
140
+ });
134
141
  const isRawWalletAccount = !((_session$user3 = session.user) !== null && _session$user3 !== void 0 && (_session$user3$extraC = _session$user3.extraConfigs) !== null && _session$user3$extraC !== void 0 && _session$user3$extraC.sourceProvider) || ((_session$user4 = session.user) === null || _session$user4 === void 0 ? void 0 : (_session$user4$extraC = _session$user4.extraConfigs) === null || _session$user4$extraC === void 0 ? void 0 : _session$user4$extraC.sourceProvider) === 'wallet';
135
142
  const connectedAccounts = ((_session$user5 = session.user) === null || _session$user5 === void 0 ? void 0 : (_session$user5$extraC = _session$user5.extraConfigs) === null || _session$user5$extraC === void 0 ? void 0 : _session$user5$extraC.connectedAccounts) || [];
143
+ let hasBindWallet = false;
136
144
  let hasBindAccount = false;
137
145
 
138
146
  if (isRawWalletAccount) {
139
147
  if (connectedAccounts.some(item => item.provider !== 'wallet')) {
140
148
  hasBindAccount = true;
141
149
  }
150
+
151
+ hasBindWallet = true;
142
152
  } else if (connectedAccounts.some(item => item.provider === 'wallet')) {
143
153
  hasBindAccount = true;
154
+ hasBindWallet = true;
144
155
  }
145
156
 
146
157
  const oauthConfigList = Object.entries(oauthConfigs).map(_ref2 => {
@@ -334,7 +345,7 @@ function SessionManager(_ref) {
334
345
  })]
335
346
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Address.default, {
336
347
  responsive: false,
337
- children: session.user.did
348
+ children: walletDid || session.user.email
338
349
  })]
339
350
  }), Array.isArray(menu) && menu.map((menuItem, index) => {
340
351
  const {
@@ -376,7 +387,7 @@ function SessionManager(_ref) {
376
387
  component: _Switch.default,
377
388
  className: "session-manager-menu-icon"
378
389
  }), message.switchDid]
379
- }), !!switchProfile && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.MenuItem, {
390
+ }), !!switchProfile && hasBindWallet && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.MenuItem, {
380
391
  className: "session-manager-menu-item",
381
392
  onClick: _onSwitchProfile,
382
393
  "data-cy": "sessionManager-switch-profile-trigger",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcblock/ux",
3
- "version": "2.5.31",
3
+ "version": "2.5.33",
4
4
  "description": "Common used react components for arcblock products",
5
5
  "keywords": [
6
6
  "react",
@@ -47,11 +47,11 @@
47
47
  "react": ">=18.1.0",
48
48
  "react-ga": "^2.7.0"
49
49
  },
50
- "gitHead": "166b4343ec439bfd132f120ff51d070b5324db54",
50
+ "gitHead": "c8b2fe66206c97c546b1808364c41c44ac04fcda",
51
51
  "dependencies": {
52
52
  "@arcblock/did-motif": "^1.1.10",
53
- "@arcblock/icons": "^2.5.31",
54
- "@arcblock/react-hooks": "^2.5.31",
53
+ "@arcblock/icons": "^2.5.33",
54
+ "@arcblock/react-hooks": "^2.5.33",
55
55
  "@babel/plugin-syntax-dynamic-import": "^7.8.3",
56
56
  "@emotion/react": "^11.10.4",
57
57
  "@emotion/styled": "^11.10.4",
@@ -13,6 +13,7 @@ import BindWalletIcon from '@mui/icons-material/Link';
13
13
  import SwitchPassportIcon from '@mui/icons-material/VpnKeyOutlined';
14
14
  import useBrowser from '@arcblock/react-hooks/lib/useBrowser';
15
15
  import { useOAuth } from '@arcblock/did-connect/lib/OAuth';
16
+ import { useDid } from '@arcblock/did-connect/lib/User';
16
17
 
17
18
  import { styled } from '../Theme';
18
19
  import DidAvatar from '../Avatar';
@@ -82,17 +83,21 @@ function SessionManager({
82
83
  [session.user]
83
84
  );
84
85
  const browser = useBrowser();
86
+ const { walletDid } = useDid({ session });
85
87
 
86
88
  const isRawWalletAccount =
87
89
  !session.user?.extraConfigs?.sourceProvider || session.user?.extraConfigs?.sourceProvider === 'wallet';
88
90
  const connectedAccounts = session.user?.extraConfigs?.connectedAccounts || [];
91
+ let hasBindWallet = false;
89
92
  let hasBindAccount = false;
90
93
  if (isRawWalletAccount) {
91
94
  if (connectedAccounts.some((item) => item.provider !== 'wallet')) {
92
95
  hasBindAccount = true;
93
96
  }
97
+ hasBindWallet = true;
94
98
  } else if (connectedAccounts.some((item) => item.provider === 'wallet')) {
95
99
  hasBindAccount = true;
100
+ hasBindWallet = true;
96
101
  }
97
102
 
98
103
  const oauthConfigList = Object.entries(oauthConfigs)
@@ -248,7 +253,7 @@ function SessionManager({
248
253
  />
249
254
  )}
250
255
  </div>
251
- <DidAddress responsive={false}>{session.user.did}</DidAddress>
256
+ <DidAddress responsive={false}>{walletDid || session.user.email}</DidAddress>
252
257
  </div>
253
258
  {Array.isArray(menu) &&
254
259
  menu.map((menuItem, index) => {
@@ -295,7 +300,7 @@ function SessionManager({
295
300
  {message.switchDid}
296
301
  </MenuItem>
297
302
  )}
298
- {!!switchProfile && (
303
+ {!!switchProfile && hasBindWallet && (
299
304
  <MenuItem
300
305
  className="session-manager-menu-item"
301
306
  onClick={_onSwitchProfile}