@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.
- package/lib/ActionButton/ActionButton.stories.d.ts +18 -0
- package/lib/ActionButton/index.d.ts +2 -2
- package/lib/ActionButton/index.js +43 -94
- package/lib/ActivityIndicator/ActivityIndicator.stories.d.ts +8 -0
- package/lib/ActivityIndicator/index.d.ts +2 -8
- package/lib/ActivityIndicator/index.js +41 -114
- package/lib/Address/Address.stories.d.ts +16 -0
- package/lib/Address/compact-text.d.ts +4 -14
- package/lib/Address/compact-text.js +40 -98
- package/lib/Address/did-address.d.ts +5 -4
- package/lib/Address/did-address.js +94 -151
- package/lib/Address/index.d.ts +4 -2
- package/lib/Address/index.js +13 -20
- package/lib/Address/responsive-did-address.d.ts +5 -4
- package/lib/Address/responsive-did-address.js +80 -114
- package/lib/Alert/Alert.stories.d.ts +28 -0
- package/lib/Alert/index.d.ts +2 -2
- package/lib/Alert/index.js +56 -102
- package/lib/AnimationWaiter/AnimationWaiter.stories.d.ts +21 -0
- package/lib/AnimationWaiter/{dark-animation.json → dark-animation.json.js} +27 -1
- package/lib/AnimationWaiter/{default-animation.json → default-animation.json.js} +29 -1
- package/lib/AnimationWaiter/index.d.ts +3 -25
- package/lib/AnimationWaiter/index.js +107 -198
- package/lib/Async/index.d.ts +2 -4
- package/lib/Async/index.js +15 -29
- package/lib/Avatar/Avatar.stories.d.ts +11 -0
- package/lib/Avatar/did-motif.d.ts +5 -15
- package/lib/Avatar/did-motif.js +30 -65
- package/lib/Avatar/etherscan-blockies.js +42 -75
- package/lib/Avatar/index.d.ts +3 -19
- package/lib/Avatar/index.js +114 -180
- package/lib/Badge/Badge.stories.d.ts +13 -0
- package/lib/Badge/index.d.ts +3 -3
- package/lib/Badge/index.js +43 -83
- package/lib/Blocklet/Blocklet.stories.d.ts +17 -0
- package/lib/Blocklet/blocklet.d.ts +2 -28
- package/lib/Blocklet/blocklet.js +108 -191
- package/lib/Blocklet/index.d.ts +2 -3
- package/lib/Blocklet/index.js +7 -4
- package/lib/Blocklet/utils.d.ts +1 -1
- package/lib/Blocklet/utils.js +10 -10
- package/lib/BlockletContext/index.d.ts +3 -3
- package/lib/BlockletContext/index.js +32 -57
- package/lib/BlockletNFT/BlockletNFT.stories.d.ts +17 -0
- package/lib/BlockletNFT/index.d.ts +3 -38
- package/lib/BlockletNFT/index.js +123 -245
- package/lib/BlockletV2/Blocklet.stories.d.ts +18 -0
- package/lib/BlockletV2/blocklet.d.ts +2 -2
- package/lib/BlockletV2/blocklet.js +188 -213
- package/lib/BlockletV2/components/icon-text.d.ts +2 -2
- package/lib/BlockletV2/components/icon-text.js +43 -33
- package/lib/BlockletV2/components/tooltip-icon.js +46 -36
- package/lib/BlockletV2/index.d.ts +3 -3
- package/lib/BlockletV2/index.js +9 -5
- package/lib/BlockletV2/utils.d.ts +1 -1
- package/lib/BlockletV2/utils.js +13 -25
- package/lib/Button/Button.stories.d.ts +19 -0
- package/lib/Button/index.d.ts +1 -1
- package/lib/Button/index.js +6 -8
- package/lib/Button/wrap.d.ts +3 -3
- package/lib/Button/wrap.js +48 -131
- package/lib/ButtonGroup/index.d.ts +2 -2
- package/lib/ButtonGroup/index.js +6 -16
- package/lib/CardSelector/index.js +51 -94
- package/lib/Center/Center.stories.d.ts +18 -0
- package/lib/Center/index.js +15 -18
- package/lib/ClickToCopy/ClickToCopy.stories.d.ts +16 -0
- package/lib/ClickToCopy/copy-button.d.ts +3 -2
- package/lib/ClickToCopy/copy-button.js +19 -58
- package/lib/ClickToCopy/hook.d.ts +2 -2
- package/lib/ClickToCopy/hook.js +23 -32
- package/lib/ClickToCopy/index.d.ts +3 -14
- package/lib/ClickToCopy/index.js +23 -75
- package/lib/CloseButton/index.d.ts +1 -1
- package/lib/CloseButton/index.js +34 -28
- package/lib/CodeBlock/CodeBlock.stories.d.ts +20 -0
- package/lib/CodeBlock/LightBox.d.ts +4 -4
- package/lib/CodeBlock/LightBox.js +5 -4
- package/lib/CodeBlock/index.d.ts +1 -2
- package/lib/CodeBlock/index.js +96 -127
- package/lib/Colors/Colors.stories.d.ts +34 -0
- package/lib/Colors/index.js +8 -4
- package/lib/Colors/themes/default.d.ts +1 -1
- package/lib/Colors/themes/default.js +5 -7
- package/lib/Colors/themes/did-connect.js +43 -44
- package/lib/Colors/themes/temp.js +38 -39
- package/lib/Config/Config.stories.d.ts +14 -0
- package/lib/Config/config-provider.d.ts +8 -8
- package/lib/Config/config-provider.js +50 -44
- package/lib/Config/index.js +7 -2
- package/lib/Config/theme-mode-toggle.js +12 -27
- package/lib/ContactForm/ContactForm.stories.d.ts +23 -0
- package/lib/ContactForm/index.d.ts +2 -1
- package/lib/ContactForm/index.js +137 -164
- package/lib/CookieConsent/CookieConsent.stories.d.ts +18 -0
- package/lib/CookieConsent/index.d.ts +2 -2
- package/lib/CookieConsent/index.js +44 -73
- package/lib/CountDown/CountDown.stories.d.ts +14 -0
- package/lib/CountDown/index.d.ts +2 -2
- package/lib/CountDown/index.js +52 -124
- package/lib/DID/DID.stories.d.ts +15 -0
- package/lib/DID/index.d.ts +3 -1
- package/lib/DID/index.js +262 -327
- package/lib/DIDConnect/app-icon.js +26 -31
- package/lib/DIDConnect/app-info-item.js +76 -82
- package/lib/DIDConnect/auth-apps/auth-apps-info.js +71 -63
- package/lib/DIDConnect/auth-apps/index.d.ts +2 -2
- package/lib/DIDConnect/auth-apps/index.js +184 -183
- package/lib/DIDConnect/did-connect-container.js +231 -247
- package/lib/DIDConnect/did-connect-footer.js +66 -68
- package/lib/DIDConnect/did-connect-logo.js +10 -11
- package/lib/DIDConnect/index.js +22 -10
- package/lib/DIDConnect/landing-page.d.ts +1 -1
- package/lib/DIDConnect/landing-page.js +165 -189
- package/lib/DIDConnect/powered-by.js +55 -46
- package/lib/DIDConnect/request-storage-access-api-dialog.d.ts +5 -2
- package/lib/DIDConnect/request-storage-access-api-dialog.js +230 -292
- package/lib/DIDConnect/with-container.js +200 -236
- package/lib/DIDConnect/with-ux-theme.js +15 -22
- package/lib/Datatable/CustomToolbar.d.ts +1 -15
- package/lib/Datatable/CustomToolbar.js +232 -313
- package/lib/Datatable/Datatable.stories.d.ts +32 -0
- package/lib/Datatable/DatatableContext.js +23 -35
- package/lib/Datatable/TableSearch.d.ts +5 -13
- package/lib/Datatable/TableSearch.js +81 -113
- package/lib/Datatable/index.d.ts +12 -13
- package/lib/Datatable/index.js +226 -479
- package/lib/Datatable/utils.js +55 -120
- package/lib/Dialog/Dialog.stories.d.ts +20 -0
- package/lib/Dialog/confirm.d.ts +4 -25
- package/lib/Dialog/confirm.js +99 -125
- package/lib/Dialog/dialog.d.ts +30 -23
- package/lib/Dialog/dialog.js +62 -148
- package/lib/Dialog/index.d.ts +3 -3
- package/lib/Dialog/index.js +8 -4
- package/lib/Dialog/use-confirm.d.ts +3 -3
- package/lib/Dialog/use-confirm.js +91 -171
- package/lib/DidLogo/Logo.stories.d.ts +8 -0
- package/lib/DidLogo/index.js +19 -19
- package/lib/DriftBot/index.js +23 -33
- package/lib/Earth/Earth.stories.d.ts +18 -0
- package/lib/Earth/countries.json.js +13 -0
- package/lib/Earth/index.js +234 -334
- package/lib/Earth/util.js +36 -45
- package/lib/Empty/Empty.stories.d.ts +17 -0
- package/lib/Empty/index.d.ts +3 -11
- package/lib/Empty/index.js +17 -50
- package/lib/ErrorBoundary/ErrorBoundary.stories.d.ts +12 -0
- package/lib/ErrorBoundary/fallback.js +54 -71
- package/lib/ErrorBoundary/index.js +6 -1
- package/lib/Footer/Footer.stories.d.ts +12 -0
- package/lib/Footer/index.d.ts +1 -12
- package/lib/Footer/index.js +53 -100
- package/lib/Header/Header.stories.d.ts +21 -0
- package/lib/Header/addon-button.js +24 -31
- package/lib/Header/auto-hidden.d.ts +1 -1
- package/lib/Header/auto-hidden.js +9 -16
- package/lib/Header/header-addons.d.ts +1 -1
- package/lib/Header/header-addons.js +40 -37
- package/lib/Header/header.d.ts +2 -1
- package/lib/Header/header.js +64 -109
- package/lib/Header/index.js +8 -3
- package/lib/Header/responsive-header.d.ts +1 -1
- package/lib/Header/responsive-header.js +74 -112
- package/lib/Icon/Icon.stories.d.ts +23 -0
- package/lib/Icon/image.d.ts +1 -1
- package/lib/Icon/image.js +32 -33
- package/lib/Icon/index.d.ts +4 -4
- package/lib/Icon/index.js +30 -53
- package/lib/Img/Img.stories.d.ts +13 -0
- package/lib/Img/index.d.ts +6 -32
- package/lib/Img/index.js +126 -204
- package/lib/InfoRow/InfoRow.stories.d.ts +14 -0
- package/lib/InfoRow/index.js +27 -41
- package/lib/Layout/Layout.stories.d.ts +23 -0
- package/lib/Layout/dashboard/external-link.d.ts +1 -1
- package/lib/Layout/dashboard/external-link.js +23 -44
- package/lib/Layout/dashboard/full-page.d.ts +1 -1
- package/lib/Layout/dashboard/full-page.js +31 -48
- package/lib/Layout/dashboard/index.d.ts +4 -4
- package/lib/Layout/dashboard/index.js +134 -211
- package/lib/Layout/dashboard/sidebar.js +44 -78
- package/lib/Layout/dashboard-legacy/header.d.ts +1 -1
- package/lib/Layout/dashboard-legacy/header.js +70 -87
- package/lib/Layout/dashboard-legacy/index.d.ts +2 -2
- package/lib/Layout/dashboard-legacy/index.js +82 -90
- package/lib/Layout/dashboard-legacy/sidebar.d.ts +1 -1
- package/lib/Layout/dashboard-legacy/sidebar.js +44 -76
- package/lib/Layout/index.d.ts +2 -2
- package/lib/Layout/index.js +129 -189
- package/lib/LoadingMask/index.js +91 -82
- package/lib/Locale/LocaleSelector.stories.d.ts +22 -0
- package/lib/Locale/browser-lang.js +23 -52
- package/lib/Locale/context.d.ts +3 -3
- package/lib/Locale/context.js +71 -123
- package/lib/Locale/languages.js +32 -34
- package/lib/Locale/selector.d.ts +2 -2
- package/lib/Locale/selector.js +104 -139
- package/lib/Locale/util.d.ts +1 -1
- package/lib/Locale/util.js +9 -24
- package/lib/Logo/Logo.stories.d.ts +22 -0
- package/lib/Logo/images/logo-dark-text.svg.js +5 -0
- package/lib/Logo/images/logo-dark-top.svg.js +5 -0
- package/lib/Logo/images/logo-light-text.svg.js +5 -0
- package/lib/Logo/images/logo-light-top.svg.js +5 -0
- package/lib/Logo/index.d.ts +1 -1
- package/lib/Logo/index.js +27 -107
- package/lib/Metric/Metric.stories.d.ts +14 -0
- package/lib/Metric/index.js +50 -53
- package/lib/MuiWrap/index.js +11 -19
- package/lib/NFTDisplay/NFTBroken.svg.js +108 -0
- package/lib/NFTDisplay/NFTDisplay.stories.d.ts +15 -0
- package/lib/NFTDisplay/aspect-ratio-container.js +9 -20
- package/lib/NFTDisplay/broken.js +14 -286
- package/lib/NFTDisplay/displayApi.d.ts +1 -1
- package/lib/NFTDisplay/displayApi.js +17 -44
- package/lib/NFTDisplay/index.d.ts +2 -2
- package/lib/NFTDisplay/index.js +160 -343
- package/lib/NFTDisplay/loading.js +9 -9
- package/lib/NFTDisplay/render-svg.js +15 -22
- package/lib/NFTDisplay/svg-embedder/img.js +13 -29
- package/lib/NFTDisplay/svg-embedder/inline-svg.d.ts +1 -1
- package/lib/NFTDisplay/svg-embedder/inline-svg.js +10 -20
- package/lib/NavMenu/NavMenu.stories.d.ts +17 -0
- package/lib/NavMenu/images/OCAP.svg.js +5 -0
- package/lib/NavMenu/images/abt-network.svg.js +7 -0
- package/lib/NavMenu/images/ai-kit.svg.js +7 -0
- package/lib/NavMenu/images/aigne.svg.js +7 -0
- package/lib/NavMenu/images/aistro.svg.js +5 -0
- package/lib/NavMenu/images/arcsphere.svg.js +10 -0
- package/lib/NavMenu/images/blocklet-framework.svg.js +7 -0
- package/lib/NavMenu/images/blocklet-launcher.svg.js +5 -0
- package/lib/NavMenu/images/blocklet-server.svg.js +7 -0
- package/lib/NavMenu/images/blocklet-store.svg.js +5 -0
- package/lib/NavMenu/images/creator-studio.svg.js +7 -0
- package/lib/NavMenu/images/did-connect.svg.js +5 -0
- package/lib/NavMenu/images/did-name-service.svg.js +5 -0
- package/lib/NavMenu/images/did-wallet.svg.js +7 -0
- package/lib/NavMenu/images/did.svg.js +5 -0
- package/lib/NavMenu/images/nft-studio.svg.js +5 -0
- package/lib/NavMenu/images/vc.svg.js +5 -0
- package/lib/NavMenu/images/web3-kit.svg.js +7 -0
- package/lib/NavMenu/index.js +6 -3
- package/lib/NavMenu/nav-menu-context.js +15 -18
- package/lib/NavMenu/nav-menu.d.ts +17 -7
- package/lib/NavMenu/nav-menu.js +219 -355
- package/lib/NavMenu/products.js +264 -1652
- package/lib/NavMenu/style.d.ts +5 -5
- package/lib/NavMenu/style.js +156 -172
- package/lib/NavMenu/sub-container.d.ts +1 -1
- package/lib/NavMenu/sub-container.js +63 -104
- package/lib/NavMenu/sub-item-group.js +15 -33
- package/lib/PageScroller/index.d.ts +1 -1
- package/lib/PageScroller/index.js +116 -252
- package/lib/PageScroller/story/FifthComponent.js +7 -9
- package/lib/PageScroller/story/FirstComponent.js +7 -9
- package/lib/PageScroller/story/FourthComponent.js +7 -12
- package/lib/PageScroller/story/FullPage.js +52 -45
- package/lib/PageScroller/story/PageContain.js +55 -57
- package/lib/PageScroller/story/PageScroller.stories.d.ts +13 -0
- package/lib/PageScroller/story/SecondComponent.js +7 -9
- package/lib/PageScroller/story/ThirdComponent.js +7 -9
- package/lib/PageScroller/usePrevValue.js +10 -8
- package/lib/Passport/index.d.ts +1 -1
- package/lib/Passport/index.js +4 -2
- package/lib/Passport/passport.d.ts +1 -1
- package/lib/Passport/passport.js +123 -100
- package/lib/PhoneInput/PhoneInput.stories.d.ts +12 -0
- package/lib/PhoneInput/country-select.d.ts +2 -2
- package/lib/PhoneInput/country-select.js +111 -159
- package/lib/PhoneInput/index.js +166 -218
- package/lib/PoweredByArcBlock/index.d.ts +1 -1
- package/lib/PoweredByArcBlock/index.js +16 -22
- package/lib/PricingTable/PricingPlan.js +20 -55
- package/lib/PricingTable/PricingTable.stories.d.ts +8 -0
- package/lib/PricingTable/index.d.ts +1 -1
- package/lib/PricingTable/index.js +34 -37
- package/lib/QRCode/QRCode.stories.d.ts +13 -0
- package/lib/QRCode/index.d.ts +1 -1
- package/lib/QRCode/index.js +31 -49
- package/lib/RelativeTime/RelativeTime.stories.d.ts +20 -0
- package/lib/RelativeTime/index.d.ts +3 -3
- package/lib/RelativeTime/index.js +163 -261
- package/lib/Result/Result.stories.d.ts +21 -0
- package/lib/Result/common.d.ts +2 -2
- package/lib/Result/common.js +97 -129
- package/lib/Result/index.d.ts +1 -1
- package/lib/Result/index.js +21 -22
- package/lib/Result/result.js +45 -32
- package/lib/Result/translations.d.ts +1 -1
- package/lib/Result/translations.js +28 -25
- package/lib/Screenshot/BaseScreenshot/index.d.ts +1 -1
- package/lib/Screenshot/BaseScreenshot/index.js +23 -44
- package/lib/Screenshot/BaseScreenshot/shells/Macbook.js +23 -41
- package/lib/Screenshot/BaseScreenshot/shells/Phone.js +24 -26
- package/lib/Screenshot/Screenshot.stories.d.ts +13 -0
- package/lib/Screenshot/demo/images/bg-01.jpg +0 -0
- package/lib/Screenshot/demo/images/bg-02.jpg +0 -0
- package/lib/Screenshot/demo/images/bg-03.jpg +0 -0
- package/lib/Screenshot/index.d.ts +1 -2
- package/lib/Screenshot/index.js +83 -188
- package/lib/SessionBlocklet/index.d.ts +2 -2
- package/lib/SessionBlocklet/index.js +147 -162
- package/lib/SessionManager/SessionManager.stories.d.ts +9 -0
- package/lib/SessionManager/index.d.ts +1 -1
- package/lib/SessionManager/index.js +4 -2
- package/lib/SessionPermission/index.d.ts +1 -0
- package/lib/SessionPermission/index.js +12 -20
- package/lib/SessionUser/components/did-space.js +65 -117
- package/lib/SessionUser/components/logged-in.d.ts +3 -4
- package/lib/SessionUser/components/logged-in.js +215 -292
- package/lib/SessionUser/components/quick-login-item.js +125 -120
- package/lib/SessionUser/components/session-user-item.d.ts +4 -2
- package/lib/SessionUser/components/session-user-item.js +85 -89
- package/lib/SessionUser/components/session-user-switch.d.ts +1 -1
- package/lib/SessionUser/components/session-user-switch.js +187 -187
- package/lib/SessionUser/components/un-login.js +196 -222
- package/lib/SessionUser/components/user-info.d.ts +1 -1
- package/lib/SessionUser/components/user-info.js +163 -150
- package/lib/SessionUser/images/did-spaces.svg.js +5 -0
- package/lib/SessionUser/index.d.ts +1 -1
- package/lib/SessionUser/index.js +27 -30
- package/lib/SessionUser/libs/translation.d.ts +1 -1
- package/lib/SessionUser/libs/translation.js +25 -24
- package/lib/SessionUser/libs/utils.js +33 -23
- package/lib/SharedBridge/index.d.ts +6 -5
- package/lib/SharedBridge/index.js +76 -93
- package/lib/Sparkline/Sparkline.stories.d.ts +12 -0
- package/lib/Sparkline/index.js +67 -183
- package/lib/Spinner/Spinner.stories.d.ts +18 -0
- package/lib/Spinner/index.d.ts +1 -1
- package/lib/Spinner/index.js +10 -20
- package/lib/SplitButton/SplitButton.stories.d.ts +15 -0
- package/lib/SplitButton/index.d.ts +3 -5
- package/lib/SplitButton/index.js +39 -83
- package/lib/Success/index.js +174 -160
- package/lib/Switch/Switch.stories.d.ts +13 -0
- package/lib/Switch/index.d.ts +3 -7
- package/lib/Switch/index.js +51 -87
- package/lib/Tabs/Tabs.stories.d.ts +14 -0
- package/lib/Tabs/index.d.ts +2 -2
- package/lib/Tabs/index.js +169 -186
- package/lib/Tag/Tag.stories.d.ts +13 -0
- package/lib/Tag/index.d.ts +7 -4
- package/lib/Tag/index.js +40 -88
- package/lib/TextCollapse/TextCollapse.stories.d.ts +28 -0
- package/lib/TextCollapse/index.js +34 -51
- package/lib/Theme/Theme.stories.d.ts +10 -0
- package/lib/Theme/index.d.ts +1 -2
- package/lib/Theme/index.js +25 -17
- package/lib/Theme/theme-provider.d.ts +4 -15
- package/lib/Theme/theme-provider.js +111 -232
- package/lib/Theme/theme.d.ts +1 -8
- package/lib/Theme/theme.js +118 -166
- package/lib/Toast/Toast.stories.d.ts +15 -0
- package/lib/Toast/index.d.ts +1 -1
- package/lib/Toast/index.js +46 -67
- package/lib/Typography/index.d.ts +1 -1
- package/lib/Typography/index.js +73 -109
- package/lib/UserCard/Cards/avatar-only.d.ts +1 -1
- package/lib/UserCard/Cards/avatar-only.js +28 -36
- package/lib/UserCard/Cards/basic-info.d.ts +1 -2
- package/lib/UserCard/Cards/basic-info.js +34 -42
- package/lib/UserCard/Cards/index.d.ts +1 -1
- package/lib/UserCard/Cards/index.js +13 -21
- package/lib/UserCard/Cards/name-only.js +12 -18
- package/lib/UserCard/Container/card.d.ts +2 -2
- package/lib/UserCard/Container/card.js +34 -41
- package/lib/UserCard/Container/dialog.d.ts +1 -1
- package/lib/UserCard/Container/dialog.js +27 -27
- package/lib/UserCard/Content/basic.d.ts +1 -2
- package/lib/UserCard/Content/basic.js +227 -307
- package/lib/UserCard/Content/clock.d.ts +2 -0
- package/lib/UserCard/Content/clock.js +85 -71
- package/lib/UserCard/Content/minimal.d.ts +1 -1
- package/lib/UserCard/Content/minimal.js +81 -71
- package/lib/UserCard/Content/shorten-label.js +11 -35
- package/lib/UserCard/Content/tooltip-avatar.d.ts +1 -1
- package/lib/UserCard/Content/tooltip-avatar.js +43 -51
- package/lib/UserCard/UserCard.stories.d.ts +18 -0
- package/lib/UserCard/components.d.ts +1 -1
- package/lib/UserCard/components.js +53 -66
- package/lib/UserCard/index.d.ts +1 -2
- package/lib/UserCard/index.js +59 -111
- package/lib/UserCard/types.d.ts +1 -1
- package/lib/UserCard/types.js +10 -37
- package/lib/UserCard/utils.js +70 -125
- package/lib/Util/WebWalletOpener.stories.d.ts +5 -0
- package/lib/Util/constant.js +47 -46
- package/lib/Util/deprecate.js +11 -26
- package/lib/Util/federated.d.ts +6 -6
- package/lib/Util/federated.js +77 -92
- package/lib/Util/iframe.js +14 -21
- package/lib/Util/index.d.ts +5 -5
- package/lib/Util/index.js +278 -479
- package/lib/Util/logger.d.ts +1 -1
- package/lib/Util/logger.js +17 -25
- package/lib/Util/passport.js +72 -87
- package/lib/Util/security.js +28 -40
- package/lib/Util/style.d.ts +1 -1
- package/lib/Util/style.js +4 -14
- package/lib/Util/wallet.js +16 -30
- package/lib/VerificationCode/index.d.ts +1 -1
- package/lib/VerificationCode/index.js +69 -64
- package/lib/Video/Video.stories.d.ts +6 -0
- package/lib/Video/index.d.ts +1 -9
- package/lib/Video/index.js +26 -60
- package/lib/Wallet/Action.d.ts +1 -10
- package/lib/Wallet/Action.js +37 -65
- package/lib/Wallet/Action.stories.d.ts +8 -0
- package/lib/Wallet/Download.d.ts +3 -16
- package/lib/Wallet/Download.js +41 -440
- package/lib/Wallet/Download.stories.d.ts +9 -0
- package/lib/Wallet/Open.d.ts +1 -1
- package/lib/Wallet/Open.js +27 -27
- package/lib/Wallet/OpenInWallet.stories.d.ts +5 -0
- package/lib/Wallet/images/android_download.svg.js +5 -0
- package/lib/Wallet/images/app-store.svg.js +5 -0
- package/lib/Wallet/images/google-play.svg.js +5 -0
- package/lib/WalletOSIcon/index.js +15 -73
- package/lib/WebWalletSWKeeper/index.js +39 -106
- package/lib/WechatPrompt/images/android.png +0 -0
- package/lib/WechatPrompt/images/ios.png +0 -0
- package/lib/WechatPrompt/index.js +26 -61
- package/lib/hooks/use-blocklet-logo.d.ts +2 -2
- package/lib/hooks/use-blocklet-logo.js +22 -30
- package/lib/hooks/use-clock.d.ts +1 -3
- package/lib/hooks/use-clock.js +34 -67
- package/lib/hooks/use-location-state.js +55 -79
- package/lib/hooks/use-mobile.js +8 -7
- package/lib/index.d.ts +35 -35
- package/lib/index.js +81 -38
- package/lib/ux.css +1 -0
- package/lib/withTheme/index.d.ts +1 -3
- package/lib/withTheme/index.js +28 -37
- package/lib/withTracker/error_boundary.d.ts +1 -1
- package/lib/withTracker/error_boundary.js +15 -29
- package/lib/withTracker/index.js +21 -48
- package/package.json +48 -57
- package/src/ActionButton/ActionButton.stories.jsx +61 -0
- package/src/ActionButton/index.jsx +30 -14
- package/src/ActivityIndicator/ActivityIndicator.stories.jsx +9 -0
- package/src/ActivityIndicator/index.jsx +2 -11
- package/src/Address/Address.stories.jsx +38 -0
- package/src/Address/compact-text.jsx +9 -11
- package/src/Address/did-address.tsx +8 -4
- package/src/Address/index.tsx +12 -9
- package/src/Address/responsive-did-address.tsx +94 -89
- package/src/Alert/Alert.stories.jsx +100 -0
- package/src/Alert/index.jsx +24 -12
- package/src/AnimationWaiter/AnimationWaiter.stories.jsx +35 -0
- package/src/AnimationWaiter/index.jsx +10 -23
- package/src/Async/index.tsx +2 -2
- package/src/Avatar/Avatar.stories.jsx +11 -0
- package/src/Avatar/did-motif.jsx +1 -8
- package/src/Avatar/index.jsx +36 -13
- package/src/Badge/Badge.stories.jsx +41 -0
- package/src/Badge/index.jsx +22 -18
- package/src/Blocklet/Blocklet.stories.jsx +21 -0
- package/src/Blocklet/blocklet.jsx +13 -30
- package/src/BlockletContext/index.tsx +2 -2
- package/src/BlockletNFT/BlockletNFT.stories.jsx +21 -0
- package/src/BlockletNFT/index.jsx +14 -38
- package/src/BlockletV2/Blocklet.stories.jsx +34 -0
- package/src/BlockletV2/blocklet.tsx +69 -29
- package/src/BlockletV2/components/icon-text.tsx +15 -5
- package/src/Button/Button.stories.jsx +24 -0
- package/src/Button/index.js +1 -1
- package/src/Button/wrap.jsx +20 -13
- package/src/ButtonGroup/index.js +1 -1
- package/src/Center/Center.stories.jsx +20 -0
- package/src/ClickToCopy/ClickToCopy.stories.jsx +24 -0
- package/src/ClickToCopy/copy-button.tsx +4 -4
- package/src/ClickToCopy/index.tsx +28 -12
- package/src/CodeBlock/CodeBlock.stories.jsx +22 -0
- package/src/CodeBlock/index.tsx +1 -2
- package/src/Colors/Colors.stories.jsx +211 -0
- package/src/Colors/themes/did-connect.ts +0 -2
- package/src/Config/Config.stories.jsx +16 -0
- package/src/Config/theme-mode-toggle.tsx +4 -2
- package/src/ContactForm/ContactForm.stories.jsx +32 -0
- package/src/ContactForm/index.tsx +2 -2
- package/src/CookieConsent/CookieConsent.stories.jsx +33 -0
- package/src/CookieConsent/index.tsx +1 -1
- package/src/CountDown/CountDown.stories.jsx +15 -0
- package/src/CountDown/index.tsx +11 -6
- package/src/DID/DID.stories.jsx +37 -0
- package/src/DID/index.tsx +8 -3
- package/src/DIDConnect/app-info-item.tsx +2 -2
- package/src/DIDConnect/did-connect-container.tsx +17 -18
- package/src/DIDConnect/request-storage-access-api-dialog.tsx +210 -183
- package/src/DIDConnect/with-container.tsx +17 -18
- package/src/Datatable/CustomToolbar.jsx +32 -34
- package/src/Datatable/Datatable.stories.jsx +92 -0
- package/src/Datatable/DatatableContext.jsx +2 -2
- package/src/Datatable/TableSearch.jsx +10 -12
- package/src/Datatable/index.jsx +36 -58
- package/src/Datatable/utils.js +7 -7
- package/src/Dialog/Dialog.stories.jsx +21 -0
- package/src/Dialog/confirm.jsx +11 -21
- package/src/Dialog/dialog.jsx +9 -20
- package/src/Dialog/use-confirm.jsx +4 -3
- package/src/DidLogo/Logo.stories.jsx +8 -0
- package/src/DriftBot/index.tsx +4 -6
- package/src/Earth/Earth.stories.jsx +39 -0
- package/src/Earth/index.tsx +1 -1
- package/src/Empty/Empty.stories.jsx +23 -0
- package/src/Empty/index.jsx +1 -6
- package/src/ErrorBoundary/ErrorBoundary.stories.jsx +13 -0
- package/src/ErrorBoundary/fallback.tsx +5 -1
- package/src/Footer/Footer.stories.jsx +13 -0
- package/src/Footer/index.tsx +10 -18
- package/src/Header/Header.stories.jsx +30 -0
- package/src/Header/auto-hidden.tsx +1 -1
- package/src/Header/header.tsx +21 -4
- package/src/Header/responsive-header.tsx +11 -13
- package/src/Icon/Icon.stories.jsx +45 -0
- package/src/Icon/index.tsx +12 -24
- package/src/Img/Img.stories.jsx +17 -0
- package/src/Img/index.jsx +14 -30
- package/src/InfoRow/InfoRow.stories.jsx +14 -0
- package/src/InfoRow/index.tsx +5 -5
- package/src/Layout/Layout.stories.jsx +24 -0
- package/src/Layout/dashboard/full-page.tsx +4 -4
- package/src/Layout/dashboard/index.tsx +24 -21
- package/src/Layout/dashboard/sidebar.tsx +1 -1
- package/src/Layout/dashboard-legacy/header.tsx +25 -14
- package/src/Layout/dashboard-legacy/index.tsx +7 -7
- package/src/Layout/dashboard-legacy/sidebar.tsx +1 -3
- package/src/Layout/index.tsx +8 -6
- package/src/Locale/LocaleSelector.stories.jsx +44 -0
- package/src/Locale/context.tsx +2 -2
- package/src/Locale/selector.tsx +10 -17
- package/src/Logo/Logo.stories.jsx +23 -0
- package/src/Metric/Metric.stories.jsx +29 -0
- package/src/NFTDisplay/NFTDisplay.stories.jsx +30 -0
- package/src/NFTDisplay/broken.tsx +1 -1
- package/src/NFTDisplay/displayApi.ts +1 -0
- package/src/NFTDisplay/index.tsx +0 -1
- package/src/NavMenu/NavMenu.stories.jsx +17 -0
- package/src/NavMenu/nav-menu-context.tsx +3 -3
- package/src/NavMenu/nav-menu.tsx +138 -125
- package/src/NavMenu/products.tsx +7 -1
- package/src/NavMenu/style.ts +1 -1
- package/src/PageScroller/index.tsx +2 -2
- package/src/PageScroller/story/PageScroller.stories.jsx +18 -0
- package/src/PageScroller/usePrevValue.ts +1 -1
- package/src/PhoneInput/PhoneInput.stories.jsx +12 -0
- package/src/PhoneInput/country-select.tsx +107 -103
- package/src/PhoneInput/index.tsx +12 -4
- package/src/PricingTable/PricingPlan.tsx +1 -4
- package/src/PricingTable/PricingTable.stories.jsx +38 -0
- package/src/PricingTable/index.tsx +16 -4
- package/src/QRCode/QRCode.stories.jsx +13 -0
- package/src/RelativeTime/RelativeTime.stories.jsx +20 -0
- package/src/RelativeTime/index.tsx +20 -5
- package/src/Result/Result.stories.jsx +61 -0
- package/src/Result/common.tsx +1 -2
- package/src/Result/result.tsx +22 -6
- package/src/Screenshot/Screenshot.stories.jsx +44 -0
- package/src/Screenshot/index.tsx +33 -15
- package/src/SessionManager/SessionManager.stories.jsx +9 -0
- package/src/SessionPermission/index.tsx +1 -0
- package/src/SessionUser/components/logged-in.tsx +0 -2
- package/src/SessionUser/components/quick-login-item.tsx +3 -3
- package/src/SessionUser/components/session-user-item.tsx +68 -70
- package/src/SessionUser/components/session-user-switch.tsx +9 -1
- package/src/SessionUser/components/un-login.tsx +8 -1
- package/src/SharedBridge/index.tsx +106 -111
- package/src/Sparkline/Sparkline.stories.jsx +13 -0
- package/src/Spinner/Spinner.stories.jsx +98 -0
- package/src/Spinner/index.tsx +1 -1
- package/src/SplitButton/SplitButton.stories.jsx +32 -0
- package/src/SplitButton/index.tsx +15 -9
- package/src/Switch/Switch.stories.jsx +16 -0
- package/src/Switch/index.jsx +2 -6
- package/src/Tabs/Tabs.stories.jsx +18 -0
- package/src/Tabs/index.tsx +3 -3
- package/src/Tag/Tag.stories.jsx +15 -0
- package/src/Tag/index.jsx +20 -11
- package/src/TextCollapse/TextCollapse.stories.jsx +73 -0
- package/src/TextCollapse/index.tsx +1 -1
- package/src/Theme/Theme.stories.jsx +10 -0
- package/src/Theme/theme-provider.tsx +10 -18
- package/src/Theme/theme.ts +7 -2
- package/src/Toast/Toast.stories.jsx +28 -0
- package/src/Toast/index.tsx +2 -2
- package/src/Typography/index.tsx +6 -2
- package/src/UserCard/Cards/basic-info.tsx +9 -5
- package/src/UserCard/Container/card.tsx +2 -2
- package/src/UserCard/Content/basic.tsx +43 -14
- package/src/UserCard/Content/clock.tsx +13 -6
- package/src/UserCard/Content/minimal.tsx +23 -7
- package/src/UserCard/Content/tooltip-avatar.tsx +14 -11
- package/src/UserCard/UserCard.stories.jsx +18 -0
- package/src/UserCard/components.tsx +6 -3
- package/src/UserCard/index.tsx +0 -1
- package/src/Util/WebWalletOpener.stories.jsx +5 -0
- package/src/Util/index.ts +37 -3
- package/src/VerificationCode/index.tsx +16 -14
- package/src/Video/Video.stories.jsx +6 -0
- package/src/Video/index.tsx +16 -8
- package/src/Wallet/Action.stories.jsx +8 -0
- package/src/Wallet/Action.tsx +20 -9
- package/src/Wallet/Download.stories.jsx +9 -0
- package/src/Wallet/Download.tsx +36 -14
- package/src/Wallet/Open.tsx +1 -1
- package/src/Wallet/OpenInWallet.stories.jsx +5 -0
- package/src/WechatPrompt/index.tsx +1 -2
- package/src/hooks/use-clock.tsx +2 -1
- package/src/withTheme/index.tsx +1 -4
- package/vite.config.mjs +34 -0
- package/babel.config.es.js +0 -28
- package/lib/Dialog/types.d.ts +0 -20
- package/lib/Earth/countries.json +0 -8057
- package/lib/Header/demo/images/boards.svg +0 -3
- package/lib/Header/demo/images/chatbot.svg +0 -3
- package/lib/Header/demo/images/gallery.svg +0 -3
- package/lib/Logo/images/logo-dark-text.svg +0 -3
- package/lib/Logo/images/logo-dark-top.svg +0 -6
- package/lib/Logo/images/logo-light-text.svg +0 -3
- package/lib/Logo/images/logo-light-top.svg +0 -6
- package/lib/NFTDisplay/NFTBroken.svg +0 -34
- package/lib/NFTDisplay/README.md +0 -59
- package/lib/NFTDisplay/demo/data/asset-state-bad-url.json +0 -7
- package/lib/NFTDisplay/demo/data/asset-state-did-space-svg.json +0 -7
- package/lib/NFTDisplay/demo/data/asset-state-did-space.json +0 -7
- package/lib/NFTDisplay/demo/data/asset-state-display-url.json +0 -7
- package/lib/NFTDisplay/demo/data/asset-state-gzipped-svg-1-1.json +0 -10
- package/lib/NFTDisplay/demo/data/asset-state-gzipped-svg-374-130.json +0 -10
- package/lib/NFTDisplay/demo/data/asset-state-gzipped-svg-with-foreign-object.json +0 -20
- package/lib/NFTDisplay/demo/data/asset-state-svg.json +0 -29
- package/lib/NFTDisplay/demo/data/asset-state-url.json +0 -10
- package/lib/NavMenu/images/OCAP.svg +0 -16
- package/lib/NavMenu/images/abt-network.svg +0 -18
- package/lib/NavMenu/images/ai-kit.svg +0 -46
- package/lib/NavMenu/images/aigne.svg +0 -8
- package/lib/NavMenu/images/aistro.svg +0 -14
- package/lib/NavMenu/images/arcsphere.svg +0 -13
- package/lib/NavMenu/images/blocklet-framework.svg +0 -25
- package/lib/NavMenu/images/blocklet-launcher.svg +0 -9
- package/lib/NavMenu/images/blocklet-server.svg +0 -19
- package/lib/NavMenu/images/blocklet-store.svg +0 -11
- package/lib/NavMenu/images/creator-studio.svg +0 -42
- package/lib/NavMenu/images/did-connect.svg +0 -26
- package/lib/NavMenu/images/did-name-service.svg +0 -3
- package/lib/NavMenu/images/did-wallet.svg +0 -33
- package/lib/NavMenu/images/did.svg +0 -3
- package/lib/NavMenu/images/nft-studio.svg +0 -19
- package/lib/NavMenu/images/vc.svg +0 -7
- package/lib/NavMenu/images/web3-kit.svg +0 -56
- package/lib/PageScroller/story/index.css +0 -115
- package/lib/Result/demo/fixtures/result-image-404.svg +0 -1
- package/lib/Screenshot/devices.css +0 -1366
- package/lib/SessionUser/images/did-spaces.svg +0 -17
- package/lib/Wallet/images/android_download.svg +0 -22
- package/lib/Wallet/images/app-store.svg +0 -30
- package/lib/Wallet/images/google-play.svg +0 -69
- package/lib/global.d.ts +0 -28
- package/lib/type.d.ts +0 -44
- package/lib/withTracker/README.md +0 -37
- /package/src/PageScroller/story/{FifthComponent.js → FifthComponent.jsx} +0 -0
- /package/src/PageScroller/story/{FirstComponent.js → FirstComponent.jsx} +0 -0
- /package/src/PageScroller/story/{FourthComponent.js → FourthComponent.jsx} +0 -0
- /package/src/PageScroller/story/{FullPage.js → FullPage.jsx} +0 -0
- /package/src/PageScroller/story/{PageContain.js → PageContain.jsx} +0 -0
- /package/src/PageScroller/story/{SecondComponent.js → SecondComponent.jsx} +0 -0
- /package/src/PageScroller/story/{ThirdComponent.js → ThirdComponent.jsx} +0 -0
package/src/Header/header.tsx
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
import { Box, type BoxProps, Container, type Breakpoint } from '@mui/material';
|
2
|
-
import { useRef, useState, useEffect } from 'react';
|
2
|
+
import { useRef, useState, useEffect, type JSX } from 'react';
|
3
3
|
import AutoHidden from './auto-hidden';
|
4
4
|
import { styled } from '../Theme';
|
5
5
|
import HeaderAddons from './header-addons';
|
@@ -88,9 +88,23 @@ function Header({
|
|
88
88
|
{renderBrand()}
|
89
89
|
</div>
|
90
90
|
<div className="header-brand-addon">{brandAddon}</div>
|
91
|
-
{align === 'right' &&
|
91
|
+
{align === 'right' && (
|
92
|
+
<Box
|
93
|
+
sx={{
|
94
|
+
display: 'inline-block',
|
95
|
+
flexGrow: 1,
|
96
|
+
}}
|
97
|
+
/>
|
98
|
+
)}
|
92
99
|
{children}
|
93
|
-
{align === 'left' &&
|
100
|
+
{align === 'left' && (
|
101
|
+
<Box
|
102
|
+
sx={{
|
103
|
+
display: 'inline-block',
|
104
|
+
flexGrow: 1,
|
105
|
+
}}
|
106
|
+
/>
|
107
|
+
)}
|
94
108
|
<HeaderAddons className="header-addons">{addons}</HeaderAddons>
|
95
109
|
</Container>
|
96
110
|
</Root>
|
@@ -152,7 +166,10 @@ const Root = styled(Box)`
|
|
152
166
|
}
|
153
167
|
.header-brand-desc {
|
154
168
|
margin-top: 4px;
|
155
|
-
color: ${({ theme }) =>
|
169
|
+
color: ${({ theme }) => {
|
170
|
+
// @ts-expect-error
|
171
|
+
return theme.palette.text.hint;
|
172
|
+
}};
|
156
173
|
}
|
157
174
|
}
|
158
175
|
.header-brand-addon {
|
@@ -1,11 +1,7 @@
|
|
1
1
|
import { useState } from 'react';
|
2
2
|
import { useCreation, useReactive } from 'ahooks';
|
3
|
-
import MenuIcon from '@mui/icons-material
|
4
|
-
import
|
5
|
-
import Button from '@mui/material/IconButton';
|
6
|
-
import Container from '@mui/material/Container';
|
7
|
-
import useMediaQuery from '@mui/material/useMediaQuery';
|
8
|
-
import Drawer from '@mui/material/Drawer';
|
3
|
+
import { Menu as MenuIcon, Close as CloseIcon } from '@mui/icons-material';
|
4
|
+
import { Button, Container, useMediaQuery, Drawer } from '@mui/material';
|
9
5
|
import Header from './header';
|
10
6
|
import { styled, useTheme } from '../Theme';
|
11
7
|
import { type HeaderProps } from './header';
|
@@ -97,13 +93,15 @@ function ResponsiveHeader({ menu, prepend, children, ...rest }: ResponsiveHeader
|
|
97
93
|
top: 64,
|
98
94
|
zIndex: theme.zIndex.appBar - 1,
|
99
95
|
}}
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
96
|
+
slotProps={{
|
97
|
+
paper: {
|
98
|
+
style: {
|
99
|
+
top: 64,
|
100
|
+
bottom: 0,
|
101
|
+
boxShadow: 'none',
|
102
|
+
backgroundImage: 'none',
|
103
|
+
backgroundColor: theme.palette.background.paper,
|
104
|
+
},
|
107
105
|
},
|
108
106
|
}}>
|
109
107
|
<MenuPanel>{_children}</MenuPanel>
|
@@ -0,0 +1,45 @@
|
|
1
|
+
import Icon from '.';
|
2
|
+
|
3
|
+
export default {
|
4
|
+
title: 'Deprecated/Icon',
|
5
|
+
|
6
|
+
parameters: {
|
7
|
+
readme: {
|
8
|
+
sidebar: '<!-- PROPS -->',
|
9
|
+
},
|
10
|
+
},
|
11
|
+
};
|
12
|
+
|
13
|
+
export function WithDifferentNames() {
|
14
|
+
return (
|
15
|
+
<div style={{ display: 'flex', width: '300px', justifyContent: 'space-between' }}>
|
16
|
+
<Icon name="box" variant="solid" />
|
17
|
+
<Icon name="cut" />
|
18
|
+
<Icon name="copy" />
|
19
|
+
<Icon name="file" />
|
20
|
+
</div>
|
21
|
+
);
|
22
|
+
}
|
23
|
+
|
24
|
+
WithDifferentNames.storyName = 'with different names';
|
25
|
+
|
26
|
+
export function WithDifferentSizes() {
|
27
|
+
return (
|
28
|
+
<div style={{ display: 'flex', width: '300px', justifyContent: 'space-between' }}>
|
29
|
+
<Icon name="box" variant="solid" />
|
30
|
+
<Icon name="box" size={50} variant="solid" />
|
31
|
+
</div>
|
32
|
+
);
|
33
|
+
}
|
34
|
+
|
35
|
+
WithDifferentSizes.storyName = 'with different sizes';
|
36
|
+
|
37
|
+
export function WithRounded() {
|
38
|
+
return (
|
39
|
+
<div style={{ display: 'flex', width: '300px', justifyContent: 'space-between' }}>
|
40
|
+
<Icon name="box" rounded variant="solid" />
|
41
|
+
</div>
|
42
|
+
);
|
43
|
+
}
|
44
|
+
|
45
|
+
WithRounded.storyName = 'with rounded';
|
package/src/Icon/index.tsx
CHANGED
@@ -1,24 +1,16 @@
|
|
1
|
-
import {
|
2
|
-
import { type SxProps } from '@mui/material';
|
1
|
+
import { Icon as IconifyIcon } from '@iconify/react';
|
3
2
|
|
4
3
|
import colors from '../Colors';
|
5
4
|
import { styled } from '../Theme';
|
6
5
|
import { withDeprecated } from '../Util/deprecate';
|
7
6
|
|
8
|
-
const variants = {
|
9
|
-
light: 'fal',
|
10
|
-
regular: 'far',
|
11
|
-
solid: 'fas',
|
12
|
-
};
|
13
|
-
|
14
7
|
export interface IconProps extends React.HTMLAttributes<HTMLDivElement> {
|
15
8
|
name: string;
|
16
9
|
color?: string;
|
17
10
|
size?: number;
|
18
11
|
variant?: 'light' | 'regular' | 'solid';
|
19
12
|
rounded?: false | true;
|
20
|
-
forwardedRef?: React.
|
21
|
-
sx?: SxProps;
|
13
|
+
forwardedRef?: React.Ref<unknown>;
|
22
14
|
}
|
23
15
|
|
24
16
|
// eslint-disable-next-line react/prop-types
|
@@ -26,29 +18,20 @@ function Icon({
|
|
26
18
|
name,
|
27
19
|
color = colors.grey[900],
|
28
20
|
size = 24,
|
29
|
-
variant = '
|
21
|
+
variant = 'regular',
|
30
22
|
rounded = false,
|
31
|
-
style = {},
|
32
23
|
className = '',
|
33
24
|
forwardedRef,
|
34
|
-
...rest
|
35
25
|
}: IconProps) {
|
36
|
-
const
|
37
|
-
|
38
|
-
ref={forwardedRef}
|
39
|
-
className={`${variants[variant]} fa-${name} ${rounded ? '' : className}`}
|
40
|
-
style={Object.assign({ color, fontSize: `${size}px` }, style || {})}
|
41
|
-
/>
|
42
|
-
);
|
43
|
-
|
26
|
+
const iconName = variant === 'solid' ? `fa-solid:${name}` : `fa-regular:${name}`;
|
27
|
+
const content = <IconifyIcon icon={iconName} color={color} width={size} height={size} className={className} />;
|
44
28
|
if (rounded) {
|
45
29
|
return (
|
46
|
-
<Span ref={forwardedRef} size={size} color={color} className={className}
|
30
|
+
<Span ref={forwardedRef as React.Ref<HTMLSpanElement>} size={size} color={color} className={className}>
|
47
31
|
{content}
|
48
32
|
</Span>
|
49
33
|
);
|
50
34
|
}
|
51
|
-
|
52
35
|
return content;
|
53
36
|
}
|
54
37
|
|
@@ -70,6 +53,11 @@ const Span = styled('span')<{ size: number; color: string }>`
|
|
70
53
|
`;
|
71
54
|
|
72
55
|
export default withDeprecated(
|
73
|
-
|
56
|
+
({
|
57
|
+
ref,
|
58
|
+
...props
|
59
|
+
}: IconProps & {
|
60
|
+
ref?: React.Ref<unknown>;
|
61
|
+
}) => <Icon {...props} forwardedRef={ref} />,
|
74
62
|
{ name: 'Icon', alternative: 'SVG icons' }
|
75
63
|
);
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import Basic from './demo/basic';
|
2
|
+
|
3
|
+
export default {
|
4
|
+
title: 'Data Display/Img',
|
5
|
+
parameters: {
|
6
|
+
docs: {
|
7
|
+
description: {
|
8
|
+
component:
|
9
|
+
'The Image component allows you to place an image on your page. It supports fixed size, aspect ratio, lazy loading and fallback image.',
|
10
|
+
},
|
11
|
+
},
|
12
|
+
},
|
13
|
+
};
|
14
|
+
|
15
|
+
Basic.storyName = 'Img';
|
16
|
+
|
17
|
+
export { Basic };
|
package/src/Img/index.jsx
CHANGED
@@ -43,21 +43,21 @@ const classes = {
|
|
43
43
|
* @returns {React.ReactComponentElement}
|
44
44
|
*/
|
45
45
|
function Img({
|
46
|
-
lazy,
|
47
|
-
width,
|
48
|
-
height,
|
49
|
-
repeat,
|
50
|
-
ratio,
|
51
|
-
alt,
|
52
|
-
size,
|
53
|
-
position,
|
46
|
+
lazy = true,
|
47
|
+
width = null,
|
48
|
+
height = null,
|
49
|
+
repeat = 'no-repeat',
|
50
|
+
ratio = 1,
|
51
|
+
alt = null,
|
52
|
+
size = 'cover',
|
53
|
+
position = 'top center',
|
54
54
|
src,
|
55
|
-
placeholder,
|
56
|
-
fallback,
|
57
|
-
style,
|
58
|
-
className,
|
59
|
-
onError,
|
60
|
-
onSuccess,
|
55
|
+
placeholder = null,
|
56
|
+
fallback = null,
|
57
|
+
style = null,
|
58
|
+
className = '',
|
59
|
+
onError = noop,
|
60
|
+
onSuccess = noop,
|
61
61
|
...rest
|
62
62
|
}) {
|
63
63
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
@@ -199,21 +199,5 @@ Img.propTypes = {
|
|
199
199
|
onError: PropTypes.func,
|
200
200
|
onSuccess: PropTypes.func,
|
201
201
|
};
|
202
|
-
Img.defaultProps = {
|
203
|
-
alt: null,
|
204
|
-
size: 'cover',
|
205
|
-
position: 'top center',
|
206
|
-
repeat: 'no-repeat',
|
207
|
-
style: null,
|
208
|
-
ratio: 1,
|
209
|
-
width: null,
|
210
|
-
height: null,
|
211
|
-
lazy: true,
|
212
|
-
placeholder: null,
|
213
|
-
fallback: null,
|
214
|
-
className: '',
|
215
|
-
onError: noop,
|
216
|
-
onSuccess: noop,
|
217
|
-
};
|
218
202
|
|
219
203
|
export default Img;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
export { default as DifferentWidth } from './demo/different-width';
|
2
|
+
export { default as CustomValueComponent } from './demo/custom-value-component';
|
3
|
+
export { default as CustomNameComponent } from './demo/custom-name-component';
|
4
|
+
|
5
|
+
export default {
|
6
|
+
title: 'Data Display/InfoRow',
|
7
|
+
parameters: {
|
8
|
+
docs: {
|
9
|
+
description: {
|
10
|
+
component: 'InfoRow is typically used to display data with key-value pairs, such as a product specification.',
|
11
|
+
},
|
12
|
+
},
|
13
|
+
},
|
14
|
+
};
|
package/src/InfoRow/index.tsx
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import camelCase from 'lodash/camelCase';
|
2
2
|
import upperFirst from 'lodash/upperFirst';
|
3
|
-
import Typography from '@mui/material
|
3
|
+
import { Typography } from '@mui/material';
|
4
4
|
|
5
5
|
import { styled } from '../Theme';
|
6
6
|
|
@@ -16,15 +16,15 @@ export interface InfoRowProps {
|
|
16
16
|
function InfoRow({
|
17
17
|
name,
|
18
18
|
// eslint-disable-next-line no-shadow
|
19
|
-
nameFormatter = (
|
20
|
-
if (typeof
|
21
|
-
return
|
19
|
+
nameFormatter = (rawName) => {
|
20
|
+
if (typeof rawName === 'string') {
|
21
|
+
return rawName
|
22
22
|
.split(' ')
|
23
23
|
.map((x: any) => upperFirst(camelCase(x)))
|
24
24
|
.join(' ');
|
25
25
|
}
|
26
26
|
|
27
|
-
return
|
27
|
+
return rawName;
|
28
28
|
},
|
29
29
|
layout = 'horizontal',
|
30
30
|
children,
|
@@ -0,0 +1,24 @@
|
|
1
|
+
export { default as Basic } from './demo/basic';
|
2
|
+
export { default as CustomElement } from './demo/custom-element';
|
3
|
+
export { default as Dashboard } from './demo/dashboard';
|
4
|
+
export { default as DashboardGroupedNav } from './demo/dashboard-grouped-nav';
|
5
|
+
export { default as FullPage } from './demo/full-page';
|
6
|
+
export { default as DashboardLegacy } from './demo/dashboard-legacy';
|
7
|
+
export { default as DashboardLegacyCustomLogo } from './demo/dashboard-legacy-custom-logo';
|
8
|
+
|
9
|
+
export default {
|
10
|
+
title: 'Layout/Layout',
|
11
|
+
parameters: {
|
12
|
+
layout: 'fullscreen',
|
13
|
+
docs: {
|
14
|
+
description: {
|
15
|
+
component:
|
16
|
+
'Dashboard Layout is a generic, customizable layout component that includes a header, navigation, and footer, it can be used to quickly build management pages.',
|
17
|
+
},
|
18
|
+
},
|
19
|
+
design: {
|
20
|
+
type: 'figma',
|
21
|
+
url: 'https://www.figma.com/file/E8TSBWCOyXzETmVOjzbqvw/ArcBlock-UI-Kit?node-id=1504%3A5211',
|
22
|
+
},
|
23
|
+
},
|
24
|
+
};
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { useState,
|
1
|
+
import { useState, use, createContext, useMemo, useLayoutEffect } from 'react';
|
2
2
|
|
3
3
|
type FullPageState = {
|
4
4
|
inFullPage: boolean;
|
@@ -19,7 +19,7 @@ type FullPageContextValue = FullPageState & {
|
|
19
19
|
export const FullPageContext = createContext<FullPageContextValue>(null!);
|
20
20
|
|
21
21
|
export const useFullPage = (initialState?: FullPageState) => {
|
22
|
-
const ctx =
|
22
|
+
const ctx = use(FullPageContext);
|
23
23
|
useLayoutEffect(() => {
|
24
24
|
if (initialState) {
|
25
25
|
ctx.configure(initialState);
|
@@ -51,8 +51,8 @@ export function FullPageProvider({ children, ...rest }: { children?: React.React
|
|
51
51
|
};
|
52
52
|
}, [state]);
|
53
53
|
return (
|
54
|
-
<FullPageContext
|
54
|
+
<FullPageContext value={value} {...rest}>
|
55
55
|
{children}
|
56
|
-
</FullPageContext
|
56
|
+
</FullPageContext>
|
57
57
|
);
|
58
58
|
}
|
@@ -1,13 +1,9 @@
|
|
1
1
|
import { useEffect, useMemo } from 'react';
|
2
2
|
import { useLocation, matchPath, type Location } from 'react-router-dom';
|
3
3
|
import Helmet from 'react-helmet';
|
4
|
-
import Container from '@mui/material
|
5
|
-
import Hidden from '@mui/material/Hidden';
|
6
|
-
import Box from '@mui/material/Box';
|
7
|
-
import { type SxProps } from '@mui/material';
|
4
|
+
import { Container, Box, type SxProps } from '@mui/material';
|
8
5
|
import clsx from 'clsx';
|
9
|
-
import OpenInFullIcon from '@mui/icons-material
|
10
|
-
import CloseFullscreenIcon from '@mui/icons-material/CloseFullscreen';
|
6
|
+
import { OpenInFull as OpenInFullIcon, CloseFullscreen as CloseFullscreenIcon } from '@mui/icons-material';
|
11
7
|
import DashboardLegacy from '../dashboard-legacy';
|
12
8
|
import { ResponsiveHeader } from '../../Header';
|
13
9
|
import NavMenu from '../../NavMenu';
|
@@ -101,7 +97,6 @@ function Dashboard({
|
|
101
97
|
return (
|
102
98
|
<Wrapper sx={sx} {...rest} className={classes} sidebarWidth={sidebarWidth}>
|
103
99
|
<Helmet title={title} key={title} />
|
104
|
-
|
105
100
|
{headerVisible && (
|
106
101
|
<StyledUxHeader {..._headerProps} className="dashboard-header">
|
107
102
|
{links?.length
|
@@ -122,21 +117,29 @@ function Dashboard({
|
|
122
117
|
: null}
|
123
118
|
</StyledUxHeader>
|
124
119
|
)}
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
120
|
+
<Box
|
121
|
+
className="dashboard-body"
|
122
|
+
sx={{
|
123
|
+
display: 'flex',
|
124
|
+
}}>
|
125
|
+
{!!links?.length && sidebarVisible && (
|
126
|
+
<Box
|
127
|
+
className="dashboard-sidebar"
|
128
|
+
sx={{
|
129
|
+
display: {
|
130
|
+
xs: 'none',
|
131
|
+
md: 'block',
|
132
|
+
},
|
133
|
+
}}>
|
134
|
+
{_dense ? (
|
135
|
+
<Sidebar links={links} dense={_dense} />
|
136
|
+
) : (
|
137
|
+
<Box className="dashboard-sidebar-container">
|
131
138
|
<Sidebar links={links} dense={_dense} />
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
)}
|
137
|
-
</Box>
|
138
|
-
)}
|
139
|
-
</Hidden>
|
139
|
+
</Box>
|
140
|
+
)}
|
141
|
+
</Box>
|
142
|
+
)}
|
140
143
|
<Box className="dashboard-main" id="arc__dashboard-main">
|
141
144
|
{showToggleButton && (
|
142
145
|
<Box
|
@@ -1,10 +1,5 @@
|
|
1
|
-
import
|
2
|
-
import AppBar,
|
3
|
-
import Toolbar from '@mui/material/Toolbar';
|
4
|
-
import Box from '@mui/material/Box';
|
5
|
-
import Typography from '@mui/material/Typography';
|
6
|
-
import Hidden from '@mui/material/Hidden';
|
7
|
-
import MenuIcon from '@mui/icons-material/Menu';
|
1
|
+
import { Menu as MenuIcon } from '@mui/icons-material';
|
2
|
+
import { AppBar, type AppBarProps, Toolbar, Box, Typography, Button } from '@mui/material';
|
8
3
|
import { Link } from 'react-router-dom';
|
9
4
|
|
10
5
|
import Logo from '../../Logo';
|
@@ -41,7 +36,10 @@ const StyledAppBar = styled(AppBar)`
|
|
41
36
|
.header-title__primary {
|
42
37
|
font-size: 24px;
|
43
38
|
font-weight: 800;
|
44
|
-
color: ${(props) =>
|
39
|
+
color: ${(props) => {
|
40
|
+
// @ts-expect-error
|
41
|
+
return props.theme.typography.color.main;
|
42
|
+
}};
|
45
43
|
text-transform: uppercase;
|
46
44
|
display: flex;
|
47
45
|
align-items: center;
|
@@ -49,7 +47,10 @@ const StyledAppBar = styled(AppBar)`
|
|
49
47
|
.header-title__secondary {
|
50
48
|
font-size: 14px;
|
51
49
|
line-height: 1.71;
|
52
|
-
color: ${(props) =>
|
50
|
+
color: ${(props) => {
|
51
|
+
// @ts-expect-error
|
52
|
+
return props.theme.typography.color.gray;
|
53
|
+
}};
|
53
54
|
}
|
54
55
|
|
55
56
|
.header-addons {
|
@@ -118,16 +119,22 @@ export default function Header({
|
|
118
119
|
<Button
|
119
120
|
color="inherit"
|
120
121
|
aria-label="open drawer"
|
121
|
-
edge="start"
|
122
122
|
className="header-menu"
|
123
123
|
aira-label="header menu button"
|
124
124
|
onClick={onToggleMenu}>
|
125
125
|
<MenuIcon />
|
126
126
|
</Button>
|
127
127
|
<Link to={homeUrl} className="header-link">
|
128
|
-
<
|
129
|
-
|
130
|
-
|
128
|
+
<Box
|
129
|
+
sx={{
|
130
|
+
display: {
|
131
|
+
xs: 'none',
|
132
|
+
md: 'block',
|
133
|
+
},
|
134
|
+
}}
|
135
|
+
className="header-logo">
|
136
|
+
{logo || <Logo showText={false} />}
|
137
|
+
</Box>
|
131
138
|
<div className="header-title">
|
132
139
|
<Typography component="h2" noWrap className="header-title__primary">
|
133
140
|
{brand}
|
@@ -138,7 +145,11 @@ export default function Header({
|
|
138
145
|
</Typography>
|
139
146
|
</div>
|
140
147
|
</Link>
|
141
|
-
<Box
|
148
|
+
<Box
|
149
|
+
sx={{
|
150
|
+
flexGrow: 1,
|
151
|
+
}}
|
152
|
+
/>
|
142
153
|
{!!children && <div className="header-children">{children}</div>}
|
143
154
|
<div className="header-addons">{addons}</div>
|
144
155
|
</Toolbar>
|
@@ -1,9 +1,6 @@
|
|
1
1
|
import { useEffect, useState } from 'react';
|
2
2
|
import Helmet from 'react-helmet';
|
3
|
-
import Container from '@mui/material
|
4
|
-
import Box from '@mui/material/Box';
|
5
|
-
import { type SxProps } from '@mui/material';
|
6
|
-
import Drawer, { type DrawerProps } from '@mui/material/Drawer';
|
3
|
+
import { Container, Box, type SxProps, Drawer, type DrawerProps } from '@mui/material';
|
7
4
|
import { useSize } from 'ahooks';
|
8
5
|
|
9
6
|
import Sidebar, { type LinkItem } from './sidebar';
|
@@ -36,7 +33,7 @@ const Wrapper = styled('div')`
|
|
36
33
|
white-space: nowrap;
|
37
34
|
width: 120px;
|
38
35
|
background: ${(props) => props.theme.palette.background.default};
|
39
|
-
box-shadow: 2px 16px 10px 0 rgba(0, 0, 0, ${(props) => (props.theme.mode === 'light' ? 0.05 : 0.5)});
|
36
|
+
box-shadow: 2px 16px 10px 0 rgba(0, 0, 0, ${(props) => (props.theme.palette.mode === 'light' ? 0.05 : 0.5)});
|
40
37
|
border: 0;
|
41
38
|
}
|
42
39
|
`;
|
@@ -94,7 +91,6 @@ export default function Dashboard({
|
|
94
91
|
return (
|
95
92
|
<Wrapper className={`dashboard ${className}`} {...rest}>
|
96
93
|
<Helmet title={`${title}-${brand}`} />
|
97
|
-
|
98
94
|
<Header
|
99
95
|
className="dashboard__header"
|
100
96
|
onToggleMenu={onToggleDrawer}
|
@@ -105,7 +101,11 @@ export default function Dashboard({
|
|
105
101
|
homeUrl={homeUrl}
|
106
102
|
logo={logo}
|
107
103
|
/>
|
108
|
-
<Box
|
104
|
+
<Box
|
105
|
+
className="dashboard__body"
|
106
|
+
sx={{
|
107
|
+
display: 'flex',
|
108
|
+
}}>
|
109
109
|
<Drawer
|
110
110
|
variant={drawerMode}
|
111
111
|
className="drawer"
|
@@ -1,9 +1,7 @@
|
|
1
1
|
import { memo } from 'react';
|
2
2
|
import { Link, useLocation } from 'react-router-dom';
|
3
|
-
import Button,
|
4
|
-
import Typography from '@mui/material/Typography';
|
3
|
+
import { Button, Typography, type SxProps, type ButtonProps } from '@mui/material';
|
5
4
|
import { teal } from '@mui/material/colors';
|
6
|
-
import { type SxProps } from '@mui/material';
|
7
5
|
|
8
6
|
import ImageIcon from '../../Icon/image';
|
9
7
|
import Logo from '../../Logo';
|
package/src/Layout/index.tsx
CHANGED
@@ -8,13 +8,13 @@ import {
|
|
8
8
|
IconButton,
|
9
9
|
Link,
|
10
10
|
List,
|
11
|
-
ListItem,
|
12
11
|
ListItemText,
|
13
12
|
Toolbar,
|
14
13
|
Typography,
|
15
14
|
type SxProps,
|
15
|
+
ListItemButton,
|
16
16
|
} from '@mui/material';
|
17
|
-
import MenuIcon from '@mui/icons-material
|
17
|
+
import { Menu as MenuIcon } from '@mui/icons-material';
|
18
18
|
|
19
19
|
import Footer from '../Footer';
|
20
20
|
import OpenInWallet from '../Wallet/Open';
|
@@ -95,7 +95,7 @@ export default function Layout({
|
|
95
95
|
<List>
|
96
96
|
{links.map((x) => (
|
97
97
|
<Link className="nav-link" key={x.url} href={x.url} underline="hover">
|
98
|
-
<
|
98
|
+
<ListItemButton className={activeLink === x.url ? 'drawer-highlight-nav' : ''}>
|
99
99
|
<ListItemText>
|
100
100
|
{typeof x.icon === 'string' ? (
|
101
101
|
<Icon name={x.icon} size={18 * (x.iconZoom || 1)} color="inherit" style={{ marginRight: '5px' }} />
|
@@ -104,7 +104,7 @@ export default function Layout({
|
|
104
104
|
)}
|
105
105
|
{x.title}
|
106
106
|
</ListItemText>
|
107
|
-
</
|
107
|
+
</ListItemButton>
|
108
108
|
</Link>
|
109
109
|
))}
|
110
110
|
</List>
|
@@ -134,8 +134,10 @@ export default function Layout({
|
|
134
134
|
variant="h5"
|
135
135
|
color="inherit"
|
136
136
|
noWrap
|
137
|
-
|
138
|
-
|
137
|
+
className="brand"
|
138
|
+
sx={{
|
139
|
+
display: 'block',
|
140
|
+
}}>
|
139
141
|
{brand}
|
140
142
|
</Typography>
|
141
143
|
{description && (
|
@@ -0,0 +1,44 @@
|
|
1
|
+
import { LocaleProvider } from './context';
|
2
|
+
|
3
|
+
import Basic from './demo/basic';
|
4
|
+
import WithText from './demo/with-text';
|
5
|
+
import DarkMode from './demo/dark-mode';
|
6
|
+
import PopperProps from './demo/popper-props';
|
7
|
+
import PopperTypeProps from './demo/popper-type-props';
|
8
|
+
import IconProps from './demo/icon-props';
|
9
|
+
import Languages from './demo/languages';
|
10
|
+
|
11
|
+
export default {
|
12
|
+
title: 'Basic/LocaleSelector',
|
13
|
+
|
14
|
+
parameters: {
|
15
|
+
docs: {
|
16
|
+
description: {
|
17
|
+
component:
|
18
|
+
'If you have multiple locales and want to give your users the option of selecting a language, you can use the LocaleSelector component.',
|
19
|
+
},
|
20
|
+
inlineStories: false,
|
21
|
+
iframeHeight: 160,
|
22
|
+
},
|
23
|
+
},
|
24
|
+
decorators: [
|
25
|
+
(StoryFn) => (
|
26
|
+
<LocaleProvider translations={{}}>
|
27
|
+
<StoryFn />
|
28
|
+
</LocaleProvider>
|
29
|
+
),
|
30
|
+
],
|
31
|
+
};
|
32
|
+
|
33
|
+
// demo 中使用了 react element, 设置 `inlineStories: false` 时导致 storybook 崩溃
|
34
|
+
IconProps.parameters = {
|
35
|
+
docs: {
|
36
|
+
inlineStories: true,
|
37
|
+
},
|
38
|
+
};
|
39
|
+
|
40
|
+
Languages.argTypes = {
|
41
|
+
fallbackLocale: { control: 'select', options: [null, 'en'] },
|
42
|
+
};
|
43
|
+
|
44
|
+
export { Basic, WithText, DarkMode, PopperProps, PopperTypeProps, IconProps, Languages };
|