@arcblock/ux 2.13.70 → 3.0.0

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.
Files changed (668) hide show
  1. package/lib/ActionButton/ActionButton.stories.d.ts +18 -0
  2. package/lib/ActionButton/index.d.ts +2 -2
  3. package/lib/ActionButton/index.js +43 -94
  4. package/lib/ActivityIndicator/ActivityIndicator.stories.d.ts +8 -0
  5. package/lib/ActivityIndicator/index.d.ts +2 -8
  6. package/lib/ActivityIndicator/index.js +41 -114
  7. package/lib/Address/Address.stories.d.ts +16 -0
  8. package/lib/Address/compact-text.d.ts +4 -14
  9. package/lib/Address/compact-text.js +40 -98
  10. package/lib/Address/did-address.d.ts +5 -4
  11. package/lib/Address/did-address.js +94 -151
  12. package/lib/Address/index.d.ts +4 -2
  13. package/lib/Address/index.js +13 -20
  14. package/lib/Address/responsive-did-address.d.ts +5 -4
  15. package/lib/Address/responsive-did-address.js +80 -114
  16. package/lib/Alert/Alert.stories.d.ts +28 -0
  17. package/lib/Alert/index.d.ts +2 -2
  18. package/lib/Alert/index.js +56 -102
  19. package/lib/AnimationWaiter/AnimationWaiter.stories.d.ts +21 -0
  20. package/lib/AnimationWaiter/{dark-animation.json → dark-animation.json.js} +27 -1
  21. package/lib/AnimationWaiter/{default-animation.json → default-animation.json.js} +29 -1
  22. package/lib/AnimationWaiter/index.d.ts +3 -25
  23. package/lib/AnimationWaiter/index.js +107 -198
  24. package/lib/Async/index.d.ts +2 -4
  25. package/lib/Async/index.js +15 -29
  26. package/lib/Avatar/Avatar.stories.d.ts +11 -0
  27. package/lib/Avatar/did-motif.d.ts +5 -15
  28. package/lib/Avatar/did-motif.js +30 -65
  29. package/lib/Avatar/etherscan-blockies.js +42 -75
  30. package/lib/Avatar/index.d.ts +3 -19
  31. package/lib/Avatar/index.js +114 -180
  32. package/lib/Badge/Badge.stories.d.ts +13 -0
  33. package/lib/Badge/index.d.ts +3 -3
  34. package/lib/Badge/index.js +43 -83
  35. package/lib/Blocklet/Blocklet.stories.d.ts +17 -0
  36. package/lib/Blocklet/blocklet.d.ts +2 -28
  37. package/lib/Blocklet/blocklet.js +108 -191
  38. package/lib/Blocklet/index.d.ts +2 -3
  39. package/lib/Blocklet/index.js +7 -4
  40. package/lib/Blocklet/utils.d.ts +1 -1
  41. package/lib/Blocklet/utils.js +10 -10
  42. package/lib/BlockletContext/index.d.ts +3 -3
  43. package/lib/BlockletContext/index.js +32 -57
  44. package/lib/BlockletNFT/BlockletNFT.stories.d.ts +17 -0
  45. package/lib/BlockletNFT/index.d.ts +3 -38
  46. package/lib/BlockletNFT/index.js +123 -245
  47. package/lib/BlockletV2/Blocklet.stories.d.ts +18 -0
  48. package/lib/BlockletV2/blocklet.d.ts +2 -2
  49. package/lib/BlockletV2/blocklet.js +188 -213
  50. package/lib/BlockletV2/components/icon-text.d.ts +2 -2
  51. package/lib/BlockletV2/components/icon-text.js +43 -33
  52. package/lib/BlockletV2/components/tooltip-icon.js +46 -36
  53. package/lib/BlockletV2/index.d.ts +3 -3
  54. package/lib/BlockletV2/index.js +9 -5
  55. package/lib/BlockletV2/utils.d.ts +1 -1
  56. package/lib/BlockletV2/utils.js +13 -25
  57. package/lib/Button/Button.stories.d.ts +19 -0
  58. package/lib/Button/index.d.ts +1 -1
  59. package/lib/Button/index.js +6 -8
  60. package/lib/Button/wrap.d.ts +3 -3
  61. package/lib/Button/wrap.js +48 -131
  62. package/lib/ButtonGroup/index.d.ts +2 -2
  63. package/lib/ButtonGroup/index.js +6 -16
  64. package/lib/CardSelector/index.js +51 -94
  65. package/lib/Center/Center.stories.d.ts +18 -0
  66. package/lib/Center/index.js +15 -18
  67. package/lib/ClickToCopy/ClickToCopy.stories.d.ts +16 -0
  68. package/lib/ClickToCopy/copy-button.d.ts +3 -2
  69. package/lib/ClickToCopy/copy-button.js +19 -58
  70. package/lib/ClickToCopy/hook.d.ts +2 -2
  71. package/lib/ClickToCopy/hook.js +23 -32
  72. package/lib/ClickToCopy/index.d.ts +3 -14
  73. package/lib/ClickToCopy/index.js +23 -75
  74. package/lib/CloseButton/index.d.ts +1 -1
  75. package/lib/CloseButton/index.js +34 -28
  76. package/lib/CodeBlock/CodeBlock.stories.d.ts +20 -0
  77. package/lib/CodeBlock/LightBox.d.ts +4 -4
  78. package/lib/CodeBlock/LightBox.js +5 -4
  79. package/lib/CodeBlock/index.d.ts +1 -2
  80. package/lib/CodeBlock/index.js +96 -127
  81. package/lib/Colors/Colors.stories.d.ts +34 -0
  82. package/lib/Colors/index.js +8 -4
  83. package/lib/Colors/themes/default.d.ts +1 -1
  84. package/lib/Colors/themes/default.js +5 -7
  85. package/lib/Colors/themes/did-connect.js +43 -44
  86. package/lib/Colors/themes/temp.js +38 -39
  87. package/lib/Config/Config.stories.d.ts +14 -0
  88. package/lib/Config/config-provider.d.ts +8 -8
  89. package/lib/Config/config-provider.js +50 -44
  90. package/lib/Config/index.js +7 -2
  91. package/lib/Config/theme-mode-toggle.js +12 -27
  92. package/lib/ContactForm/ContactForm.stories.d.ts +23 -0
  93. package/lib/ContactForm/index.d.ts +2 -1
  94. package/lib/ContactForm/index.js +137 -164
  95. package/lib/CookieConsent/CookieConsent.stories.d.ts +18 -0
  96. package/lib/CookieConsent/index.d.ts +2 -2
  97. package/lib/CookieConsent/index.js +44 -73
  98. package/lib/CountDown/CountDown.stories.d.ts +14 -0
  99. package/lib/CountDown/index.d.ts +2 -2
  100. package/lib/CountDown/index.js +52 -124
  101. package/lib/DID/DID.stories.d.ts +15 -0
  102. package/lib/DID/index.d.ts +3 -1
  103. package/lib/DID/index.js +262 -327
  104. package/lib/DIDConnect/app-icon.js +26 -31
  105. package/lib/DIDConnect/app-info-item.js +76 -82
  106. package/lib/DIDConnect/auth-apps/auth-apps-info.js +71 -63
  107. package/lib/DIDConnect/auth-apps/index.d.ts +2 -2
  108. package/lib/DIDConnect/auth-apps/index.js +184 -183
  109. package/lib/DIDConnect/did-connect-container.js +231 -247
  110. package/lib/DIDConnect/did-connect-footer.js +66 -68
  111. package/lib/DIDConnect/did-connect-logo.js +10 -11
  112. package/lib/DIDConnect/index.js +22 -10
  113. package/lib/DIDConnect/landing-page.d.ts +1 -1
  114. package/lib/DIDConnect/landing-page.js +165 -189
  115. package/lib/DIDConnect/powered-by.js +55 -46
  116. package/lib/DIDConnect/request-storage-access-api-dialog.d.ts +5 -2
  117. package/lib/DIDConnect/request-storage-access-api-dialog.js +230 -292
  118. package/lib/DIDConnect/with-container.js +200 -236
  119. package/lib/DIDConnect/with-ux-theme.js +15 -22
  120. package/lib/Datatable/CustomToolbar.d.ts +1 -15
  121. package/lib/Datatable/CustomToolbar.js +232 -313
  122. package/lib/Datatable/Datatable.stories.d.ts +32 -0
  123. package/lib/Datatable/DatatableContext.js +23 -35
  124. package/lib/Datatable/TableSearch.d.ts +5 -13
  125. package/lib/Datatable/TableSearch.js +81 -113
  126. package/lib/Datatable/index.d.ts +12 -13
  127. package/lib/Datatable/index.js +226 -479
  128. package/lib/Datatable/utils.js +55 -120
  129. package/lib/Dialog/Dialog.stories.d.ts +20 -0
  130. package/lib/Dialog/confirm.d.ts +4 -25
  131. package/lib/Dialog/confirm.js +99 -125
  132. package/lib/Dialog/dialog.d.ts +30 -23
  133. package/lib/Dialog/dialog.js +62 -148
  134. package/lib/Dialog/index.d.ts +3 -3
  135. package/lib/Dialog/index.js +8 -4
  136. package/lib/Dialog/use-confirm.d.ts +3 -3
  137. package/lib/Dialog/use-confirm.js +91 -171
  138. package/lib/DidLogo/Logo.stories.d.ts +8 -0
  139. package/lib/DidLogo/index.js +19 -19
  140. package/lib/DriftBot/index.js +23 -33
  141. package/lib/Earth/Earth.stories.d.ts +18 -0
  142. package/lib/Earth/countries.json.js +13 -0
  143. package/lib/Earth/index.js +234 -334
  144. package/lib/Earth/util.js +36 -45
  145. package/lib/Empty/Empty.stories.d.ts +17 -0
  146. package/lib/Empty/index.d.ts +3 -11
  147. package/lib/Empty/index.js +17 -50
  148. package/lib/ErrorBoundary/ErrorBoundary.stories.d.ts +12 -0
  149. package/lib/ErrorBoundary/fallback.js +54 -71
  150. package/lib/ErrorBoundary/index.js +6 -1
  151. package/lib/Footer/Footer.stories.d.ts +12 -0
  152. package/lib/Footer/index.d.ts +1 -12
  153. package/lib/Footer/index.js +53 -100
  154. package/lib/Header/Header.stories.d.ts +21 -0
  155. package/lib/Header/addon-button.js +24 -31
  156. package/lib/Header/auto-hidden.d.ts +1 -1
  157. package/lib/Header/auto-hidden.js +9 -16
  158. package/lib/Header/header-addons.d.ts +1 -1
  159. package/lib/Header/header-addons.js +40 -37
  160. package/lib/Header/header.d.ts +2 -1
  161. package/lib/Header/header.js +64 -109
  162. package/lib/Header/index.js +8 -3
  163. package/lib/Header/responsive-header.d.ts +1 -1
  164. package/lib/Header/responsive-header.js +74 -112
  165. package/lib/Icon/Icon.stories.d.ts +23 -0
  166. package/lib/Icon/image.d.ts +1 -1
  167. package/lib/Icon/image.js +32 -33
  168. package/lib/Icon/index.d.ts +4 -4
  169. package/lib/Icon/index.js +30 -53
  170. package/lib/Img/Img.stories.d.ts +13 -0
  171. package/lib/Img/index.d.ts +6 -32
  172. package/lib/Img/index.js +126 -204
  173. package/lib/InfoRow/InfoRow.stories.d.ts +14 -0
  174. package/lib/InfoRow/index.js +27 -41
  175. package/lib/Layout/Layout.stories.d.ts +23 -0
  176. package/lib/Layout/dashboard/external-link.d.ts +1 -1
  177. package/lib/Layout/dashboard/external-link.js +23 -44
  178. package/lib/Layout/dashboard/full-page.d.ts +1 -1
  179. package/lib/Layout/dashboard/full-page.js +31 -48
  180. package/lib/Layout/dashboard/index.d.ts +4 -4
  181. package/lib/Layout/dashboard/index.js +134 -211
  182. package/lib/Layout/dashboard/sidebar.js +44 -78
  183. package/lib/Layout/dashboard-legacy/header.d.ts +1 -1
  184. package/lib/Layout/dashboard-legacy/header.js +70 -87
  185. package/lib/Layout/dashboard-legacy/index.d.ts +2 -2
  186. package/lib/Layout/dashboard-legacy/index.js +82 -90
  187. package/lib/Layout/dashboard-legacy/sidebar.d.ts +1 -1
  188. package/lib/Layout/dashboard-legacy/sidebar.js +44 -76
  189. package/lib/Layout/index.d.ts +2 -2
  190. package/lib/Layout/index.js +129 -189
  191. package/lib/LoadingMask/index.js +91 -82
  192. package/lib/Locale/LocaleSelector.stories.d.ts +22 -0
  193. package/lib/Locale/browser-lang.js +23 -52
  194. package/lib/Locale/context.d.ts +3 -3
  195. package/lib/Locale/context.js +71 -123
  196. package/lib/Locale/languages.js +32 -34
  197. package/lib/Locale/selector.d.ts +2 -2
  198. package/lib/Locale/selector.js +104 -139
  199. package/lib/Locale/util.d.ts +1 -1
  200. package/lib/Locale/util.js +9 -24
  201. package/lib/Logo/Logo.stories.d.ts +22 -0
  202. package/lib/Logo/images/logo-dark-text.svg.js +5 -0
  203. package/lib/Logo/images/logo-dark-top.svg.js +5 -0
  204. package/lib/Logo/images/logo-light-text.svg.js +5 -0
  205. package/lib/Logo/images/logo-light-top.svg.js +5 -0
  206. package/lib/Logo/index.d.ts +1 -1
  207. package/lib/Logo/index.js +27 -107
  208. package/lib/Metric/Metric.stories.d.ts +14 -0
  209. package/lib/Metric/index.js +50 -53
  210. package/lib/MuiWrap/index.js +11 -19
  211. package/lib/NFTDisplay/NFTBroken.svg.js +108 -0
  212. package/lib/NFTDisplay/NFTDisplay.stories.d.ts +15 -0
  213. package/lib/NFTDisplay/aspect-ratio-container.js +9 -20
  214. package/lib/NFTDisplay/broken.js +14 -286
  215. package/lib/NFTDisplay/displayApi.d.ts +1 -1
  216. package/lib/NFTDisplay/displayApi.js +17 -44
  217. package/lib/NFTDisplay/index.d.ts +2 -2
  218. package/lib/NFTDisplay/index.js +160 -343
  219. package/lib/NFTDisplay/loading.js +9 -9
  220. package/lib/NFTDisplay/render-svg.js +15 -22
  221. package/lib/NFTDisplay/svg-embedder/img.js +13 -29
  222. package/lib/NFTDisplay/svg-embedder/inline-svg.d.ts +1 -1
  223. package/lib/NFTDisplay/svg-embedder/inline-svg.js +10 -20
  224. package/lib/NavMenu/NavMenu.stories.d.ts +17 -0
  225. package/lib/NavMenu/images/OCAP.svg.js +5 -0
  226. package/lib/NavMenu/images/abt-network.svg.js +7 -0
  227. package/lib/NavMenu/images/ai-kit.svg.js +7 -0
  228. package/lib/NavMenu/images/aigne.svg.js +7 -0
  229. package/lib/NavMenu/images/aistro.svg.js +5 -0
  230. package/lib/NavMenu/images/arcsphere.svg.js +10 -0
  231. package/lib/NavMenu/images/blocklet-framework.svg.js +7 -0
  232. package/lib/NavMenu/images/blocklet-launcher.svg.js +5 -0
  233. package/lib/NavMenu/images/blocklet-server.svg.js +7 -0
  234. package/lib/NavMenu/images/blocklet-store.svg.js +5 -0
  235. package/lib/NavMenu/images/creator-studio.svg.js +7 -0
  236. package/lib/NavMenu/images/did-connect.svg.js +5 -0
  237. package/lib/NavMenu/images/did-name-service.svg.js +5 -0
  238. package/lib/NavMenu/images/did-wallet.svg.js +7 -0
  239. package/lib/NavMenu/images/did.svg.js +5 -0
  240. package/lib/NavMenu/images/nft-studio.svg.js +5 -0
  241. package/lib/NavMenu/images/vc.svg.js +5 -0
  242. package/lib/NavMenu/images/web3-kit.svg.js +7 -0
  243. package/lib/NavMenu/index.js +6 -3
  244. package/lib/NavMenu/nav-menu-context.js +15 -18
  245. package/lib/NavMenu/nav-menu.d.ts +17 -7
  246. package/lib/NavMenu/nav-menu.js +219 -355
  247. package/lib/NavMenu/products.js +264 -1652
  248. package/lib/NavMenu/style.d.ts +5 -5
  249. package/lib/NavMenu/style.js +156 -172
  250. package/lib/NavMenu/sub-container.d.ts +1 -1
  251. package/lib/NavMenu/sub-container.js +63 -104
  252. package/lib/NavMenu/sub-item-group.js +15 -33
  253. package/lib/PageScroller/index.d.ts +1 -1
  254. package/lib/PageScroller/index.js +116 -252
  255. package/lib/PageScroller/story/FifthComponent.js +7 -9
  256. package/lib/PageScroller/story/FirstComponent.js +7 -9
  257. package/lib/PageScroller/story/FourthComponent.js +7 -12
  258. package/lib/PageScroller/story/FullPage.js +52 -45
  259. package/lib/PageScroller/story/PageContain.js +55 -57
  260. package/lib/PageScroller/story/PageScroller.stories.d.ts +13 -0
  261. package/lib/PageScroller/story/SecondComponent.js +7 -9
  262. package/lib/PageScroller/story/ThirdComponent.js +7 -9
  263. package/lib/PageScroller/usePrevValue.js +10 -8
  264. package/lib/Passport/index.d.ts +1 -1
  265. package/lib/Passport/index.js +4 -2
  266. package/lib/Passport/passport.d.ts +1 -1
  267. package/lib/Passport/passport.js +123 -100
  268. package/lib/PhoneInput/PhoneInput.stories.d.ts +12 -0
  269. package/lib/PhoneInput/country-select.d.ts +2 -2
  270. package/lib/PhoneInput/country-select.js +111 -159
  271. package/lib/PhoneInput/index.js +166 -218
  272. package/lib/PoweredByArcBlock/index.d.ts +1 -1
  273. package/lib/PoweredByArcBlock/index.js +16 -22
  274. package/lib/PricingTable/PricingPlan.js +20 -55
  275. package/lib/PricingTable/PricingTable.stories.d.ts +8 -0
  276. package/lib/PricingTable/index.d.ts +1 -1
  277. package/lib/PricingTable/index.js +34 -37
  278. package/lib/QRCode/QRCode.stories.d.ts +13 -0
  279. package/lib/QRCode/index.d.ts +1 -1
  280. package/lib/QRCode/index.js +31 -49
  281. package/lib/RelativeTime/RelativeTime.stories.d.ts +20 -0
  282. package/lib/RelativeTime/index.d.ts +3 -3
  283. package/lib/RelativeTime/index.js +163 -261
  284. package/lib/Result/Result.stories.d.ts +21 -0
  285. package/lib/Result/common.d.ts +2 -2
  286. package/lib/Result/common.js +97 -129
  287. package/lib/Result/index.d.ts +1 -1
  288. package/lib/Result/index.js +21 -22
  289. package/lib/Result/result.js +45 -32
  290. package/lib/Result/translations.d.ts +1 -1
  291. package/lib/Result/translations.js +28 -25
  292. package/lib/Screenshot/BaseScreenshot/index.d.ts +1 -1
  293. package/lib/Screenshot/BaseScreenshot/index.js +23 -44
  294. package/lib/Screenshot/BaseScreenshot/shells/Macbook.js +23 -41
  295. package/lib/Screenshot/BaseScreenshot/shells/Phone.js +24 -26
  296. package/lib/Screenshot/Screenshot.stories.d.ts +13 -0
  297. package/lib/Screenshot/demo/images/bg-01.jpg +0 -0
  298. package/lib/Screenshot/demo/images/bg-02.jpg +0 -0
  299. package/lib/Screenshot/demo/images/bg-03.jpg +0 -0
  300. package/lib/Screenshot/index.d.ts +1 -2
  301. package/lib/Screenshot/index.js +83 -188
  302. package/lib/SessionBlocklet/index.d.ts +2 -2
  303. package/lib/SessionBlocklet/index.js +147 -162
  304. package/lib/SessionManager/SessionManager.stories.d.ts +9 -0
  305. package/lib/SessionManager/index.d.ts +1 -1
  306. package/lib/SessionManager/index.js +4 -2
  307. package/lib/SessionPermission/index.d.ts +1 -0
  308. package/lib/SessionPermission/index.js +12 -20
  309. package/lib/SessionUser/components/did-space.js +65 -117
  310. package/lib/SessionUser/components/logged-in.d.ts +3 -4
  311. package/lib/SessionUser/components/logged-in.js +215 -292
  312. package/lib/SessionUser/components/quick-login-item.js +125 -120
  313. package/lib/SessionUser/components/session-user-item.d.ts +4 -2
  314. package/lib/SessionUser/components/session-user-item.js +85 -89
  315. package/lib/SessionUser/components/session-user-switch.d.ts +1 -1
  316. package/lib/SessionUser/components/session-user-switch.js +187 -187
  317. package/lib/SessionUser/components/un-login.js +196 -222
  318. package/lib/SessionUser/components/user-info.d.ts +1 -1
  319. package/lib/SessionUser/components/user-info.js +163 -150
  320. package/lib/SessionUser/images/did-spaces.svg.js +5 -0
  321. package/lib/SessionUser/index.d.ts +1 -1
  322. package/lib/SessionUser/index.js +27 -30
  323. package/lib/SessionUser/libs/translation.d.ts +1 -1
  324. package/lib/SessionUser/libs/translation.js +25 -24
  325. package/lib/SessionUser/libs/utils.js +33 -23
  326. package/lib/SharedBridge/index.d.ts +6 -5
  327. package/lib/SharedBridge/index.js +76 -93
  328. package/lib/Sparkline/Sparkline.stories.d.ts +12 -0
  329. package/lib/Sparkline/index.js +67 -183
  330. package/lib/Spinner/Spinner.stories.d.ts +18 -0
  331. package/lib/Spinner/index.d.ts +1 -1
  332. package/lib/Spinner/index.js +10 -20
  333. package/lib/SplitButton/SplitButton.stories.d.ts +15 -0
  334. package/lib/SplitButton/index.d.ts +3 -5
  335. package/lib/SplitButton/index.js +39 -83
  336. package/lib/Success/index.js +174 -160
  337. package/lib/Switch/Switch.stories.d.ts +13 -0
  338. package/lib/Switch/index.d.ts +3 -7
  339. package/lib/Switch/index.js +51 -87
  340. package/lib/Tabs/Tabs.stories.d.ts +14 -0
  341. package/lib/Tabs/index.d.ts +2 -2
  342. package/lib/Tabs/index.js +169 -186
  343. package/lib/Tag/Tag.stories.d.ts +13 -0
  344. package/lib/Tag/index.d.ts +7 -4
  345. package/lib/Tag/index.js +40 -88
  346. package/lib/TextCollapse/TextCollapse.stories.d.ts +28 -0
  347. package/lib/TextCollapse/index.js +34 -51
  348. package/lib/Theme/Theme.stories.d.ts +10 -0
  349. package/lib/Theme/index.d.ts +1 -2
  350. package/lib/Theme/index.js +25 -17
  351. package/lib/Theme/theme-provider.d.ts +4 -15
  352. package/lib/Theme/theme-provider.js +111 -232
  353. package/lib/Theme/theme.d.ts +1 -8
  354. package/lib/Theme/theme.js +118 -166
  355. package/lib/Toast/Toast.stories.d.ts +15 -0
  356. package/lib/Toast/index.d.ts +1 -1
  357. package/lib/Toast/index.js +46 -67
  358. package/lib/Typography/index.d.ts +1 -1
  359. package/lib/Typography/index.js +73 -109
  360. package/lib/UserCard/Cards/avatar-only.d.ts +1 -1
  361. package/lib/UserCard/Cards/avatar-only.js +28 -36
  362. package/lib/UserCard/Cards/basic-info.d.ts +1 -2
  363. package/lib/UserCard/Cards/basic-info.js +34 -42
  364. package/lib/UserCard/Cards/index.d.ts +1 -1
  365. package/lib/UserCard/Cards/index.js +13 -21
  366. package/lib/UserCard/Cards/name-only.js +12 -18
  367. package/lib/UserCard/Container/card.d.ts +2 -2
  368. package/lib/UserCard/Container/card.js +34 -41
  369. package/lib/UserCard/Container/dialog.d.ts +1 -1
  370. package/lib/UserCard/Container/dialog.js +27 -27
  371. package/lib/UserCard/Content/basic.d.ts +1 -2
  372. package/lib/UserCard/Content/basic.js +227 -307
  373. package/lib/UserCard/Content/clock.d.ts +2 -0
  374. package/lib/UserCard/Content/clock.js +85 -71
  375. package/lib/UserCard/Content/minimal.d.ts +1 -1
  376. package/lib/UserCard/Content/minimal.js +81 -71
  377. package/lib/UserCard/Content/shorten-label.js +11 -35
  378. package/lib/UserCard/Content/tooltip-avatar.d.ts +1 -1
  379. package/lib/UserCard/Content/tooltip-avatar.js +43 -51
  380. package/lib/UserCard/UserCard.stories.d.ts +18 -0
  381. package/lib/UserCard/components.d.ts +1 -1
  382. package/lib/UserCard/components.js +53 -66
  383. package/lib/UserCard/index.d.ts +1 -2
  384. package/lib/UserCard/index.js +59 -111
  385. package/lib/UserCard/types.d.ts +1 -1
  386. package/lib/UserCard/types.js +10 -37
  387. package/lib/UserCard/utils.js +70 -125
  388. package/lib/Util/WebWalletOpener.stories.d.ts +5 -0
  389. package/lib/Util/constant.js +47 -46
  390. package/lib/Util/deprecate.js +11 -26
  391. package/lib/Util/federated.d.ts +6 -6
  392. package/lib/Util/federated.js +77 -92
  393. package/lib/Util/iframe.js +14 -21
  394. package/lib/Util/index.d.ts +5 -5
  395. package/lib/Util/index.js +278 -479
  396. package/lib/Util/logger.d.ts +1 -1
  397. package/lib/Util/logger.js +17 -25
  398. package/lib/Util/passport.js +72 -87
  399. package/lib/Util/security.js +28 -40
  400. package/lib/Util/style.d.ts +1 -1
  401. package/lib/Util/style.js +4 -14
  402. package/lib/Util/wallet.js +16 -30
  403. package/lib/VerificationCode/index.d.ts +1 -1
  404. package/lib/VerificationCode/index.js +69 -64
  405. package/lib/Video/Video.stories.d.ts +6 -0
  406. package/lib/Video/index.d.ts +1 -9
  407. package/lib/Video/index.js +26 -60
  408. package/lib/Wallet/Action.d.ts +1 -10
  409. package/lib/Wallet/Action.js +37 -65
  410. package/lib/Wallet/Action.stories.d.ts +8 -0
  411. package/lib/Wallet/Download.d.ts +3 -16
  412. package/lib/Wallet/Download.js +41 -440
  413. package/lib/Wallet/Download.stories.d.ts +9 -0
  414. package/lib/Wallet/Open.d.ts +1 -1
  415. package/lib/Wallet/Open.js +27 -27
  416. package/lib/Wallet/OpenInWallet.stories.d.ts +5 -0
  417. package/lib/Wallet/images/android_download.svg.js +5 -0
  418. package/lib/Wallet/images/app-store.svg.js +5 -0
  419. package/lib/Wallet/images/google-play.svg.js +5 -0
  420. package/lib/WalletOSIcon/index.js +15 -73
  421. package/lib/WebWalletSWKeeper/index.js +39 -106
  422. package/lib/WechatPrompt/images/android.png +0 -0
  423. package/lib/WechatPrompt/images/ios.png +0 -0
  424. package/lib/WechatPrompt/index.js +26 -61
  425. package/lib/hooks/use-blocklet-logo.d.ts +2 -2
  426. package/lib/hooks/use-blocklet-logo.js +22 -30
  427. package/lib/hooks/use-clock.d.ts +1 -3
  428. package/lib/hooks/use-clock.js +34 -67
  429. package/lib/hooks/use-location-state.js +55 -79
  430. package/lib/hooks/use-mobile.js +8 -7
  431. package/lib/index.d.ts +35 -35
  432. package/lib/index.js +81 -38
  433. package/lib/ux.css +1 -0
  434. package/lib/withTheme/index.d.ts +1 -3
  435. package/lib/withTheme/index.js +28 -37
  436. package/lib/withTracker/error_boundary.d.ts +1 -1
  437. package/lib/withTracker/error_boundary.js +15 -29
  438. package/lib/withTracker/index.js +21 -48
  439. package/package.json +48 -57
  440. package/src/ActionButton/ActionButton.stories.jsx +61 -0
  441. package/src/ActionButton/index.jsx +30 -14
  442. package/src/ActivityIndicator/ActivityIndicator.stories.jsx +9 -0
  443. package/src/ActivityIndicator/index.jsx +2 -11
  444. package/src/Address/Address.stories.jsx +38 -0
  445. package/src/Address/compact-text.jsx +9 -11
  446. package/src/Address/did-address.tsx +8 -4
  447. package/src/Address/index.tsx +12 -9
  448. package/src/Address/responsive-did-address.tsx +94 -89
  449. package/src/Alert/Alert.stories.jsx +100 -0
  450. package/src/Alert/index.jsx +24 -12
  451. package/src/AnimationWaiter/AnimationWaiter.stories.jsx +35 -0
  452. package/src/AnimationWaiter/index.jsx +10 -23
  453. package/src/Async/index.tsx +2 -2
  454. package/src/Avatar/Avatar.stories.jsx +11 -0
  455. package/src/Avatar/did-motif.jsx +1 -8
  456. package/src/Avatar/index.jsx +36 -13
  457. package/src/Badge/Badge.stories.jsx +41 -0
  458. package/src/Badge/index.jsx +22 -18
  459. package/src/Blocklet/Blocklet.stories.jsx +21 -0
  460. package/src/Blocklet/blocklet.jsx +13 -30
  461. package/src/BlockletContext/index.tsx +2 -2
  462. package/src/BlockletNFT/BlockletNFT.stories.jsx +21 -0
  463. package/src/BlockletNFT/index.jsx +14 -38
  464. package/src/BlockletV2/Blocklet.stories.jsx +34 -0
  465. package/src/BlockletV2/blocklet.tsx +69 -29
  466. package/src/BlockletV2/components/icon-text.tsx +15 -5
  467. package/src/Button/Button.stories.jsx +24 -0
  468. package/src/Button/index.js +1 -1
  469. package/src/Button/wrap.jsx +20 -13
  470. package/src/ButtonGroup/index.js +1 -1
  471. package/src/Center/Center.stories.jsx +20 -0
  472. package/src/ClickToCopy/ClickToCopy.stories.jsx +24 -0
  473. package/src/ClickToCopy/copy-button.tsx +4 -4
  474. package/src/ClickToCopy/index.tsx +28 -12
  475. package/src/CodeBlock/CodeBlock.stories.jsx +22 -0
  476. package/src/CodeBlock/index.tsx +1 -2
  477. package/src/Colors/Colors.stories.jsx +211 -0
  478. package/src/Colors/themes/did-connect.ts +0 -2
  479. package/src/Config/Config.stories.jsx +16 -0
  480. package/src/Config/theme-mode-toggle.tsx +4 -2
  481. package/src/ContactForm/ContactForm.stories.jsx +32 -0
  482. package/src/ContactForm/index.tsx +2 -2
  483. package/src/CookieConsent/CookieConsent.stories.jsx +33 -0
  484. package/src/CookieConsent/index.tsx +1 -1
  485. package/src/CountDown/CountDown.stories.jsx +15 -0
  486. package/src/CountDown/index.tsx +11 -6
  487. package/src/DID/DID.stories.jsx +37 -0
  488. package/src/DID/index.tsx +8 -3
  489. package/src/DIDConnect/app-info-item.tsx +2 -2
  490. package/src/DIDConnect/did-connect-container.tsx +17 -18
  491. package/src/DIDConnect/request-storage-access-api-dialog.tsx +210 -183
  492. package/src/DIDConnect/with-container.tsx +17 -18
  493. package/src/Datatable/CustomToolbar.jsx +32 -34
  494. package/src/Datatable/Datatable.stories.jsx +92 -0
  495. package/src/Datatable/DatatableContext.jsx +2 -2
  496. package/src/Datatable/TableSearch.jsx +10 -12
  497. package/src/Datatable/index.jsx +36 -58
  498. package/src/Datatable/utils.js +7 -7
  499. package/src/Dialog/Dialog.stories.jsx +21 -0
  500. package/src/Dialog/confirm.jsx +11 -21
  501. package/src/Dialog/dialog.jsx +9 -20
  502. package/src/Dialog/use-confirm.jsx +4 -3
  503. package/src/DidLogo/Logo.stories.jsx +8 -0
  504. package/src/DriftBot/index.tsx +4 -6
  505. package/src/Earth/Earth.stories.jsx +39 -0
  506. package/src/Earth/index.tsx +1 -1
  507. package/src/Empty/Empty.stories.jsx +23 -0
  508. package/src/Empty/index.jsx +1 -6
  509. package/src/ErrorBoundary/ErrorBoundary.stories.jsx +13 -0
  510. package/src/ErrorBoundary/fallback.tsx +5 -1
  511. package/src/Footer/Footer.stories.jsx +13 -0
  512. package/src/Footer/index.tsx +10 -18
  513. package/src/Header/Header.stories.jsx +30 -0
  514. package/src/Header/auto-hidden.tsx +1 -1
  515. package/src/Header/header.tsx +21 -4
  516. package/src/Header/responsive-header.tsx +11 -13
  517. package/src/Icon/Icon.stories.jsx +45 -0
  518. package/src/Icon/index.tsx +12 -24
  519. package/src/Img/Img.stories.jsx +17 -0
  520. package/src/Img/index.jsx +14 -30
  521. package/src/InfoRow/InfoRow.stories.jsx +14 -0
  522. package/src/InfoRow/index.tsx +5 -5
  523. package/src/Layout/Layout.stories.jsx +24 -0
  524. package/src/Layout/dashboard/full-page.tsx +4 -4
  525. package/src/Layout/dashboard/index.tsx +24 -21
  526. package/src/Layout/dashboard/sidebar.tsx +1 -1
  527. package/src/Layout/dashboard-legacy/header.tsx +25 -14
  528. package/src/Layout/dashboard-legacy/index.tsx +7 -7
  529. package/src/Layout/dashboard-legacy/sidebar.tsx +1 -3
  530. package/src/Layout/index.tsx +8 -6
  531. package/src/Locale/LocaleSelector.stories.jsx +44 -0
  532. package/src/Locale/context.tsx +2 -2
  533. package/src/Locale/selector.tsx +10 -17
  534. package/src/Logo/Logo.stories.jsx +23 -0
  535. package/src/Metric/Metric.stories.jsx +29 -0
  536. package/src/NFTDisplay/NFTDisplay.stories.jsx +30 -0
  537. package/src/NFTDisplay/broken.tsx +1 -1
  538. package/src/NFTDisplay/displayApi.ts +1 -0
  539. package/src/NFTDisplay/index.tsx +0 -1
  540. package/src/NavMenu/NavMenu.stories.jsx +17 -0
  541. package/src/NavMenu/nav-menu-context.tsx +3 -3
  542. package/src/NavMenu/nav-menu.tsx +138 -125
  543. package/src/NavMenu/products.tsx +7 -1
  544. package/src/NavMenu/style.ts +1 -1
  545. package/src/PageScroller/index.tsx +2 -2
  546. package/src/PageScroller/story/PageScroller.stories.jsx +18 -0
  547. package/src/PageScroller/usePrevValue.ts +1 -1
  548. package/src/PhoneInput/PhoneInput.stories.jsx +12 -0
  549. package/src/PhoneInput/country-select.tsx +107 -103
  550. package/src/PhoneInput/index.tsx +12 -4
  551. package/src/PricingTable/PricingPlan.tsx +1 -4
  552. package/src/PricingTable/PricingTable.stories.jsx +38 -0
  553. package/src/PricingTable/index.tsx +16 -4
  554. package/src/QRCode/QRCode.stories.jsx +13 -0
  555. package/src/RelativeTime/RelativeTime.stories.jsx +20 -0
  556. package/src/RelativeTime/index.tsx +20 -5
  557. package/src/Result/Result.stories.jsx +61 -0
  558. package/src/Result/common.tsx +1 -2
  559. package/src/Result/result.tsx +22 -6
  560. package/src/Screenshot/Screenshot.stories.jsx +44 -0
  561. package/src/Screenshot/index.tsx +33 -15
  562. package/src/SessionManager/SessionManager.stories.jsx +9 -0
  563. package/src/SessionPermission/index.tsx +1 -0
  564. package/src/SessionUser/components/logged-in.tsx +0 -2
  565. package/src/SessionUser/components/quick-login-item.tsx +3 -3
  566. package/src/SessionUser/components/session-user-item.tsx +68 -70
  567. package/src/SessionUser/components/session-user-switch.tsx +9 -1
  568. package/src/SessionUser/components/un-login.tsx +8 -1
  569. package/src/SharedBridge/index.tsx +106 -111
  570. package/src/Sparkline/Sparkline.stories.jsx +13 -0
  571. package/src/Spinner/Spinner.stories.jsx +98 -0
  572. package/src/Spinner/index.tsx +1 -1
  573. package/src/SplitButton/SplitButton.stories.jsx +32 -0
  574. package/src/SplitButton/index.tsx +15 -9
  575. package/src/Switch/Switch.stories.jsx +16 -0
  576. package/src/Switch/index.jsx +2 -6
  577. package/src/Tabs/Tabs.stories.jsx +18 -0
  578. package/src/Tabs/index.tsx +3 -3
  579. package/src/Tag/Tag.stories.jsx +15 -0
  580. package/src/Tag/index.jsx +20 -11
  581. package/src/TextCollapse/TextCollapse.stories.jsx +73 -0
  582. package/src/TextCollapse/index.tsx +1 -1
  583. package/src/Theme/Theme.stories.jsx +10 -0
  584. package/src/Theme/theme-provider.tsx +10 -18
  585. package/src/Theme/theme.ts +7 -2
  586. package/src/Toast/Toast.stories.jsx +28 -0
  587. package/src/Toast/index.tsx +2 -2
  588. package/src/Typography/index.tsx +6 -2
  589. package/src/UserCard/Cards/basic-info.tsx +9 -5
  590. package/src/UserCard/Container/card.tsx +2 -2
  591. package/src/UserCard/Content/basic.tsx +43 -14
  592. package/src/UserCard/Content/clock.tsx +13 -6
  593. package/src/UserCard/Content/minimal.tsx +23 -7
  594. package/src/UserCard/Content/tooltip-avatar.tsx +14 -11
  595. package/src/UserCard/UserCard.stories.jsx +18 -0
  596. package/src/UserCard/components.tsx +6 -3
  597. package/src/UserCard/index.tsx +0 -1
  598. package/src/Util/WebWalletOpener.stories.jsx +5 -0
  599. package/src/Util/index.ts +37 -3
  600. package/src/VerificationCode/index.tsx +16 -14
  601. package/src/Video/Video.stories.jsx +6 -0
  602. package/src/Video/index.tsx +16 -8
  603. package/src/Wallet/Action.stories.jsx +8 -0
  604. package/src/Wallet/Action.tsx +20 -9
  605. package/src/Wallet/Download.stories.jsx +9 -0
  606. package/src/Wallet/Download.tsx +36 -14
  607. package/src/Wallet/Open.tsx +1 -1
  608. package/src/Wallet/OpenInWallet.stories.jsx +5 -0
  609. package/src/WechatPrompt/index.tsx +1 -2
  610. package/src/hooks/use-clock.tsx +2 -1
  611. package/src/withTheme/index.tsx +1 -4
  612. package/vite.config.mjs +34 -0
  613. package/babel.config.es.js +0 -28
  614. package/lib/Dialog/types.d.ts +0 -20
  615. package/lib/Earth/countries.json +0 -8057
  616. package/lib/Header/demo/images/boards.svg +0 -3
  617. package/lib/Header/demo/images/chatbot.svg +0 -3
  618. package/lib/Header/demo/images/gallery.svg +0 -3
  619. package/lib/Logo/images/logo-dark-text.svg +0 -3
  620. package/lib/Logo/images/logo-dark-top.svg +0 -6
  621. package/lib/Logo/images/logo-light-text.svg +0 -3
  622. package/lib/Logo/images/logo-light-top.svg +0 -6
  623. package/lib/NFTDisplay/NFTBroken.svg +0 -34
  624. package/lib/NFTDisplay/README.md +0 -59
  625. package/lib/NFTDisplay/demo/data/asset-state-bad-url.json +0 -7
  626. package/lib/NFTDisplay/demo/data/asset-state-did-space-svg.json +0 -7
  627. package/lib/NFTDisplay/demo/data/asset-state-did-space.json +0 -7
  628. package/lib/NFTDisplay/demo/data/asset-state-display-url.json +0 -7
  629. package/lib/NFTDisplay/demo/data/asset-state-gzipped-svg-1-1.json +0 -10
  630. package/lib/NFTDisplay/demo/data/asset-state-gzipped-svg-374-130.json +0 -10
  631. package/lib/NFTDisplay/demo/data/asset-state-gzipped-svg-with-foreign-object.json +0 -20
  632. package/lib/NFTDisplay/demo/data/asset-state-svg.json +0 -29
  633. package/lib/NFTDisplay/demo/data/asset-state-url.json +0 -10
  634. package/lib/NavMenu/images/OCAP.svg +0 -16
  635. package/lib/NavMenu/images/abt-network.svg +0 -18
  636. package/lib/NavMenu/images/ai-kit.svg +0 -46
  637. package/lib/NavMenu/images/aigne.svg +0 -8
  638. package/lib/NavMenu/images/aistro.svg +0 -14
  639. package/lib/NavMenu/images/arcsphere.svg +0 -13
  640. package/lib/NavMenu/images/blocklet-framework.svg +0 -25
  641. package/lib/NavMenu/images/blocklet-launcher.svg +0 -9
  642. package/lib/NavMenu/images/blocklet-server.svg +0 -19
  643. package/lib/NavMenu/images/blocklet-store.svg +0 -11
  644. package/lib/NavMenu/images/creator-studio.svg +0 -42
  645. package/lib/NavMenu/images/did-connect.svg +0 -26
  646. package/lib/NavMenu/images/did-name-service.svg +0 -3
  647. package/lib/NavMenu/images/did-wallet.svg +0 -33
  648. package/lib/NavMenu/images/did.svg +0 -3
  649. package/lib/NavMenu/images/nft-studio.svg +0 -19
  650. package/lib/NavMenu/images/vc.svg +0 -7
  651. package/lib/NavMenu/images/web3-kit.svg +0 -56
  652. package/lib/PageScroller/story/index.css +0 -115
  653. package/lib/Result/demo/fixtures/result-image-404.svg +0 -1
  654. package/lib/Screenshot/devices.css +0 -1366
  655. package/lib/SessionUser/images/did-spaces.svg +0 -17
  656. package/lib/Wallet/images/android_download.svg +0 -22
  657. package/lib/Wallet/images/app-store.svg +0 -30
  658. package/lib/Wallet/images/google-play.svg +0 -69
  659. package/lib/global.d.ts +0 -28
  660. package/lib/type.d.ts +0 -44
  661. package/lib/withTracker/README.md +0 -37
  662. /package/src/PageScroller/story/{FifthComponent.js → FifthComponent.jsx} +0 -0
  663. /package/src/PageScroller/story/{FirstComponent.js → FirstComponent.jsx} +0 -0
  664. /package/src/PageScroller/story/{FourthComponent.js → FourthComponent.jsx} +0 -0
  665. /package/src/PageScroller/story/{FullPage.js → FullPage.jsx} +0 -0
  666. /package/src/PageScroller/story/{PageContain.js → PageContain.jsx} +0 -0
  667. /package/src/PageScroller/story/{SecondComponent.js → SecondComponent.jsx} +0 -0
  668. /package/src/PageScroller/story/{ThirdComponent.js → ThirdComponent.jsx} +0 -0
