@arcblock/ux 2.9.90 → 2.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (337) hide show
  1. package/lib/ActionButton/index.js +36 -48
  2. package/lib/ActivityIndicator/index.js +122 -75
  3. package/lib/Address/compact-text.js +48 -66
  4. package/lib/Address/did-address.js +114 -87
  5. package/lib/Address/index.js +15 -27
  6. package/lib/Address/responsive-did-address.js +48 -50
  7. package/lib/Alert/index.js +58 -52
  8. package/lib/AnimationWaiter/index.js +123 -69
  9. package/lib/Async/index.js +8 -22
  10. package/lib/Avatar/did-motif.js +38 -52
  11. package/lib/Avatar/etherscan-blockies.js +4 -10
  12. package/lib/Avatar/index.js +71 -77
  13. package/lib/Badge/index.js +49 -56
  14. package/lib/Blocklet/blocklet.js +181 -97
  15. package/lib/Blocklet/index.js +4 -24
  16. package/lib/Blocklet/utils.js +50 -13
  17. package/lib/BlockletContext/index.js +21 -31
  18. package/lib/BlockletNFT/index.js +255 -115
  19. package/lib/Button/index.js +5 -11
  20. package/lib/Button/wrap.js +45 -56
  21. package/lib/ButtonGroup/index.js +3 -9
  22. package/lib/CardSelector/index.js +67 -43
  23. package/lib/Center/index.js +19 -20
  24. package/lib/ClickToCopy/copy-button.js +37 -50
  25. package/lib/ClickToCopy/hook.js +10 -18
  26. package/lib/ClickToCopy/index.js +54 -66
  27. package/lib/CodeBlock/LightBox.js +84 -11
  28. package/lib/CodeBlock/index.js +175 -101
  29. package/lib/Colors/index.js +3 -20
  30. package/lib/Colors/themes/default.js +1 -7
  31. package/lib/Colors/themes/temp.js +1 -7
  32. package/lib/ContactForm/index.js +95 -60
  33. package/lib/CookieConsent/index.js +58 -52
  34. package/lib/CountDown/index.js +90 -59
  35. package/lib/DID/index.js +80 -96
  36. package/lib/Datatable/CustomToolbar.js +188 -137
  37. package/lib/Datatable/DatatableContext.js +14 -21
  38. package/lib/Datatable/TableSearch.js +99 -58
  39. package/lib/Datatable/index.js +312 -139
  40. package/lib/Datatable/utils.js +9 -17
  41. package/lib/Dialog/confirm.js +46 -58
  42. package/lib/Dialog/dialog.js +110 -66
  43. package/lib/Dialog/index.js +4 -27
  44. package/lib/Dialog/use-confirm.js +40 -65
  45. package/lib/DidLogo/index.js +14 -22
  46. package/lib/DriftBot/index.js +34 -19
  47. package/lib/Earth/index.js +214 -110
  48. package/lib/Earth/util.js +6 -19
  49. package/lib/Empty/index.js +33 -38
  50. package/lib/ErrorBoundary/fallback.js +45 -43
  51. package/lib/ErrorBoundary/index.js +1 -16
  52. package/lib/Footer/index.js +96 -48
  53. package/lib/Header/auto-hidden.js +28 -31
  54. package/lib/Header/header.js +151 -69
  55. package/lib/Header/index.js +2 -20
  56. package/lib/Header/responsive-header.js +67 -60
  57. package/lib/Icon/image.js +41 -45
  58. package/lib/Icon/index.js +51 -53
  59. package/lib/Img/index.js +77 -88
  60. package/lib/InfoRow/index.js +66 -48
  61. package/lib/Layout/dashboard/external-link.js +38 -53
  62. package/lib/Layout/dashboard/full-page.js +27 -41
  63. package/lib/Layout/dashboard/index.js +177 -132
  64. package/lib/Layout/dashboard/sidebar.js +164 -61
  65. package/lib/Layout/dashboard-legacy/header.js +119 -66
  66. package/lib/Layout/dashboard-legacy/index.js +90 -79
  67. package/lib/Layout/dashboard-legacy/sidebar.js +95 -62
  68. package/lib/Layout/index.js +200 -106
  69. package/lib/LoadingMask/index.js +31 -38
  70. package/lib/Locale/browser-lang.js +2 -8
  71. package/lib/Locale/context.js +46 -69
  72. package/lib/Locale/languages.js +6 -15
  73. package/lib/Locale/selector.js +116 -92
  74. package/lib/Locale/util.js +7 -16
  75. package/lib/Logo/index.js +54 -57
  76. package/lib/Metric/index.js +103 -40
  77. package/lib/NFTDisplay/aspect-ratio-container.js +33 -40
  78. package/lib/NFTDisplay/broken.js +68 -52
  79. package/lib/NFTDisplay/index.js +140 -129
  80. package/lib/NFTDisplay/loading.js +14 -13
  81. package/lib/NFTDisplay/svg-embedder/img.js +18 -33
  82. package/lib/NFTDisplay/svg-embedder/inline-svg.js +28 -32
  83. package/lib/NavMenu/index.js +2 -13
  84. package/lib/NavMenu/nav-menu.js +133 -148
  85. package/lib/NavMenu/style.js +179 -12
  86. package/lib/PageScroller/index.js +82 -93
  87. package/lib/PageScroller/story/FifthComponent.js +4 -10
  88. package/lib/PageScroller/story/FirstComponent.js +4 -10
  89. package/lib/PageScroller/story/FourthComponent.js +4 -10
  90. package/lib/PageScroller/story/FullPage.js +21 -28
  91. package/lib/PageScroller/story/PageContain.js +23 -30
  92. package/lib/PageScroller/story/SecondComponent.js +4 -10
  93. package/lib/PageScroller/story/ThirdComponent.js +4 -10
  94. package/lib/PageScroller/usePrevValue.js +4 -11
  95. package/lib/Passport/index.js +2 -9
  96. package/lib/Passport/passport.js +38 -51
  97. package/lib/PoweredByArcBlock/index.js +19 -33
  98. package/lib/PricingTable/PricingPlan.js +90 -34
  99. package/lib/PricingTable/index.js +28 -26
  100. package/lib/QRCode/index.js +38 -50
  101. package/lib/RelativeTime/index.js +44 -59
  102. package/lib/Result/common.js +85 -107
  103. package/lib/Result/index.js +22 -34
  104. package/lib/Result/result.js +35 -41
  105. package/lib/Result/translations.js +1 -7
  106. package/lib/Screenshot/BaseScreenshot/index.js +65 -43
  107. package/lib/Screenshot/BaseScreenshot/shells/Macbook.js +17 -27
  108. package/lib/Screenshot/BaseScreenshot/shells/Phone.js +14 -25
  109. package/lib/Screenshot/index.js +103 -92
  110. package/lib/SessionBlocklet/index.js +125 -143
  111. package/lib/SessionManager/index.js +2 -9
  112. package/lib/SessionPermission/index.js +13 -23
  113. package/lib/SessionUser/components/logged-in.js +139 -158
  114. package/lib/SessionUser/components/session-user-item.js +44 -58
  115. package/lib/SessionUser/components/session-user-switch.js +133 -152
  116. package/lib/SessionUser/components/un-login.js +27 -35
  117. package/lib/SessionUser/components/user-info.js +62 -74
  118. package/lib/SessionUser/index.js +26 -34
  119. package/lib/SessionUser/libs/translation.js +1 -7
  120. package/lib/SessionUser/libs/utils.js +13 -34
  121. package/lib/Sparkline/index.js +4 -10
  122. package/lib/Spinner/index.js +11 -17
  123. package/lib/SplitButton/index.js +72 -68
  124. package/lib/Success/index.js +28 -34
  125. package/lib/Switch/index.js +64 -75
  126. package/lib/Tabs/index.js +84 -103
  127. package/lib/Tag/index.js +52 -56
  128. package/lib/TextCollapse/index.js +57 -50
  129. package/lib/Theme/index.js +8 -47
  130. package/lib/Theme/theme-provider.js +19 -26
  131. package/lib/Theme/theme.js +49 -62
  132. package/lib/Toast/index.js +41 -73
  133. package/lib/Typography/index.js +44 -55
  134. package/lib/Util/constant.js +16 -22
  135. package/lib/Util/deprecate.js +14 -26
  136. package/lib/Util/federated.js +16 -38
  137. package/lib/Util/index.js +63 -113
  138. package/lib/Util/passport.js +23 -33
  139. package/lib/Util/wallet.js +5 -14
  140. package/lib/Video/index.js +34 -34
  141. package/lib/Wallet/Action.js +72 -49
  142. package/lib/Wallet/Download.js +132 -115
  143. package/lib/Wallet/Open.js +26 -25
  144. package/lib/WalletOSIcon/index.js +33 -42
  145. package/lib/WebWalletSWKeeper/index.js +42 -55
  146. package/lib/WechatPrompt/index.js +53 -33
  147. package/lib/index.js +38 -265
  148. package/lib/withTheme/index.js +53 -33
  149. package/lib/withTracker/error_boundary.js +7 -18
  150. package/lib/withTracker/index.js +25 -34
  151. package/package.json +9 -316
  152. package/src/WalletOSIcon/index.jsx +1 -1
  153. package/es/ActionButton/index.js +0 -99
  154. package/es/ActivityIndicator/index.js +0 -180
  155. package/es/Address/compact-text.js +0 -105
  156. package/es/Address/did-address.js +0 -222
  157. package/es/Address/index.js +0 -23
  158. package/es/Address/responsive-did-address.js +0 -87
  159. package/es/Alert/index.js +0 -134
  160. package/es/AnimationWaiter/default-animation.json +0 -1
  161. package/es/AnimationWaiter/index.js +0 -240
  162. package/es/Async/index.js +0 -38
  163. package/es/Avatar/did-motif.js +0 -68
  164. package/es/Avatar/etherscan-blockies.js +0 -83
  165. package/es/Avatar/index.js +0 -179
  166. package/es/Badge/index.js +0 -98
  167. package/es/Blocklet/blocklet.js +0 -298
  168. package/es/Blocklet/index.js +0 -4
  169. package/es/Blocklet/utils.js +0 -52
  170. package/es/BlockletContext/index.js +0 -65
  171. package/es/BlockletNFT/index.js +0 -412
  172. package/es/Button/index.js +0 -8
  173. package/es/Button/wrap.js +0 -140
  174. package/es/ButtonGroup/index.js +0 -6
  175. package/es/CardSelector/index.js +0 -149
  176. package/es/Center/index.js +0 -41
  177. package/es/ClickToCopy/copy-button.js +0 -72
  178. package/es/ClickToCopy/hook.js +0 -39
  179. package/es/ClickToCopy/index.js +0 -92
  180. package/es/CodeBlock/LightBox.js +0 -85
  181. package/es/CodeBlock/index.js +0 -222
  182. package/es/Colors/index.js +0 -3
  183. package/es/Colors/themes/default.js +0 -77
  184. package/es/Colors/themes/temp.js +0 -41
  185. package/es/ContactForm/index.js +0 -230
  186. package/es/CookieConsent/index.js +0 -113
  187. package/es/CountDown/index.js +0 -178
  188. package/es/DID/index.js +0 -249
  189. package/es/Datatable/CustomToolbar.js +0 -396
  190. package/es/Datatable/DatatableContext.js +0 -34
  191. package/es/Datatable/TableSearch.js +0 -166
  192. package/es/Datatable/index.js +0 -629
  193. package/es/Datatable/utils.js +0 -132
  194. package/es/Dialog/confirm.js +0 -123
  195. package/es/Dialog/dialog.js +0 -201
  196. package/es/Dialog/index.js +0 -4
  197. package/es/Dialog/types.d.ts +0 -17
  198. package/es/Dialog/use-confirm.js +0 -133
  199. package/es/DidLogo/index.js +0 -31
  200. package/es/DriftBot/index.js +0 -70
  201. package/es/Earth/countries.json +0 -8057
  202. package/es/Earth/index.js +0 -521
  203. package/es/Earth/util.js +0 -51
  204. package/es/Empty/index.js +0 -65
  205. package/es/ErrorBoundary/fallback.js +0 -73
  206. package/es/ErrorBoundary/index.js +0 -1
  207. package/es/Footer/index.js +0 -172
  208. package/es/Header/auto-hidden.js +0 -35
  209. package/es/Header/header.js +0 -223
  210. package/es/Header/index.js +0 -2
  211. package/es/Header/responsive-header.js +0 -146
  212. package/es/Icon/image.js +0 -65
  213. package/es/Icon/index.js +0 -84
  214. package/es/Img/index.js +0 -218
  215. package/es/InfoRow/index.js +0 -87
  216. package/es/Layout/dashboard/external-link.js +0 -58
  217. package/es/Layout/dashboard/full-page.js +0 -53
  218. package/es/Layout/dashboard/index.js +0 -282
  219. package/es/Layout/dashboard/sidebar.js +0 -209
  220. package/es/Layout/dashboard-legacy/header.js +0 -174
  221. package/es/Layout/dashboard-legacy/index.js +0 -148
  222. package/es/Layout/dashboard-legacy/sidebar.js +0 -129
  223. package/es/Layout/index.js +0 -335
  224. package/es/LoadingMask/index.js +0 -102
  225. package/es/Locale/browser-lang.js +0 -52
  226. package/es/Locale/context.js +0 -139
  227. package/es/Locale/languages.js +0 -60
  228. package/es/Locale/selector.js +0 -186
  229. package/es/Locale/util.js +0 -21
  230. package/es/Logo/images/logo-dark-text.svg +0 -3
  231. package/es/Logo/images/logo-dark-top.svg +0 -6
  232. package/es/Logo/images/logo-light-text.svg +0 -3
  233. package/es/Logo/images/logo-light-top.svg +0 -6
  234. package/es/Logo/index.js +0 -136
  235. package/es/Metric/index.js +0 -132
  236. package/es/NFTDisplay/NFTBroken.svg +0 -34
  237. package/es/NFTDisplay/README.md +0 -59
  238. package/es/NFTDisplay/aspect-ratio-container.js +0 -39
  239. package/es/NFTDisplay/broken.js +0 -132
  240. package/es/NFTDisplay/demo/data/asset-state-display-url.json +0 -7
  241. package/es/NFTDisplay/demo/data/asset-state-gzipped-svg-1-1.json +0 -10
  242. package/es/NFTDisplay/demo/data/asset-state-gzipped-svg-374-130.json +0 -10
  243. package/es/NFTDisplay/demo/data/asset-state-gzipped-svg-with-foreign-object.json +0 -20
  244. package/es/NFTDisplay/demo/data/asset-state-svg.json +0 -29
  245. package/es/NFTDisplay/demo/data/asset-state-url.json +0 -10
  246. package/es/NFTDisplay/index.js +0 -328
  247. package/es/NFTDisplay/loading.js +0 -18
  248. package/es/NFTDisplay/svg-embedder/img.js +0 -45
  249. package/es/NFTDisplay/svg-embedder/inline-svg.js +0 -39
  250. package/es/NavMenu/index.js +0 -2
  251. package/es/NavMenu/nav-menu.js +0 -358
  252. package/es/NavMenu/style.js +0 -181
  253. package/es/PageScroller/index.js +0 -286
  254. package/es/PageScroller/story/FifthComponent.js +0 -9
  255. package/es/PageScroller/story/FirstComponent.js +0 -9
  256. package/es/PageScroller/story/FourthComponent.js +0 -12
  257. package/es/PageScroller/story/FullPage.js +0 -47
  258. package/es/PageScroller/story/PageContain.js +0 -59
  259. package/es/PageScroller/story/SecondComponent.js +0 -9
  260. package/es/PageScroller/story/ThirdComponent.js +0 -9
  261. package/es/PageScroller/story/index.css +0 -115
  262. package/es/PageScroller/usePrevValue.js +0 -9
  263. package/es/Passport/index.js +0 -2
  264. package/es/Passport/passport.js +0 -103
  265. package/es/PoweredByArcBlock/index.js +0 -31
  266. package/es/PricingTable/PricingPlan.js +0 -124
  267. package/es/PricingTable/index.js +0 -53
  268. package/es/QRCode/index.js +0 -73
  269. package/es/RelativeTime/index.js +0 -107
  270. package/es/Result/common.js +0 -140
  271. package/es/Result/demo/fixtures/result-image-404.svg +0 -1
  272. package/es/Result/index.js +0 -33
  273. package/es/Result/result.js +0 -59
  274. package/es/Result/translations.js +0 -54
  275. package/es/Screenshot/BaseScreenshot/index.js +0 -91
  276. package/es/Screenshot/BaseScreenshot/shells/Macbook.js +0 -51
  277. package/es/Screenshot/BaseScreenshot/shells/Phone.js +0 -36
  278. package/es/Screenshot/demo/images/bg-00.jpg +0 -0
  279. package/es/Screenshot/demo/images/bg-01.jpg +0 -0
  280. package/es/Screenshot/demo/images/bg-02.jpg +0 -0
  281. package/es/Screenshot/demo/images/bg-03.jpg +0 -0
  282. package/es/Screenshot/demo/images/bg-04.jpg +0 -0
  283. package/es/Screenshot/demo/images/bg-05.jpg +0 -0
  284. package/es/Screenshot/demo/images/bg-06.jpg +0 -0
  285. package/es/Screenshot/demo/images/bg-07.jpg +0 -0
  286. package/es/Screenshot/demo/images/bg-08.jpg +0 -0
  287. package/es/Screenshot/demo/images/bg-09.jpg +0 -0
  288. package/es/Screenshot/devices.css +0 -1366
  289. package/es/Screenshot/index.js +0 -299
  290. package/es/SessionBlocklet/index.js +0 -173
  291. package/es/SessionManager/index.js +0 -2
  292. package/es/SessionPermission/index.js +0 -28
  293. package/es/SessionUser/components/logged-in.js +0 -229
  294. package/es/SessionUser/components/session-user-item.js +0 -102
  295. package/es/SessionUser/components/session-user-switch.js +0 -223
  296. package/es/SessionUser/components/un-login.js +0 -64
  297. package/es/SessionUser/components/user-info.js +0 -167
  298. package/es/SessionUser/index.js +0 -49
  299. package/es/SessionUser/libs/translation.js +0 -19
  300. package/es/SessionUser/libs/utils.js +0 -29
  301. package/es/Sparkline/index.js +0 -193
  302. package/es/Spinner/index.js +0 -28
  303. package/es/SplitButton/index.js +0 -145
  304. package/es/Success/index.js +0 -175
  305. package/es/Switch/index.js +0 -96
  306. package/es/Tabs/index.js +0 -214
  307. package/es/Tag/index.js +0 -108
  308. package/es/TextCollapse/index.js +0 -92
  309. package/es/Theme/index.js +0 -16
  310. package/es/Theme/theme-provider.js +0 -39
  311. package/es/Theme/theme.js +0 -145
  312. package/es/Toast/index.js +0 -97
  313. package/es/Typography/index.js +0 -95
  314. package/es/Util/constant.js +0 -42
  315. package/es/Util/deprecate.js +0 -28
  316. package/es/Util/federated.js +0 -91
  317. package/es/Util/index.js +0 -363
  318. package/es/Util/passport.js +0 -62
  319. package/es/Util/wallet.js +0 -32
  320. package/es/Video/index.js +0 -89
  321. package/es/Wallet/Action.js +0 -119
  322. package/es/Wallet/Download.js +0 -331
  323. package/es/Wallet/Open.js +0 -45
  324. package/es/Wallet/images/abtwallet.png +0 -0
  325. package/es/Wallet/images/android_download.svg +0 -23
  326. package/es/Wallet/images/app-store.svg +0 -20
  327. package/es/Wallet/images/google-play.svg +0 -70
  328. package/es/WalletOSIcon/index.js +0 -82
  329. package/es/WebWalletSWKeeper/index.js +0 -117
  330. package/es/WechatPrompt/images/android.png +0 -0
  331. package/es/WechatPrompt/images/ios.png +0 -0
  332. package/es/WechatPrompt/index.js +0 -88
  333. package/es/index.js +0 -38
  334. package/es/withTheme/index.js +0 -69
  335. package/es/withTracker/README.md +0 -34
  336. package/es/withTracker/error_boundary.js +0 -34
  337. package/es/withTracker/index.js +0 -55
