@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
@@ -1,53 +1,33 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import Typography from '@mui/material/Typography';
3
- import { styled } from '../Theme';
4
- import { withDeprecated } from '../Util/deprecate';
5
- function TextCollapse({
6
- children,
7
- maxWidth,
8
- startChars = 5,
9
- endChars = 5,
10
- scaleFactor = 0.45,
11
- style,
12
- fontType = 'normal',
13
- ...rest
1
+ import { jsxs as f, jsx as r } from "react/jsx-runtime";
2
+ import { Typography as x } from "@mui/material";
3
+ import { styled as y } from "../Theme/index.js";
4
+ import { withDeprecated as u } from "../Util/deprecate.js";
5
+ function g({
6
+ children: t,
7
+ maxWidth: s,
8
+ startChars: n = 5,
9
+ endChars: e = 5,
10
+ scaleFactor: o = 0.45,
11
+ style: a,
12
+ fontType: l = "normal",
13
+ ...p
14
14
  }) {
15
- if (typeof children !== 'string') {
15
+ if (typeof t != "string")
16
16
  return null;
17
- }
18
- const isMonospace = fontType === 'monospace';
19
-
20
- // 由于 css 样式产生的省略号长度是不确定的,所以目前 startChars 的长度只能让开发者自己去加上‘省略号’的宽度去设置这个值,要想完美的实现目标功能,最好是改用 js 动态修改文本内容来实现
21
- const startWidth = isMonospace ? `${startChars}ch` : `${scaleFactor * (startChars + 3)}em`;
22
- const endWidth = isMonospace ? `${endChars}ch` : `${scaleFactor * endChars}em`;
23
- const styles = Object.assign(isMonospace ? {
24
- fontFamily: '"Courier New", Courier, monospace'
25
- } : {}, {
26
- fontSize: 'inherit',
27
- color: 'inherit',
28
- fontWeight: 'inherit',
29
- maxWidth
30
- }, style);
31
- const [startPart, endPart] = [children.slice(0, children.length - endChars), children.slice(children.length - endChars)];
32
- return /*#__PURE__*/_jsxs(Container, {
33
- component: "span",
34
- style: styles,
35
- startwidth: startWidth,
36
- endwidth: endWidth,
37
- ...rest,
38
- children: [/*#__PURE__*/_jsx("span", {
39
- className: "start-part",
40
- children: startPart
41
- }), /*#__PURE__*/_jsx("span", {
42
- className: "end-part",
43
- children: endPart
44
- })]
45
- });
17
+ const i = l === "monospace", c = i ? `${n}ch` : `${o * (n + 3)}em`, d = i ? `${e}ch` : `${o * e}em`, m = Object.assign(
18
+ i ? { fontFamily: '"Courier New", Courier, monospace' } : {},
19
+ { fontSize: "inherit", color: "inherit", fontWeight: "inherit", maxWidth: s },
20
+ a
21
+ ), [h, w] = [
22
+ t.slice(0, t.length - e),
23
+ t.slice(t.length - e)
24
+ ];
25
+ return /* @__PURE__ */ f($, { component: "span", style: m, startwidth: c, endwidth: d, ...p, children: [
26
+ /* @__PURE__ */ r("span", { className: "start-part", children: h }),
27
+ /* @__PURE__ */ r("span", { className: "end-part", children: w })
28
+ ] });
46
29
  }
47
- export default withDeprecated(TextCollapse, {
48
- name: 'TextCollapse'
49
- });
50
- const Container = styled(Typography)`
30
+ const T = u(g, { name: "TextCollapse" }), $ = y(x)`
51
31
  display: inline-flex;
52
32
  align-items: center;
53
33
  justify-content: start;
@@ -63,12 +43,15 @@ const Container = styled(Typography)`
63
43
  overflow: hidden;
64
44
  }
65
45
  .start-part {
66
- max-width: calc(100% - ${props => props.endwidth});
67
- min-width: ${props => props.startwidth};
46
+ max-width: calc(100% - ${(t) => t.endwidth});
47
+ min-width: ${(t) => t.startwidth};
68
48
  text-overflow: ellipsis;
69
49
  }
70
50
  .end-part {
71
- max-width: calc(100% - ${props => props.startwidth});
51
+ max-width: calc(100% - ${(t) => t.startwidth});
72
52
  direction: rtl;
73
53
  }
74
- `;
54
+ `;
55
+ export {
56
+ T as default
57
+ };
@@ -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
+ declare namespace _default {
8
+ let title: string;
9
+ }
10
+ export default _default;
@@ -1,5 +1,4 @@
1
- import type { CreateMUIStyled, Theme } from '@mui/material';
2
- import { useTheme } from '@mui/material';
1
+ import { CreateMUIStyled, Theme, useTheme } from '@mui/material';
3
2
  export * from './theme';
4
3
  export * from './theme-provider';
5
4
  export { default as ThemeProvider } from './theme-provider';
@@ -1,17 +1,25 @@
1
- import { styled as muiStyled, useTheme } from '@mui/material';
2
- export * from './theme';
3
- export * from './theme-provider';
4
- export { default as ThemeProvider } from './theme-provider';
5
- export { useTheme };
6
- const isTransientProp = prop => prop.startsWith('$');
7
- export const styled = (component, options) => {
8
- return muiStyled(component, {
9
- ...options,
10
- shouldForwardProp: prop => {
11
- if (options?.shouldForwardProp) {
12
- return options.shouldForwardProp(prop) && !isTransientProp(prop);
13
- }
14
- return !isTransientProp(prop);
15
- }
16
- });
17
- };
1
+ import { styled as a } from "@mui/material";
2
+ import { useTheme as h } from "@mui/material";
3
+ import { collectFontFamilies as c, create as f, createDefaultThemeOptions as T, createTheme as x, isTheme as F, isUxTheme as i, lazyCreateDefaultTheme as n, loadFonts as P } from "./theme.js";
4
+ import { ColorSchemeContext as C, default as w, useColorScheme as p } from "./theme-provider.js";
5
+ import { deepmerge as S } from "@mui/utils";
6
+ const o = (r) => r.startsWith("$"), l = (r, e) => a(r, {
7
+ ...e,
8
+ shouldForwardProp: (t) => e != null && e.shouldForwardProp ? e.shouldForwardProp(t) && !o(t) : !o(t)
9
+ });
10
+ export {
11
+ C as ColorSchemeContext,
12
+ w as ThemeProvider,
13
+ c as collectFontFamilies,
14
+ f as create,
15
+ T as createDefaultThemeOptions,
16
+ x as createTheme,
17
+ S as deepmerge,
18
+ F as isTheme,
19
+ i as isUxTheme,
20
+ n as lazyCreateDefaultTheme,
21
+ P as loadFonts,
22
+ l as styled,
23
+ p as useColorScheme,
24
+ h as useTheme
25
+ };
@@ -1,6 +1,4 @@
1
- import PropTypes from 'prop-types';
2
- import { PaletteMode } from '@mui/material';
3
- import { Theme, ThemeOptions } from '@mui/material/styles';
1
+ import { PaletteMode, Theme, ThemeOptions } from '@mui/material';
4
2
  /** 颜色模式上下文类型 */
5
3
  export interface ColorSchemeContextType {
6
4
  mode: PaletteMode;
@@ -8,7 +6,7 @@ export interface ColorSchemeContextType {
8
6
  changeMode: (mode: PaletteMode) => void;
9
7
  prefer?: Prefer;
10
8
  }
11
- export declare const ColorSchemeContext: import("react").Context<ColorSchemeContextType>;
9
+ export declare const ColorSchemeContext: import('react').Context<ColorSchemeContextType>;
12
10
  export declare function useColorScheme(): ColorSchemeContextType;
13
11
  export type UxTheme = ThemeOptions | ((parentTheme: Theme, context?: {
14
12
  mode: PaletteMode;
@@ -33,14 +31,5 @@ export interface ThemeProviderProps extends ColorSchemeProviderProps {
33
31
  */
34
32
  enableColorScheme?: boolean;
35
33
  }
36
- declare function ThemeProvider({ children, prefer, enableColorScheme, ...props }: ThemeProviderProps): import("react/jsx-runtime").JSX.Element;
37
- declare namespace ThemeProvider {
38
- var propTypes: {
39
- children: PropTypes.Requireable<any>;
40
- theme: PropTypes.Requireable<any>;
41
- injectFirst: PropTypes.Requireable<boolean>;
42
- darkSchemeClass: PropTypes.Requireable<string>;
43
- enableColorScheme: PropTypes.Requireable<boolean>;
44
- };
45
- }
46
- export default ThemeProvider;
34
+ export default function ThemeProvider({ children, prefer, enableColorScheme, ...props }: ThemeProviderProps): import("react/jsx-runtime").JSX.Element;
35
+ export {};
@@ -1,250 +1,129 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { createContext, useCallback, useContext, useEffect, useMemo, useState, useRef } from 'react';
3
- import PropTypes from 'prop-types';
4
- import { GlobalStyles } from '@mui/material';
5
- import { ThemeProvider as MuiThemeProvider, useTheme, StyledEngineProvider } from '@mui/material/styles';
6
- import CssBaseline from '@mui/material/CssBaseline';
7
- import set from 'lodash/set';
8
- import { BLOCKLET_THEME_PREFER_KEY, getDefaultThemePrefer, isValidThemeMode } from '@blocklet/theme';
9
- import useLocationState from '../hooks/use-location-state';
10
- import { createTheme, isTheme, isUxTheme, lazyCreateDefaultTheme } from './theme';
11
- const defaultTheme = createTheme();
12
-
13
- /** 颜色模式上下文类型 */
14
-
15
- export const ColorSchemeContext = /*#__PURE__*/createContext({});
16
- export function useColorScheme() {
17
- return useContext(ColorSchemeContext);
1
+ import { jsx as i, jsxs as R } from "react/jsx-runtime";
2
+ import { createContext as _, use as B, useState as L, useRef as j, useMemo as h, useCallback as C, useEffect as k } from "react";
3
+ import { useTheme as $, StyledEngineProvider as D, ThemeProvider as K, CssBaseline as U, GlobalStyles as V } from "@mui/material";
4
+ import w from "lodash/set";
5
+ import { BLOCKLET_THEME_PREFER_KEY as d, isValidThemeMode as W, getDefaultThemePrefer as x } from "@blocklet/theme";
6
+ import { useLocationState as q } from "../hooks/use-location-state.js";
7
+ import { createTheme as g, lazyCreateDefaultTheme as z, isUxTheme as A, isTheme as F } from "./theme.js";
8
+ const G = g(), v = _({});
9
+ function H() {
10
+ return B(v);
18
11
  }
19
-
20
- /** 根据偏好获取颜色模式 */
21
- const resolveMode = prefer => {
22
- // 允许组件的 prefer 属性覆盖 blocklet theme 中配置的 prefer
23
- if (prefer) {
24
- if (prefer === 'system') {
25
- return getDefaultThemePrefer({
26
- theme: {
27
- prefer: 'system'
28
- }
29
- });
30
- }
31
- return prefer;
32
- }
33
- return getDefaultThemePrefer();
34
- };
35
-
36
- /** 深色模式全局样式 */
37
- function DarkSchemeStyles({
38
- className
39
- }) {
40
- const theme = useTheme();
41
- if (theme.palette.mode === 'dark') {
42
- const trackColor = 'transparent';
43
- const thumbColor = theme.palette.grey[300];
44
-
45
- // 处理作用域选择器
46
- const prefix = (className || '').trim().split(/\s+/).filter(Boolean).map(c => c.startsWith('.') ? c : `.${c}`).join(' ');
47
- const webkitScrollbar = prefix ? `${prefix}::-webkit-scrollbar, ${prefix} *::-webkit-scrollbar` : '*::-webkit-scrollbar';
48
- const webkitTrack = prefix ? `${prefix}::-webkit-scrollbar-track, ${prefix} *::-webkit-scrollbar-track` : '*::-webkit-scrollbar-track';
49
- const webkitThumb = prefix ? `${prefix}::-webkit-scrollbar-thumb, ${prefix} *::-webkit-scrollbar-thumb` : '*::-webkit-scrollbar-thumb';
50
- const firefoxSelector = prefix ? `${prefix}, ${prefix} *` : '*';
51
- return /*#__PURE__*/_jsx(GlobalStyles, {
52
- styles: {
53
- // Chrome, Safari, Edge
54
- '@supports selector(::-webkit-scrollbar)': {
55
- [webkitScrollbar]: {
56
- width: '12px',
57
- height: '12px'
58
- },
59
- [webkitTrack]: {
60
- background: trackColor
12
+ const y = (c) => c ? c === "system" ? x({ theme: { prefer: "system" } }) : c : x();
13
+ function I({ className: c }) {
14
+ const e = $();
15
+ if (e.palette.mode === "dark") {
16
+ const s = "transparent", l = e.palette.grey[300], r = (c || "").trim().split(/\s+/).filter(Boolean).map((n) => n.startsWith(".") ? n : `.${n}`).join(" "), o = r ? `${r}::-webkit-scrollbar, ${r} *::-webkit-scrollbar` : "*::-webkit-scrollbar", a = r ? `${r}::-webkit-scrollbar-track, ${r} *::-webkit-scrollbar-track` : "*::-webkit-scrollbar-track", u = r ? `${r}::-webkit-scrollbar-thumb, ${r} *::-webkit-scrollbar-thumb` : "*::-webkit-scrollbar-thumb", b = r ? `${r}, ${r} *` : "*";
17
+ return /* @__PURE__ */ i(
18
+ V,
19
+ {
20
+ styles: {
21
+ // Chrome, Safari, Edge
22
+ "@supports selector(::-webkit-scrollbar)": {
23
+ [o]: {
24
+ width: "12px",
25
+ height: "12px"
26
+ },
27
+ [a]: {
28
+ background: s
29
+ },
30
+ [u]: {
31
+ background: l,
32
+ borderRadius: "6px",
33
+ border: "2px solid",
34
+ borderColor: s,
35
+ backgroundClip: "padding-box",
36
+ "&:hover": {
37
+ background: e.palette.grey[400],
38
+ backgroundClip: "padding-box"
39
+ }
40
+ }
61
41
  },
62
- [webkitThumb]: {
63
- background: thumbColor,
64
- borderRadius: '6px',
65
- border: '2px solid',
66
- borderColor: trackColor,
67
- backgroundClip: 'padding-box',
68
- '&:hover': {
69
- background: theme.palette.grey[400],
70
- backgroundClip: 'padding-box'
42
+ // Firefox
43
+ "@supports not selector(::-webkit-scrollbar)": {
44
+ [b]: {
45
+ scrollbarWidth: "auto",
46
+ scrollbarColor: `${l} ${s}`
71
47
  }
72
48
  }
73
- },
74
- // Firefox
75
- '@supports not selector(::-webkit-scrollbar)': {
76
- [firefoxSelector]: {
77
- scrollbarWidth: 'auto',
78
- scrollbarColor: `${thumbColor} ${trackColor}`
79
- }
80
49
  }
81
50
  }
82
- });
51
+ );
83
52
  }
84
53
  return null;
85
54
  }
86
- /** 快速配置 MUI 主题 */
87
- function BaseThemeProvider({
88
- children,
89
- theme = defaultTheme,
90
- injectFirst = true,
91
- darkSchemeClass = ''
55
+ function E({
56
+ children: c,
57
+ theme: e = G,
58
+ injectFirst: s = !0,
59
+ darkSchemeClass: l = ""
92
60
  }) {
93
- const _theme = useMemo(() => {
94
- if (typeof theme === 'function') {
95
- return theme;
96
- }
97
- if (isTheme(theme)) return theme;
98
-
99
- // 是 ThemeOptions 则创建一个 theme
100
- return createTheme(theme);
101
- }, [theme]);
61
+ const r = h(() => typeof e == "function" || F(e) ? e : g(e), [e]);
102
62
  return (
103
- /*#__PURE__*/
104
63
  // injectFirst 会影响 makeStyles 自定义样式和 mui styles 覆盖问题
105
- _jsx(StyledEngineProvider, {
106
- injectFirst: injectFirst,
107
- children: /*#__PURE__*/_jsxs(MuiThemeProvider, {
108
- theme: _theme,
109
- children: [/*#__PURE__*/_jsx(CssBaseline, {}), /*#__PURE__*/_jsx(DarkSchemeStyles, {
110
- className: darkSchemeClass
111
- }), children]
112
- })
113
- })
64
+ /* @__PURE__ */ i(D, { injectFirst: s, children: /* @__PURE__ */ R(K, { theme: r, children: [
65
+ /* @__PURE__ */ i(U, {}),
66
+ /* @__PURE__ */ i(I, { className: l }),
67
+ c
68
+ ] }) })
114
69
  );
115
70
  }
116
- /** 配置带颜色模式切换功能的 MUI 主题 */
117
- function ColorSchemeProvider({
118
- children,
119
- theme: themeInput,
120
- prefer,
121
- disableBlockletTheme = false,
122
- ...rest
71
+ function N({
72
+ children: c,
73
+ theme: e,
74
+ prefer: s,
75
+ disableBlockletTheme: l = !1,
76
+ ...r
123
77
  }) {
124
- const [mode, setMode] = useState(() => resolveMode(prefer));
125
- const parentTheme = useTheme();
126
- const location = useLocationState();
127
- const metaThemeColorRef = useRef(null);
128
- const _themeInput = useMemo(() => {
129
- let result = {};
130
- const createBaseTheme = lazyCreateDefaultTheme(mode);
131
- if (themeInput) {
132
- if (typeof themeInput === 'function') {
133
- const baseTheme = createBaseTheme();
134
- if (isUxTheme(parentTheme)) {
135
- result = {
136
- ...themeInput(parentTheme, {
137
- mode
138
- })
139
- };
140
- } else {
141
- result = {
142
- ...themeInput(baseTheme, {
143
- mode
144
- })
145
- };
146
- }
147
- } else {
148
- result = {
149
- ...themeInput
150
- };
151
- }
152
- }
153
- set(result, 'palette.mode', mode);
154
- set(result, 'mode', mode);
155
- return result;
156
- }, [mode, themeInput, parentTheme]);
157
- const theme = useMemo(() => {
158
- return createTheme({
159
- ..._themeInput,
160
- disableBlockletTheme
161
- });
162
- }, [_themeInput, disableBlockletTheme]);
163
-
164
- // 切换明/暗模式
165
- const toggleMode = useCallback(() => {
166
- const newMode = mode === 'light' ? 'dark' : 'light';
167
- setMode(newMode);
168
- sessionStorage.removeItem(BLOCKLET_THEME_PREFER_KEY);
169
- localStorage.setItem(BLOCKLET_THEME_PREFER_KEY, newMode);
170
- }, [mode, setMode]);
171
- const changeMode = useCallback(newMode => {
172
- if (mode !== newMode) {
173
- setMode(newMode);
174
- sessionStorage.removeItem(BLOCKLET_THEME_PREFER_KEY);
175
- localStorage.setItem(BLOCKLET_THEME_PREFER_KEY, newMode);
176
- }
177
- }, [mode, setMode]);
178
- const colorSchemeValue = useMemo(() => ({
179
- mode,
180
- toggleMode,
181
- changeMode,
182
- prefer
183
- }), [mode, prefer, toggleMode, changeMode]);
184
-
185
- // 相应 prefer 或 urlTheme 的改变
186
- useEffect(() => {
187
- setMode(resolveMode(prefer));
188
- }, [prefer, setMode, location.search]);
189
-
190
- // 会话缓存 urlTheme 便于 App Launching 阶段临时统一 theme mode
191
- useEffect(() => {
192
- const urlTheme = new URLSearchParams(location.search).get('theme');
193
- if (isValidThemeMode(urlTheme)) {
194
- sessionStorage.setItem(BLOCKLET_THEME_PREFER_KEY, urlTheme);
195
- }
196
- }, [location.search]);
197
-
198
- // 动态设置 <meta name="theme-color" content="..."> 标签,用于控制移动端浏览器状态栏颜色
199
- useEffect(() => {
200
- if (!metaThemeColorRef.current) {
201
- metaThemeColorRef.current = document.querySelector('meta[name="theme-color"]');
202
- }
203
- const bgcolor = theme.palette.background.default;
204
- if (metaThemeColorRef.current) {
205
- metaThemeColorRef.current.setAttribute('content', bgcolor);
206
- } else {
207
- const meta = document.createElement('meta');
208
- meta.name = 'theme-color';
209
- meta.content = bgcolor;
210
- document.head.appendChild(meta);
211
- metaThemeColorRef.current = meta;
78
+ const [o, a] = L(() => y(s)), u = $(), b = q(), n = j(null), p = h(() => {
79
+ let t = {};
80
+ const m = z(o);
81
+ if (e)
82
+ if (typeof e == "function") {
83
+ const M = m();
84
+ A(u) ? t = { ...e(u, { mode: o }) } : t = { ...e(M, { mode: o }) };
85
+ } else
86
+ t = { ...e };
87
+ return w(t, "palette.mode", o), w(t, "mode", o), t;
88
+ }, [o, e, u]), f = h(() => g({ ...p, disableBlockletTheme: l }), [p, l]), T = C(() => {
89
+ const t = o === "light" ? "dark" : "light";
90
+ a(t), sessionStorage.removeItem(d), localStorage.setItem(d, t);
91
+ }, [o, a]), S = C(
92
+ (t) => {
93
+ o !== t && (a(t), sessionStorage.removeItem(d), localStorage.setItem(d, t));
94
+ },
95
+ [o, a]
96
+ ), P = h(
97
+ () => ({
98
+ mode: o,
99
+ toggleMode: T,
100
+ changeMode: S,
101
+ prefer: s
102
+ }),
103
+ [o, s, T, S]
104
+ );
105
+ return k(() => {
106
+ a(y(s));
107
+ }, [s, a, b.search]), k(() => {
108
+ const t = new URLSearchParams(b.search).get("theme");
109
+ W(t) && sessionStorage.setItem(d, t);
110
+ }, [b.search]), k(() => {
111
+ n.current || (n.current = document.querySelector('meta[name="theme-color"]'));
112
+ const t = f.palette.background.default;
113
+ if (n.current)
114
+ n.current.setAttribute("content", t);
115
+ else {
116
+ const m = document.createElement("meta");
117
+ m.name = "theme-color", m.content = t, document.head.appendChild(m), n.current = m;
212
118
  }
213
- }, [theme.palette.background.default]);
214
- return /*#__PURE__*/_jsx(ColorSchemeContext.Provider, {
215
- value: colorSchemeValue,
216
- children: /*#__PURE__*/_jsx(BaseThemeProvider, {
217
- theme: theme,
218
- ...rest,
219
- children: children
220
- })
221
- });
119
+ }, [f.palette.background.default]), /* @__PURE__ */ i(v, { value: P, children: /* @__PURE__ */ i(E, { theme: f, ...r, children: c }) });
222
120
  }
223
- export default function ThemeProvider({
224
- children,
225
- prefer,
226
- enableColorScheme = false,
227
- ...props
228
- }) {
229
- const {
230
- toggleMode
231
- } = useColorScheme();
232
- if (enableColorScheme || prefer || !toggleMode) {
233
- return /*#__PURE__*/_jsx(ColorSchemeProvider, {
234
- prefer: prefer,
235
- ...props,
236
- children: children
237
- });
238
- }
239
- return /*#__PURE__*/_jsx(BaseThemeProvider, {
240
- ...props,
241
- children: children
242
- });
121
+ function te({ children: c, prefer: e, enableColorScheme: s = !1, ...l }) {
122
+ const { toggleMode: r } = H();
123
+ return s || e || !r ? /* @__PURE__ */ i(N, { prefer: e, ...l, children: c }) : /* @__PURE__ */ i(E, { ...l, children: c });
243
124
  }
244
- ThemeProvider.propTypes = {
245
- children: PropTypes.any,
246
- theme: PropTypes.any,
247
- injectFirst: PropTypes.bool,
248
- darkSchemeClass: PropTypes.string,
249
- enableColorScheme: PropTypes.bool
250
- };
125
+ export {
126
+ v as ColorSchemeContext,
127
+ te as default,
128
+ H as useColorScheme
129
+ };
@@ -1,12 +1,5 @@
1
- import type { PaletteMode, Theme } from '@mui/material';
2
- import { type ThemeOptions } from '@mui/material/styles';
1
+ import { ThemeOptions, PaletteMode, Theme } from '@mui/material';
3
2
  import { deepmerge } from '@mui/utils';
4
- import '@fontsource/roboto/latin-400.css';
5
- import '@fontsource/roboto/latin-500.css';
6
- import '@fontsource/roboto/latin-700.css';
7
- import '@fontsource/roboto/latin-ext-400.css';
8
- import '@fontsource/roboto/latin-ext-500.css';
9
- import '@fontsource/roboto/latin-ext-700.css';
10
3
  /** 是否是 MUI Theme 对象 */
11
4
  export declare function isTheme(obj: any): obj is Theme;
12
5
  /** 是否是 UX Theme 对象 */