@arcblock/ux 2.13.70 → 3.0.1

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 +198 -306
  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 +39 -38
  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,239 +1,187 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useCallback, useMemo, useState } from 'react';
3
- import { Box, TextField, Typography } from '@mui/material';
4
- import { parsePhoneNumber } from 'awesome-phonenumber';
5
- import { defaultCountries, usePhoneInput, parseCountry } from 'react-international-phone';
6
- import CountrySelect from './country-select';
7
- import { mergeSx } from '../Util/style';
8
- export function validatePhoneNumber(phone, iso2, dialCode = '') {
9
- // 如果没有输入电话号码,返回false
10
- if (!phone) return false;
11
-
12
- // 如果去除所有格式化字符后,只剩下区号,则认为只有区号
13
- const cleanedPhone = phone.replace(/[\s\-()]+/g, '');
14
- const phoneDialCode = dialCode || getDialCodeByCountry(iso2);
15
- // 这表示电话号码只有区号部分
16
- if (getDialCodeWithoutPlus(phoneDialCode) === getDialCodeWithoutPlus(cleanedPhone)) {
17
- return true; // 如果只有区号,则视为有效
18
- }
19
-
20
- // 否则使用validator进行完整校验
21
- const pn = parsePhoneNumber(phone, {
22
- regionCode: iso2
23
- });
24
- const cleanedParsedPhone = pn.number?.input.replace(/[\s\-()]+/g, '');
25
- return pn.valid && (pn.type === 'mobile' || pn.type === 'fixed-line-or-mobile') && cleanedParsedPhone === pn.number?.e164;
1
+ import { jsxs as $, jsx as m } from "react/jsx-runtime";
2
+ import { useMemo as P, useState as F, useCallback as k } from "react";
3
+ import { Box as I, Typography as A, TextField as L } from "@mui/material";
4
+ import { parsePhoneNumber as w } from "awesome-phonenumber";
5
+ import { defaultCountries as f, parseCountry as p, usePhoneInput as R } from "react-international-phone";
6
+ import V from "./country-select.js";
7
+ import { mergeSx as q } from "../Util/style.js";
8
+ function W(e, t, n = "") {
9
+ var c, h;
10
+ if (!e) return !1;
11
+ const r = e.replace(/[\s\-()]+/g, ""), u = n || v(t);
12
+ if (g(u) === g(r))
13
+ return !0;
14
+ const a = w(e, { regionCode: t }), d = (c = a.number) == null ? void 0 : c.input.replace(/[\s\-()]+/g, "");
15
+ return a.valid && (a.type === "mobile" || a.type === "fixed-line-or-mobile") && d === ((h = a.number) == null ? void 0 : h.e164);
26
16
  }
27
-
28
- // 从带区号的电话号码中提取纯号码部分
29
- function extractPhoneWithoutCode(phone, dialCode) {
30
- if (!phone) return '';
31
- // 先去除区号
32
- const phoneWithoutCode = phone.replace(new RegExp(`^\\+${dialCode}`), '');
33
- // 去除非数字字符,但保留括号
34
- return phoneWithoutCode;
17
+ function x(e, t) {
18
+ return e ? e.replace(new RegExp(`^\\+${t}`), "") : "";
35
19
  }
36
-
37
- // 添加区号到纯号码
38
- function addCountryCodeToPhone(phone, dialCode) {
39
- if (!phone) return `+${dialCode}`;
40
- return phone.startsWith('+') ? phone : `+${dialCode}${phone}`;
20
+ function b(e, t) {
21
+ return e ? e.startsWith("+") ? e : `+${t}${e}` : `+${t}`;
41
22
  }
42
-
43
- // 获取不带+号的区号
44
- function getDialCodeWithoutPlus(dialCode) {
45
- return dialCode.replace(/^\+/, '');
23
+ function g(e) {
24
+ return e.replace(/^\+/, "");
46
25
  }
47
-
48
- // 根据ISO2国家代码获取国家信息
49
- function getCountryInfoByIso2(iso2, property) {
50
- // 查找对应的国家数据
51
- const countryItem = defaultCountries.find(country => parseCountry(country).iso2 === iso2);
52
- if (!countryItem) {
53
- return undefined;
54
- }
55
-
56
- // 解析国家信息并返回请求的属性
57
- return parseCountry(countryItem)[property];
26
+ function B(e, t) {
27
+ const n = f.find((r) => p(r).iso2 === e);
28
+ if (n)
29
+ return p(n)[t];
58
30
  }
59
-
60
- // 根据ISO2国家代码获取区号
61
- export function getDialCodeByCountry(iso2) {
62
- return getCountryInfoByIso2(iso2, 'dialCode') || '';
31
+ function v(e) {
32
+ return B(e, "dialCode") || "";
63
33
  }
64
-
65
- // 根据ISO2国家代码获取国家名称
66
- export function getCountryNameByCountry(iso2) {
67
- return getCountryInfoByIso2(iso2, 'name') || '';
34
+ function U(e) {
35
+ return B(e, "name") || "";
68
36
  }
69
-
70
- // 根据手机号识别国家,返回国家的 iso2 码
71
- // 如果手机号带有区号,通过 parsePhoneNumber 识别
72
- // 如果手机号不带区号,通过碰撞识别
73
- export function detectCountryFromPhone(phoneNumber) {
37
+ function X(e) {
74
38
  try {
75
- if (!phoneNumber) return undefined;
76
-
77
- // 如果已经带了+号,尝试从前缀匹配
78
- if (phoneNumber.startsWith('+')) {
79
- const parsedPhone = parsePhoneNumber(phoneNumber);
80
- if (parsedPhone.valid) {
81
- return parsedPhone.regionCode.toLowerCase();
39
+ if (!e) return;
40
+ if (e.startsWith("+")) {
41
+ const t = w(e);
42
+ if (t.valid)
43
+ return t.regionCode.toLowerCase();
44
+ for (const n of f) {
45
+ const r = p(n);
46
+ if (e.startsWith(`+${r.dialCode}`) && W(e, r.dialCode, r.iso2))
47
+ return r.iso2;
82
48
  }
83
- for (const country of defaultCountries) {
84
- const parsed = parseCountry(country);
85
- if (phoneNumber.startsWith(`+${parsed.dialCode}`)) {
86
- const phoneWithCode = phoneNumber;
87
- // 验证该号码是否有效
88
- if (validatePhoneNumber(phoneWithCode, parsed.dialCode, parsed.iso2)) {
89
- return parsed.iso2;
90
- }
91
- }
49
+ } else
50
+ for (const t of f) {
51
+ const n = p(t), r = `+${n.dialCode}${e}`;
52
+ if (W(r, n.dialCode, n.iso2))
53
+ return n.iso2;
92
54
  }
93
- } else {
94
- for (const country of defaultCountries) {
95
- const parsed = parseCountry(country);
96
- const phoneWithCode = `+${parsed.dialCode}${phoneNumber}`;
97
- if (validatePhoneNumber(phoneWithCode, parsed.dialCode, parsed.iso2)) {
98
- return parsed.iso2;
99
- }
100
- }
101
- }
102
- return undefined;
55
+ return;
103
56
  } catch {
104
- return undefined;
57
+ return;
105
58
  }
106
59
  }
107
- export default function PhoneInput({
108
- value = {
109
- country: 'us',
110
- phone: ''
111
- },
112
- onChange,
113
- placeholder = 'Enter phone number',
114
- countryDisplayOptions = {},
115
- preview = false,
116
- allowDial = true,
117
- ...props
60
+ function Y({
61
+ value: e = { country: "us", phone: "" },
62
+ onChange: t,
63
+ placeholder: n = "Enter phone number",
64
+ countryDisplayOptions: r = {},
65
+ preview: u = !1,
66
+ allowDial: a = !0,
67
+ ...d
118
68
  }) {
119
- // 创建国家代码映射表,避免重复解析
120
- const countryMap = useMemo(() => {
121
- const map = new Map();
122
- defaultCountries.forEach(country => {
123
- const parsed = parseCountry(country);
124
- map.set(parsed.iso2, parsed);
125
- });
126
- return map;
127
- }, []);
128
- const [previewValue, setPreviewValue] = useState(value);
129
- const handleValueChange = useCallback(data => {
130
- if (!preview && onChange) {
131
- const newValue = {
132
- ...value,
133
- ...data
134
- };
135
- const countryData = countryMap.get(newValue.country);
136
- if (countryData) {
137
- newValue.phone = addCountryCodeToPhone(newValue.phone, getDialCodeWithoutPlus(countryData.dialCode));
69
+ const c = P(() => {
70
+ const o = /* @__PURE__ */ new Map();
71
+ return f.forEach((i) => {
72
+ const s = p(i);
73
+ o.set(s.iso2, s);
74
+ }), o;
75
+ }, []), [h, M] = F(e), E = k(
76
+ (o) => {
77
+ if (!u && t) {
78
+ const i = {
79
+ ...e,
80
+ ...o
81
+ }, s = c.get(i.country);
82
+ s && (i.phone = b(i.phone, g(s.dialCode))), t(i);
138
83
  }
139
- onChange(newValue);
140
- }
141
- }, [onChange, preview, value, countryMap]);
142
-
143
- // 获取当前国家的区号(不带+号)
144
- const currentDialCode = useMemo(() => {
145
- const countryData = countryMap.get(value.country);
146
- return countryData ? getDialCodeWithoutPlus(countryData.dialCode) : '';
147
- }, [value.country, countryMap]);
148
-
149
- // 使用 react-international-phone 的 hook
150
- const {
151
- phone,
152
- country,
153
- handlePhoneValueChange,
154
- setCountry
155
- } = usePhoneInput({
156
- defaultCountry: value.country,
157
- value: extractPhoneWithoutCode(value.phone, currentDialCode),
158
- countries: defaultCountries,
159
- disableDialCodeAndPrefix: true,
160
- onChange: data => {
161
- const newData = {
162
- ...data,
163
- phone: previewValue.country !== data.country && !data.phone ? extractPhoneWithoutCode(value.phone, currentDialCode) : data.phone
84
+ },
85
+ [t, u, e, c]
86
+ ), C = P(() => {
87
+ const o = c.get(e.country);
88
+ return o ? g(o.dialCode) : "";
89
+ }, [e.country, c]), { phone: l, country: y, handlePhoneValueChange: S, setCountry: T } = R({
90
+ defaultCountry: e.country,
91
+ value: x(e.phone, C),
92
+ countries: f,
93
+ disableDialCodeAndPrefix: !0,
94
+ onChange: (o) => {
95
+ const i = {
96
+ ...o,
97
+ phone: h.country !== o.country && !o.phone ? x(e.phone, C) : o.phone
164
98
  };
165
- setPreviewValue(newData);
166
- handleValueChange(newData);
99
+ M(i), E(i);
167
100
  }
168
- });
169
-
170
- // 从完整电话号码中提取不带区号的部分用于显示,并去除格式化字符
171
- const displayPhone = useMemo(() => phone || extractPhoneWithoutCode(value.phone, currentDialCode), [phone, value.phone, currentDialCode]);
172
-
173
- // 处理国家变更
174
- const onCountryChange = newCountry => {
175
- if (preview) return;
176
- setCountry(newCountry);
101
+ }), D = P(
102
+ () => l || x(e.phone, C),
103
+ [l, e.phone, C]
104
+ ), j = (o) => {
105
+ u || T(o);
177
106
  };
178
-
179
- // 预览模式
180
- if (preview) {
181
- const phoneWithCode = addCountryCodeToPhone(phone, getDialCodeByCountry(country));
182
- const isValid = phone && validatePhoneNumber(phoneWithCode, country);
183
- const canDial = allowDial && isValid;
184
- return /*#__PURE__*/_jsxs(Box, {
185
- display: "flex",
186
- alignItems: "center",
187
- component: canDial ? 'a' : 'div',
188
- href: canDial ? `tel:${phone}` : undefined,
189
- ...(canDial ? {
190
- 'aria-label': `Call ${phone}`,
191
- title: `Call ${phone}`,
192
- rel: 'nofollow',
193
- itemProp: 'telephone'
194
- } : {}),
195
- sx: {
196
- textDecoration: 'none',
197
- color: 'inherit',
198
- cursor: canDial ? 'pointer' : 'default',
199
- '&:hover': {
200
- opacity: canDial ? 0.8 : 1
201
- }
202
- },
203
- children: [/*#__PURE__*/_jsx(CountrySelect, {
204
- value: country,
205
- preview: preview
206
- }), /*#__PURE__*/_jsx(Typography, {
107
+ if (u) {
108
+ const o = b(l, v(y)), i = l && W(o, y), s = a && i;
109
+ return /* @__PURE__ */ $(
110
+ I,
111
+ {
112
+ component: s ? "a" : "div",
113
+ href: s ? `tel:${l}` : void 0,
114
+ ...s ? {
115
+ "aria-label": `Call ${l}`,
116
+ title: `Call ${l}`,
117
+ rel: "nofollow",
118
+ itemProp: "telephone"
119
+ } : {},
207
120
  sx: {
208
- ml: 0.5
121
+ display: "flex",
122
+ alignItems: "center",
123
+ textDecoration: "none",
124
+ color: "inherit",
125
+ cursor: s ? "pointer" : "default",
126
+ "&:hover": {
127
+ opacity: s ? 0.8 : 1
128
+ }
209
129
  },
210
- children: displayPhone
211
- })]
212
- });
130
+ children: [
131
+ /* @__PURE__ */ m(V, { value: y, preview: u }),
132
+ /* @__PURE__ */ m(A, { sx: { ml: 0.5 }, children: D })
133
+ ]
134
+ }
135
+ );
213
136
  }
214
- // 编辑模式
215
- return /*#__PURE__*/_jsxs(Box, {
216
- display: "flex",
217
- alignItems: "flex-start",
218
- gap: 0.5,
219
- children: [/*#__PURE__*/_jsx(CountrySelect, {
220
- value: country,
221
- onChange: onCountryChange,
222
- preview: false,
223
- selectCountryProps: countryDisplayOptions
224
- }), /*#__PURE__*/_jsx(TextField, {
225
- ...props,
226
- value: displayPhone,
227
- onChange: handlePhoneValueChange,
228
- placeholder: placeholder,
229
- className: "phone-input",
230
- sx: mergeSx({
231
- '& .MuiInputBase-input': {
232
- padding: 1
233
- }
234
- }, props.sx // 这里传入的可能是一个数组或一个对象
235
- ),
236
- InputProps: props.InputProps ?? {}
237
- })]
238
- });
239
- }
137
+ return /* @__PURE__ */ $(
138
+ I,
139
+ {
140
+ sx: {
141
+ display: "flex",
142
+ alignItems: "flex-start",
143
+ gap: 0.5
144
+ },
145
+ children: [
146
+ /* @__PURE__ */ m(
147
+ V,
148
+ {
149
+ value: y,
150
+ onChange: j,
151
+ preview: !1,
152
+ selectCountryProps: r
153
+ }
154
+ ),
155
+ /* @__PURE__ */ m(
156
+ L,
157
+ {
158
+ ...d,
159
+ value: D,
160
+ onChange: S,
161
+ placeholder: n,
162
+ className: "phone-input",
163
+ sx: q(
164
+ {
165
+ "& .MuiInputBase-input": {
166
+ padding: 1
167
+ }
168
+ },
169
+ d.sx
170
+ // 这里传入的可能是一个数组或一个对象
171
+ ),
172
+ slotProps: {
173
+ input: d.InputProps ?? {}
174
+ }
175
+ }
176
+ )
177
+ ]
178
+ }
179
+ );
180
+ }
181
+ export {
182
+ Y as default,
183
+ X as detectCountryFromPhone,
184
+ U as getCountryNameByCountry,
185
+ v as getDialCodeByCountry,
186
+ W as validatePhoneNumber
187
+ };
@@ -1,4 +1,4 @@
1
- import type { LinkProps, TypographyProps } from '@mui/material';
1
+ import { LinkProps, TypographyProps } from '@mui/material';
2
2
  export interface PoweredByArcBlockProps extends TypographyProps {
3
3
  linkProps?: LinkProps;
4
4
  showExtra?: boolean;
@@ -1,22 +1,16 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Link, Typography } from '@mui/material';
3
- export default function PoweredByArcBlock({
4
- linkProps,
5
- showExtra,
6
- ...props
7
- }) {
8
- return /*#__PURE__*/_jsxs(Typography, {
9
- ...props,
10
- children: ["Powered by", ' ', /*#__PURE__*/_jsx(Link, {
11
- href: "https://www.arcblock.io",
12
- target: "_blank",
13
- ...linkProps,
14
- children: "ArcBlock"
15
- }), "'s", ' ', /*#__PURE__*/_jsx(Link, {
16
- href: "https://www.blocklet.io",
17
- target: "_blank",
18
- ...linkProps,
19
- children: "Blocklet Technology"
20
- }), showExtra ? ', the decentralized web engine.' : null]
21
- });
22
- }
1
+ import { jsxs as c, jsx as r } from "react/jsx-runtime";
2
+ import { Typography as n, Link as t } from "@mui/material";
3
+ function a({ linkProps: e, showExtra: o, ...l }) {
4
+ return /* @__PURE__ */ c(n, { ...l, children: [
5
+ "Powered by",
6
+ " ",
7
+ /* @__PURE__ */ r(t, { href: "https://www.arcblock.io", target: "_blank", ...e, children: "ArcBlock" }),
8
+ "'s",
9
+ " ",
10
+ /* @__PURE__ */ r(t, { href: "https://www.blocklet.io", target: "_blank", ...e, children: "Blocklet Technology" }),
11
+ o ? ", the decentralized web engine." : null
12
+ ] });
13
+ }
14
+ export {
15
+ a as default
16
+ };
@@ -1,57 +1,19 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import Card from '@mui/material/Card';
3
- import Button from '@mui/material/Button';
4
- import CardContent from '@mui/material/CardContent';
5
- import Typography from '@mui/material/Typography';
6
- import { styled } from '../Theme';
7
- function PricingPlan({
8
- plan
9
- }) {
10
- return /*#__PURE__*/_jsxs(PlanCard, {
11
- $shadow: true,
12
- children: [/*#__PURE__*/_jsx("div", {
13
- className: "card-header",
14
- children: /*#__PURE__*/_jsx("div", {
15
- className: "title",
16
- children: plan.name
17
- })
18
- }), /*#__PURE__*/_jsxs(CardContent, {
19
- className: "card-content",
20
- children: [/*#__PURE__*/_jsxs("div", {
21
- className: "plan-content",
22
- children: [/*#__PURE__*/_jsx("div", {
23
- className: "plan-pricing",
24
- children: /*#__PURE__*/_jsx(Typography, {
25
- component: "h2",
26
- variant: "h5",
27
- className: "price-number",
28
- children: plan.price
29
- })
30
- }), /*#__PURE__*/_jsx("div", {
31
- className: "plan-services",
32
- children: plan.featureList.map(line => /*#__PURE__*/_jsx(Typography, {
33
- component: "p",
34
- variant: "body1",
35
- align: "center",
36
- children: line
37
- }, line))
38
- })]
39
- }), /*#__PURE__*/_jsx("div", {
40
- className: "plan-actions",
41
- children: plan.showButton && /*#__PURE__*/_jsx(Button, {
42
- fullWidth: true,
43
- variant: "outlined",
44
- color: "primary",
45
- component: "a",
46
- href: plan.buttonLink,
47
- children: plan.buttonText
48
- })
49
- })]
50
- })]
51
- });
1
+ import { jsxs as t, jsx as n } from "react/jsx-runtime";
2
+ import { Card as a, CardContent as o, Typography as r, Button as c } from "@mui/material";
3
+ import { styled as l } from "../Theme/index.js";
4
+ function f({ plan: e }) {
5
+ return /* @__PURE__ */ t(s, { $shadow: !0, children: [
6
+ /* @__PURE__ */ n("div", { className: "card-header", children: /* @__PURE__ */ n("div", { className: "title", children: e.name }) }),
7
+ /* @__PURE__ */ t(o, { className: "card-content", children: [
8
+ /* @__PURE__ */ t("div", { className: "plan-content", children: [
9
+ /* @__PURE__ */ n("div", { className: "plan-pricing", children: /* @__PURE__ */ n(r, { component: "h2", variant: "h5", className: "price-number", children: e.price }) }),
10
+ /* @__PURE__ */ n("div", { className: "plan-services", children: e.featureList.map((i) => /* @__PURE__ */ n(r, { component: "p", variant: "body1", align: "center", children: i }, i)) })
11
+ ] }),
12
+ /* @__PURE__ */ n("div", { className: "plan-actions", children: e.showButton && /* @__PURE__ */ n(c, { fullWidth: !0, variant: "outlined", color: "primary", component: "a", href: e.buttonLink, children: e.buttonText }) })
13
+ ] })
14
+ ] });
52
15
  }
53
- export default PricingPlan;
54
- const PlanCard = styled(Card)`
16
+ const s = l(a)`
55
17
  height: 500px;
56
18
  display: flex;
57
19
  flex-direction: column;
@@ -60,7 +22,7 @@ const PlanCard = styled(Card)`
60
22
  }
61
23
 
62
24
  && {
63
- ${props => props.$shadow ? '' : 'box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.1)'}
25
+ ${(e) => e.$shadow ? "" : "box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.1)"}
64
26
  }
65
27
 
66
28
  .card-header {
@@ -116,4 +78,7 @@ const PlanCard = styled(Card)`
116
78
  .plan-actions {
117
79
  width: 100%;
118
80
  }
119
- `;
81
+ `;
82
+ export {
83
+ f as default
84
+ };
@@ -0,0 +1,8 @@
1
+ export function BasicUse(): import("react/jsx-runtime").JSX.Element;
2
+ export namespace BasicUse {
3
+ let storyName: string;
4
+ }
5
+ declare namespace _default {
6
+ let title: string;
7
+ }
8
+ export default _default;
@@ -1,4 +1,4 @@
1
- import { type PricingPlanProps } from './PricingPlan';
1
+ import { PricingPlanProps } from './PricingPlan';
2
2
  export interface PricingTableProps {
3
3
  plans?: Array<PricingPlanProps['plan']>;
4
4
  }
@@ -1,43 +1,37 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import Grid from '@mui/material/Grid';
3
- import PricingPlan from './PricingPlan';
4
- import { styled } from '../Theme';
5
- import { withDeprecated } from '../Util/deprecate';
6
- function PricingTable({
7
- plans = []
8
- }) {
9
- if (plans && plans.length > 0) {
10
- return /*#__PURE__*/_jsx(Div, {
11
- variant: "even",
12
- children: /*#__PURE__*/_jsx(Grid, {
13
- container: true,
14
- spacing: 2,
15
- justifyContent: "center",
16
- children: plans.map((x, index) =>
17
- /*#__PURE__*/
18
- // eslint-disable-next-line react/no-array-index-key
19
- _jsx(Grid, {
20
- item: true,
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import { Grid as n } from "@mui/material";
3
+ import a from "./PricingPlan.js";
4
+ import { styled as m } from "../Theme/index.js";
5
+ import { withDeprecated as o } from "../Util/deprecate.js";
6
+ function d({ plans: i = [] }) {
7
+ return i && i.length > 0 ? /* @__PURE__ */ e(f, { variant: "even", children: /* @__PURE__ */ e(
8
+ n,
9
+ {
10
+ container: !0,
11
+ spacing: 2,
12
+ sx: {
13
+ justifyContent: "center"
14
+ },
15
+ children: i.map((t, r) => /* @__PURE__ */ e(
16
+ n,
17
+ {
21
18
  className: "plan-item",
22
- xs: 12,
23
- sm: 6,
24
- md: 3,
25
- children: /*#__PURE__*/_jsx(PricingPlan, {
26
- plan: x
27
- })
28
- }, index))
29
- })
30
- });
31
- }
32
- return null;
19
+ size: {
20
+ xs: 12,
21
+ sm: 6,
22
+ md: 3
23
+ },
24
+ children: /* @__PURE__ */ e(a, { plan: t })
25
+ },
26
+ r
27
+ ))
28
+ }
29
+ ) }) : null;
33
30
  }
34
- export default withDeprecated(PricingTable, {
35
- name: 'PricingTable'
36
- });
37
- const Div = styled('div')`
31
+ const g = o(d, { name: "PricingTable" }), f = m("div")`
38
32
  padding: 100px 0;
39
33
  text-align: center;
40
- background-color: ${props => props.variant === 'even' ? '#fbfbfb' : '#ffffff'};
34
+ background-color: ${(i) => i.variant === "even" ? "#fbfbfb" : "#ffffff"};
41
35
  @media (max-width: 320px) {
42
36
  padding: 50px 0;
43
37
  }
@@ -46,4 +40,7 @@ const Div = styled('div')`
46
40
  margin-bottom: 30px;
47
41
  }
48
42
  }
49
- `;
43
+ `;
44
+ export {
45
+ g as default
46
+ };
@@ -0,0 +1,13 @@
1
+ export { default as Basic } from './demo/basic';
2
+ export { default as WithImage } from './demo/with-image';
3
+ declare namespace _default {
4
+ let title: string;
5
+ namespace parameters {
6
+ namespace docs {
7
+ namespace description {
8
+ let component: string;
9
+ }
10
+ }
11
+ }
12
+ }
13
+ export default _default;