@@ -1,74 +1,61 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = SessionBlocklet;
7
- var _react = require("react");
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
9
- var _material = require("@mui/material");
10
- var _react2 = require("@iconify/react");
11
- var _dashboardOutlineRounded = _interopRequireDefault(require("iconify-icons-material-symbols-400/dashboard-outline-rounded"));
12
- var _widgetsOutlineRounded = _interopRequireDefault(require("@iconify-icons/material-symbols/widgets-outline-rounded"));
13
- var _ahooks = require("ahooks");
14
- var _Button = _interopRequireDefault(require("../Button"));
15
- var _Colors = require("../Colors");
16
- var _constant = require("../Util/constant");
17
- var _SessionPermission = _interopRequireDefault(require("../SessionPermission"));
18
- var _Util = require("../Util");
19
- var _jsxRuntime = require("react/jsx-runtime");
20
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
24
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
25
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
26
- function SessionBlocklet(_ref) {
27
- var _window;
28
- let {
29
- session,
30
- locale,
31
- size
32
- } = _ref;
33
- const blocklet = ((_window = window) === null || _window === void 0 ? void 0 : _window.blocklet) || {};
1
+ import { useRef } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { Box, ClickAwayListener, Fade, IconButton, List, ListItem, ListItemButton, Paper, Popper, Typography } from '@mui/material';
4
+ import { Icon } from '@iconify/react';
5
+ import DashboardOutlineRoundedIcon from 'iconify-icons-material-symbols-400/dashboard-outline-rounded';
6
+ import WidgetsOutlineRoundedIcon from '@iconify-icons/material-symbols/widgets-outline-rounded';
7
+ import { useMemoizedFn, useReactive } from 'ahooks';
8
+ import Button from '../Button';
9
+ import { temp as colors } from '../Colors';
10
+ import { AUTH_SERVICE_PREFIX, NAVIGATION_URL } from '../Util/constant';
11
+ import SessionPermission from '../SessionPermission';
12
+ import { getTranslation } from '../Util';
13
+ import { jsx as _jsx } from "react/jsx-runtime";
14
+ import { jsxs as _jsxs } from "react/jsx-runtime";
15
+ import { Fragment as _Fragment } from "react/jsx-runtime";
16
+ export default function SessionBlocklet({
17
+ session,
18
+ locale,
19
+ size
20
+ }) {
21
+ const blocklet = window?.blocklet || {};
34
22
  const sessionMenuList = (blocklet.navigation || []
35
23
  // HACK 过滤掉默认插入的 /sessionManager 菜单
36
24
  ).filter(item => item.section === 'sessionManager' && !['/sessionManager'].includes(item.id)).filter(item => {
37
- var _session$user;
38
- if (((item === null || item === void 0 ? void 0 : item.role) || []).includes((session === null || session === void 0 ? void 0 : (_session$user = session.user) === null || _session$user === void 0 ? void 0 : _session$user.role) || 'guest')) {
25
+ if ((item?.role || []).includes(session?.user?.role || 'guest')) {
39
26
  return true;
40
27
  }
41
28
  return false;
42
29
  }).map(item => {
43
- const component = ((blocklet === null || blocklet === void 0 ? void 0 : blocklet.componentMountPoints) || []).find(x => item.component === x.name);
44
- return _objectSpread(_objectSpread({}, item), {}, {
30
+ const component = (blocklet?.componentMountPoints || []).find(x => item.component === x.name);
31
+ return {
32
+ ...item,
45
33
  component
46
- });
34
+ };
47
35
  });
48
- const popperAnchorRef = (0, _react.useRef)(null);
49
- const currentState = (0, _ahooks.useReactive)({
36
+ const popperAnchorRef = useRef(null);
37
+ const currentState = useReactive({
50
38
  open: false
51
39
  });
52
- const onTogglePopper = (0, _ahooks.useMemoizedFn)(function () {
53
- let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : !currentState.open;
40
+ const onTogglePopper = useMemoizedFn((value = !currentState.open) => {
54
41
  currentState.open = value;
55
42
  });
56
- if (sessionMenuList.length === 0 || !(session !== null && session !== void 0 && session.user)) {
43
+ if (sessionMenuList.length === 0 || !session?.user) {
57
44
  return null;
58
45
  }
59
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
60
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {
46
+ return /*#__PURE__*/_jsxs(_Fragment, {
47
+ children: [/*#__PURE__*/_jsx(IconButton, {
61
48
  size: "medium",
62
49
  ref: popperAnchorRef,
63
50
  onClick: () => onTogglePopper(),
64
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {
65
- icon: _dashboardOutlineRounded.default,
51
+ children: /*#__PURE__*/_jsx(Icon, {
52
+ icon: DashboardOutlineRoundedIcon,
66
53
  fontSize: size,
67
54
  style: {
68
55
  transform: 'scale(1.08)'
69
56
  }
70
57
  })
71
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Popper, {
58
+ }), /*#__PURE__*/_jsx(Popper, {
72
59
  open: currentState.open,
73
60
  onClose: () => onTogglePopper(false),
74
61
  anchorEl: popperAnchorRef.current,
@@ -77,113 +64,108 @@ function SessionBlocklet(_ref) {
77
64
  sx: {
78
65
  zIndex: 1600
79
66
  },
80
- children: _ref2 => {
81
- let {
82
- TransitionProps
83
- } = _ref2;
84
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.ClickAwayListener, {
85
- onClickAway: e => {
86
- e.preventDefault();
87
- e.stopPropagation();
88
- onTogglePopper(false);
89
- },
90
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Fade, _objectSpread(_objectSpread({}, TransitionProps), {}, {
91
- timeout: 350,
92
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Paper, {
93
- variant: "outlined",
67
+ children: ({
68
+ TransitionProps
69
+ }) => /*#__PURE__*/_jsx(ClickAwayListener, {
70
+ onClickAway: e => {
71
+ e.preventDefault();
72
+ e.stopPropagation();
73
+ onTogglePopper(false);
74
+ },
75
+ children: /*#__PURE__*/_jsx(Fade, {
76
+ ...TransitionProps,
77
+ timeout: 350,
78
+ children: /*#__PURE__*/_jsxs(Paper, {
79
+ variant: "outlined",
80
+ sx: {
81
+ borderRadius: 3,
82
+ width: 350,
83
+ maxWidth: '90vw',
84
+ borderColor: colors.lineStep,
85
+ p: 2,
86
+ border: '0 !important',
87
+ boxShadow: `0px 8px 16px 0px ${colors.gray6}, 0px 0px 0px 1px ${colors.gray6}`
88
+ },
89
+ children: [/*#__PURE__*/_jsx(List, {
94
90
  sx: {
95
- borderRadius: 3,
96
- width: 350,
97
- maxWidth: '90vw',
98
- borderColor: _Colors.temp.lineStep,
99
- p: 2,
100
- border: '0 !important',
101
- boxShadow: "0px 8px 16px 0px ".concat(_Colors.temp.gray6, ", 0px 0px 0px 1px ").concat(_Colors.temp.gray6)
91
+ display: 'grid',
92
+ gridTemplateColumns: 'repeat(auto-fill, 100px)',
93
+ gridAutoRows: 'minmax(100px, max-content)',
94
+ justifyContent: 'space-between',
95
+ maxHeight: 350,
96
+ overflowY: 'auto',
97
+ p: 0
102
98
  },
103
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.List, {
104
- sx: {
105
- display: 'grid',
106
- gridTemplateColumns: 'repeat(auto-fill, 100px)',
107
- gridAutoRows: 'minmax(100px, max-content)',
108
- justifyContent: 'space-between',
109
- maxHeight: 350,
110
- overflowY: 'auto',
111
- p: 0
112
- },
113
- children: sessionMenuList.map(item => {
114
- var _item$component;
115
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.ListItem, {
116
- disablePadding: true,
117
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.ListItemButton, {
118
- href: item.link,
119
- sx: {
120
- p: 1,
121
- display: 'flex',
122
- flexDirection: 'column',
123
- alignItems: 'center',
124
- gap: 1,
125
- width: '100%',
126
- height: '100%',
127
- borderRadius: 2,
128
- '&:hover': {
129
- backgroundColor: _Colors.temp.surfacePrimarySubtitle
130
- }
131
- },
132
- children: [item !== null && item !== void 0 && (_item$component = item.component) !== null && _item$component !== void 0 && _item$component.did ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
133
- component: "img",
134
- src: "".concat(_constant.AUTH_SERVICE_PREFIX, "/blocklet/logo-bundle/").concat(item.component.did),
135
- sx: {
136
- borderRadius: 2,
137
- width: 50,
138
- height: 50,
139
- objectFit: 'contain'
140
- }
141
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {
142
- fontSize: 50,
143
- icon: item.icon || _widgetsOutlineRounded.default,
144
- color: _Colors.temp.textSubtitle
145
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {
146
- sx: {
147
- fontSize: '12px',
148
- color: _Colors.temp.textBase,
149
- textAlign: 'center',
150
- lineHeight: 'normal'
151
- },
152
- children: (0, _Util.getTranslation)(item.title, locale)
153
- })]
154
- })
155
- }, item.id);
156
- })
157
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_SessionPermission.default, {
158
- session: session,
159
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
160
- variant: "outlined",
161
- fullWidth: true,
162
- href: _constant.NAVIGATION_URL,
99
+ children: sessionMenuList.map(item => /*#__PURE__*/_jsx(ListItem, {
100
+ disablePadding: true,
101
+ children: /*#__PURE__*/_jsxs(ListItemButton, {
102
+ href: item.link,
163
103
  sx: {
164
- mt: 1,
104
+ p: 1,
105
+ display: 'flex',
106
+ flexDirection: 'column',
107
+ alignItems: 'center',
108
+ gap: 1,
109
+ width: '100%',
110
+ height: '100%',
165
111
  borderRadius: 2,
166
- color: _Colors.temp.textBase,
167
- borderColor: _Colors.temp.lineBorderStrong,
168
112
  '&:hover': {
169
- color: _Colors.temp.primaryBase,
170
- borderColor: _Colors.temp.primaryBase
113
+ backgroundColor: colors.surfacePrimarySubtitle
171
114
  }
172
115
  },
173
- children: locale === 'zh' ? '管理' : 'Manage'
116
+ children: [item?.component?.did ? /*#__PURE__*/_jsx(Box, {
117
+ component: "img",
118
+ src: `${AUTH_SERVICE_PREFIX}/blocklet/logo-bundle/${item.component.did}`,
119
+ sx: {
120
+ borderRadius: 2,
121
+ width: 50,
122
+ height: 50,
123
+ objectFit: 'contain'
124
+ }
125
+ }) : /*#__PURE__*/_jsx(Icon, {
126
+ fontSize: 50,
127
+ icon: item.icon || WidgetsOutlineRoundedIcon,
128
+ color: colors.textSubtitle
129
+ }), /*#__PURE__*/_jsx(Typography, {
130
+ sx: {
131
+ fontSize: '12px',
132
+ color: colors.textBase,
133
+ textAlign: 'center',
134
+ lineHeight: 'normal'
135
+ },
136
+ children: getTranslation(item.title, locale)
137
+ })]
174
138
  })
175
- })]
176
- })
177
- }))
178
- });
179
- }
139
+ }, item.id))
140
+ }), /*#__PURE__*/_jsx(SessionPermission, {
141
+ session: session,
142
+ children: /*#__PURE__*/_jsx(Button, {
143
+ variant: "outlined",
144
+ fullWidth: true,
145
+ href: NAVIGATION_URL,
146
+ sx: {
147
+ mt: 1,
148
+ borderRadius: 2,
149
+ color: colors.textBase,
150
+ borderColor: colors.lineBorderStrong,
151
+ '&:hover': {
152
+ color: colors.primaryBase,
153
+ borderColor: colors.primaryBase
154
+ }
155
+ },
156
+ children: locale === 'zh' ? '管理' : 'Manage'
157
+ })
158
+ })]
159
+ })
160
+ })
161
+ })
180
162
  })]
181
163
  });
182
164
  }
183
165
  SessionBlocklet.propTypes = {
184
- session: _propTypes.default.object.isRequired,
185
- locale: _propTypes.default.string,
186
- size: _propTypes.default.number
166
+ session: PropTypes.object.isRequired,
167
+ locale: PropTypes.string,
168
+ size: PropTypes.number
187
169
  };
188
170
  SessionBlocklet.defaultProps = {
189
171
  locale: 'en',
@@ -1,9 +1,2 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _SessionUser = _interopRequireDefault(require("../SessionUser"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
- var _default = exports.default = _SessionUser.default;
1
+ import SessionUser from '../SessionUser';
2
+ export default SessionUser;
@@ -1,24 +1,14 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = SessionPermission;
7
- var _propTypes = _interopRequireDefault(require("prop-types"));
8
- var _ahooks = require("ahooks");
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
1
+ import PropTypes from 'prop-types';
2
+ import { useCreation } from 'ahooks';
10
3
  const roleList = ['owner', 'admin', 'member', 'guest'];
11
- function SessionPermission(_ref) {
12
- var _session$user2;
13
- let {
14
- session,
15
- roles,
16
- children
17
- } = _ref;
18
- const hasPermission = (0, _ahooks.useCreation)(() => {
19
- var _session$user;
20
- return roles.includes((session === null || session === void 0 ? void 0 : (_session$user = session.user) === null || _session$user === void 0 ? void 0 : _session$user.role) || 'guest');
21
- }, [session === null || session === void 0 ? void 0 : (_session$user2 = session.user) === null || _session$user2 === void 0 ? void 0 : _session$user2.role, roles]);
4
+ export default function SessionPermission({
5
+ session,
6
+ roles,
7
+ children
8
+ }) {
9
+ const hasPermission = useCreation(() => {
10
+ return roles.includes(session?.user?.role || 'guest');
11
+ }, [session?.user?.role, roles]);
22
12
  if (typeof children === 'function') {
23
13
  return children({
24
14
  hasPermission
@@ -29,9 +19,9 @@ function SessionPermission(_ref) {
29
19
  }
30
20
  }
31
21
  SessionPermission.propTypes = {
32
- children: _propTypes.default.any.isRequired,
33
- session: _propTypes.default.object.isRequired,
34
- roles: _propTypes.default.arrayOf(_propTypes.default.oneOf(roleList))
22
+ children: PropTypes.any.isRequired,
23
+ session: PropTypes.object.isRequired,
24
+ roles: PropTypes.arrayOf(PropTypes.oneOf(roleList))
35
25
  };
36
26
  SessionPermission.defaultProps = {
37
27
  roles: ['owner', 'admin']