@@ -0,0 +1,98 @@
1
+ import { Box } from '@mui/material';
2
+ import Spinner from '.';
3
+
4
+ export default {
5
+ title: 'Deprecated/Spinner',
6
+ };
7
+
8
+ export function Default() {
9
+ return (
10
+ <Box
11
+ sx={{
12
+ width: 300,
13
+ height: 300,
14
+ border: 1,
15
+ display: 'flex',
16
+ alignItems: 'center',
17
+ justifyContent: 'center',
18
+ }}>
19
+ <Spinner />
20
+ </Box>
21
+ );
22
+ }
23
+
24
+ Default.storyName = 'default';
25
+
26
+ export function CustomColor() {
27
+ return (
28
+ <Box
29
+ sx={{
30
+ p: 2,
31
+ }}>
32
+ <h5>color="primary"</h5>
33
+ <Box
34
+ sx={{
35
+ p: 4,
36
+ }}>
37
+ <Spinner color="primary" />
38
+ </Box>
39
+ <h5>color="secondary"</h5>
40
+ <Box
41
+ sx={{
42
+ p: 4,
43
+ }}>
44
+ <Spinner color="secondary" />
45
+ </Box>
46
+ <h5>color="inherit"</h5>
47
+ <Box
48
+ sx={{
49
+ p: 4,
50
+ color: 'blue',
51
+ }}>
52
+ <Spinner color="inherit" />
53
+ </Box>
54
+ <h5>style=&#123;&#123; color: '#128323' &#125;&#125;</h5>
55
+ <Box
56
+ sx={{
57
+ p: 4,
58
+ }}>
59
+ <Spinner style={{ color: '#128323' }} />
60
+ </Box>
61
+ </Box>
62
+ );
63
+ }
64
+
65
+ CustomColor.storyName = 'custom color';
66
+
67
+ export function CustomSize() {
68
+ return (
69
+ <Box
70
+ sx={{
71
+ p: 2,
72
+ }}>
73
+ <h5>default: size=40</h5>
74
+ <Box
75
+ sx={{
76
+ p: 4,
77
+ }}>
78
+ <Spinner />
79
+ </Box>
80
+ <h5>size=12</h5>
81
+ <Box
82
+ sx={{
83
+ p: 4,
84
+ }}>
85
+ <Spinner size={12} />
86
+ </Box>
87
+ <h5>size: [12, 8] (Compatible with the old API)</h5>
88
+ <Box
89
+ sx={{
90
+ p: 4,
91
+ }}>
92
+ <Spinner size={[12, 8]} />
93
+ </Box>
94
+ </Box>
95
+ );
96
+ }
97
+
98
+ CustomSize.storyName = 'custom size';
@@ -1,4 +1,4 @@
1
- import CircularProgress, { type CircularProgressProps } from '@mui/material/CircularProgress';
1
+ import { CircularProgress, type CircularProgressProps } from '@mui/material';
2
2
  import { withDeprecated } from '../Util/deprecate';
