@lidofinance/lido-app-ui 1.12.0 → 1.14.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/README.md +85 -19
- package/dist/README.md +85 -19
- package/dist/cjs/accordion/Accordion.cjs +1 -0
- package/dist/cjs/accordion/Accordion.cjs.map +1 -1
- package/dist/cjs/address/Address.cjs +50 -0
- package/dist/cjs/address/Address.cjs.map +1 -0
- package/dist/cjs/address/Address.module.css.cjs +6 -0
- package/dist/cjs/address/Address.module.css.cjs.map +1 -0
- package/dist/cjs/address-button/AddressButton.cjs +49 -0
- package/dist/cjs/address-button/AddressButton.cjs.map +1 -0
- package/dist/cjs/address-button/AddressButton.module.css.cjs +6 -0
- package/dist/cjs/address-button/AddressButton.module.css.cjs.map +1 -0
- package/dist/cjs/badge/Badge.cjs +1 -0
- package/dist/cjs/badge/Badge.cjs.map +1 -1
- package/dist/cjs/banner/Banner.cjs +1 -0
- package/dist/cjs/banner/Banner.cjs.map +1 -1
- package/dist/cjs/breadcrumbs/Breadcrumbs.cjs +55 -26
- package/dist/cjs/breadcrumbs/Breadcrumbs.cjs.map +1 -1
- package/dist/cjs/breadcrumbs/Breadcrumbs.module.css.cjs +1 -1
- package/dist/cjs/button/Button.cjs +15 -24
- package/dist/cjs/button/Button.cjs.map +1 -1
- package/dist/cjs/button/Button.module.css.cjs +1 -1
- package/dist/cjs/button/ButtonContent.cjs +50 -0
- package/dist/cjs/button/ButtonContent.cjs.map +1 -0
- package/dist/cjs/button/LinkButton.cjs +46 -0
- package/dist/cjs/button/LinkButton.cjs.map +1 -0
- package/dist/cjs/card/Card.cjs +1 -0
- package/dist/cjs/card/Card.cjs.map +1 -1
- package/dist/cjs/checkbox/Checkbox.cjs +1 -0
- package/dist/cjs/checkbox/Checkbox.cjs.map +1 -1
- package/dist/cjs/copy/Copy.cjs +55 -0
- package/dist/cjs/copy/Copy.cjs.map +1 -0
- package/dist/cjs/copy/Copy.module.css.cjs +6 -0
- package/dist/cjs/copy/Copy.module.css.cjs.map +1 -0
- package/dist/cjs/copy/useCopy.cjs +33 -0
- package/dist/cjs/copy/useCopy.cjs.map +1 -0
- package/dist/cjs/counter/Counter.cjs +6 -2
- package/dist/cjs/counter/Counter.cjs.map +1 -1
- package/dist/cjs/counter/CounterSlot.cjs +19 -2
- package/dist/cjs/counter/CounterSlot.cjs.map +1 -1
- package/dist/cjs/counter/CounterSlot.module.css.cjs +1 -1
- package/dist/cjs/data-list/DataList.cjs +1 -0
- package/dist/cjs/data-list/DataList.cjs.map +1 -1
- package/dist/cjs/data-list/DataList.module.css.cjs +1 -1
- package/dist/cjs/data-list/DataListRow.cjs +7 -12
- package/dist/cjs/data-list/DataListRow.cjs.map +1 -1
- package/dist/cjs/disclaimer/Disclaimer.cjs +10 -3
- package/dist/cjs/disclaimer/Disclaimer.cjs.map +1 -1
- package/dist/cjs/divider/Divider.cjs +5 -0
- package/dist/cjs/divider/Divider.cjs.map +1 -1
- package/dist/cjs/error-page/ErrorPage.cjs +14 -7
- package/dist/cjs/error-page/ErrorPage.cjs.map +1 -1
- package/dist/cjs/footer/Footer.cjs +10 -2
- package/dist/cjs/footer/Footer.cjs.map +1 -1
- package/dist/cjs/grid/Grid.cjs +7 -3
- package/dist/cjs/grid/Grid.cjs.map +1 -1
- package/dist/cjs/grid/Grid.module.css.cjs +1 -1
- package/dist/cjs/grid/GridItem.cjs +2 -0
- package/dist/cjs/grid/GridItem.cjs.map +1 -1
- package/dist/cjs/header/Header.cjs +10 -2
- package/dist/cjs/header/Header.cjs.map +1 -1
- package/dist/cjs/header/HeaderNav.cjs +33 -21
- package/dist/cjs/header/HeaderNav.cjs.map +1 -1
- package/dist/cjs/header/HeaderNav.module.css.cjs +1 -1
- package/dist/cjs/hex/Hex.cjs +41 -0
- package/dist/cjs/hex/Hex.cjs.map +1 -0
- package/dist/cjs/hex/Hex.module.css.cjs +6 -0
- package/dist/cjs/hex/Hex.module.css.cjs.map +1 -0
- package/dist/cjs/hex/trimHex.cjs +15 -0
- package/dist/cjs/hex/trimHex.cjs.map +1 -0
- package/dist/cjs/hidden/Hidden.cjs +10 -4
- package/dist/cjs/hidden/Hidden.cjs.map +1 -1
- package/dist/cjs/hooks/Portal.cjs +14 -11
- package/dist/cjs/hooks/Portal.cjs.map +1 -1
- package/dist/cjs/hooks/useBodyScrollLock.cjs +49 -13
- package/dist/cjs/hooks/useBodyScrollLock.cjs.map +1 -1
- package/dist/cjs/hooks/useEdgeFade.cjs +60 -0
- package/dist/cjs/hooks/useEdgeFade.cjs.map +1 -0
- package/dist/cjs/hooks/useEscape.cjs +8 -5
- package/dist/cjs/hooks/useEscape.cjs.map +1 -1
- package/dist/cjs/hooks/useFocusTrap.cjs +61 -24
- package/dist/cjs/hooks/useFocusTrap.cjs.map +1 -1
- package/dist/cjs/hooks/useHideOthers.cjs +51 -0
- package/dist/cjs/hooks/useHideOthers.cjs.map +1 -0
- package/dist/cjs/hooks/useOutsideClick.cjs +31 -4
- package/dist/cjs/hooks/useOutsideClick.cjs.map +1 -1
- package/dist/cjs/icon-button/CloseButton.cjs +27 -0
- package/dist/cjs/icon-button/CloseButton.cjs.map +1 -0
- package/dist/cjs/icon-button/IconButton.cjs +6 -1
- package/dist/cjs/icon-button/IconButton.cjs.map +1 -1
- package/dist/cjs/icon-button/IconButton.module.css.cjs +1 -1
- package/dist/cjs/icons/TokenIcon.cjs +2 -0
- package/dist/cjs/icons/TokenIcon.cjs.map +1 -1
- package/dist/cjs/identicon/Identicon.cjs +2 -0
- package/dist/cjs/identicon/Identicon.cjs.map +1 -1
- package/dist/cjs/index.cjs +67 -5
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.css +14 -4
- package/dist/cjs/info-tooltip/InfoTooltip.cjs +34 -0
- package/dist/cjs/info-tooltip/InfoTooltip.cjs.map +1 -0
- package/dist/cjs/info-tooltip/InfoTooltip.module.css.cjs +6 -0
- package/dist/cjs/info-tooltip/InfoTooltip.module.css.cjs.map +1 -0
- package/dist/cjs/input/Input.cjs +4 -8
- package/dist/cjs/input/Input.cjs.map +1 -1
- package/dist/cjs/input/Input.module.css.cjs +1 -1
- package/dist/cjs/link-provider/Anchor.cjs +23 -2
- package/dist/cjs/link-provider/Anchor.cjs.map +1 -1
- package/dist/cjs/link-provider/LinkProvider.cjs +1 -1
- package/dist/cjs/link-provider/LinkProvider.cjs.map +1 -1
- package/dist/cjs/logo/Logo.cjs +8 -0
- package/dist/cjs/logo/Logo.cjs.map +1 -1
- package/dist/cjs/message-box/MessageBox.cjs +1 -0
- package/dist/cjs/message-box/MessageBox.cjs.map +1 -1
- package/dist/cjs/modal/Modal.cjs +73 -15
- package/dist/cjs/modal/Modal.cjs.map +1 -1
- package/dist/cjs/nav-link/NavLink.cjs +6 -4
- package/dist/cjs/nav-link/NavLink.cjs.map +1 -1
- package/dist/cjs/notification/Notification.cjs +12 -6
- package/dist/cjs/notification/Notification.cjs.map +1 -1
- package/dist/cjs/page-layout/Layout.cjs +25 -0
- package/dist/cjs/page-layout/Layout.cjs.map +1 -0
- package/dist/cjs/page-layout/Layout.module.css.cjs +6 -0
- package/dist/cjs/page-layout/Layout.module.css.cjs.map +1 -0
- package/dist/cjs/page-layout/Main.cjs +29 -0
- package/dist/cjs/page-layout/Main.cjs.map +1 -0
- package/dist/cjs/page-layout/Main.module.css.cjs +6 -0
- package/dist/cjs/page-layout/Main.module.css.cjs.map +1 -0
- package/dist/cjs/page-layout/PageContent.cjs +22 -0
- package/dist/cjs/page-layout/PageContent.cjs.map +1 -0
- package/dist/cjs/page-layout/PageContent.module.css.cjs +6 -0
- package/dist/cjs/page-layout/PageContent.module.css.cjs.map +1 -0
- package/dist/cjs/pagination/Pagination.cjs +11 -6
- package/dist/cjs/pagination/Pagination.cjs.map +1 -1
- package/dist/cjs/popover/Popover.cjs +71 -15
- package/dist/cjs/popover/Popover.cjs.map +1 -1
- package/dist/cjs/radio-button/RadioButton.cjs +1 -0
- package/dist/cjs/radio-button/RadioButton.cjs.map +1 -1
- package/dist/cjs/rich-input/RichInput.cjs +22 -46
- package/dist/cjs/rich-input/RichInput.cjs.map +1 -1
- package/dist/cjs/rich-input/RichInput.module.css.cjs +1 -1
- package/dist/cjs/section-title/SectionTitle.cjs +9 -10
- package/dist/cjs/section-title/SectionTitle.cjs.map +1 -1
- package/dist/cjs/section-title/SectionTitle.module.css.cjs +1 -1
- package/dist/cjs/segmented-control/SegmentedControl.cjs +1 -0
- package/dist/cjs/segmented-control/SegmentedControl.cjs.map +1 -1
- package/dist/cjs/segmented-control/SegmentedControlCard.cjs +1 -0
- package/dist/cjs/segmented-control/SegmentedControlCard.cjs.map +1 -1
- package/dist/cjs/sidebar/Sidebar.cjs +141 -0
- package/dist/cjs/sidebar/Sidebar.cjs.map +1 -0
- package/dist/cjs/sidebar/Sidebar.module.css.cjs +6 -0
- package/dist/cjs/sidebar/Sidebar.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarContext.cjs +13 -0
- package/dist/cjs/sidebar/SidebarContext.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarGroup.cjs +37 -0
- package/dist/cjs/sidebar/SidebarGroup.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarGroup.module.css.cjs +6 -0
- package/dist/cjs/sidebar/SidebarGroup.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarInset.cjs +25 -0
- package/dist/cjs/sidebar/SidebarInset.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarInset.module.css.cjs +6 -0
- package/dist/cjs/sidebar/SidebarInset.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarItem.cjs +42 -0
- package/dist/cjs/sidebar/SidebarItem.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarItem.module.css.cjs +6 -0
- package/dist/cjs/sidebar/SidebarItem.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarLayout.cjs +41 -0
- package/dist/cjs/sidebar/SidebarLayout.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarLayout.module.css.cjs +6 -0
- package/dist/cjs/sidebar/SidebarLayout.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarToggle.cjs +44 -0
- package/dist/cjs/sidebar/SidebarToggle.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarToggle.module.css.cjs +6 -0
- package/dist/cjs/sidebar/SidebarToggle.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/useSidebarDrawer.cjs +47 -0
- package/dist/cjs/sidebar/useSidebarDrawer.cjs.map +1 -0
- package/dist/cjs/skeleton/Skeleton.cjs +18 -20
- package/dist/cjs/skeleton/Skeleton.cjs.map +1 -1
- package/dist/cjs/skip-link/SkipLink.cjs +52 -0
- package/dist/cjs/skip-link/SkipLink.cjs.map +1 -0
- package/dist/cjs/skip-link/SkipLink.module.css.cjs +6 -0
- package/dist/cjs/skip-link/SkipLink.module.css.cjs.map +1 -0
- package/dist/cjs/slider/Slider.cjs +1 -0
- package/dist/cjs/slider/Slider.cjs.map +1 -1
- package/dist/cjs/small-card/SmallCard.cjs +6 -2
- package/dist/cjs/small-card/SmallCard.cjs.map +1 -1
- package/dist/cjs/stack/Stack.cjs +27 -7
- package/dist/cjs/stack/Stack.cjs.map +1 -1
- package/dist/cjs/stack/Stack.module.css.cjs +1 -1
- package/dist/cjs/stat-item/StatItem.cjs +4 -8
- package/dist/cjs/stat-item/StatItem.cjs.map +1 -1
- package/dist/cjs/stat-item/StatItem.module.css.cjs +1 -1
- package/dist/cjs/switch/Switch.cjs +1 -0
- package/dist/cjs/switch/Switch.cjs.map +1 -1
- package/dist/cjs/tabs/Tabs.cjs +1 -0
- package/dist/cjs/tabs/Tabs.cjs.map +1 -1
- package/dist/cjs/tag/Tag.cjs +73 -8
- package/dist/cjs/tag/Tag.cjs.map +1 -1
- package/dist/cjs/tag/Tag.module.css.cjs +1 -1
- package/dist/cjs/text-link/TextLink.cjs +10 -13
- package/dist/cjs/text-link/TextLink.cjs.map +1 -1
- package/dist/cjs/text-link/TextLink.module.css.cjs +1 -1
- package/dist/cjs/theme-switcher/ThemeSwitcher.cjs +13 -5
- package/dist/cjs/theme-switcher/ThemeSwitcher.cjs.map +1 -1
- package/dist/cjs/theme-switcher/ThemeSwitcher.module.css.cjs +6 -0
- package/dist/cjs/theme-switcher/ThemeSwitcher.module.css.cjs.map +1 -0
- package/dist/cjs/token-amount/TokenAmount.cjs +1 -0
- package/dist/cjs/token-amount/TokenAmount.cjs.map +1 -1
- package/dist/cjs/token-selector/TokenSelector.cjs +56 -64
- package/dist/cjs/token-selector/TokenSelector.cjs.map +1 -1
- package/dist/cjs/tooltip/Tooltip.cjs +42 -27
- package/dist/cjs/tooltip/Tooltip.cjs.map +1 -1
- package/dist/cjs/tx-status/TxStatus.cjs +2 -0
- package/dist/cjs/tx-status/TxStatus.cjs.map +1 -1
- package/dist/cjs/typography/Typography.cjs +2 -0
- package/dist/cjs/typography/Typography.cjs.map +1 -1
- package/dist/cjs/utils/ActionElement.cjs +2 -13
- package/dist/cjs/utils/ActionElement.cjs.map +1 -1
- package/dist/cjs/utils/breakpoints.cjs +26 -0
- package/dist/cjs/utils/breakpoints.cjs.map +1 -0
- package/dist/cjs/utils/responsive.cjs +19 -30
- package/dist/cjs/utils/responsive.cjs.map +1 -1
- package/dist/cjs/utils/surface.module.css.cjs +6 -0
- package/dist/cjs/utils/surface.module.css.cjs.map +1 -0
- package/dist/esm/accordion/Accordion.mjs +1 -0
- package/dist/esm/accordion/Accordion.mjs.map +1 -1
- package/dist/esm/address/Address.mjs +46 -0
- package/dist/esm/address/Address.mjs.map +1 -0
- package/dist/esm/address/Address.module.css.mjs +4 -0
- package/dist/esm/address/Address.module.css.mjs.map +1 -0
- package/dist/esm/address-button/AddressButton.mjs +45 -0
- package/dist/esm/address-button/AddressButton.mjs.map +1 -0
- package/dist/esm/address-button/AddressButton.module.css.mjs +4 -0
- package/dist/esm/address-button/AddressButton.module.css.mjs.map +1 -0
- package/dist/esm/badge/Badge.mjs +1 -0
- package/dist/esm/badge/Badge.mjs.map +1 -1
- package/dist/esm/banner/Banner.mjs +1 -0
- package/dist/esm/banner/Banner.mjs.map +1 -1
- package/dist/esm/breadcrumbs/Breadcrumbs.mjs +56 -27
- package/dist/esm/breadcrumbs/Breadcrumbs.mjs.map +1 -1
- package/dist/esm/breadcrumbs/Breadcrumbs.module.css.mjs +1 -1
- package/dist/esm/button/Button.mjs +16 -25
- package/dist/esm/button/Button.mjs.map +1 -1
- package/dist/esm/button/Button.module.css.mjs +1 -1
- package/dist/esm/button/ButtonContent.mjs +45 -0
- package/dist/esm/button/ButtonContent.mjs.map +1 -0
- package/dist/esm/button/LinkButton.mjs +42 -0
- package/dist/esm/button/LinkButton.mjs.map +1 -0
- package/dist/esm/card/Card.mjs +1 -0
- package/dist/esm/card/Card.mjs.map +1 -1
- package/dist/esm/checkbox/Checkbox.mjs +1 -0
- package/dist/esm/checkbox/Checkbox.mjs.map +1 -1
- package/dist/esm/copy/Copy.mjs +51 -0
- package/dist/esm/copy/Copy.mjs.map +1 -0
- package/dist/esm/copy/Copy.module.css.mjs +4 -0
- package/dist/esm/copy/Copy.module.css.mjs.map +1 -0
- package/dist/esm/copy/useCopy.mjs +29 -0
- package/dist/esm/copy/useCopy.mjs.map +1 -0
- package/dist/esm/counter/Counter.mjs +6 -2
- package/dist/esm/counter/Counter.mjs.map +1 -1
- package/dist/esm/counter/CounterSlot.mjs +19 -3
- package/dist/esm/counter/CounterSlot.mjs.map +1 -1
- package/dist/esm/counter/CounterSlot.module.css.mjs +1 -1
- package/dist/esm/data-list/DataList.mjs +1 -0
- package/dist/esm/data-list/DataList.mjs.map +1 -1
- package/dist/esm/data-list/DataList.module.css.mjs +1 -1
- package/dist/esm/data-list/DataListRow.mjs +7 -12
- package/dist/esm/data-list/DataListRow.mjs.map +1 -1
- package/dist/esm/disclaimer/Disclaimer.mjs +10 -3
- package/dist/esm/disclaimer/Disclaimer.mjs.map +1 -1
- package/dist/esm/divider/Divider.mjs +5 -0
- package/dist/esm/divider/Divider.mjs.map +1 -1
- package/dist/esm/error-page/ErrorPage.mjs +14 -7
- package/dist/esm/error-page/ErrorPage.mjs.map +1 -1
- package/dist/esm/footer/Footer.mjs +10 -2
- package/dist/esm/footer/Footer.mjs.map +1 -1
- package/dist/esm/grid/Grid.mjs +8 -4
- package/dist/esm/grid/Grid.mjs.map +1 -1
- package/dist/esm/grid/Grid.module.css.mjs +1 -1
- package/dist/esm/grid/GridItem.mjs +2 -0
- package/dist/esm/grid/GridItem.mjs.map +1 -1
- package/dist/esm/header/Header.mjs +10 -2
- package/dist/esm/header/Header.mjs.map +1 -1
- package/dist/esm/header/HeaderNav.mjs +34 -22
- package/dist/esm/header/HeaderNav.mjs.map +1 -1
- package/dist/esm/header/HeaderNav.module.css.mjs +1 -1
- package/dist/esm/hex/Hex.mjs +37 -0
- package/dist/esm/hex/Hex.mjs.map +1 -0
- package/dist/esm/hex/Hex.module.css.mjs +4 -0
- package/dist/esm/hex/Hex.module.css.mjs.map +1 -0
- package/dist/esm/hex/trimHex.mjs +11 -0
- package/dist/esm/hex/trimHex.mjs.map +1 -0
- package/dist/esm/hidden/Hidden.mjs +10 -4
- package/dist/esm/hidden/Hidden.mjs.map +1 -1
- package/dist/esm/hooks/Portal.mjs +16 -13
- package/dist/esm/hooks/Portal.mjs.map +1 -1
- package/dist/esm/hooks/useBodyScrollLock.mjs +49 -13
- package/dist/esm/hooks/useBodyScrollLock.mjs.map +1 -1
- package/dist/esm/hooks/useEdgeFade.mjs +56 -0
- package/dist/esm/hooks/useEdgeFade.mjs.map +1 -0
- package/dist/esm/hooks/useEscape.mjs +8 -5
- package/dist/esm/hooks/useEscape.mjs.map +1 -1
- package/dist/esm/hooks/useFocusTrap.mjs +61 -24
- package/dist/esm/hooks/useFocusTrap.mjs.map +1 -1
- package/dist/esm/hooks/useHideOthers.mjs +47 -0
- package/dist/esm/hooks/useHideOthers.mjs.map +1 -0
- package/dist/esm/hooks/useOutsideClick.mjs +31 -4
- package/dist/esm/hooks/useOutsideClick.mjs.map +1 -1
- package/dist/esm/icon-button/CloseButton.mjs +23 -0
- package/dist/esm/icon-button/CloseButton.mjs.map +1 -0
- package/dist/esm/icon-button/IconButton.mjs +6 -1
- package/dist/esm/icon-button/IconButton.mjs.map +1 -1
- package/dist/esm/icon-button/IconButton.module.css.mjs +1 -1
- package/dist/esm/icons/TokenIcon.mjs +2 -0
- package/dist/esm/icons/TokenIcon.mjs.map +1 -1
- package/dist/esm/identicon/Identicon.mjs +2 -0
- package/dist/esm/identicon/Identicon.mjs.map +1 -1
- package/dist/esm/index.css +14 -4
- package/dist/esm/index.mjs +35 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/info-tooltip/InfoTooltip.mjs +30 -0
- package/dist/esm/info-tooltip/InfoTooltip.mjs.map +1 -0
- package/dist/esm/info-tooltip/InfoTooltip.module.css.mjs +4 -0
- package/dist/esm/info-tooltip/InfoTooltip.module.css.mjs.map +1 -0
- package/dist/esm/input/Input.mjs +4 -8
- package/dist/esm/input/Input.mjs.map +1 -1
- package/dist/esm/input/Input.module.css.mjs +1 -1
- package/dist/esm/link-provider/Anchor.mjs +23 -2
- package/dist/esm/link-provider/Anchor.mjs.map +1 -1
- package/dist/esm/link-provider/LinkProvider.mjs +1 -1
- package/dist/esm/link-provider/LinkProvider.mjs.map +1 -1
- package/dist/esm/logo/Logo.mjs +9 -1
- package/dist/esm/logo/Logo.mjs.map +1 -1
- package/dist/esm/message-box/MessageBox.mjs +1 -0
- package/dist/esm/message-box/MessageBox.mjs.map +1 -1
- package/dist/esm/modal/Modal.mjs +74 -17
- package/dist/esm/modal/Modal.mjs.map +1 -1
- package/dist/esm/nav-link/NavLink.mjs +6 -4
- package/dist/esm/nav-link/NavLink.mjs.map +1 -1
- package/dist/esm/notification/Notification.mjs +13 -7
- package/dist/esm/notification/Notification.mjs.map +1 -1
- package/dist/esm/page-layout/Layout.mjs +21 -0
- package/dist/esm/page-layout/Layout.mjs.map +1 -0
- package/dist/esm/page-layout/Layout.module.css.mjs +4 -0
- package/dist/esm/page-layout/Layout.module.css.mjs.map +1 -0
- package/dist/esm/page-layout/Main.mjs +24 -0
- package/dist/esm/page-layout/Main.mjs.map +1 -0
- package/dist/esm/page-layout/Main.module.css.mjs +4 -0
- package/dist/esm/page-layout/Main.module.css.mjs.map +1 -0
- package/dist/esm/page-layout/PageContent.mjs +18 -0
- package/dist/esm/page-layout/PageContent.mjs.map +1 -0
- package/dist/esm/page-layout/PageContent.module.css.mjs +4 -0
- package/dist/esm/page-layout/PageContent.module.css.mjs.map +1 -0
- package/dist/esm/pagination/Pagination.mjs +12 -7
- package/dist/esm/pagination/Pagination.mjs.map +1 -1
- package/dist/esm/popover/Popover.mjs +72 -16
- package/dist/esm/popover/Popover.mjs.map +1 -1
- package/dist/esm/radio-button/RadioButton.mjs +1 -0
- package/dist/esm/radio-button/RadioButton.mjs.map +1 -1
- package/dist/esm/rich-input/RichInput.mjs +23 -47
- package/dist/esm/rich-input/RichInput.mjs.map +1 -1
- package/dist/esm/rich-input/RichInput.module.css.mjs +1 -1
- package/dist/esm/section-title/SectionTitle.mjs +9 -10
- package/dist/esm/section-title/SectionTitle.mjs.map +1 -1
- package/dist/esm/section-title/SectionTitle.module.css.mjs +1 -1
- package/dist/esm/segmented-control/SegmentedControl.mjs +1 -0
- package/dist/esm/segmented-control/SegmentedControl.mjs.map +1 -1
- package/dist/esm/segmented-control/SegmentedControlCard.mjs +1 -0
- package/dist/esm/segmented-control/SegmentedControlCard.mjs.map +1 -1
- package/dist/esm/sidebar/Sidebar.mjs +136 -0
- package/dist/esm/sidebar/Sidebar.mjs.map +1 -0
- package/dist/esm/sidebar/Sidebar.module.css.mjs +4 -0
- package/dist/esm/sidebar/Sidebar.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarContext.mjs +8 -0
- package/dist/esm/sidebar/SidebarContext.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarGroup.mjs +33 -0
- package/dist/esm/sidebar/SidebarGroup.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarGroup.module.css.mjs +4 -0
- package/dist/esm/sidebar/SidebarGroup.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarInset.mjs +21 -0
- package/dist/esm/sidebar/SidebarInset.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarInset.module.css.mjs +4 -0
- package/dist/esm/sidebar/SidebarInset.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarItem.mjs +38 -0
- package/dist/esm/sidebar/SidebarItem.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarItem.module.css.mjs +4 -0
- package/dist/esm/sidebar/SidebarItem.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarLayout.mjs +37 -0
- package/dist/esm/sidebar/SidebarLayout.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarLayout.module.css.mjs +4 -0
- package/dist/esm/sidebar/SidebarLayout.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarToggle.mjs +40 -0
- package/dist/esm/sidebar/SidebarToggle.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarToggle.module.css.mjs +4 -0
- package/dist/esm/sidebar/SidebarToggle.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/useSidebarDrawer.mjs +43 -0
- package/dist/esm/sidebar/useSidebarDrawer.mjs.map +1 -0
- package/dist/esm/skeleton/Skeleton.mjs +18 -20
- package/dist/esm/skeleton/Skeleton.mjs.map +1 -1
- package/dist/esm/skip-link/SkipLink.mjs +48 -0
- package/dist/esm/skip-link/SkipLink.mjs.map +1 -0
- package/dist/esm/skip-link/SkipLink.module.css.mjs +4 -0
- package/dist/esm/skip-link/SkipLink.module.css.mjs.map +1 -0
- package/dist/esm/slider/Slider.mjs +1 -0
- package/dist/esm/slider/Slider.mjs.map +1 -1
- package/dist/esm/small-card/SmallCard.mjs +6 -2
- package/dist/esm/small-card/SmallCard.mjs.map +1 -1
- package/dist/esm/stack/Stack.mjs +28 -9
- package/dist/esm/stack/Stack.mjs.map +1 -1
- package/dist/esm/stack/Stack.module.css.mjs +1 -1
- package/dist/esm/stat-item/StatItem.mjs +4 -8
- package/dist/esm/stat-item/StatItem.mjs.map +1 -1
- package/dist/esm/stat-item/StatItem.module.css.mjs +1 -1
- package/dist/esm/switch/Switch.mjs +1 -0
- package/dist/esm/switch/Switch.mjs.map +1 -1
- package/dist/esm/tabs/Tabs.mjs +1 -0
- package/dist/esm/tabs/Tabs.mjs.map +1 -1
- package/dist/esm/tag/Tag.mjs +74 -9
- package/dist/esm/tag/Tag.mjs.map +1 -1
- package/dist/esm/tag/Tag.module.css.mjs +1 -1
- package/dist/esm/text-link/TextLink.mjs +10 -13
- package/dist/esm/text-link/TextLink.mjs.map +1 -1
- package/dist/esm/text-link/TextLink.module.css.mjs +1 -1
- package/dist/esm/theme-switcher/ThemeSwitcher.mjs +14 -6
- package/dist/esm/theme-switcher/ThemeSwitcher.mjs.map +1 -1
- package/dist/esm/theme-switcher/ThemeSwitcher.module.css.mjs +4 -0
- package/dist/esm/theme-switcher/ThemeSwitcher.module.css.mjs.map +1 -0
- package/dist/esm/token-amount/TokenAmount.mjs +1 -0
- package/dist/esm/token-amount/TokenAmount.mjs.map +1 -1
- package/dist/esm/token-selector/TokenSelector.mjs +58 -66
- package/dist/esm/token-selector/TokenSelector.mjs.map +1 -1
- package/dist/esm/tooltip/Tooltip.mjs +42 -27
- package/dist/esm/tooltip/Tooltip.mjs.map +1 -1
- package/dist/esm/tx-status/TxStatus.mjs +2 -0
- package/dist/esm/tx-status/TxStatus.mjs.map +1 -1
- package/dist/esm/typography/Typography.mjs +2 -0
- package/dist/esm/typography/Typography.mjs.map +1 -1
- package/dist/esm/utils/ActionElement.mjs +2 -13
- package/dist/esm/utils/ActionElement.mjs.map +1 -1
- package/dist/esm/utils/breakpoints.mjs +19 -0
- package/dist/esm/utils/breakpoints.mjs.map +1 -0
- package/dist/esm/utils/responsive.mjs +17 -27
- package/dist/esm/utils/responsive.mjs.map +1 -1
- package/dist/esm/utils/surface.module.css.mjs +4 -0
- package/dist/esm/utils/surface.module.css.mjs.map +1 -0
- package/dist/index.css +14 -4
- package/dist/styles/breakpoints.css +16 -12
- package/dist/styles/typography-mixins.css +8 -0
- package/dist/types/accordion/Accordion.d.ts +3 -0
- package/dist/types/accordion/Accordion.d.ts.map +1 -1
- package/dist/types/address/Address.d.ts +16 -0
- package/dist/types/address/Address.d.ts.map +1 -0
- package/dist/types/address/index.d.ts +3 -0
- package/dist/types/address/index.d.ts.map +1 -0
- package/dist/types/address-button/AddressButton.d.ts +13 -0
- package/dist/types/address-button/AddressButton.d.ts.map +1 -0
- package/dist/types/address-button/index.d.ts +3 -0
- package/dist/types/address-button/index.d.ts.map +1 -0
- package/dist/types/badge/Badge.d.ts +1 -0
- package/dist/types/badge/Badge.d.ts.map +1 -1
- package/dist/types/banner/Banner.d.ts +1 -0
- package/dist/types/banner/Banner.d.ts.map +1 -1
- package/dist/types/breadcrumbs/Breadcrumbs.d.ts +17 -1
- package/dist/types/breadcrumbs/Breadcrumbs.d.ts.map +1 -1
- package/dist/types/breadcrumbs/index.d.ts +1 -1
- package/dist/types/breadcrumbs/index.d.ts.map +1 -1
- package/dist/types/button/Button.d.ts +6 -26
- package/dist/types/button/Button.d.ts.map +1 -1
- package/dist/types/button/ButtonContent.d.ts +10 -0
- package/dist/types/button/ButtonContent.d.ts.map +1 -0
- package/dist/types/button/LinkButton.d.ts +10 -0
- package/dist/types/button/LinkButton.d.ts.map +1 -0
- package/dist/types/button/index.d.ts +2 -0
- package/dist/types/button/index.d.ts.map +1 -1
- package/dist/types/button/types.d.ts +26 -0
- package/dist/types/button/types.d.ts.map +1 -0
- package/dist/types/card/Card.d.ts +1 -0
- package/dist/types/card/Card.d.ts.map +1 -1
- package/dist/types/checkbox/Checkbox.d.ts +3 -0
- package/dist/types/checkbox/Checkbox.d.ts.map +1 -1
- package/dist/types/colors/colorTokens.d.ts.map +1 -1
- package/dist/types/copy/Copy.d.ts +10 -0
- package/dist/types/copy/Copy.d.ts.map +1 -0
- package/dist/types/copy/index.d.ts +5 -0
- package/dist/types/copy/index.d.ts.map +1 -0
- package/dist/types/copy/useCopy.d.ts +9 -0
- package/dist/types/copy/useCopy.d.ts.map +1 -0
- package/dist/types/counter/Counter.d.ts +6 -2
- package/dist/types/counter/Counter.d.ts.map +1 -1
- package/dist/types/counter/CounterSlot.d.ts +3 -0
- package/dist/types/counter/CounterSlot.d.ts.map +1 -1
- package/dist/types/data-list/DataList.d.ts +1 -0
- package/dist/types/data-list/DataList.d.ts.map +1 -1
- package/dist/types/data-list/DataListRow.d.ts +1 -0
- package/dist/types/data-list/DataListRow.d.ts.map +1 -1
- package/dist/types/disclaimer/Disclaimer.d.ts +9 -2
- package/dist/types/disclaimer/Disclaimer.d.ts.map +1 -1
- package/dist/types/divider/Divider.d.ts +5 -0
- package/dist/types/divider/Divider.d.ts.map +1 -1
- package/dist/types/divider/index.d.ts +1 -1
- package/dist/types/divider/index.d.ts.map +1 -1
- package/dist/types/error-page/ErrorPage.d.ts +17 -4
- package/dist/types/error-page/ErrorPage.d.ts.map +1 -1
- package/dist/types/footer/Footer.d.ts +17 -2
- package/dist/types/footer/Footer.d.ts.map +1 -1
- package/dist/types/footer/index.d.ts +1 -1
- package/dist/types/footer/index.d.ts.map +1 -1
- package/dist/types/grid/Grid.d.ts +21 -22
- package/dist/types/grid/Grid.d.ts.map +1 -1
- package/dist/types/grid/GridItem.d.ts +14 -10
- package/dist/types/grid/GridItem.d.ts.map +1 -1
- package/dist/types/grid/index.d.ts +2 -2
- package/dist/types/grid/index.d.ts.map +1 -1
- package/dist/types/header/Header.d.ts +15 -2
- package/dist/types/header/Header.d.ts.map +1 -1
- package/dist/types/header/HeaderNav.d.ts +10 -2
- package/dist/types/header/HeaderNav.d.ts.map +1 -1
- package/dist/types/header/index.d.ts +2 -2
- package/dist/types/header/index.d.ts.map +1 -1
- package/dist/types/hex/Hex.d.ts +10 -0
- package/dist/types/hex/Hex.d.ts.map +1 -0
- package/dist/types/hex/index.d.ts +4 -0
- package/dist/types/hex/index.d.ts.map +1 -0
- package/dist/types/hex/trimHex.d.ts +2 -0
- package/dist/types/hex/trimHex.d.ts.map +1 -0
- package/dist/types/hidden/Hidden.d.ts +20 -6
- package/dist/types/hidden/Hidden.d.ts.map +1 -1
- package/dist/types/hidden/index.d.ts +1 -1
- package/dist/types/hidden/index.d.ts.map +1 -1
- package/dist/types/hooks/Portal.d.ts +2 -5
- package/dist/types/hooks/Portal.d.ts.map +1 -1
- package/dist/types/hooks/index.d.ts +2 -0
- package/dist/types/hooks/index.d.ts.map +1 -1
- package/dist/types/hooks/useBodyScrollLock.d.ts +4 -2
- package/dist/types/hooks/useBodyScrollLock.d.ts.map +1 -1
- package/dist/types/hooks/useEdgeFade.d.ts +7 -0
- package/dist/types/hooks/useEdgeFade.d.ts.map +1 -0
- package/dist/types/hooks/useEscape.d.ts +4 -2
- package/dist/types/hooks/useEscape.d.ts.map +1 -1
- package/dist/types/hooks/useFocusTrap.d.ts +7 -3
- package/dist/types/hooks/useFocusTrap.d.ts.map +1 -1
- package/dist/types/hooks/useHideOthers.d.ts +3 -0
- package/dist/types/hooks/useHideOthers.d.ts.map +1 -0
- package/dist/types/hooks/useIsomorphicLayoutEffect.d.ts +2 -2
- package/dist/types/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -1
- package/dist/types/hooks/useOutsideClick.d.ts +4 -2
- package/dist/types/hooks/useOutsideClick.d.ts.map +1 -1
- package/dist/types/icon-button/CloseButton.d.ts +9 -0
- package/dist/types/icon-button/CloseButton.d.ts.map +1 -0
- package/dist/types/icon-button/IconButton.d.ts +15 -2
- package/dist/types/icon-button/IconButton.d.ts.map +1 -1
- package/dist/types/icon-button/index.d.ts +2 -0
- package/dist/types/icon-button/index.d.ts.map +1 -1
- package/dist/types/icons/TokenIcon.d.ts +1 -0
- package/dist/types/icons/TokenIcon.d.ts.map +1 -1
- package/dist/types/identicon/Identicon.d.ts +5 -0
- package/dist/types/identicon/Identicon.d.ts.map +1 -1
- package/dist/types/index.d.ts +13 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/info-tooltip/InfoTooltip.d.ts +12 -0
- package/dist/types/info-tooltip/InfoTooltip.d.ts.map +1 -0
- package/dist/types/info-tooltip/index.d.ts +3 -0
- package/dist/types/info-tooltip/index.d.ts.map +1 -0
- package/dist/types/input/Input.d.ts +1 -0
- package/dist/types/input/Input.d.ts.map +1 -1
- package/dist/types/link-provider/Anchor.d.ts +17 -1
- package/dist/types/link-provider/Anchor.d.ts.map +1 -1
- package/dist/types/link-provider/LinkProvider.d.ts +8 -2
- package/dist/types/link-provider/LinkProvider.d.ts.map +1 -1
- package/dist/types/link-provider/index.d.ts +1 -1
- package/dist/types/link-provider/index.d.ts.map +1 -1
- package/dist/types/logo/Logo.d.ts +20 -3
- package/dist/types/logo/Logo.d.ts.map +1 -1
- package/dist/types/logo/index.d.ts +1 -1
- package/dist/types/logo/index.d.ts.map +1 -1
- package/dist/types/message-box/MessageBox.d.ts +3 -0
- package/dist/types/message-box/MessageBox.d.ts.map +1 -1
- package/dist/types/modal/Modal.d.ts +21 -3
- package/dist/types/modal/Modal.d.ts.map +1 -1
- package/dist/types/modal/index.d.ts +2 -2
- package/dist/types/modal/index.d.ts.map +1 -1
- package/dist/types/nav-link/NavLink.d.ts +17 -0
- package/dist/types/nav-link/NavLink.d.ts.map +1 -1
- package/dist/types/nav-link/index.d.ts +1 -1
- package/dist/types/nav-link/index.d.ts.map +1 -1
- package/dist/types/notification/Notification.d.ts +7 -2
- package/dist/types/notification/Notification.d.ts.map +1 -1
- package/dist/types/page-layout/Layout.d.ts +5 -0
- package/dist/types/page-layout/Layout.d.ts.map +1 -0
- package/dist/types/page-layout/Main.d.ts +6 -0
- package/dist/types/page-layout/Main.d.ts.map +1 -0
- package/dist/types/page-layout/PageContent.d.ts +7 -0
- package/dist/types/page-layout/PageContent.d.ts.map +1 -0
- package/dist/types/page-layout/index.d.ts +7 -0
- package/dist/types/page-layout/index.d.ts.map +1 -0
- package/dist/types/pagination/Pagination.d.ts +3 -0
- package/dist/types/pagination/Pagination.d.ts.map +1 -1
- package/dist/types/popover/Popover.d.ts +32 -4
- package/dist/types/popover/Popover.d.ts.map +1 -1
- package/dist/types/popover/index.d.ts +1 -1
- package/dist/types/popover/index.d.ts.map +1 -1
- package/dist/types/radio-button/RadioButton.d.ts +3 -0
- package/dist/types/radio-button/RadioButton.d.ts.map +1 -1
- package/dist/types/rich-input/RichInput.d.ts +8 -1
- package/dist/types/rich-input/RichInput.d.ts.map +1 -1
- package/dist/types/section-title/SectionTitle.d.ts +8 -2
- package/dist/types/section-title/SectionTitle.d.ts.map +1 -1
- package/dist/types/section-title/index.d.ts +1 -1
- package/dist/types/section-title/index.d.ts.map +1 -1
- package/dist/types/segmented-control/SegmentedControl.d.ts +1 -0
- package/dist/types/segmented-control/SegmentedControl.d.ts.map +1 -1
- package/dist/types/segmented-control/SegmentedControlCard.d.ts +1 -0
- package/dist/types/segmented-control/SegmentedControlCard.d.ts.map +1 -1
- package/dist/types/sidebar/Sidebar.d.ts +15 -0
- package/dist/types/sidebar/Sidebar.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarContext.d.ts +6 -0
- package/dist/types/sidebar/SidebarContext.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarGroup.d.ts +7 -0
- package/dist/types/sidebar/SidebarGroup.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarInset.d.ts +5 -0
- package/dist/types/sidebar/SidebarInset.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarItem.d.ts +10 -0
- package/dist/types/sidebar/SidebarItem.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarLayout.d.ts +18 -0
- package/dist/types/sidebar/SidebarLayout.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarToggle.d.ts +13 -0
- package/dist/types/sidebar/SidebarToggle.d.ts.map +1 -0
- package/dist/types/sidebar/index.d.ts +17 -0
- package/dist/types/sidebar/index.d.ts.map +1 -0
- package/dist/types/sidebar/useSidebarDrawer.d.ts +23 -0
- package/dist/types/sidebar/useSidebarDrawer.d.ts.map +1 -0
- package/dist/types/skeleton/Skeleton.d.ts +17 -3
- package/dist/types/skeleton/Skeleton.d.ts.map +1 -1
- package/dist/types/skip-link/SkipLink.d.ts +11 -0
- package/dist/types/skip-link/SkipLink.d.ts.map +1 -0
- package/dist/types/skip-link/index.d.ts +3 -0
- package/dist/types/skip-link/index.d.ts.map +1 -0
- package/dist/types/slider/Slider.d.ts +1 -0
- package/dist/types/slider/Slider.d.ts.map +1 -1
- package/dist/types/small-card/SmallCard.d.ts +21 -2
- package/dist/types/small-card/SmallCard.d.ts.map +1 -1
- package/dist/types/stack/Stack.d.ts +24 -15
- package/dist/types/stack/Stack.d.ts.map +1 -1
- package/dist/types/stack/index.d.ts +1 -1
- package/dist/types/stack/index.d.ts.map +1 -1
- package/dist/types/stat-item/StatItem.d.ts +6 -0
- package/dist/types/stat-item/StatItem.d.ts.map +1 -1
- package/dist/types/switch/Switch.d.ts +3 -0
- package/dist/types/switch/Switch.d.ts.map +1 -1
- package/dist/types/tabs/Tabs.d.ts +1 -0
- package/dist/types/tabs/Tabs.d.ts.map +1 -1
- package/dist/types/tag/Tag.d.ts +31 -3
- package/dist/types/tag/Tag.d.ts.map +1 -1
- package/dist/types/text-link/TextLink.d.ts +25 -2
- package/dist/types/text-link/TextLink.d.ts.map +1 -1
- package/dist/types/text-link/index.d.ts +1 -1
- package/dist/types/text-link/index.d.ts.map +1 -1
- package/dist/types/theme-switcher/ThemeSwitcher.d.ts +9 -3
- package/dist/types/theme-switcher/ThemeSwitcher.d.ts.map +1 -1
- package/dist/types/token-amount/TokenAmount.d.ts +1 -0
- package/dist/types/token-amount/TokenAmount.d.ts.map +1 -1
- package/dist/types/token-selector/TokenSelector.d.ts +5 -1
- package/dist/types/token-selector/TokenSelector.d.ts.map +1 -1
- package/dist/types/tooltip/Tooltip.d.ts +2 -0
- package/dist/types/tooltip/Tooltip.d.ts.map +1 -1
- package/dist/types/tx-status/TxStatus.d.ts +3 -0
- package/dist/types/tx-status/TxStatus.d.ts.map +1 -1
- package/dist/types/typography/Typography.d.ts +4 -0
- package/dist/types/typography/Typography.d.ts.map +1 -1
- package/dist/types/utils/ActionElement.d.ts +4 -4
- package/dist/types/utils/ActionElement.d.ts.map +1 -1
- package/dist/types/utils/breakpoints.d.ts +16 -0
- package/dist/types/utils/breakpoints.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +5 -2
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/polymorphic.d.ts +15 -0
- package/dist/types/utils/polymorphic.d.ts.map +1 -0
- package/dist/types/utils/responsive.d.ts +29 -14
- package/dist/types/utils/responsive.d.ts.map +1 -1
- package/package.json +7 -3
package/README.md
CHANGED
|
@@ -28,13 +28,22 @@ function Widget() {
|
|
|
28
28
|
}
|
|
29
29
|
```
|
|
30
30
|
|
|
31
|
-
Theme providers (`ThemeProvider`, `CookieThemeProvider
|
|
31
|
+
Theme providers (`ThemeProvider`, `CookieThemeProvider`) are re-exported from `@lidofinance/lido-shared-ui`. The color tokens follow the `data-lido-theme` attribute they set, so switching to the dark theme restyles these components. `ThemeSwitcher` is the app-ui-styled theme toggle, since the shared `ThemeToggler` relies on `--lido-ui-*` tokens that app-ui doesn't define. `ThemeSwitcher` needs `CookieThemeProvider`; the static `ThemeProvider` has no toggle, so the switcher renders but clicking does nothing. In SSR apps pass the request cookie as `initialThemeName` so the label is right on first paint (the icon already follows `data-lido-theme` in CSS).
|
|
32
32
|
|
|
33
33
|
## Router links
|
|
34
34
|
|
|
35
|
-
|
|
35
|
+
Every app-ui link (`TextLink`, `NavLink`, `LinkButton`, `SmallCard`, `Tag` with `href`, `Breadcrumbs` items with `href`, `Logo` with `href`) renders a plain `<a>` by default. Wrap the app in `LinkProvider` to route in-app hrefs through your router's link component; `externalComponent` does the same for absolute URLs. In-app hash links, `download` links and links with a non-`_self` `target` stay a plain `<a>`; absolute URLs always go to `externalComponent` when one is set. Adapters must be `forwardRef` components: under React 18 `ref` is never passed as a prop.
|
|
36
36
|
|
|
37
|
-
Next.js
|
|
37
|
+
Next.js 13+ — `next/link` renders its own `<a>` and forwards its ref, so pass it directly:
|
|
38
|
+
|
|
39
|
+
```tsx
|
|
40
|
+
import NextLink from 'next/link'
|
|
41
|
+
import { LinkProvider } from '@lidofinance/lido-app-ui'
|
|
42
|
+
|
|
43
|
+
;<LinkProvider component={NextLink}>{children}</LinkProvider>
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Next.js 12 — `next/link` needs an `<a>` child, so wrap it once at module level. Router-only props set per link with `linkProps` are split out so they don't land on the `<a>`; this requires the `LinkRouterProps` augmentation shown below:
|
|
38
47
|
|
|
39
48
|
```tsx
|
|
40
49
|
import { forwardRef } from 'react'
|
|
@@ -43,8 +52,8 @@ import NextLink from 'next/link'
|
|
|
43
52
|
import { LinkProvider, type LinkComponentProps } from '@lidofinance/lido-app-ui'
|
|
44
53
|
|
|
45
54
|
const AppLink = forwardRef<HTMLAnchorElement, LinkComponentProps>(
|
|
46
|
-
({ href, ...rest }, ref) => (
|
|
47
|
-
<NextLink href={href}>
|
|
55
|
+
({ href, prefetch, replace, scroll, ...rest }, ref) => (
|
|
56
|
+
<NextLink href={href} prefetch={prefetch} replace={replace} scroll={scroll}>
|
|
48
57
|
<a ref={ref} {...rest} />
|
|
49
58
|
</NextLink>
|
|
50
59
|
),
|
|
@@ -59,42 +68,99 @@ export default function App({ Component, pageProps }: AppProps) {
|
|
|
59
68
|
}
|
|
60
69
|
```
|
|
61
70
|
|
|
71
|
+
react-router — it takes `to` instead of `href`:
|
|
72
|
+
|
|
73
|
+
```tsx
|
|
74
|
+
import { forwardRef } from 'react'
|
|
75
|
+
import { Link } from 'react-router-dom'
|
|
76
|
+
import type { LinkComponentProps } from '@lidofinance/lido-app-ui'
|
|
77
|
+
|
|
78
|
+
const AppLink = forwardRef<HTMLAnchorElement, LinkComponentProps>(
|
|
79
|
+
({ href, ...rest }, ref) => <Link ref={ref} to={href} {...rest} />,
|
|
80
|
+
)
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Router-only options such as `prefetch` are typed by augmenting `LinkRouterProps` once, then set per link with `linkProps`. They reach only the `LinkProvider` components, never a plain `<a>`:
|
|
84
|
+
|
|
85
|
+
```tsx
|
|
86
|
+
declare module '@lidofinance/lido-app-ui' {
|
|
87
|
+
interface LinkRouterProps {
|
|
88
|
+
prefetch?: boolean
|
|
89
|
+
replace?: boolean
|
|
90
|
+
scroll?: boolean
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
;<SmallCard href='/keys' title='Keys' linkProps={{ prefetch: false }} />
|
|
95
|
+
```
|
|
96
|
+
|
|
62
97
|
## Customization
|
|
63
98
|
|
|
64
|
-
Override any token after importing the stylesheet:
|
|
99
|
+
Override any token after importing the stylesheet. Non-color tokens (radii, typography, z-index, spacing, `--lido-app-ui-shadow-dropdown`) are theme-independent and live on `:root`. Color tokens and `--lido-app-ui-shadow-popover` (it reads color tokens) are redeclared on every theme scope, so override them on `:root, [data-lido-theme]` or per theme, not on `:root` alone:
|
|
65
100
|
|
|
66
101
|
```css
|
|
67
102
|
:root {
|
|
68
|
-
--lido-app-ui-color-border-active: #0085ff;
|
|
69
103
|
--lido-app-ui-border-radius-card: 20px;
|
|
70
104
|
}
|
|
105
|
+
|
|
106
|
+
:root,
|
|
107
|
+
[data-lido-theme='light'] {
|
|
108
|
+
--lido-app-ui-color-border-active: #0085ff;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
[data-lido-theme='dark'] {
|
|
112
|
+
--lido-app-ui-color-border-active: #339dff;
|
|
113
|
+
}
|
|
71
114
|
```
|
|
72
115
|
|
|
73
116
|
The typography mixins and breakpoint definitions are published too, for products running `postcss-mixins` / `postcss-custom-media`:
|
|
74
117
|
|
|
75
118
|
```js
|
|
76
|
-
// postcss.config.
|
|
77
|
-
import
|
|
119
|
+
// postcss.config.mjs
|
|
120
|
+
import { createRequire } from 'node:module'
|
|
121
|
+
import path from 'node:path'
|
|
122
|
+
|
|
123
|
+
const require = createRequire(import.meta.url)
|
|
124
|
+
const stylesDir = path.dirname(
|
|
125
|
+
require.resolve('@lidofinance/lido-app-ui/styles/breakpoints.css'),
|
|
126
|
+
)
|
|
78
127
|
|
|
79
128
|
export default {
|
|
80
129
|
plugins: {
|
|
81
130
|
'@csstools/postcss-global-data': {
|
|
82
|
-
files: [
|
|
83
|
-
require.resolve('@lidofinance/lido-app-ui/styles/breakpoints.css'),
|
|
84
|
-
],
|
|
85
|
-
},
|
|
86
|
-
'postcss-mixins': {
|
|
87
|
-
mixinsDir: path.dirname(
|
|
88
|
-
require.resolve(
|
|
89
|
-
'@lidofinance/lido-app-ui/styles/typography-mixins.css',
|
|
90
|
-
),
|
|
91
|
-
),
|
|
131
|
+
files: [path.join(stylesDir, 'breakpoints.css')],
|
|
92
132
|
},
|
|
133
|
+
'postcss-mixins': { mixinsDir: stylesDir },
|
|
93
134
|
'postcss-custom-media': { preserve: false },
|
|
94
135
|
},
|
|
95
136
|
}
|
|
96
137
|
```
|
|
97
138
|
|
|
139
|
+
## Layout
|
|
140
|
+
|
|
141
|
+
Breakpoints are desktop-first: `-down` is `(width < N)`, `-up` is `(width >= N)`. The queries use range syntax (Safari 16.4+, Chrome 104+, Firefox 63+).
|
|
142
|
+
|
|
143
|
+
| Name | N |
|
|
144
|
+
| ----- | ------ |
|
|
145
|
+
| `lg` | 1280px |
|
|
146
|
+
| `ml` | 1024px |
|
|
147
|
+
| `md` | 900px |
|
|
148
|
+
| `sm` | 768px |
|
|
149
|
+
| `xs` | 600px |
|
|
150
|
+
| `xxs` | 400px |
|
|
151
|
+
|
|
152
|
+
Two component breakpoints sit outside the scale: the Sidebar drawer at `--lido-app-ui-breakpoint-sidebar-down` / `-up` (1280px, `sidebarBreakpointWidth`) and Logo `auto` dropping its wordmark at `--lido-app-ui-breakpoint-logo-down` / `-up` (1024px, `logoBreakpointWidth`).
|
|
153
|
+
|
|
154
|
+
In CSS use `@media (--lido-app-ui-breakpoint-md-down)`. Responsive props such as `Stack` `gap` take `{ base, mdDown, smDown, … }` (bare `md`/`sm` are aliases), where a key applies below that width:
|
|
155
|
+
|
|
156
|
+
```tsx
|
|
157
|
+
<Stack gap={{ base: 24, smDown: 12 }}>{children}</Stack>
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
Page shells align to the page gutter, which shrinks on narrow screens: `padding-inline: var(--lido-app-ui-page-gutter)`.
|
|
161
|
+
|
|
162
|
+
Popovers, tooltips and modals with `withOverlay` portal to `<body>` and stack by `--lido-app-ui-z-index-*`: header 250, popover and modal 1000, toast 1050, tooltip 1100. Keep your own app chrome below 1000. `Modal` `inertOthers` makes the rest of `<body>` inert; mark body-level toast or live-region roots with `data-lido-overlay-keep` to keep them live.
|
|
163
|
+
|
|
98
164
|
## More
|
|
99
165
|
|
|
100
166
|
This package is part of the [`lidofinance/ui`](https://github.com/lidofinance/ui) monorepo — see the [repo README](https://github.com/lidofinance/ui#readme) for the full package overview, theming, CSS variable customization, and contribution guide.
|
package/dist/README.md
CHANGED
|
@@ -28,13 +28,22 @@ function Widget() {
|
|
|
28
28
|
}
|
|
29
29
|
```
|
|
30
30
|
|
|
31
|
-
Theme providers (`ThemeProvider`, `CookieThemeProvider
|
|
31
|
+
Theme providers (`ThemeProvider`, `CookieThemeProvider`) are re-exported from `@lidofinance/lido-shared-ui`. The color tokens follow the `data-lido-theme` attribute they set, so switching to the dark theme restyles these components. `ThemeSwitcher` is the app-ui-styled theme toggle, since the shared `ThemeToggler` relies on `--lido-ui-*` tokens that app-ui doesn't define. `ThemeSwitcher` needs `CookieThemeProvider`; the static `ThemeProvider` has no toggle, so the switcher renders but clicking does nothing. In SSR apps pass the request cookie as `initialThemeName` so the label is right on first paint (the icon already follows `data-lido-theme` in CSS).
|
|
32
32
|
|
|
33
33
|
## Router links
|
|
34
34
|
|
|
35
|
-
|
|
35
|
+
Every app-ui link (`TextLink`, `NavLink`, `LinkButton`, `SmallCard`, `Tag` with `href`, `Breadcrumbs` items with `href`, `Logo` with `href`) renders a plain `<a>` by default. Wrap the app in `LinkProvider` to route in-app hrefs through your router's link component; `externalComponent` does the same for absolute URLs. In-app hash links, `download` links and links with a non-`_self` `target` stay a plain `<a>`; absolute URLs always go to `externalComponent` when one is set. Adapters must be `forwardRef` components: under React 18 `ref` is never passed as a prop.
|
|
36
36
|
|
|
37
|
-
Next.js
|
|
37
|
+
Next.js 13+ — `next/link` renders its own `<a>` and forwards its ref, so pass it directly:
|
|
38
|
+
|
|
39
|
+
```tsx
|
|
40
|
+
import NextLink from 'next/link'
|
|
41
|
+
import { LinkProvider } from '@lidofinance/lido-app-ui'
|
|
42
|
+
|
|
43
|
+
;<LinkProvider component={NextLink}>{children}</LinkProvider>
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Next.js 12 — `next/link` needs an `<a>` child, so wrap it once at module level. Router-only props set per link with `linkProps` are split out so they don't land on the `<a>`; this requires the `LinkRouterProps` augmentation shown below:
|
|
38
47
|
|
|
39
48
|
```tsx
|
|
40
49
|
import { forwardRef } from 'react'
|
|
@@ -43,8 +52,8 @@ import NextLink from 'next/link'
|
|
|
43
52
|
import { LinkProvider, type LinkComponentProps } from '@lidofinance/lido-app-ui'
|
|
44
53
|
|
|
45
54
|
const AppLink = forwardRef<HTMLAnchorElement, LinkComponentProps>(
|
|
46
|
-
({ href, ...rest }, ref) => (
|
|
47
|
-
<NextLink href={href}>
|
|
55
|
+
({ href, prefetch, replace, scroll, ...rest }, ref) => (
|
|
56
|
+
<NextLink href={href} prefetch={prefetch} replace={replace} scroll={scroll}>
|
|
48
57
|
<a ref={ref} {...rest} />
|
|
49
58
|
</NextLink>
|
|
50
59
|
),
|
|
@@ -59,42 +68,99 @@ export default function App({ Component, pageProps }: AppProps) {
|
|
|
59
68
|
}
|
|
60
69
|
```
|
|
61
70
|
|
|
71
|
+
react-router — it takes `to` instead of `href`:
|
|
72
|
+
|
|
73
|
+
```tsx
|
|
74
|
+
import { forwardRef } from 'react'
|
|
75
|
+
import { Link } from 'react-router-dom'
|
|
76
|
+
import type { LinkComponentProps } from '@lidofinance/lido-app-ui'
|
|
77
|
+
|
|
78
|
+
const AppLink = forwardRef<HTMLAnchorElement, LinkComponentProps>(
|
|
79
|
+
({ href, ...rest }, ref) => <Link ref={ref} to={href} {...rest} />,
|
|
80
|
+
)
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Router-only options such as `prefetch` are typed by augmenting `LinkRouterProps` once, then set per link with `linkProps`. They reach only the `LinkProvider` components, never a plain `<a>`:
|
|
84
|
+
|
|
85
|
+
```tsx
|
|
86
|
+
declare module '@lidofinance/lido-app-ui' {
|
|
87
|
+
interface LinkRouterProps {
|
|
88
|
+
prefetch?: boolean
|
|
89
|
+
replace?: boolean
|
|
90
|
+
scroll?: boolean
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
;<SmallCard href='/keys' title='Keys' linkProps={{ prefetch: false }} />
|
|
95
|
+
```
|
|
96
|
+
|
|
62
97
|
## Customization
|
|
63
98
|
|
|
64
|
-
Override any token after importing the stylesheet:
|
|
99
|
+
Override any token after importing the stylesheet. Non-color tokens (radii, typography, z-index, spacing, `--lido-app-ui-shadow-dropdown`) are theme-independent and live on `:root`. Color tokens and `--lido-app-ui-shadow-popover` (it reads color tokens) are redeclared on every theme scope, so override them on `:root, [data-lido-theme]` or per theme, not on `:root` alone:
|
|
65
100
|
|
|
66
101
|
```css
|
|
67
102
|
:root {
|
|
68
|
-
--lido-app-ui-color-border-active: #0085ff;
|
|
69
103
|
--lido-app-ui-border-radius-card: 20px;
|
|
70
104
|
}
|
|
105
|
+
|
|
106
|
+
:root,
|
|
107
|
+
[data-lido-theme='light'] {
|
|
108
|
+
--lido-app-ui-color-border-active: #0085ff;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
[data-lido-theme='dark'] {
|
|
112
|
+
--lido-app-ui-color-border-active: #339dff;
|
|
113
|
+
}
|
|
71
114
|
```
|
|
72
115
|
|
|
73
116
|
The typography mixins and breakpoint definitions are published too, for products running `postcss-mixins` / `postcss-custom-media`:
|
|
74
117
|
|
|
75
118
|
```js
|
|
76
|
-
// postcss.config.
|
|
77
|
-
import
|
|
119
|
+
// postcss.config.mjs
|
|
120
|
+
import { createRequire } from 'node:module'
|
|
121
|
+
import path from 'node:path'
|
|
122
|
+
|
|
123
|
+
const require = createRequire(import.meta.url)
|
|
124
|
+
const stylesDir = path.dirname(
|
|
125
|
+
require.resolve('@lidofinance/lido-app-ui/styles/breakpoints.css'),
|
|
126
|
+
)
|
|
78
127
|
|
|
79
128
|
export default {
|
|
80
129
|
plugins: {
|
|
81
130
|
'@csstools/postcss-global-data': {
|
|
82
|
-
files: [
|
|
83
|
-
require.resolve('@lidofinance/lido-app-ui/styles/breakpoints.css'),
|
|
84
|
-
],
|
|
85
|
-
},
|
|
86
|
-
'postcss-mixins': {
|
|
87
|
-
mixinsDir: path.dirname(
|
|
88
|
-
require.resolve(
|
|
89
|
-
'@lidofinance/lido-app-ui/styles/typography-mixins.css',
|
|
90
|
-
),
|
|
91
|
-
),
|
|
131
|
+
files: [path.join(stylesDir, 'breakpoints.css')],
|
|
92
132
|
},
|
|
133
|
+
'postcss-mixins': { mixinsDir: stylesDir },
|
|
93
134
|
'postcss-custom-media': { preserve: false },
|
|
94
135
|
},
|
|
95
136
|
}
|
|
96
137
|
```
|
|
97
138
|
|
|
139
|
+
## Layout
|
|
140
|
+
|
|
141
|
+
Breakpoints are desktop-first: `-down` is `(width < N)`, `-up` is `(width >= N)`. The queries use range syntax (Safari 16.4+, Chrome 104+, Firefox 63+).
|
|
142
|
+
|
|
143
|
+
| Name | N |
|
|
144
|
+
| ----- | ------ |
|
|
145
|
+
| `lg` | 1280px |
|
|
146
|
+
| `ml` | 1024px |
|
|
147
|
+
| `md` | 900px |
|
|
148
|
+
| `sm` | 768px |
|
|
149
|
+
| `xs` | 600px |
|
|
150
|
+
| `xxs` | 400px |
|
|
151
|
+
|
|
152
|
+
Two component breakpoints sit outside the scale: the Sidebar drawer at `--lido-app-ui-breakpoint-sidebar-down` / `-up` (1280px, `sidebarBreakpointWidth`) and Logo `auto` dropping its wordmark at `--lido-app-ui-breakpoint-logo-down` / `-up` (1024px, `logoBreakpointWidth`).
|
|
153
|
+
|
|
154
|
+
In CSS use `@media (--lido-app-ui-breakpoint-md-down)`. Responsive props such as `Stack` `gap` take `{ base, mdDown, smDown, … }` (bare `md`/`sm` are aliases), where a key applies below that width:
|
|
155
|
+
|
|
156
|
+
```tsx
|
|
157
|
+
<Stack gap={{ base: 24, smDown: 12 }}>{children}</Stack>
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
Page shells align to the page gutter, which shrinks on narrow screens: `padding-inline: var(--lido-app-ui-page-gutter)`.
|
|
161
|
+
|
|
162
|
+
Popovers, tooltips and modals with `withOverlay` portal to `<body>` and stack by `--lido-app-ui-z-index-*`: header 250, popover and modal 1000, toast 1050, tooltip 1100. Keep your own app chrome below 1000. `Modal` `inertOthers` makes the rest of `<body>` inert; mark body-level toast or live-region roots with `data-lido-overlay-keep` to keep them live.
|
|
163
|
+
|
|
98
164
|
## More
|
|
99
165
|
|
|
100
166
|
This package is part of the [`lidofinance/ui`](https://github.com/lidofinance/ui) monorepo — see the [repo README](https://github.com/lidofinance/ui#readme) for the full package overview, theming, CSS variable customization, and contribution guide.
|
|
@@ -9,6 +9,7 @@ const jsxRuntime = require('react/jsx-runtime');
|
|
|
9
9
|
const IconChevronUp = require('../icons/components/base/IconChevronUp.cjs');
|
|
10
10
|
const IconChevronDown = require('../icons/components/base/IconChevronDown.cjs');
|
|
11
11
|
|
|
12
|
+
/** Collapsible section, uncontrolled by default; pass `expanded` + `onExpandedChange` to drive it from your own state. */
|
|
12
13
|
const Accordion = _ref => {
|
|
13
14
|
let {
|
|
14
15
|
title,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Accordion.cjs","sources":["../../../src/accordion/Accordion.tsx"],"sourcesContent":["import {\n useId,\n useState,\n type ComponentPropsWithoutRef,\n type ReactNode,\n} from 'react'\n\nimport { IconChevronDown, IconChevronUp } from '../icons'\nimport cn from 'classnames'\n\nimport styles from './Accordion.module.css'\n\nexport type AccordionDataTestId = {\n root?: string\n header?: string\n title?: string\n content?: string\n}\n\nexport type AccordionProps = Omit<ComponentPropsWithoutRef<'div'>, 'title'> & {\n title: ReactNode\n border?: boolean\n defaultExpanded?: boolean\n expanded?: boolean\n onExpandedChange?: (expanded: boolean) => void\n dataTestId?: AccordionDataTestId\n}\n\nexport const Accordion = ({\n title,\n border = true,\n defaultExpanded = false,\n expanded,\n onExpandedChange,\n children,\n className,\n dataTestId,\n ...rest\n}: AccordionProps) => {\n const [uncontrolledExpanded, setUncontrolledExpanded] =\n useState(defaultExpanded)\n const isExpanded = expanded ?? uncontrolledExpanded\n const contentId = useId()\n\n const handleToggle = () => {\n const next = !isExpanded\n if (expanded == null) setUncontrolledExpanded(next)\n onExpandedChange?.(next)\n }\n\n return (\n <div\n className={cn(styles.accordion, className, {\n [styles.borderless]: !border,\n })}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <button\n type='button'\n className={styles.header}\n aria-expanded={isExpanded}\n aria-controls={contentId}\n onClick={handleToggle}\n data-testid={dataTestId?.header}\n >\n <span className={styles.title} data-testid={dataTestId?.title}>\n {title}\n </span>\n <span className={styles.chevron} aria-hidden='true'>\n {isExpanded ? <IconChevronUp /> : <IconChevronDown />}\n </span>\n </button>\n <div\n id={contentId}\n className={cn(styles.contentWrapper, {\n [styles.expanded]: isExpanded,\n })}\n >\n <div className={styles.content}>\n <div\n className={styles.contentInner}\n data-testid={dataTestId?.content}\n >\n {children}\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nAccordion.displayName = 'Accordion'\n"],"names":["Accordion","_ref","title","border","defaultExpanded","expanded","onExpandedChange","children","className","dataTestId","rest","uncontrolledExpanded","setUncontrolledExpanded","useState","isExpanded","contentId","useId","handleToggle","next","_jsxs","cn","styles","accordion","borderless","root","type","header","onClick","_jsx","chevron","IconChevronUp","IconChevronDown","id","contentWrapper","content","contentInner","displayName"],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"Accordion.cjs","sources":["../../../src/accordion/Accordion.tsx"],"sourcesContent":["import {\n useId,\n useState,\n type ComponentPropsWithoutRef,\n type ReactNode,\n} from 'react'\n\nimport { IconChevronDown, IconChevronUp } from '../icons'\nimport cn from 'classnames'\n\nimport styles from './Accordion.module.css'\n\nexport type AccordionDataTestId = {\n root?: string\n header?: string\n title?: string\n content?: string\n}\n\nexport type AccordionProps = Omit<ComponentPropsWithoutRef<'div'>, 'title'> & {\n title: ReactNode\n /** Bottom divider; turn it off on the last item of a list. */\n border?: boolean\n defaultExpanded?: boolean\n /** Controlled mode, pair with `onExpandedChange`. */\n expanded?: boolean\n onExpandedChange?: (expanded: boolean) => void\n dataTestId?: AccordionDataTestId\n}\n\n/** Collapsible section, uncontrolled by default; pass `expanded` + `onExpandedChange` to drive it from your own state. */\nexport const Accordion = ({\n title,\n border = true,\n defaultExpanded = false,\n expanded,\n onExpandedChange,\n children,\n className,\n dataTestId,\n ...rest\n}: AccordionProps) => {\n const [uncontrolledExpanded, setUncontrolledExpanded] =\n useState(defaultExpanded)\n const isExpanded = expanded ?? uncontrolledExpanded\n const contentId = useId()\n\n const handleToggle = () => {\n const next = !isExpanded\n if (expanded == null) setUncontrolledExpanded(next)\n onExpandedChange?.(next)\n }\n\n return (\n <div\n className={cn(styles.accordion, className, {\n [styles.borderless]: !border,\n })}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <button\n type='button'\n className={styles.header}\n aria-expanded={isExpanded}\n aria-controls={contentId}\n onClick={handleToggle}\n data-testid={dataTestId?.header}\n >\n <span className={styles.title} data-testid={dataTestId?.title}>\n {title}\n </span>\n <span className={styles.chevron} aria-hidden='true'>\n {isExpanded ? <IconChevronUp /> : <IconChevronDown />}\n </span>\n </button>\n <div\n id={contentId}\n className={cn(styles.contentWrapper, {\n [styles.expanded]: isExpanded,\n })}\n >\n <div className={styles.content}>\n <div\n className={styles.contentInner}\n data-testid={dataTestId?.content}\n >\n {children}\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nAccordion.displayName = 'Accordion'\n"],"names":["Accordion","_ref","title","border","defaultExpanded","expanded","onExpandedChange","children","className","dataTestId","rest","uncontrolledExpanded","setUncontrolledExpanded","useState","isExpanded","contentId","useId","handleToggle","next","_jsxs","cn","styles","accordion","borderless","root","type","header","onClick","_jsx","chevron","IconChevronUp","IconChevronDown","id","contentWrapper","content","contentInner","displayName"],"mappings":";;;;;;;;;;;AA8BA;AACaA,MAAAA,SAAS,GAAGC,IAAA,IAUH;EAAA,IAVI;IACxBC,KAAK;AACLC,IAAAA,MAAM,GAAG,IAAI;AACbC,IAAAA,eAAe,GAAG,KAAK;IACvBC,QAAQ;IACRC,gBAAgB;IAChBC,QAAQ;IACRC,SAAS;IACTC,UAAU;IACV,GAAGC,IAAAA;AACW,GAAC,GAAAT,IAAA,CAAA;EACf,MAAM,CAACU,oBAAoB,EAAEC,uBAAuB,CAAC,GACnDC,cAAQ,CAACT,eAAe,CAAC,CAAA;AAC3B,EAAA,MAAMU,UAAU,GAAGT,QAAQ,IAAIM,oBAAoB,CAAA;AACnD,EAAA,MAAMI,SAAS,GAAGC,WAAK,EAAE,CAAA;EAEzB,MAAMC,YAAY,GAAGA,MAAM;IACzB,MAAMC,IAAI,GAAG,CAACJ,UAAU,CAAA;AACxB,IAAA,IAAIT,QAAQ,IAAI,IAAI,EAAEO,uBAAuB,CAACM,IAAI,CAAC,CAAA;IACnDZ,gBAAgB,GAAGY,IAAI,CAAC,CAAA;GACzB,CAAA;AAED,EAAA,oBACEC,eAAA,CAAA,KAAA,EAAA;IACEX,SAAS,EAAEY,EAAE,CAACC,gBAAM,CAACC,SAAS,EAAEd,SAAS,EAAE;AACzC,MAAA,CAACa,gBAAM,CAACE,UAAU,GAAG,CAACpB,MAAAA;AACxB,KAAC,CAAE;IACH,aAAaM,EAAAA,UAAU,EAAEe,IAAK;AAAA,IAAA,GAC1Bd,IAAI;AAAAH,IAAAA,QAAA,gBAERY,eAAA,CAAA,QAAA,EAAA;AACEM,MAAAA,IAAI,EAAC,QAAQ;MACbjB,SAAS,EAAEa,gBAAM,CAACK,MAAO;AACzB,MAAA,eAAA,EAAeZ,UAAW;AAC1B,MAAA,eAAA,EAAeC,SAAU;AACzBY,MAAAA,OAAO,EAAEV,YAAa;MACtB,aAAaR,EAAAA,UAAU,EAAEiB,MAAO;AAAAnB,MAAAA,QAAA,gBAEhCqB,cAAA,CAAA,MAAA,EAAA;QAAMpB,SAAS,EAAEa,gBAAM,CAACnB,KAAM;QAAC,aAAaO,EAAAA,UAAU,EAAEP,KAAM;AAAAK,QAAAA,QAAA,EAC3DL,KAAAA;OACG,CAAC,eACP0B,cAAA,CAAA,MAAA,EAAA;QAAMpB,SAAS,EAAEa,gBAAM,CAACQ,OAAQ;AAAC,QAAA,aAAA,EAAY,MAAM;AAAAtB,QAAAA,QAAA,EAChDO,UAAU,gBAAGc,cAAA,CAACE,2BAAa,EAAE,EAAA,CAAC,gBAAGF,cAAA,CAACG,+BAAe,EAAE,EAAA,CAAA;AAAC,OACjD,CAAC,CAAA;KACD,CAAC,eACTH,cAAA,CAAA,KAAA,EAAA;AACEI,MAAAA,EAAE,EAAEjB,SAAU;AACdP,MAAAA,SAAS,EAAEY,EAAE,CAACC,gBAAM,CAACY,cAAc,EAAE;QACnC,CAACZ,gBAAM,CAAChB,QAAQ,GAAGS,UAAAA;AACrB,OAAC,CAAE;AAAAP,MAAAA,QAAA,eAEHqB,cAAA,CAAA,KAAA,EAAA;QAAKpB,SAAS,EAAEa,gBAAM,CAACa,OAAQ;AAAA3B,QAAAA,QAAA,eAC7BqB,cAAA,CAAA,KAAA,EAAA;UACEpB,SAAS,EAAEa,gBAAM,CAACc,YAAa;UAC/B,aAAa1B,EAAAA,UAAU,EAAEyB,OAAQ;AAAA3B,UAAAA,QAAA,EAEhCA,QAAAA;SACE,CAAA;OACF,CAAA;AAAC,KACH,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAEV,EAAC;AAEDP,SAAS,CAACoC,WAAW,GAAG,WAAW;;;;"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
const react = require('react');
|
|
6
|
+
const cn = require('classnames');
|
|
7
|
+
const Address_module = require('./Address.module.css.cjs');
|
|
8
|
+
const jsxRuntime = require('react/jsx-runtime');
|
|
9
|
+
const Identicon = require('../identicon/Identicon.cjs');
|
|
10
|
+
const Tooltip = require('../tooltip/Tooltip.cjs');
|
|
11
|
+
const Copy = require('../copy/Copy.cjs');
|
|
12
|
+
const Hex = require('../hex/Hex.cjs');
|
|
13
|
+
|
|
14
|
+
const Address = /*#__PURE__*/react.forwardRef((_ref, ref) => {
|
|
15
|
+
let {
|
|
16
|
+
address,
|
|
17
|
+
symbols,
|
|
18
|
+
identicon,
|
|
19
|
+
tooltip = false,
|
|
20
|
+
copy = false,
|
|
21
|
+
className,
|
|
22
|
+
children,
|
|
23
|
+
...rest
|
|
24
|
+
} = _ref;
|
|
25
|
+
const hex = /*#__PURE__*/jsxRuntime.jsx(Hex.Hex, {
|
|
26
|
+
value: address,
|
|
27
|
+
symbols: symbols,
|
|
28
|
+
title: tooltip ? '' : undefined
|
|
29
|
+
});
|
|
30
|
+
return /*#__PURE__*/jsxRuntime.jsxs("span", {
|
|
31
|
+
ref: ref,
|
|
32
|
+
className: cn(Address_module.root, className),
|
|
33
|
+
...rest,
|
|
34
|
+
children: [identicon != null ? /*#__PURE__*/jsxRuntime.jsx(Identicon.Identicon, {
|
|
35
|
+
address: address,
|
|
36
|
+
size: identicon,
|
|
37
|
+
className: cn(Address_module.identicon, identicon >= 28 && Address_module.identiconLarge)
|
|
38
|
+
}) : null, tooltip ? /*#__PURE__*/jsxRuntime.jsx(Tooltip.Tooltip, {
|
|
39
|
+
content: address,
|
|
40
|
+
tabIndex: 0,
|
|
41
|
+
children: hex
|
|
42
|
+
}) : hex, copy ? /*#__PURE__*/jsxRuntime.jsx(Copy.Copy, {
|
|
43
|
+
text: address
|
|
44
|
+
}) : null, children]
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
Address.displayName = 'Address';
|
|
48
|
+
|
|
49
|
+
exports.Address = Address;
|
|
50
|
+
//# sourceMappingURL=Address.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Address.cjs","sources":["../../../src/address/Address.tsx"],"sourcesContent":["import { forwardRef, type ComponentPropsWithoutRef } from 'react'\n\nimport cn from 'classnames'\n\nimport { Copy } from '../copy'\nimport { Hex } from '../hex'\nimport { Identicon } from '../identicon'\nimport { Tooltip } from '../tooltip'\nimport styles from './Address.module.css'\n\nexport type AddressProps = ComponentPropsWithoutRef<'span'> & {\n address: string\n symbols?: number\n identicon?: number\n tooltip?: boolean\n copy?: boolean\n}\n\nexport const Address = forwardRef<HTMLSpanElement, AddressProps>(\n (\n {\n address,\n symbols,\n identicon,\n tooltip = false,\n copy = false,\n className,\n children,\n ...rest\n },\n ref,\n ) => {\n const hex = (\n <Hex value={address} symbols={symbols} title={tooltip ? '' : undefined} />\n )\n\n return (\n <span ref={ref} className={cn(styles.root, className)} {...rest}>\n {identicon != null ? (\n <Identicon\n address={address}\n size={identicon}\n className={cn(\n styles.identicon,\n identicon >= 28 && styles.identiconLarge,\n )}\n />\n ) : null}\n {tooltip ? (\n <Tooltip content={address} tabIndex={0}>\n {hex}\n </Tooltip>\n ) : (\n hex\n )}\n {copy ? <Copy text={address} /> : null}\n {children}\n </span>\n )\n },\n)\n\nAddress.displayName = 'Address'\n"],"names":["Address","forwardRef","_ref","ref","address","symbols","identicon","tooltip","copy","className","children","rest","hex","_jsx","Hex","value","title","undefined","_jsxs","cn","styles","root","Identicon","size","identiconLarge","Tooltip","content","tabIndex","Copy","text","displayName"],"mappings":";;;;;;;;;;;;;AAkBO,MAAMA,OAAO,gBAAGC,gBAAU,CAC/B,CAAAC,IAAA,EAWEC,GAAG,KACA;EAAA,IAXH;IACEC,OAAO;IACPC,OAAO;IACPC,SAAS;AACTC,IAAAA,OAAO,GAAG,KAAK;AACfC,IAAAA,IAAI,GAAG,KAAK;IACZC,SAAS;IACTC,QAAQ;IACR,GAAGC,IAAAA;AACL,GAAC,GAAAT,IAAA,CAAA;AAGD,EAAA,MAAMU,GAAG,gBACPC,cAAA,CAACC,OAAG,EAAA;AAACC,IAAAA,KAAK,EAAEX,OAAQ;AAACC,IAAAA,OAAO,EAAEA,OAAQ;AAACW,IAAAA,KAAK,EAAET,OAAO,GAAG,EAAE,GAAGU,SAAAA;AAAU,GAAE,CAC1E,CAAA;AAED,EAAA,oBACEC,eAAA,CAAA,MAAA,EAAA;AAAMf,IAAAA,GAAG,EAAEA,GAAI;IAACM,SAAS,EAAEU,EAAE,CAACC,cAAM,CAACC,IAAI,EAAEZ,SAAS,CAAE;AAAA,IAAA,GAAKE,IAAI;AAAAD,IAAAA,QAAA,GAC5DJ,SAAS,IAAI,IAAI,gBAChBO,cAAA,CAACS,mBAAS,EAAA;AACRlB,MAAAA,OAAO,EAAEA,OAAQ;AACjBmB,MAAAA,IAAI,EAAEjB,SAAU;AAChBG,MAAAA,SAAS,EAAEU,EAAE,CACXC,cAAM,CAACd,SAAS,EAChBA,SAAS,IAAI,EAAE,IAAIc,cAAM,CAACI,cAC5B,CAAA;KACD,CAAC,GACA,IAAI,EACPjB,OAAO,gBACNM,cAAA,CAACY,eAAO,EAAA;AAACC,MAAAA,OAAO,EAAEtB,OAAQ;AAACuB,MAAAA,QAAQ,EAAE,CAAE;AAAAjB,MAAAA,QAAA,EACpCE,GAAAA;KACM,CAAC,GAEVA,GACD,EACAJ,IAAI,gBAAGK,cAAA,CAACe,SAAI,EAAA;AAACC,MAAAA,IAAI,EAAEzB,OAAAA;AAAQ,KAAE,CAAC,GAAG,IAAI,EACrCM,QAAQ,CAAA;AAAA,GACL,CAAC,CAAA;AAEX,CACF,EAAC;AAEDV,OAAO,CAAC8B,WAAW,GAAG,SAAS;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Address.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
const react = require('react');
|
|
6
|
+
const cn = require('classnames');
|
|
7
|
+
const surface_module = require('../utils/surface.module.css.cjs');
|
|
8
|
+
const AddressButton_module = require('./AddressButton.module.css.cjs');
|
|
9
|
+
const jsxRuntime = require('react/jsx-runtime');
|
|
10
|
+
const IconLoaderCircle = require('../icons/components/base/IconLoaderCircle.cjs');
|
|
11
|
+
const Address = require('../address/Address.cjs');
|
|
12
|
+
|
|
13
|
+
/** Pill button showing an identicon and the trimmed address. */
|
|
14
|
+
const AddressButton = /*#__PURE__*/react.forwardRef((_ref, ref) => {
|
|
15
|
+
let {
|
|
16
|
+
address,
|
|
17
|
+
symbols,
|
|
18
|
+
loading = false,
|
|
19
|
+
disabled = false,
|
|
20
|
+
className,
|
|
21
|
+
type = 'button',
|
|
22
|
+
...rest
|
|
23
|
+
} = _ref;
|
|
24
|
+
return /*#__PURE__*/jsxRuntime.jsx("button", {
|
|
25
|
+
ref: ref,
|
|
26
|
+
type: type,
|
|
27
|
+
disabled: disabled || loading,
|
|
28
|
+
"aria-busy": loading || undefined,
|
|
29
|
+
className: cn(surface_module.surface, AddressButton_module.button, loading && !disabled && AddressButton_module.loading, className),
|
|
30
|
+
...rest,
|
|
31
|
+
children: loading ? /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
32
|
+
children: [/*#__PURE__*/jsxRuntime.jsx("span", {
|
|
33
|
+
className: AddressButton_module.slot,
|
|
34
|
+
"aria-hidden": "true",
|
|
35
|
+
children: /*#__PURE__*/jsxRuntime.jsx(IconLoaderCircle.IconLoaderCircle, {
|
|
36
|
+
className: AddressButton_module.spinner
|
|
37
|
+
})
|
|
38
|
+
}), "Loading"]
|
|
39
|
+
}) : /*#__PURE__*/jsxRuntime.jsx(Address.Address, {
|
|
40
|
+
address: address,
|
|
41
|
+
symbols: symbols,
|
|
42
|
+
identicon: 28
|
|
43
|
+
})
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
AddressButton.displayName = 'AddressButton';
|
|
47
|
+
|
|
48
|
+
exports.AddressButton = AddressButton;
|
|
49
|
+
//# sourceMappingURL=AddressButton.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddressButton.cjs","sources":["../../../src/address-button/AddressButton.tsx"],"sourcesContent":["import { forwardRef, type ButtonHTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport { Address } from '../address'\nimport { IconLoaderCircle } from '../icons'\nimport surfaceStyles from '../utils/surface.module.css'\nimport styles from './AddressButton.module.css'\n\nexport type AddressButtonProps = Omit<\n ButtonHTMLAttributes<HTMLButtonElement>,\n 'children'\n> & {\n address: string\n symbols?: number\n loading?: boolean\n}\n\n/** Pill button showing an identicon and the trimmed address. */\nexport const AddressButton = forwardRef<HTMLButtonElement, AddressButtonProps>(\n (\n {\n address,\n symbols,\n loading = false,\n disabled = false,\n className,\n type = 'button',\n ...rest\n },\n ref,\n ) => (\n <button\n ref={ref}\n type={type}\n disabled={disabled || loading}\n aria-busy={loading || undefined}\n className={cn(\n surfaceStyles.surface,\n styles.button,\n loading && !disabled && styles.loading,\n className,\n )}\n {...rest}\n >\n {loading ? (\n <>\n <span className={styles.slot} aria-hidden='true'>\n <IconLoaderCircle className={styles.spinner} />\n </span>\n Loading\n </>\n ) : (\n <Address address={address} symbols={symbols} identicon={28} />\n )}\n </button>\n ),\n)\n\nAddressButton.displayName = 'AddressButton'\n"],"names":["AddressButton","forwardRef","_ref","ref","address","symbols","loading","disabled","className","type","rest","_jsx","undefined","cn","surfaceStyles","surface","styles","button","children","_jsxs","_Fragment","slot","IconLoaderCircle","spinner","Address","identicon","displayName"],"mappings":";;;;;;;;;;;;AAkBA;AACO,MAAMA,aAAa,gBAAGC,gBAAU,CACrC,CAAAC,IAAA,EAUEC,GAAG,KAAA;EAAA,IATH;IACEC,OAAO;IACPC,OAAO;AACPC,IAAAA,OAAO,GAAG,KAAK;AACfC,IAAAA,QAAQ,GAAG,KAAK;IAChBC,SAAS;AACTC,IAAAA,IAAI,GAAG,QAAQ;IACf,GAAGC,IAAAA;AACL,GAAC,GAAAR,IAAA,CAAA;AAAA,EAAA,oBAGDS,cAAA,CAAA,QAAA,EAAA;AACER,IAAAA,GAAG,EAAEA,GAAI;AACTM,IAAAA,IAAI,EAAEA,IAAK;IACXF,QAAQ,EAAEA,QAAQ,IAAID,OAAQ;IAC9B,WAAWA,EAAAA,OAAO,IAAIM,SAAU;IAChCJ,SAAS,EAAEK,EAAE,CACXC,cAAa,CAACC,OAAO,EACrBC,oBAAM,CAACC,MAAM,EACbX,OAAO,IAAI,CAACC,QAAQ,IAAIS,oBAAM,CAACV,OAAO,EACtCE,SACF,CAAE;AAAA,IAAA,GACEE,IAAI;AAAAQ,IAAAA,QAAA,EAEPZ,OAAO,gBACNa,eAAA,CAAAC,mBAAA,EAAA;AAAAF,MAAAA,QAAA,gBACEP,cAAA,CAAA,MAAA,EAAA;QAAMH,SAAS,EAAEQ,oBAAM,CAACK,IAAK;AAAC,QAAA,aAAA,EAAY,MAAM;QAAAH,QAAA,eAC9CP,cAAA,CAACW,iCAAgB,EAAA;UAACd,SAAS,EAAEQ,oBAAM,CAACO,OAAAA;SAAU,CAAA;AAAC,OAC3C,CAAC,EAET,SAAA,CAAA;AAAA,KAAE,CAAC,gBAEHZ,cAAA,CAACa,eAAO,EAAA;AAACpB,MAAAA,OAAO,EAAEA,OAAQ;AAACC,MAAAA,OAAO,EAAEA,OAAQ;AAACoB,MAAAA,SAAS,EAAE,EAAA;KAAK,CAAA;AAC9D,GACK,CAAC,CAAA;AAAA,CAEb,EAAC;AAEDzB,aAAa,CAAC0B,WAAW,GAAG,eAAe;;;;"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const styles = {"button":"AddressButton-module_button__cNJUm","loading":"AddressButton-module_loading__TmxUZ","slot":"AddressButton-module_slot__A5Xbe","spinner":"AddressButton-module_spinner__JztAP","spin":"AddressButton-module_spin__no7O5"};
|
|
4
|
+
|
|
5
|
+
module.exports = styles;
|
|
6
|
+
//# sourceMappingURL=AddressButton.module.css.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddressButton.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
package/dist/cjs/badge/Badge.cjs
CHANGED
|
@@ -6,6 +6,7 @@ const cn = require('classnames');
|
|
|
6
6
|
const Badge_module = require('./Badge.module.css.cjs');
|
|
7
7
|
const jsxRuntime = require('react/jsx-runtime');
|
|
8
8
|
|
|
9
|
+
/** Bordered pill for a single trust/verification marker (audited, verified). */
|
|
9
10
|
const Badge = _ref => {
|
|
10
11
|
let {
|
|
11
12
|
icon,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Badge.cjs","sources":["../../../src/badge/Badge.tsx"],"sourcesContent":["import cn from 'classnames'\nimport type { HTMLAttributes, ReactNode } from 'react'\nimport styles from './Badge.module.css'\n\nexport type BadgeDataTestId = {\n root?: string\n icon?: string\n}\n\nexport type BadgeProps = HTMLAttributes<HTMLSpanElement> & {\n /** Optional glyph before the label. Omitted entirely when not passed. */\n icon?: ReactNode\n dataTestId?: BadgeDataTestId\n}\n\nexport const Badge = ({\n icon,\n className,\n children,\n dataTestId,\n ...rest\n}: BadgeProps) => (\n <span\n className={cn(styles.badge, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {icon && (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.icon}\n >\n {icon}\n </span>\n )}\n {children}\n </span>\n)\n"],"names":["Badge","_ref","icon","className","children","dataTestId","rest","_jsxs","cn","styles","badge","root","_jsx"],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"Badge.cjs","sources":["../../../src/badge/Badge.tsx"],"sourcesContent":["import cn from 'classnames'\nimport type { HTMLAttributes, ReactNode } from 'react'\nimport styles from './Badge.module.css'\n\nexport type BadgeDataTestId = {\n root?: string\n icon?: string\n}\n\nexport type BadgeProps = HTMLAttributes<HTMLSpanElement> & {\n /** Optional glyph before the label. Omitted entirely when not passed. */\n icon?: ReactNode\n dataTestId?: BadgeDataTestId\n}\n\n/** Bordered pill for a single trust/verification marker (audited, verified). */\nexport const Badge = ({\n icon,\n className,\n children,\n dataTestId,\n ...rest\n}: BadgeProps) => (\n <span\n className={cn(styles.badge, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {icon && (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.icon}\n >\n {icon}\n </span>\n )}\n {children}\n </span>\n)\n"],"names":["Badge","_ref","icon","className","children","dataTestId","rest","_jsxs","cn","styles","badge","root","_jsx"],"mappings":";;;;;;;;AAeA;AACO,MAAMA,KAAK,GAAGC,IAAA,IAAA;EAAA,IAAC;IACpBC,IAAI;IACJC,SAAS;IACTC,QAAQ;IACRC,UAAU;IACV,GAAGC,IAAAA;AACO,GAAC,GAAAL,IAAA,CAAA;AAAA,EAAA,oBACXM,eAAA,CAAA,MAAA,EAAA;IACEJ,SAAS,EAAEK,EAAE,CAACC,YAAM,CAACC,KAAK,EAAEP,SAAS,CAAE;IACvC,aAAaE,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;IAAAF,QAAA,EAAA,CAEPF,IAAI,iBACHU,cAAA,CAAA,MAAA,EAAA;MACET,SAAS,EAAEM,YAAM,CAACP,IAAK;AACvB,MAAA,aAAA,EAAY,MAAM;MAClB,aAAaG,EAAAA,UAAU,EAAEH,IAAK;AAAAE,MAAAA,QAAA,EAE7BF,IAAAA;KACG,CACP,EACAE,QAAQ,CAAA;AAAA,GACL,CAAC,CAAA;AAAA;;;;"}
|
|
@@ -6,6 +6,7 @@ const cn = require('classnames');
|
|
|
6
6
|
const Banner_module = require('./Banner.module.css.cjs');
|
|
7
7
|
const jsxRuntime = require('react/jsx-runtime');
|
|
8
8
|
|
|
9
|
+
/** Compact card row: icon, title and description, with an optional `action` slot on the right (usually a `Button`). */
|
|
9
10
|
const Banner = _ref => {
|
|
10
11
|
let {
|
|
11
12
|
icon,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Banner.cjs","sources":["../../../src/banner/Banner.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Banner.module.css'\n\nexport type BannerDataTestId = {\n root?: string\n icon?: string\n title?: string\n description?: string\n action?: string\n}\n\nexport type BannerProps = ComponentPropsWithoutRef<'div'> & {\n icon?: ReactNode\n title: ReactNode\n description?: ReactNode\n action?: ReactNode\n dataTestId?: BannerDataTestId\n}\n\nexport const Banner = ({\n icon,\n title,\n description,\n action,\n className,\n dataTestId,\n ...rest\n}: BannerProps) => (\n <div\n className={cn(styles.banner, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <div className={styles.content}>\n {icon ? (\n <span className={styles.icon} data-testid={dataTestId?.icon}>\n {icon}\n </span>\n ) : null}\n <div className={styles.text}>\n <p className={styles.title} data-testid={dataTestId?.title}>\n {title}\n </p>\n {description ? (\n <p\n className={styles.description}\n data-testid={dataTestId?.description}\n >\n {description}\n </p>\n ) : null}\n </div>\n </div>\n {action ? (\n <div className={styles.action} data-testid={dataTestId?.action}>\n {action}\n </div>\n ) : null}\n </div>\n)\n\nBanner.displayName = 'Banner'\n"],"names":["Banner","_ref","icon","title","description","action","className","dataTestId","rest","_jsxs","cn","styles","banner","root","children","content","_jsx","text","displayName"],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"Banner.cjs","sources":["../../../src/banner/Banner.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Banner.module.css'\n\nexport type BannerDataTestId = {\n root?: string\n icon?: string\n title?: string\n description?: string\n action?: string\n}\n\nexport type BannerProps = ComponentPropsWithoutRef<'div'> & {\n icon?: ReactNode\n title: ReactNode\n description?: ReactNode\n action?: ReactNode\n dataTestId?: BannerDataTestId\n}\n\n/** Compact card row: icon, title and description, with an optional `action` slot on the right (usually a `Button`). */\nexport const Banner = ({\n icon,\n title,\n description,\n action,\n className,\n dataTestId,\n ...rest\n}: BannerProps) => (\n <div\n className={cn(styles.banner, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <div className={styles.content}>\n {icon ? (\n <span className={styles.icon} data-testid={dataTestId?.icon}>\n {icon}\n </span>\n ) : null}\n <div className={styles.text}>\n <p className={styles.title} data-testid={dataTestId?.title}>\n {title}\n </p>\n {description ? (\n <p\n className={styles.description}\n data-testid={dataTestId?.description}\n >\n {description}\n </p>\n ) : null}\n </div>\n </div>\n {action ? (\n <div className={styles.action} data-testid={dataTestId?.action}>\n {action}\n </div>\n ) : null}\n </div>\n)\n\nBanner.displayName = 'Banner'\n"],"names":["Banner","_ref","icon","title","description","action","className","dataTestId","rest","_jsxs","cn","styles","banner","root","children","content","_jsx","text","displayName"],"mappings":";;;;;;;;AAsBA;AACO,MAAMA,MAAM,GAAGC,IAAA,IAAA;EAAA,IAAC;IACrBC,IAAI;IACJC,KAAK;IACLC,WAAW;IACXC,MAAM;IACNC,SAAS;IACTC,UAAU;IACV,GAAGC,IAAAA;AACQ,GAAC,GAAAP,IAAA,CAAA;AAAA,EAAA,oBACZQ,eAAA,CAAA,KAAA,EAAA;IACEH,SAAS,EAAEI,EAAE,CAACC,aAAM,CAACC,MAAM,EAAEN,SAAS,CAAE;IACxC,aAAaC,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAM,IAAAA,QAAA,gBAERL,eAAA,CAAA,KAAA,EAAA;MAAKH,SAAS,EAAEK,aAAM,CAACI,OAAQ;MAAAD,QAAA,EAAA,CAC5BZ,IAAI,gBACHc,cAAA,CAAA,MAAA,EAAA;QAAMV,SAAS,EAAEK,aAAM,CAACT,IAAK;QAAC,aAAaK,EAAAA,UAAU,EAAEL,IAAK;AAAAY,QAAAA,QAAA,EACzDZ,IAAAA;AAAI,OACD,CAAC,GACL,IAAI,eACRO,eAAA,CAAA,KAAA,EAAA;QAAKH,SAAS,EAAEK,aAAM,CAACM,IAAK;AAAAH,QAAAA,QAAA,gBAC1BE,cAAA,CAAA,GAAA,EAAA;UAAGV,SAAS,EAAEK,aAAM,CAACR,KAAM;UAAC,aAAaI,EAAAA,UAAU,EAAEJ,KAAM;AAAAW,UAAAA,QAAA,EACxDX,KAAAA;AAAK,SACL,CAAC,EACHC,WAAW,gBACVY,cAAA,CAAA,GAAA,EAAA;UACEV,SAAS,EAAEK,aAAM,CAACP,WAAY;UAC9B,aAAaG,EAAAA,UAAU,EAAEH,WAAY;AAAAU,UAAAA,QAAA,EAEpCV,WAAAA;SACA,CAAC,GACF,IAAI,CAAA;AAAA,OACL,CAAC,CAAA;AAAA,KACH,CAAC,EACLC,MAAM,gBACLW,cAAA,CAAA,KAAA,EAAA;MAAKV,SAAS,EAAEK,aAAM,CAACN,MAAO;MAAC,aAAaE,EAAAA,UAAU,EAAEF,MAAO;AAAAS,MAAAA,QAAA,EAC5DT,MAAAA;KACE,CAAC,GACJ,IAAI,CAAA;AAAA,GACL,CAAC,CAAA;AAAA,EACP;AAEDL,MAAM,CAACkB,WAAW,GAAG,QAAQ;;;;"}
|