3
3
 
4
4
  export interface SpinnerProps extends Omit<CircularProgressProps, 'size'> {
@@ -0,0 +1,32 @@
1
+ import { Box } from '@mui/material';
2
+
3
+ import SplitButton from './index';
4
+ import Basic from './demo/basic';
5
+ import ThemeProvider from '../Theme/theme-provider';
6
+ import ThemeModeToggle from '../Config/theme-mode-toggle';
7
+
8
+ export default {
9
+ title: 'Basic/SplitButton',
10
+ component: SplitButton,
11
+ parameters: {
12
+ design: {
13
+ type: 'figma',
14
+ url: 'https://www.figma.com/file/E8TSBWCOyXzETmVOjzbqvw/ArcBlock-UI-Kit?node-id=768%3A999',
15
+ },
16
+ },
17
+ decorators: [
18
+ (Story) => (
19
+ <ThemeProvider prefer="system">
20
+ <Box sx={{ py: 1 }}>
21
+ <ThemeModeToggle />
22
+ </Box>
23
+ <Story />
24
+ </ThemeProvider>
25
+ ),
26
+ ],
27
+ };
28
+
29
+ // single story hoisting
30
+ Basic.storyName = 'SplitButton';
31
+
32
+ export { Basic };
@@ -1,12 +1,17 @@
1
1
  import React, { useState, useRef, isValidElement } from 'react';
2
- import ExpandMore from '@mui/icons-material/ExpandMore';
3
- import Popper from '@mui/material/Popper';
4
- import Paper from '@mui/material/Paper';
5
- import ClickAwayListener from '@mui/material/ClickAwayListener';
6
- import MenuList from '@mui/material/MenuList';
7
- import MenuItem, { MenuItemProps } from '@mui/material/MenuItem';
8
- import ButtonGroup, { ButtonGroupProps } from '@mui/material/ButtonGroup';
9
- import Button, { ButtonProps } from '@mui/material/Button';
2
+ import { ExpandMore } from '@mui/icons-material';
3
+ import {
4
+ Popper,
5
+ Paper,
6
+ ClickAwayListener,
7
+ MenuList,
8
+ MenuItem,
9
+ MenuItemProps,
10
+ ButtonGroup,
11
+ ButtonGroupProps,
12
+ Button,
13
+ ButtonProps,
14
+ } from '@mui/material';
10
15
  import noop from 'lodash/noop';
11
16
 
12
17
  import { styled } from '../Theme';
@@ -36,7 +41,8 @@ export default function SplitButton(props: SplitButtonProps) {
36
41
  const [open, setOpen] = useState(false);
37
42
  const anchorRef = useRef<HTMLDivElement | null>(null);
38
43
  const menuItems = Array.isArray(menu)
39
- ? menu.map((item, index) => (isValidElement(item) ? item : <MenuItem {...item} key={index} />))
44
+ ? // eslint-disable-next-line react/no-array-index-key
45
+ menu.map((item, index) => (isValidElement(item) ? item : <MenuItem {...item} key={index} />))
40
46
  : menu;
41
47
 
42
48
  const onToggle = () => {
@@ -0,0 +1,16 @@
1
+ import Basic from './demo/basic';
2
+
3
+ export default {
4
+ title: 'Basic/Switch',
5
+ parameters: {
6
+ docs: {
7
+ description: {
8
+ component: 'A iOS-styled Swtich component.',
9
+ },
10
+ },
11
+ },
12
+ };
13
+
14
+ Basic.storyName = 'Switch';
15
+
16
+ export { Basic };
@@ -1,6 +1,5 @@
1
1
  import PropTypes from 'prop-types';
2
- import FormControlLabel from '@mui/material/FormControlLabel';
3
- import MuiSwitch from '@mui/material/Switch';
2
+ import { FormControlLabel, Switch as MuiSwitch } from '@mui/material';
4
3
  import { styled } from '../Theme';
5
4
 
6
5
  // 参考: https://mui.com/material-ui/react-switch/#customization
@@ -66,7 +65,7 @@ const IOSSwitch = styled((props) => <MuiSwitch focusVisibleClassName=".Mui-focus
66
65
  * @param {SwitchProps} props
67
66
  * @returns {JSX.Element}
68
67
  */
69
- function Switch({ labelProps, ...rest }) {
68
+ function Switch({ labelProps = null, ...rest }) {
70
69
  if (labelProps) {
71
70
  return <FormControlLabel control={<IOSSwitch {...rest} />} {...labelProps} />;
72
71
  }
@@ -76,8 +75,5 @@ function Switch({ labelProps, ...rest }) {
76
75
  Switch.propTypes = {
77
76
  labelProps: PropTypes.object,
78
77
  };
79
- Switch.defaultProps = {
80
- labelProps: null,
81
- };
82
78
 
83
79
  export default Switch;
@@ -0,0 +1,18 @@
1
+ import Basic from './demo/basic';
2
+ import IconPosition from './demo/iconPosition';
3
+
4
+ export default {
5
+ title: 'Navigation/Tabs',
6
+ parameters: {
7
+ docs: {
8
+ description: {
9
+ component:
10
+ 'The Tabs component allows content authors to organize their content into various views. Users can navigate to different views by switching between tabs.',
11
+ },
12
+ },
13
+ },
14
+ };
15
+
16
+ Basic.storyName = 'Tabs';
17
+
18
+ export { Basic, IconPosition };
@@ -21,7 +21,7 @@ const StyledMuiTabs = styled(MuiTabs)(({ theme }) => ({
21
21
  }));
22
22
 
23
23
  interface CardTabsProps extends Omit<MuiTabsProps, 'onChange'> {
24
- tabs: { value: any; label: React.ReactNode; icon?: string | React.ReactElement }[];
24
+ tabs: { value: any; label: React.ReactNode; icon?: string | React.ReactElement<any> }[];
25
25
  current: any;
26
26
  onChange: (value: string) => void;
27
27
  iconPosition?: TabProps['iconPosition'];
@@ -91,7 +91,7 @@ function CardTabs({ tabs, current, onChange, iconPosition, ...rest }: CardTabsPr
91
91
  }
92
92
 
93
93
  interface LineTabsProps extends Omit<MuiTabsProps, 'onChange'> {
94
- tabs: { value: any; label: React.ReactNode; icon?: string | React.ReactElement }[];
94
+ tabs: { value: any; label: React.ReactNode; icon?: string | React.ReactElement<any> }[];
95
95
  current: any;
96
96
  onChange: (value: string) => void;
97
97
  iconPosition?: TabProps['iconPosition'];
@@ -169,7 +169,7 @@ function LineTabs({ tabs, current, onChange, iconPosition, ...rest }: LineTabsPr
169
169
  }
170
170
 
171
171
  interface TabsProps extends Omit<MuiTabsProps, 'variant' | 'onChange'> {
172
- tabs: { value: any; label: React.ReactNode; icon?: string | React.ReactElement }[];
172
+ tabs: { value: any; label: React.ReactNode; icon?: string | React.ReactElement<any> }[];
173
173
  current: any;
174
174
  onChange: (value: string) => void;
175
175
  variant?: 'card' | 'line' | MuiTabsProps['variant'];
@@ -0,0 +1,15 @@
1
+ import Basic from './demo/basic';
2
+
3
+ export default {
4
+ title: 'Data Display/Tag',
5
+ parameters: {
6
+ docs: {
7
+ description: {
8
+ component: 'Used for categorizing or marking up.',
9
+ },
10
+ },
11
+ },
12
+ };
13
+ Basic.storyName = 'Tag';
14
+
15
+ export { Basic };
package/src/Tag/index.jsx CHANGED
@@ -1,6 +1,6 @@
1
- import { forwardRef } from 'react';
2
1
  import PropTypes from 'prop-types';
3
- import Typography from '@mui/material/Typography';
2
+ import { Typography } from '@mui/material';
3
+ import isUndefined from 'lodash/isUndefined';
4
4
 
5
5
  import { mergeProps } from '../Util';
6
6
  import colors from '../Colors';
@@ -46,7 +46,20 @@ const types = {
46
46
  * @param {TagProps} props
47
47
  * @return {import('react').ReactNode}
48
48
  */
49
- function Tag(props) {
49
+ function Tag(rawProps) {
50
+ const props = Object.assign({}, rawProps);
51
+ if (isUndefined(props.type)) {
52
+ props.type = 'primary';
53
+ }
54
+ if (isUndefined(props.content)) {
55
+ props.content = '';
56
+ }
57
+ if (isUndefined(props.style)) {
58
+ props.style = {};
59
+ }
60
+ if (isUndefined(props.className)) {
61
+ props.className = '';
62
+ }
50
63
  const newProps = mergeProps(props, Tag, ['style']);
51
64
  const { type, content, children, style, className, forwardedRef, ...rest } = newProps;
52
65
 
@@ -76,17 +89,13 @@ Tag.propTypes = {
76
89
  style: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
77
90
  };
78
91
 
79
- Tag.defaultProps = {
80
- type: 'primary',
81
- content: '',
82
- className: '',
83
- style: {},
84
- };
85
-
86
92
  /**
87
93
  * @type {React.ForwardRefExoticComponent<React.PropsWithoutRef<TagProps> & React.RefAttributes<HTMLSpanElement>>}
88
94
  */
89
- const TagComponent = forwardRef((props, ref) => <Tag {...props} forwardedRef={ref} />);
95
+ // eslint-disable-next-line react/prop-types
96
+ function TagComponent({ ref, ...props }) {
97
+ return <Tag {...props} forwardedRef={ref} />;
98
+ }
90
99
  export default TagComponent;
91
100
 
92
101
  const Span = styled(Typography)`
@@ -0,0 +1,73 @@
1
+ import TextCollapse from '.';
2
+
3
+ export default {
4
+ title: 'Deprecated/TextCollapse',
5
+
6
+ parameters: {
7
+ readme: {
8
+ sidebar: '<!-- PROPS -->',
9
+ },
10
+ },
11
+ };
12
+
13
+ export function WithDefaultOptions() {
14
+ return (
15
+ <>
16
+ <TextCollapse maxWidth={180}>this text will collapse from middle</TextCollapse>
17
+ <hr />
18
+ <TextCollapse maxWidth={180} fontType="monospace">
19
+ this text will collapse from middle
20
+ </TextCollapse>
21
+ </>
22
+ );
23
+ }
24
+
25
+ WithDefaultOptions.storyName = 'with default options';
26
+
27
+ export function WithSmallerEndChars() {
28
+ return (
29
+ <>
30
+ <TextCollapse maxWidth={180} endChars={4}>
31
+ this text will collapse from middle
32
+ </TextCollapse>
33
+ <hr />
34
+ <TextCollapse maxWidth={180} endChars={4} fontType="monospace">
35
+ this text will collapse from middle
36
+ </TextCollapse>
37
+ </>
38
+ );
39
+ }
40
+
41
+ WithSmallerEndChars.storyName = 'with smaller end chars';
42
+
43
+ export function WithLargerStartChars() {
44
+ return (
45
+ <div style={{ color: 'red' }}>
46
+ <TextCollapse maxWidth={120} startChars={18} endChars={4}>
47
+ this text will collapse from middle
48
+ </TextCollapse>
49
+ <hr />
50
+ <TextCollapse maxWidth={120} startChars={18} endChars={4} fontType="monospace">
51
+ this text will collapse from middle
52
+ </TextCollapse>
53
+ </div>
54
+ );
55
+ }
56
+
57
+ WithLargerStartChars.storyName = 'with larger start chars';
58
+
59
+ export function WithLargerFontSize() {
60
+ return (
61
+ <div style={{ fontSize: 30 }}>
62
+ <TextCollapse maxWidth={360} startChars={('startChars', 8)} endChars={4}>
63
+ this text will collapse from middle
64
+ </TextCollapse>
65
+ <hr />
66
+ <TextCollapse maxWidth={360} startChars={8} endChars={4} fontType="monospace">
67
+ this text will collapse from middle
68
+ </TextCollapse>
69
+ </div>
70
+ );
71
+ }
72
+
73
+ WithLargerFontSize.storyName = 'with larger font size';
@@ -1,4 +1,4 @@
1
- import Typography, { type TypographyProps } from '@mui/material/Typography';
1
+ import { Typography, type TypographyProps } from '@mui/material';
2
2
 
3
3
  import { styled } from '../Theme';
4
4
  import { withDeprecated } from '../Util/deprecate';
@@ -0,0 +1,10 @@
1
+ export { default as Palette } from './demo/palette';
2
+ export { default as Typography } from './demo/typography';
3
+ export { default as Shadows } from './demo/shadows';
4
+ export { default as WithCustomKey } from './demo/with-custom-key';
5
+ export { default as CustomFonts } from './demo/custom-fonts';
6
+ export { default as UrlTheme } from './demo/url-theme';
7
+
8
+ export default {
9
+ title: 'Theme/Theme',
10
+ };
@@ -1,18 +1,18 @@
1
- import { createContext, useCallback, useContext, useEffect, useMemo, useState, useRef } from 'react';
2
- import PropTypes from 'prop-types';
3
- import { GlobalStyles, PaletteMode } from '@mui/material';
1
+ import { createContext, useCallback, use, useEffect, useMemo, useState, useRef } from 'react';
4
2
  import {
3
+ GlobalStyles,
4
+ PaletteMode,
5
+ StyledEngineProvider,
5
6
  ThemeProvider as MuiThemeProvider,
6
7
  Theme,
7
8
  ThemeOptions,
8
9
  useTheme,
9
- StyledEngineProvider,
10
- } from '@mui/material/styles';
11
- import CssBaseline from '@mui/material/CssBaseline';
10
+ CssBaseline,
11
+ } from '@mui/material';
12
12
  import set from 'lodash/set';
13
13
  import { BLOCKLET_THEME_PREFER_KEY, getDefaultThemePrefer, isValidThemeMode } from '@blocklet/theme';
14
14
 
15
- import useLocationState from '../hooks/use-location-state';
15
+ import { useLocationState } from '../hooks/use-location-state';
16
16
  import { createTheme, isTheme, isUxTheme, lazyCreateDefaultTheme, type UxThemeOptions } from './theme';
17
17
 
18
18
  const defaultTheme = createTheme();
@@ -27,7 +27,7 @@ export interface ColorSchemeContextType {
27
27
 
28
28
  export const ColorSchemeContext = createContext<ColorSchemeContextType>({} as ColorSchemeContextType);
29
29
  export function useColorScheme() {
30
- return useContext(ColorSchemeContext);
30
+ return use(ColorSchemeContext);
31
31
  }
32
32
 
33
33
  /** 根据偏好获取颜色模式 */
@@ -259,11 +259,11 @@ function ColorSchemeProvider({
259
259
  }, [theme.palette.background.default]);
260
260
 
261
261
  return (
262
- <ColorSchemeContext.Provider value={colorSchemeValue}>
262
+ <ColorSchemeContext value={colorSchemeValue}>
263
263
  <BaseThemeProvider theme={theme} {...rest}>
264
264
  {children}
265
265
  </BaseThemeProvider>
266
- </ColorSchemeContext.Provider>
266
+ </ColorSchemeContext>
267
267
  );
268
268
  }
269
269
 
@@ -289,11 +289,3 @@ export default function ThemeProvider({ children, prefer, enableColorScheme = fa
289
289
 
290
290
  return <BaseThemeProvider {...props}>{children}</BaseThemeProvider>;
291
291
  }
292
-
293
- ThemeProvider.propTypes = {
294
- children: PropTypes.any,
295
- theme: PropTypes.any,
296
- injectFirst: PropTypes.bool,
297
- darkSchemeClass: PropTypes.string,
298
- enableColorScheme: PropTypes.bool,
299
- };
@@ -1,7 +1,12 @@
1
1
  /* eslint-disable no-shadow */
2
2
  // https://app.zeplin.io/styleguide/5d1436f1e97c2156f49c0725/colors
3
- import type { PaletteMode, Theme } from '@mui/material';
4
- import { createTheme as _createTheme, responsiveFontSizes, type ThemeOptions } from '@mui/material/styles';
3
+ import {
4
+ createTheme as _createTheme,
5
+ responsiveFontSizes,
6
+ type ThemeOptions,
7
+ type PaletteMode,
8
+ type Theme,
9
+ } from '@mui/material';
5
10
  import { deepmerge } from '@mui/utils';
6
11
  import webfontloader from 'webfontloader';
7
12
  import {
@@ -0,0 +1,28 @@
1
+ import { Box } from '@mui/material';
2
+ import { ThemeProvider } from '../Theme';
3
+ import { ThemeModeToggle } from '../Config';
4
+
5
+ export { default as Basic } from './demo/basic';
6
+ export { default as CustomOptions } from './demo/custom-options';
7
+ export { default as ManualClose } from './demo/manual-close';
8
+
9
+ export default {
10
+ title: 'Feedback/Toast',
11
+ parameters: {
12
+ docs: {
13
+ description: {
14
+ component: 'A `iamhosseindhv/notistack` wrapper used to display notifications on web apps.',
15
+ },
16
+ },
17
+ },
18
+ decorators: [
19
+ (Story) => (
20
+ <ThemeProvider prefer="system">
21
+ <Box>
22
+ <ThemeModeToggle />
23
+ </Box>
24
+ <Story />
25
+ </ThemeProvider>
26
+ ),
27
+ ],
28
+ };
@@ -9,8 +9,8 @@ import {
9
9
  SnackbarProvider,
10
10
  useSnackbar,
11
11
  } from 'notistack';
12
- import IconButton from '@mui/material/IconButton';
13
- import CloseIcon from '@mui/icons-material/Close';
12
+ import { IconButton } from '@mui/material';
13
+ import { Close as CloseIcon } from '@mui/icons-material';
14
14
  import noop from 'lodash/noop';
15
15
 
16
16
  type EnqueueSnackbar = ProviderContext['enqueueSnackbar'];
@@ -1,5 +1,6 @@
1
1
  import { Box, Typography as MuiTypography, Skeleton, type TypographyProps as MuiTypographyProps } from '@mui/material';
2
2
  import { useCreation, useReactive, useSize } from 'ahooks';
3
+ import noop from 'lodash/noop';
3
4
  import { useEffect, useRef } from 'react';
4
5
 
5
6
  export interface TypographyProps extends MuiTypographyProps {
@@ -8,7 +9,6 @@ export interface TypographyProps extends MuiTypographyProps {
8
9
  onShrink?: ({ fontSize, initialSize }: { fontSize: number; initialSize: number }) => void;
9
10
  }
10
11
 
11
- const noop = (...args: any[]) => {};
12
12
  let minBrowserFontSize = -1;
13
13
 
14
14
  function detectMinimumFontSize() {
@@ -89,7 +89,11 @@ export default function Typography({
89
89
  }, [fontSize, state.loading]);
90
90
 
91
91
  return loading ? (
92
- <Box ref={refContainer} flex={1}>
92
+ <Box
93
+ ref={refContainer}
94
+ sx={{
95
+ flex: 1,
96
+ }}>
93
97
  <MuiTypography {...rest} sx={sx} noWrap>
94
98
  <Skeleton variant="text" sx={{ fontSize: '1rem' }} />
95
99
  </MuiTypography>
@@ -8,7 +8,6 @@ interface BasicCardProps extends Omit<UserCardProps, 'user'> {
8
8
  user: User;
9
9
  shouldShowHoverCard: boolean;
10
10
  renderCardContent?: () => React.ReactNode | null;
11
- isFull?: boolean;
12
11
  }
13
12
 
14
13
  // 详细卡片模式下的Basic渲染组件
@@ -17,7 +16,6 @@ function BasicCard(props: BasicCardProps) {
17
16
  user,
18
17
  avatarSize = 40,
19
18
  renderCustomContent,
20
- isFull = true,
21
19
  infoType = InfoType.Minimal,
22
20
  renderFields,
23
21
  popupRenderFields,
@@ -25,10 +23,16 @@ function BasicCard(props: BasicCardProps) {
25
23
  } = props;
26
24
 
27
25
  return (
28
- <Box display="flex" flexDirection="column" width="100%" flex={1} height="100%">
26
+ <Box
27
+ sx={{
28
+ display: 'flex',
29
+ flexDirection: 'column',
30
+ width: '100%',
31
+ flex: 1,
32
+ height: '100%',
33
+ }}>
29
34
  <MinimalContent user={user} avatarSize={avatarSize} {...rest} />
30
-
31
- {infoType === InfoType.Basic && <BasicContent user={user} isFull={isFull} renderFields={renderFields} />}
35
+ {infoType === InfoType.Basic && <BasicContent user={user} renderFields={renderFields} />}
32
36
  <Box className="user-card__footer">
33
37
  {renderCustomContent && <Box sx={{ mt: 1.5 }}>{renderCustomContent()}</Box>}
34
38
  </Box>
@@ -7,7 +7,7 @@ interface CardContainerProps {
7
7
  children: React.ReactNode;
8
8
  cardType?: UserCardProps['cardType'];
9
9
  variant?: 'paper' | 'box';
10
- containerRef?: React.RefObject<HTMLDivElement>;
10
+ containerRef?: React.Ref<unknown>;
11
11
  sx?: UserCardProps['sx'];
12
12
  }
13
13
 
@@ -36,7 +36,7 @@ function CardContainer({
36
36
  // Paper变体,用于Basic和Full类型卡片
37
37
  if (variant === 'paper') {
38
38
  return (
39
- <Paper ref={containerRef} elevation={0} sx={commonStyles}>
39
+ <Paper ref={containerRef as React.Ref<HTMLDivElement>} elevation={0} sx={commonStyles}>
40
40
  {children}
41
41
  </Paper>
42
42
  );