@lidofinance/lido-ui 3.9.0 → 3.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/accordion/Accordion.js +30 -11
- package/dist/cjs/accordion/Accordion.js.map +1 -1
- package/dist/cjs/accordion/types.js +0 -2
- package/dist/cjs/accordion/types.js.map +1 -1
- package/dist/cjs/accordion/useExpanded.js.map +1 -1
- package/dist/cjs/address/Address.js +16 -8
- package/dist/cjs/address/Address.js.map +1 -1
- package/dist/cjs/addressBadge/AddressBadge.js +5 -5
- package/dist/cjs/addressBadge/AddressBadge.js.map +1 -1
- package/dist/cjs/block/Block.js +8 -8
- package/dist/cjs/block/Block.js.map +1 -1
- package/dist/cjs/button/Button.js +21 -13
- package/dist/cjs/button/Button.js.map +1 -1
- package/dist/cjs/button/ButtonIcon.js +20 -12
- package/dist/cjs/button/ButtonIcon.js.map +1 -1
- package/dist/cjs/button/useRipple.js +5 -6
- package/dist/cjs/button/useRipple.js.map +1 -1
- package/dist/cjs/checkbox/Checkbox.js +26 -22
- package/dist/cjs/checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/checkbox/types.js +0 -2
- package/dist/cjs/checkbox/types.js.map +1 -1
- package/dist/cjs/chip/Chip.js +10 -10
- package/dist/cjs/chip/Chip.js.map +1 -1
- package/dist/cjs/chip/types.js +0 -2
- package/dist/cjs/chip/types.js.map +1 -1
- package/dist/cjs/container/Container.js +8 -8
- package/dist/cjs/container/Container.js.map +1 -1
- package/dist/cjs/content-theme/content-theme.js +11 -3
- package/dist/cjs/content-theme/content-theme.js.map +1 -1
- package/dist/cjs/content-theme/types.js +0 -2
- package/dist/cjs/content-theme/types.js.map +1 -1
- package/dist/cjs/cookie-theme-toggler/cookie-theme-toggler.js +8 -5
- package/dist/cjs/cookie-theme-toggler/cookie-theme-toggler.js.map +1 -1
- package/dist/cjs/cookies-tooltip/cookies-tooltip.js +42 -19
- package/dist/cjs/cookies-tooltip/cookies-tooltip.js.map +1 -1
- package/dist/cjs/data-table/DataTable.js +30 -18
- package/dist/cjs/data-table/DataTable.js.map +1 -1
- package/dist/cjs/data-table/types.js +0 -2
- package/dist/cjs/data-table/types.js.map +1 -1
- package/dist/cjs/divider/Divider.js +8 -8
- package/dist/cjs/divider/Divider.js.map +1 -1
- package/dist/cjs/heading/Heading.js +26 -23
- package/dist/cjs/heading/Heading.js.map +1 -1
- package/dist/cjs/hooks/useMergeRefs.js +0 -2
- package/dist/cjs/hooks/useMergeRefs.js.map +1 -1
- package/dist/cjs/hooks/useOutsideClick.js +1 -2
- package/dist/cjs/hooks/useOutsideClick.js.map +1 -1
- package/dist/cjs/icons/index.js +8747 -6483
- package/dist/cjs/icons/index.js.map +1 -1
- package/dist/cjs/identicon/Identicon.js +14 -14
- package/dist/cjs/identicon/Identicon.js.map +1 -1
- package/dist/cjs/identicon/IdenticonBadge.js +23 -19
- package/dist/cjs/identicon/IdenticonBadge.js.map +1 -1
- package/dist/cjs/identicon/types.js +0 -2
- package/dist/cjs/identicon/types.js.map +1 -1
- package/dist/cjs/input/Input.js +59 -38
- package/dist/cjs/input/Input.js.map +1 -1
- package/dist/cjs/input/InputGroup.js +22 -14
- package/dist/cjs/input/InputGroup.js.map +1 -1
- package/dist/cjs/input/OptionsSlider.js +2 -2
- package/dist/cjs/input/OptionsSlider.js.map +1 -1
- package/dist/cjs/input/SliderInput.js +41 -24
- package/dist/cjs/input/SliderInput.js.map +1 -1
- package/dist/cjs/input/Textarea.js +50 -37
- package/dist/cjs/input/Textarea.js.map +1 -1
- package/dist/cjs/input/types.js +0 -2
- package/dist/cjs/input/types.js.map +1 -1
- package/dist/cjs/lido-logo/LidoLogo.js +27 -21
- package/dist/cjs/lido-logo/LidoLogo.js.map +1 -1
- package/dist/cjs/link/Link.js +6 -6
- package/dist/cjs/link/Link.js.map +1 -1
- package/dist/cjs/loaders/InlineLoader.js +13 -11
- package/dist/cjs/loaders/InlineLoader.js.map +1 -1
- package/dist/cjs/loaders/Loader.js +28 -24
- package/dist/cjs/loaders/Loader.js.map +1 -1
- package/dist/cjs/main-menu/MainMenu.js +9 -8
- package/dist/cjs/main-menu/MainMenu.js.map +1 -1
- package/dist/cjs/main-menu/MainMenuItem.js +14 -8
- package/dist/cjs/main-menu/MainMenuItem.js.map +1 -1
- package/dist/cjs/modal/Modal.js +52 -27
- package/dist/cjs/modal/Modal.js.map +1 -1
- package/dist/cjs/modal/ModalButton.js +17 -9
- package/dist/cjs/modal/ModalButton.js.map +1 -1
- package/dist/cjs/modal/ModalExtra.js +5 -5
- package/dist/cjs/modal/ModalExtra.js.map +1 -1
- package/dist/cjs/modal/ModalOverlay.js +18 -15
- package/dist/cjs/modal/ModalOverlay.js.map +1 -1
- package/dist/cjs/modal/ModalStyles.js +3 -4
- package/dist/cjs/modal/ModalStyles.js.map +1 -1
- package/dist/cjs/modal/types.js +0 -2
- package/dist/cjs/modal/types.js.map +1 -1
- package/dist/cjs/modal/useModalClose.js +1 -2
- package/dist/cjs/modal/useModalClose.js.map +1 -1
- package/dist/cjs/modal/useModalFocus.js +1 -2
- package/dist/cjs/modal/useModalFocus.js.map +1 -1
- package/dist/cjs/pagination/Pagination.js +28 -23
- package/dist/cjs/pagination/Pagination.js.map +1 -1
- package/dist/cjs/pagination/PaginationItem.js +8 -8
- package/dist/cjs/pagination/PaginationItem.js.map +1 -1
- package/dist/cjs/pagination/types.js +0 -2
- package/dist/cjs/pagination/types.js.map +1 -1
- package/dist/cjs/popover/Popover.js +8 -9
- package/dist/cjs/popover/Popover.js.map +1 -1
- package/dist/cjs/popover/PopoverRoot.js +20 -16
- package/dist/cjs/popover/PopoverRoot.js.map +1 -1
- package/dist/cjs/popover/PopoverStyles.js +2 -2
- package/dist/cjs/popover/PopoverStyles.js.map +1 -1
- package/dist/cjs/popover/types.js +0 -2
- package/dist/cjs/popover/types.js.map +1 -1
- package/dist/cjs/popover/usePopoverPosition.js +4 -5
- package/dist/cjs/popover/usePopoverPosition.js.map +1 -1
- package/dist/cjs/popup-menu/PopupMenu.js +17 -13
- package/dist/cjs/popup-menu/PopupMenu.js.map +1 -1
- package/dist/cjs/popup-menu/PopupMenuItem.js +21 -12
- package/dist/cjs/popup-menu/PopupMenuItem.js.map +1 -1
- package/dist/cjs/popup-menu/PopupMenuProvider.js +8 -8
- package/dist/cjs/popup-menu/PopupMenuProvider.js.map +1 -1
- package/dist/cjs/popup-menu/types.js +0 -2
- package/dist/cjs/popup-menu/types.js.map +1 -1
- package/dist/cjs/popup-menu/usePopupFocus.js +3 -4
- package/dist/cjs/popup-menu/usePopupFocus.js.map +1 -1
- package/dist/cjs/section/Section.js +21 -8
- package/dist/cjs/section/Section.js.map +1 -1
- package/dist/cjs/section/types.js +0 -2
- package/dist/cjs/section/types.js.map +1 -1
- package/dist/cjs/select/Option.js +8 -8
- package/dist/cjs/select/Option.js.map +1 -1
- package/dist/cjs/select/Select.js +43 -31
- package/dist/cjs/select/Select.js.map +1 -1
- package/dist/cjs/select/SelectArrow.js +9 -7
- package/dist/cjs/select/SelectArrow.js.map +1 -1
- package/dist/cjs/select/SelectIcon.js +10 -8
- package/dist/cjs/select/SelectIcon.js.map +1 -1
- package/dist/cjs/select/types.js +0 -2
- package/dist/cjs/select/types.js.map +1 -1
- package/dist/cjs/select/useSelect.js +5 -6
- package/dist/cjs/select/useSelect.js.map +1 -1
- package/dist/cjs/select/useSelectWidth.js +1 -2
- package/dist/cjs/select/useSelectWidth.js.map +1 -1
- package/dist/cjs/service-page/ServicePage.js +19 -10
- package/dist/cjs/service-page/ServicePage.js.map +1 -1
- package/dist/cjs/service-page/types.js +0 -2
- package/dist/cjs/service-page/types.js.map +1 -1
- package/dist/cjs/stack/HStack.js +8 -8
- package/dist/cjs/stack/HStack.js.map +1 -1
- package/dist/cjs/stack/Stack.js +12 -10
- package/dist/cjs/stack/Stack.js.map +1 -1
- package/dist/cjs/stack/StackItem.js +8 -8
- package/dist/cjs/stack/StackItem.js.map +1 -1
- package/dist/cjs/stack/StackProvider.js +8 -8
- package/dist/cjs/stack/StackProvider.js.map +1 -1
- package/dist/cjs/stack/VStack.js +8 -8
- package/dist/cjs/stack/VStack.js.map +1 -1
- package/dist/cjs/styled-system/withStyledSystem.js +0 -1
- package/dist/cjs/styled-system/withStyledSystem.js.map +1 -1
- package/dist/cjs/table/Table.js +6 -6
- package/dist/cjs/table/Table.js.map +1 -1
- package/dist/cjs/table/Tbody.js +6 -6
- package/dist/cjs/table/Tbody.js.map +1 -1
- package/dist/cjs/table/Td.js +11 -8
- package/dist/cjs/table/Td.js.map +1 -1
- package/dist/cjs/table/Tfoot.js +6 -6
- package/dist/cjs/table/Tfoot.js.map +1 -1
- package/dist/cjs/table/Th.js +15 -8
- package/dist/cjs/table/Th.js.map +1 -1
- package/dist/cjs/table/Thead.js +8 -8
- package/dist/cjs/table/Thead.js.map +1 -1
- package/dist/cjs/table/Tr.js +8 -8
- package/dist/cjs/table/Tr.js.map +1 -1
- package/dist/cjs/text/Text.js +8 -8
- package/dist/cjs/text/Text.js.map +1 -1
- package/dist/cjs/text/TextStyles.js +4 -4
- package/dist/cjs/text/TextStyles.js.map +1 -1
- package/dist/cjs/theme/cookie-theme-provider.js +20 -14
- package/dist/cjs/theme/cookie-theme-provider.js.map +1 -1
- package/dist/cjs/theme/document-head-contents/element-fonts.js +4 -3
- package/dist/cjs/theme/document-head-contents/element-fonts.js.map +1 -1
- package/dist/cjs/theme/document-head-contents/element-theme-colors.js +4 -7
- package/dist/cjs/theme/document-head-contents/element-theme-colors.js.map +1 -1
- package/dist/cjs/theme/document-head-contents/element-theme-script.js +2 -3
- package/dist/cjs/theme/document-head-contents/element-theme-script.js.map +1 -1
- package/dist/cjs/theme/document-head-contents/index.js +8 -3
- package/dist/cjs/theme/document-head-contents/index.js.map +1 -1
- package/dist/cjs/theme/theme-provider.js +15 -10
- package/dist/cjs/theme/theme-provider.js.map +1 -1
- package/dist/cjs/toast/ToastPending.js +9 -3
- package/dist/cjs/toast/ToastPending.js.map +1 -1
- package/dist/cjs/tooltip/Tooltip.js +31 -25
- package/dist/cjs/tooltip/Tooltip.js.map +1 -1
- package/dist/cjs/tooltip/types.js +0 -2
- package/dist/cjs/tooltip/types.js.map +1 -1
- package/dist/cjs/transition/withTransition.js +14 -12
- package/dist/cjs/transition/withTransition.js.map +1 -1
- package/dist/esm/accordion/Accordion.js +30 -10
- package/dist/esm/accordion/Accordion.js.map +1 -1
- package/dist/esm/accordion/types.js +1 -1
- package/dist/esm/accordion/types.js.map +1 -1
- package/dist/esm/accordion/useExpanded.js.map +1 -1
- package/dist/esm/address/Address.js +16 -7
- package/dist/esm/address/Address.js.map +1 -1
- package/dist/esm/addressBadge/AddressBadge.js +5 -4
- package/dist/esm/addressBadge/AddressBadge.js.map +1 -1
- package/dist/esm/block/Block.js +8 -7
- package/dist/esm/block/Block.js.map +1 -1
- package/dist/esm/button/Button.js +21 -12
- package/dist/esm/button/Button.js.map +1 -1
- package/dist/esm/button/ButtonIcon.js +20 -11
- package/dist/esm/button/ButtonIcon.js.map +1 -1
- package/dist/esm/button/useRipple.js +5 -5
- package/dist/esm/button/useRipple.js.map +1 -1
- package/dist/esm/checkbox/Checkbox.js +26 -21
- package/dist/esm/checkbox/Checkbox.js.map +1 -1
- package/dist/esm/checkbox/types.js +1 -1
- package/dist/esm/checkbox/types.js.map +1 -1
- package/dist/esm/chip/Chip.js +10 -9
- package/dist/esm/chip/Chip.js.map +1 -1
- package/dist/esm/chip/types.js +0 -1
- package/dist/esm/chip/types.js.map +1 -1
- package/dist/esm/container/Container.js +8 -7
- package/dist/esm/container/Container.js.map +1 -1
- package/dist/esm/content-theme/content-theme.js +11 -2
- package/dist/esm/content-theme/content-theme.js.map +1 -1
- package/dist/esm/content-theme/types.js +1 -1
- package/dist/esm/content-theme/types.js.map +1 -1
- package/dist/esm/cookie-theme-toggler/cookie-theme-toggler.js +8 -4
- package/dist/esm/cookie-theme-toggler/cookie-theme-toggler.js.map +1 -1
- package/dist/esm/cookies-tooltip/cookies-tooltip.js +42 -18
- package/dist/esm/cookies-tooltip/cookies-tooltip.js.map +1 -1
- package/dist/esm/data-table/DataTable.js +30 -17
- package/dist/esm/data-table/DataTable.js.map +1 -1
- package/dist/esm/data-table/types.js +1 -1
- package/dist/esm/data-table/types.js.map +1 -1
- package/dist/esm/divider/Divider.js +8 -7
- package/dist/esm/divider/Divider.js.map +1 -1
- package/dist/esm/heading/Heading.js +26 -22
- package/dist/esm/heading/Heading.js.map +1 -1
- package/dist/esm/hooks/useMergeRefs.js +0 -1
- package/dist/esm/hooks/useMergeRefs.js.map +1 -1
- package/dist/esm/hooks/useOutsideClick.js +1 -1
- package/dist/esm/hooks/useOutsideClick.js.map +1 -1
- package/dist/esm/icons/index.js +8747 -6483
- package/dist/esm/icons/index.js.map +1 -1
- package/dist/esm/identicon/Identicon.js +14 -14
- package/dist/esm/identicon/Identicon.js.map +1 -1
- package/dist/esm/identicon/IdenticonBadge.js +23 -18
- package/dist/esm/identicon/IdenticonBadge.js.map +1 -1
- package/dist/esm/identicon/types.js +0 -1
- package/dist/esm/identicon/types.js.map +1 -1
- package/dist/esm/input/Input.js +59 -37
- package/dist/esm/input/Input.js.map +1 -1
- package/dist/esm/input/InputGroup.js +22 -13
- package/dist/esm/input/InputGroup.js.map +1 -1
- package/dist/esm/input/OptionsSlider.js +2 -2
- package/dist/esm/input/OptionsSlider.js.map +1 -1
- package/dist/esm/input/SliderInput.js +41 -23
- package/dist/esm/input/SliderInput.js.map +1 -1
- package/dist/esm/input/Textarea.js +50 -36
- package/dist/esm/input/Textarea.js.map +1 -1
- package/dist/esm/input/types.js +0 -1
- package/dist/esm/input/types.js.map +1 -1
- package/dist/esm/lido-logo/LidoLogo.js +27 -20
- package/dist/esm/lido-logo/LidoLogo.js.map +1 -1
- package/dist/esm/link/Link.js +6 -5
- package/dist/esm/link/Link.js.map +1 -1
- package/dist/esm/loaders/InlineLoader.js +13 -10
- package/dist/esm/loaders/InlineLoader.js.map +1 -1
- package/dist/esm/loaders/Loader.js +28 -23
- package/dist/esm/loaders/Loader.js.map +1 -1
- package/dist/esm/main-menu/MainMenu.js +9 -7
- package/dist/esm/main-menu/MainMenu.js.map +1 -1
- package/dist/esm/main-menu/MainMenuItem.js +14 -7
- package/dist/esm/main-menu/MainMenuItem.js.map +1 -1
- package/dist/esm/modal/Modal.js +52 -26
- package/dist/esm/modal/Modal.js.map +1 -1
- package/dist/esm/modal/ModalButton.js +17 -8
- package/dist/esm/modal/ModalButton.js.map +1 -1
- package/dist/esm/modal/ModalExtra.js +5 -4
- package/dist/esm/modal/ModalExtra.js.map +1 -1
- package/dist/esm/modal/ModalOverlay.js +18 -14
- package/dist/esm/modal/ModalOverlay.js.map +1 -1
- package/dist/esm/modal/ModalStyles.js +3 -3
- package/dist/esm/modal/ModalStyles.js.map +1 -1
- package/dist/esm/modal/types.js +1 -1
- package/dist/esm/modal/types.js.map +1 -1
- package/dist/esm/modal/useModalClose.js +1 -1
- package/dist/esm/modal/useModalClose.js.map +1 -1
- package/dist/esm/modal/useModalFocus.js +1 -1
- package/dist/esm/modal/useModalFocus.js.map +1 -1
- package/dist/esm/pagination/Pagination.js +28 -22
- package/dist/esm/pagination/Pagination.js.map +1 -1
- package/dist/esm/pagination/PaginationItem.js +8 -7
- package/dist/esm/pagination/PaginationItem.js.map +1 -1
- package/dist/esm/pagination/types.js +0 -1
- package/dist/esm/pagination/types.js.map +1 -1
- package/dist/esm/popover/Popover.js +8 -8
- package/dist/esm/popover/Popover.js.map +1 -1
- package/dist/esm/popover/PopoverRoot.js +20 -15
- package/dist/esm/popover/PopoverRoot.js.map +1 -1
- package/dist/esm/popover/PopoverStyles.js +2 -2
- package/dist/esm/popover/PopoverStyles.js.map +1 -1
- package/dist/esm/popover/types.js +0 -1
- package/dist/esm/popover/types.js.map +1 -1
- package/dist/esm/popover/usePopoverPosition.js +4 -4
- package/dist/esm/popover/usePopoverPosition.js.map +1 -1
- package/dist/esm/popup-menu/PopupMenu.js +17 -12
- package/dist/esm/popup-menu/PopupMenu.js.map +1 -1
- package/dist/esm/popup-menu/PopupMenuItem.js +21 -11
- package/dist/esm/popup-menu/PopupMenuItem.js.map +1 -1
- package/dist/esm/popup-menu/PopupMenuProvider.js +8 -7
- package/dist/esm/popup-menu/PopupMenuProvider.js.map +1 -1
- package/dist/esm/popup-menu/types.js +0 -1
- package/dist/esm/popup-menu/types.js.map +1 -1
- package/dist/esm/popup-menu/usePopupFocus.js +3 -3
- package/dist/esm/popup-menu/usePopupFocus.js.map +1 -1
- package/dist/esm/section/Section.js +21 -7
- package/dist/esm/section/Section.js.map +1 -1
- package/dist/esm/section/types.js +1 -1
- package/dist/esm/section/types.js.map +1 -1
- package/dist/esm/select/Option.js +8 -7
- package/dist/esm/select/Option.js.map +1 -1
- package/dist/esm/select/Select.js +43 -30
- package/dist/esm/select/Select.js.map +1 -1
- package/dist/esm/select/SelectArrow.js +9 -6
- package/dist/esm/select/SelectArrow.js.map +1 -1
- package/dist/esm/select/SelectIcon.js +10 -7
- package/dist/esm/select/SelectIcon.js.map +1 -1
- package/dist/esm/select/types.js +0 -1
- package/dist/esm/select/types.js.map +1 -1
- package/dist/esm/select/useSelect.js +5 -5
- package/dist/esm/select/useSelect.js.map +1 -1
- package/dist/esm/select/useSelectWidth.js +1 -1
- package/dist/esm/select/useSelectWidth.js.map +1 -1
- package/dist/esm/service-page/ServicePage.js +19 -9
- package/dist/esm/service-page/ServicePage.js.map +1 -1
- package/dist/esm/service-page/types.js +1 -1
- package/dist/esm/service-page/types.js.map +1 -1
- package/dist/esm/stack/HStack.js +8 -7
- package/dist/esm/stack/HStack.js.map +1 -1
- package/dist/esm/stack/Stack.js +12 -9
- package/dist/esm/stack/Stack.js.map +1 -1
- package/dist/esm/stack/StackItem.js +8 -7
- package/dist/esm/stack/StackItem.js.map +1 -1
- package/dist/esm/stack/StackProvider.js +8 -7
- package/dist/esm/stack/StackProvider.js.map +1 -1
- package/dist/esm/stack/VStack.js +8 -7
- package/dist/esm/stack/VStack.js.map +1 -1
- package/dist/esm/styled-system/withStyledSystem.js +0 -1
- package/dist/esm/styled-system/withStyledSystem.js.map +1 -1
- package/dist/esm/table/Table.js +6 -5
- package/dist/esm/table/Table.js.map +1 -1
- package/dist/esm/table/Tbody.js +6 -5
- package/dist/esm/table/Tbody.js.map +1 -1
- package/dist/esm/table/Td.js +11 -7
- package/dist/esm/table/Td.js.map +1 -1
- package/dist/esm/table/Tfoot.js +6 -5
- package/dist/esm/table/Tfoot.js.map +1 -1
- package/dist/esm/table/Th.js +15 -7
- package/dist/esm/table/Th.js.map +1 -1
- package/dist/esm/table/Thead.js +8 -7
- package/dist/esm/table/Thead.js.map +1 -1
- package/dist/esm/table/Tr.js +8 -7
- package/dist/esm/table/Tr.js.map +1 -1
- package/dist/esm/text/Text.js +8 -7
- package/dist/esm/text/Text.js.map +1 -1
- package/dist/esm/text/TextStyles.js +4 -4
- package/dist/esm/text/TextStyles.js.map +1 -1
- package/dist/esm/theme/cookie-theme-provider.js +20 -13
- package/dist/esm/theme/cookie-theme-provider.js.map +1 -1
- package/dist/esm/theme/document-head-contents/element-fonts.js +4 -2
- package/dist/esm/theme/document-head-contents/element-fonts.js.map +1 -1
- package/dist/esm/theme/document-head-contents/element-theme-colors.js +4 -6
- package/dist/esm/theme/document-head-contents/element-theme-colors.js.map +1 -1
- package/dist/esm/theme/document-head-contents/element-theme-script.js +2 -2
- package/dist/esm/theme/document-head-contents/element-theme-script.js.map +1 -1
- package/dist/esm/theme/document-head-contents/index.js +8 -2
- package/dist/esm/theme/document-head-contents/index.js.map +1 -1
- package/dist/esm/theme/theme-provider.js +15 -9
- package/dist/esm/theme/theme-provider.js.map +1 -1
- package/dist/esm/toast/ToastPending.js +9 -2
- package/dist/esm/toast/ToastPending.js.map +1 -1
- package/dist/esm/tooltip/Tooltip.js +31 -24
- package/dist/esm/tooltip/Tooltip.js.map +1 -1
- package/dist/esm/tooltip/types.js +1 -1
- package/dist/esm/tooltip/types.js.map +1 -1
- package/dist/esm/transition/withTransition.js +14 -11
- package/dist/esm/transition/withTransition.js.map +1 -1
- package/dist/types/accordion/Accordion.d.ts +5 -5
- package/dist/types/accordion/Accordion.d.ts.map +1 -1
- package/dist/types/accordion/types.d.ts +2 -2
- package/dist/types/accordion/types.d.ts.map +1 -1
- package/dist/types/accordion/useExpanded.d.ts +1 -1
- package/dist/types/accordion/useExpanded.d.ts.map +1 -1
- package/dist/types/address/Address.d.ts +4 -4
- package/dist/types/address/Address.d.ts.map +1 -1
- package/dist/types/addressBadge/AddressBadge.d.ts +4 -4
- package/dist/types/addressBadge/AddressBadge.d.ts.map +1 -1
- package/dist/types/block/Block.d.ts +4 -4
- package/dist/types/block/Block.d.ts.map +1 -1
- package/dist/types/button/Button.d.ts +4 -4
- package/dist/types/button/Button.d.ts.map +1 -1
- package/dist/types/button/ButtonIcon.d.ts +4 -4
- package/dist/types/button/ButtonIcon.d.ts.map +1 -1
- package/dist/types/button/useRipple.d.ts +4 -4
- package/dist/types/button/useRipple.d.ts.map +1 -1
- package/dist/types/checkbox/Checkbox.d.ts +5 -5
- package/dist/types/checkbox/Checkbox.d.ts.map +1 -1
- package/dist/types/checkbox/types.d.ts +2 -2
- package/dist/types/checkbox/types.d.ts.map +1 -1
- package/dist/types/chip/Chip.d.ts +5 -5
- package/dist/types/chip/Chip.d.ts.map +1 -1
- package/dist/types/chip/types.d.ts +2 -2
- package/dist/types/chip/types.d.ts.map +1 -1
- package/dist/types/container/Container.d.ts +4 -4
- package/dist/types/container/Container.d.ts.map +1 -1
- package/dist/types/content-theme/content-theme.d.ts.map +1 -1
- package/dist/types/content-theme/types.d.ts +3 -3
- package/dist/types/content-theme/types.d.ts.map +1 -1
- package/dist/types/cookie-theme-toggler/cookie-theme-toggler.d.ts.map +1 -1
- package/dist/types/cookies-tooltip/cookies-tooltip.d.ts.map +1 -1
- package/dist/types/data-table/DataTable.d.ts +8 -8
- package/dist/types/data-table/DataTable.d.ts.map +1 -1
- package/dist/types/data-table/types.d.ts +3 -3
- package/dist/types/data-table/types.d.ts.map +1 -1
- package/dist/types/divider/Divider.d.ts +4 -4
- package/dist/types/divider/Divider.d.ts.map +1 -1
- package/dist/types/heading/Heading.d.ts +13 -13
- package/dist/types/heading/Heading.d.ts.map +1 -1
- package/dist/types/hooks/useMergeRefs.d.ts +2 -2
- package/dist/types/hooks/useMergeRefs.d.ts.map +1 -1
- package/dist/types/hooks/useOutsideClick.d.ts +2 -2
- package/dist/types/hooks/useOutsideClick.d.ts.map +1 -1
- package/dist/types/identicon/Identicon.d.ts +6 -6
- package/dist/types/identicon/Identicon.d.ts.map +1 -1
- package/dist/types/identicon/IdenticonBadge.d.ts +6 -6
- package/dist/types/identicon/IdenticonBadge.d.ts.map +1 -1
- package/dist/types/identicon/types.d.ts +3 -3
- package/dist/types/identicon/types.d.ts.map +1 -1
- package/dist/types/input/Input.d.ts +16 -16
- package/dist/types/input/Input.d.ts.map +1 -1
- package/dist/types/input/InputGroup.d.ts +6 -6
- package/dist/types/input/InputGroup.d.ts.map +1 -1
- package/dist/types/input/OptionsSlider.d.ts +0 -1
- package/dist/types/input/OptionsSlider.d.ts.map +1 -1
- package/dist/types/input/SliderInput.d.ts +2 -2
- package/dist/types/input/SliderInput.d.ts.map +1 -1
- package/dist/types/input/Textarea.d.ts +14 -14
- package/dist/types/input/Textarea.d.ts.map +1 -1
- package/dist/types/input/types.d.ts +15 -15
- package/dist/types/input/types.d.ts.map +1 -1
- package/dist/types/lido-logo/LidoLogo.d.ts +3 -3
- package/dist/types/lido-logo/LidoLogo.d.ts.map +1 -1
- package/dist/types/link/Link.d.ts +3 -3
- package/dist/types/link/Link.d.ts.map +1 -1
- package/dist/types/loaders/InlineLoader.d.ts +4 -4
- package/dist/types/loaders/InlineLoader.d.ts.map +1 -1
- package/dist/types/loaders/Loader.d.ts +4 -4
- package/dist/types/loaders/Loader.d.ts.map +1 -1
- package/dist/types/main-menu/MainMenu.d.ts +3 -3
- package/dist/types/main-menu/MainMenu.d.ts.map +1 -1
- package/dist/types/main-menu/MainMenuItem.d.ts +4 -4
- package/dist/types/main-menu/MainMenuItem.d.ts.map +1 -1
- package/dist/types/modal/Modal.d.ts +7 -7
- package/dist/types/modal/Modal.d.ts.map +1 -1
- package/dist/types/modal/ModalButton.d.ts +5 -5
- package/dist/types/modal/ModalButton.d.ts.map +1 -1
- package/dist/types/modal/ModalExtra.d.ts +3 -3
- package/dist/types/modal/ModalExtra.d.ts.map +1 -1
- package/dist/types/modal/ModalOverlay.d.ts +4 -4
- package/dist/types/modal/ModalOverlay.d.ts.map +1 -1
- package/dist/types/modal/ModalStyles.d.ts +7 -7
- package/dist/types/modal/ModalStyles.d.ts.map +1 -1
- package/dist/types/modal/types.d.ts +6 -6
- package/dist/types/modal/types.d.ts.map +1 -1
- package/dist/types/modal/useModalClose.d.ts +3 -3
- package/dist/types/modal/useModalClose.d.ts.map +1 -1
- package/dist/types/modal/useModalFocus.d.ts +2 -2
- package/dist/types/modal/useModalFocus.d.ts.map +1 -1
- package/dist/types/pagination/Pagination.d.ts +2 -2
- package/dist/types/pagination/Pagination.d.ts.map +1 -1
- package/dist/types/pagination/PaginationItem.d.ts +2 -2
- package/dist/types/pagination/PaginationItem.d.ts.map +1 -1
- package/dist/types/pagination/types.d.ts +3 -3
- package/dist/types/pagination/types.d.ts.map +1 -1
- package/dist/types/popover/Popover.d.ts +3 -3
- package/dist/types/popover/Popover.d.ts.map +1 -1
- package/dist/types/popover/PopoverRoot.d.ts +6 -6
- package/dist/types/popover/PopoverRoot.d.ts.map +1 -1
- package/dist/types/popover/PopoverStyles.d.ts.map +1 -1
- package/dist/types/popover/types.d.ts +3 -3
- package/dist/types/popover/types.d.ts.map +1 -1
- package/dist/types/popover/usePopoverPosition.d.ts +4 -4
- package/dist/types/popover/usePopoverPosition.d.ts.map +1 -1
- package/dist/types/popup-menu/PopupMenu.d.ts +3 -3
- package/dist/types/popup-menu/PopupMenu.d.ts.map +1 -1
- package/dist/types/popup-menu/PopupMenuItem.d.ts +6 -6
- package/dist/types/popup-menu/PopupMenuItem.d.ts.map +1 -1
- package/dist/types/popup-menu/PopupMenuProvider.d.ts.map +1 -1
- package/dist/types/popup-menu/types.d.ts +3 -3
- package/dist/types/popup-menu/types.d.ts.map +1 -1
- package/dist/types/popup-menu/usePopupFocus.d.ts +5 -5
- package/dist/types/popup-menu/usePopupFocus.d.ts.map +1 -1
- package/dist/types/section/Section.d.ts +6 -6
- package/dist/types/section/Section.d.ts.map +1 -1
- package/dist/types/section/types.d.ts +3 -3
- package/dist/types/section/types.d.ts.map +1 -1
- package/dist/types/select/Option.d.ts +3 -3
- package/dist/types/select/Option.d.ts.map +1 -1
- package/dist/types/select/Select.d.ts +4 -4
- package/dist/types/select/Select.d.ts.map +1 -1
- package/dist/types/select/SelectArrow.d.ts.map +1 -1
- package/dist/types/select/SelectIcon.d.ts +4 -4
- package/dist/types/select/SelectIcon.d.ts.map +1 -1
- package/dist/types/select/types.d.ts +3 -3
- package/dist/types/select/types.d.ts.map +1 -1
- package/dist/types/select/useSelect.d.ts +5 -5
- package/dist/types/select/useSelect.d.ts.map +1 -1
- package/dist/types/select/useSelectWidth.d.ts +2 -2
- package/dist/types/select/useSelectWidth.d.ts.map +1 -1
- package/dist/types/service-page/ServicePage.d.ts +5 -5
- package/dist/types/service-page/ServicePage.d.ts.map +1 -1
- package/dist/types/service-page/types.d.ts +2 -2
- package/dist/types/service-page/types.d.ts.map +1 -1
- package/dist/types/stack/HStack.d.ts +3 -3
- package/dist/types/stack/HStack.d.ts.map +1 -1
- package/dist/types/stack/Stack.d.ts +4 -4
- package/dist/types/stack/Stack.d.ts.map +1 -1
- package/dist/types/stack/StackItem.d.ts +4 -4
- package/dist/types/stack/StackItem.d.ts.map +1 -1
- package/dist/types/stack/StackProvider.d.ts.map +1 -1
- package/dist/types/stack/VStack.d.ts +3 -3
- package/dist/types/stack/VStack.d.ts.map +1 -1
- package/dist/types/styled-system/withStyledSystem.d.ts +2 -2
- package/dist/types/styled-system/withStyledSystem.d.ts.map +1 -1
- package/dist/types/table/Table.d.ts +3 -3
- package/dist/types/table/Table.d.ts.map +1 -1
- package/dist/types/table/Tbody.d.ts +3 -3
- package/dist/types/table/Tbody.d.ts.map +1 -1
- package/dist/types/table/Td.d.ts +4 -4
- package/dist/types/table/Td.d.ts.map +1 -1
- package/dist/types/table/Tfoot.d.ts +3 -3
- package/dist/types/table/Tfoot.d.ts.map +1 -1
- package/dist/types/table/Th.d.ts +4 -4
- package/dist/types/table/Th.d.ts.map +1 -1
- package/dist/types/table/Thead.d.ts +4 -4
- package/dist/types/table/Thead.d.ts.map +1 -1
- package/dist/types/table/Tr.d.ts +4 -4
- package/dist/types/table/Tr.d.ts.map +1 -1
- package/dist/types/text/Text.d.ts +4 -4
- package/dist/types/text/Text.d.ts.map +1 -1
- package/dist/types/text/TextStyles.d.ts.map +1 -1
- package/dist/types/theme/cookie-theme-provider.d.ts +2 -2
- package/dist/types/theme/cookie-theme-provider.d.ts.map +1 -1
- package/dist/types/theme/document-head-contents/element-fonts.d.ts.map +1 -1
- package/dist/types/theme/document-head-contents/element-theme-colors.d.ts.map +1 -1
- package/dist/types/theme/document-head-contents/element-theme-script.d.ts.map +1 -1
- package/dist/types/theme/document-head-contents/index.d.ts.map +1 -1
- package/dist/types/theme/theme-provider.d.ts.map +1 -1
- package/dist/types/toast/ToastPending.d.ts.map +1 -1
- package/dist/types/tooltip/Tooltip.d.ts +5 -5
- package/dist/types/tooltip/Tooltip.d.ts.map +1 -1
- package/dist/types/tooltip/types.d.ts +3 -3
- package/dist/types/tooltip/types.d.ts.map +1 -1
- package/dist/types/transition/withTransition.d.ts +2 -2
- package/dist/types/transition/withTransition.d.ts.map +1 -1
- package/package.json +20 -15
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { createContext, memo, useContext, useEffect, useMemo, useState } from "react";
|
|
2
3
|
import { ThemeProvider as StyledThemeProvider } from "styled-components";
|
|
3
4
|
import { DEFAULT_THEME_NAME, prefersDarkThemeMediaQuery, ThemeName } from "./constants";
|
|
4
5
|
import { themeMap } from "./themes";
|
|
@@ -16,7 +17,7 @@ initColors();
|
|
|
16
17
|
* 1. it can be nested, BUT it should re-use value provided by itself for optimisation purposes
|
|
17
18
|
* 2. if it is top-level, it is not altering itself, but instead altering theme behavior on HTMLElement level
|
|
18
19
|
* 3. it does not support custom themes, preferring pre-defined themes instead
|
|
19
|
-
* */ export const CookieThemeProvider = /*#__PURE__*/
|
|
20
|
+
* */ export const CookieThemeProvider = /*#__PURE__*/ memo((param)=>{
|
|
20
21
|
let { children , initialThemeName , // overrideThemeName is mainly used for storybook
|
|
21
22
|
overrideThemeName , } = param;
|
|
22
23
|
const parentTheme = useContext(ThemeToggleContext);
|
|
@@ -93,22 +94,28 @@ initColors();
|
|
|
93
94
|
if (isTopLevelProvider) {
|
|
94
95
|
// if this provider is top-level we rely on element-theme-script.tsx logic
|
|
95
96
|
// which defines data-lido-theme injection
|
|
96
|
-
return /*#__PURE__*/
|
|
97
|
-
value: value
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
97
|
+
return /*#__PURE__*/ _jsx(ThemeToggleContext.Provider, {
|
|
98
|
+
value: value,
|
|
99
|
+
children: /*#__PURE__*/ _jsx(StyledThemeProvider, {
|
|
100
|
+
theme: theme,
|
|
101
|
+
children: children
|
|
102
|
+
})
|
|
103
|
+
});
|
|
101
104
|
} else if (overrideThemeName) {
|
|
102
|
-
return /*#__PURE__*/
|
|
105
|
+
return /*#__PURE__*/ _jsx("div", {
|
|
103
106
|
style: {
|
|
104
107
|
display: 'contents'
|
|
105
108
|
},
|
|
106
|
-
"data-lido-theme": themeName
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
109
|
+
"data-lido-theme": themeName,
|
|
110
|
+
children: /*#__PURE__*/ _jsx(StyledThemeProvider, {
|
|
111
|
+
theme: theme,
|
|
112
|
+
children: children
|
|
113
|
+
})
|
|
114
|
+
});
|
|
110
115
|
} else {
|
|
111
|
-
return /*#__PURE__*/
|
|
116
|
+
return /*#__PURE__*/ _jsx(_Fragment, {
|
|
117
|
+
children: children
|
|
118
|
+
});
|
|
112
119
|
}
|
|
113
120
|
});
|
|
114
121
|
CookieThemeProvider.displayName = 'CookieThemeProvider';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../packages/theme/cookie-theme-provider.tsx"],"sourcesContent":["import React, {\n createContext,\n FC,\n PropsWithChildren,\n useContext,\n useEffect,\n useMemo,\n useState,\n} from 'react'\nimport { ThemeProvider as StyledThemeProvider } from 'styled-components'\nimport {\n DEFAULT_THEME_NAME,\n prefersDarkThemeMediaQuery,\n ThemeName,\n} from './constants'\nimport { themeMap } from './themes'\nimport { getThemeNameFromCookies } from './utils/cookies'\nimport { initColors } from './document-head-contents'\nimport { updateGlobalTheme } from './document-head-contents/element-theme-script'\nimport { ThemeContext } from './types'\n\nconst defaultThemeContext = {} as ThemeContext\nexport const ThemeToggleContext =\n createContext<ThemeContext>(defaultThemeContext)\n\n// we need to initialize this before react component code if we're using this provider or ThemeProvider\ninitColors()\n\n/**\n * This is really complicated logic here. Comments will be added on specific lines\n *\n * Cookie theme provider acts differently from common theme provider.\n * 1. it can be nested, BUT it should re-use value provided by itself for optimisation purposes\n * 2. if it is top-level, it is not altering itself, but instead altering theme behavior on HTMLElement level\n * 3. it does not support custom themes, preferring pre-defined themes instead\n * */\n\nexport const CookieThemeProvider: FC<\n PropsWithChildren<{\n // Use themeNameParent if you need get cookie in SSR\n initialThemeName?: ThemeName\n overrideThemeName?: ThemeName\n }>\n> = React.memo(\n ({\n children,\n initialThemeName,\n // overrideThemeName is mainly used for storybook\n overrideThemeName,\n }) => {\n const parentTheme = useContext(ThemeToggleContext)\n // we do not want to do nested injections, and we're checking\n // if context we inject in this component is already provided\n const isTopLevelProvider = Object.keys(parentTheme).length === 0\n // we always start with default theme, or, if server wants to provide\n // specific default theme, with server-provided theme to avoid hydration errors\n const [internalThemeName, setThemeName] = useState<ThemeName>(\n initialThemeName || DEFAULT_THEME_NAME,\n )\n // since we're using this component to provide cookie-theme,\n // we eventually want to respect theme provided in cookie, not general theme,\n // so we're picking `parentTheme.themeName` if we have one.\n // If user needs custom theme, not \"cookie theme\", he should use ThemeProvider instead.\n const themeName = parentTheme.themeName || internalThemeName\n\n const theme = themeMap[themeName]\n\n // This logic is really hydrating everything, since we started with server-rendered default prop.\n // It also follows cookie value change.\n useEffect(() => {\n // This logic is useless if we're nested - it is already done in top-level provider\n if (!isTopLevelProvider) {\n return\n }\n\n const setTheme = () => {\n const systemThemeName = prefersDarkThemeMediaQuery?.matches\n ? ThemeName.dark\n : ThemeName.light\n const themeNameCookie = getThemeNameFromCookies()\n const newThemeName =\n // first, if we have some override (e.g. in Storybook), we respect it\n overrideThemeName ||\n // then, if we have cookie theme, we use theme from cookie\n themeNameCookie ||\n // else, we follow theme we were provided in initialization from server,\n // which means server explicitly wants specific theme by default, not \"follow-system\"\n initialThemeName ||\n // then, we use media query theme, if available (not all browsers may still support it)\n systemThemeName ||\n // and, finally, falling back to default\n DEFAULT_THEME_NAME\n setThemeName(newThemeName)\n // and when theme is switched, we're setting global-level CSS variable data-attribute\n // to modify CSS vars provided on a top-level\n document.documentElement.dataset.lidoTheme = newThemeName\n }\n\n // Users may have auto-theme (switching on sunset or schedule or whatever) so we need to listen for this event\n prefersDarkThemeMediaQuery?.addEventListener('change', setTheme)\n setTheme()\n\n // This code check that the theme cookie was changed on other tab or site (the same second-level domain)\n const checkCookieThemeWasChanged = () => {\n const themeNameCookie = getThemeNameFromCookies()\n\n if (\n themeNameCookie &&\n (themeNameCookie === ThemeName.dark ||\n themeNameCookie === ThemeName.light)\n ) {\n setThemeName(themeNameCookie)\n }\n }\n window.addEventListener('focus', checkCookieThemeWasChanged)\n\n return () => {\n window.removeEventListener('focus', checkCookieThemeWasChanged)\n }\n }, [\n initialThemeName,\n isTopLevelProvider,\n overrideThemeName,\n parentTheme,\n theme,\n ])\n\n const value = useMemo(\n () => ({\n themeName,\n toggleTheme() {\n setThemeName((themeName) => {\n const newThemeName =\n themeName === ThemeName.light ? ThemeName.dark : ThemeName.light\n // note that we're writing cookie theme only on explicit calls,\n // not on \"internal theme state\" change\n updateGlobalTheme(newThemeName)\n // we do not need to run setTheme here, as effect is triggered\n return newThemeName\n })\n },\n }),\n [themeName],\n )\n\n if (isTopLevelProvider) {\n // if this provider is top-level we rely on element-theme-script.tsx logic\n // which defines data-lido-theme injection\n return (\n <ThemeToggleContext.Provider value={value}>\n <StyledThemeProvider theme={theme}>{children}</StyledThemeProvider>\n </ThemeToggleContext.Provider>\n )\n } else if (overrideThemeName) {\n return (\n <div style={{ display: 'contents' }} data-lido-theme={themeName}>\n <StyledThemeProvider theme={theme}>{children}</StyledThemeProvider>\n </div>\n )\n } else {\n return <>{children}</>\n }\n },\n)\n\nCookieThemeProvider.displayName = 'CookieThemeProvider'\n"],"names":["React","createContext","useContext","useEffect","useMemo","useState","ThemeProvider","StyledThemeProvider","DEFAULT_THEME_NAME","prefersDarkThemeMediaQuery","ThemeName","themeMap","getThemeNameFromCookies","initColors","updateGlobalTheme","defaultThemeContext","ThemeToggleContext","CookieThemeProvider","memo","children","initialThemeName","overrideThemeName","parentTheme","isTopLevelProvider","Object","keys","length","internalThemeName","setThemeName","themeName","theme","setTheme","systemThemeName","matches","dark","light","themeNameCookie","newThemeName","document","documentElement","dataset","lidoTheme","addEventListener","checkCookieThemeWasChanged","window","removeEventListener","value","toggleTheme","Provider","div","style","display","data-lido-theme","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../packages/theme/cookie-theme-provider.tsx"],"sourcesContent":["import {\n createContext,\n FC,\n memo,\n PropsWithChildren,\n useContext,\n useEffect,\n useMemo,\n useState,\n} from 'react'\nimport { ThemeProvider as StyledThemeProvider } from 'styled-components'\nimport {\n DEFAULT_THEME_NAME,\n prefersDarkThemeMediaQuery,\n ThemeName,\n} from './constants'\nimport { themeMap } from './themes'\nimport { getThemeNameFromCookies } from './utils/cookies'\nimport { initColors } from './document-head-contents'\nimport { updateGlobalTheme } from './document-head-contents/element-theme-script'\nimport { ThemeContext } from './types'\n\nconst defaultThemeContext = {} as ThemeContext\nexport const ThemeToggleContext =\n createContext<ThemeContext>(defaultThemeContext)\n\n// we need to initialize this before react component code if we're using this provider or ThemeProvider\ninitColors()\n\n/**\n * This is really complicated logic here. Comments will be added on specific lines\n *\n * Cookie theme provider acts differently from common theme provider.\n * 1. it can be nested, BUT it should re-use value provided by itself for optimisation purposes\n * 2. if it is top-level, it is not altering itself, but instead altering theme behavior on HTMLElement level\n * 3. it does not support custom themes, preferring pre-defined themes instead\n * */\n\nexport const CookieThemeProvider: FC<\n PropsWithChildren<{\n // Use themeNameParent if you need get cookie in SSR\n initialThemeName?: ThemeName\n overrideThemeName?: ThemeName\n }>\n> = memo(\n ({\n children,\n initialThemeName,\n // overrideThemeName is mainly used for storybook\n overrideThemeName,\n }) => {\n const parentTheme = useContext(ThemeToggleContext)\n // we do not want to do nested injections, and we're checking\n // if context we inject in this component is already provided\n const isTopLevelProvider = Object.keys(parentTheme).length === 0\n // we always start with default theme, or, if server wants to provide\n // specific default theme, with server-provided theme to avoid hydration errors\n const [internalThemeName, setThemeName] = useState<ThemeName>(\n initialThemeName || DEFAULT_THEME_NAME,\n )\n // since we're using this component to provide cookie-theme,\n // we eventually want to respect theme provided in cookie, not general theme,\n // so we're picking `parentTheme.themeName` if we have one.\n // If user needs custom theme, not \"cookie theme\", he should use ThemeProvider instead.\n const themeName = parentTheme.themeName || internalThemeName\n\n const theme = themeMap[themeName]\n\n // This logic is really hydrating everything, since we started with server-rendered default prop.\n // It also follows cookie value change.\n useEffect(() => {\n // This logic is useless if we're nested - it is already done in top-level provider\n if (!isTopLevelProvider) {\n return\n }\n\n const setTheme = () => {\n const systemThemeName = prefersDarkThemeMediaQuery?.matches\n ? ThemeName.dark\n : ThemeName.light\n const themeNameCookie = getThemeNameFromCookies()\n const newThemeName =\n // first, if we have some override (e.g. in Storybook), we respect it\n overrideThemeName ||\n // then, if we have cookie theme, we use theme from cookie\n themeNameCookie ||\n // else, we follow theme we were provided in initialization from server,\n // which means server explicitly wants specific theme by default, not \"follow-system\"\n initialThemeName ||\n // then, we use media query theme, if available (not all browsers may still support it)\n systemThemeName ||\n // and, finally, falling back to default\n DEFAULT_THEME_NAME\n setThemeName(newThemeName)\n // and when theme is switched, we're setting global-level CSS variable data-attribute\n // to modify CSS vars provided on a top-level\n document.documentElement.dataset.lidoTheme = newThemeName\n }\n\n // Users may have auto-theme (switching on sunset or schedule or whatever) so we need to listen for this event\n prefersDarkThemeMediaQuery?.addEventListener('change', setTheme)\n setTheme()\n\n // This code check that the theme cookie was changed on other tab or site (the same second-level domain)\n const checkCookieThemeWasChanged = () => {\n const themeNameCookie = getThemeNameFromCookies()\n\n if (\n themeNameCookie &&\n (themeNameCookie === ThemeName.dark ||\n themeNameCookie === ThemeName.light)\n ) {\n setThemeName(themeNameCookie)\n }\n }\n window.addEventListener('focus', checkCookieThemeWasChanged)\n\n return () => {\n window.removeEventListener('focus', checkCookieThemeWasChanged)\n }\n }, [\n initialThemeName,\n isTopLevelProvider,\n overrideThemeName,\n parentTheme,\n theme,\n ])\n\n const value = useMemo(\n () => ({\n themeName,\n toggleTheme() {\n setThemeName((themeName) => {\n const newThemeName =\n themeName === ThemeName.light ? ThemeName.dark : ThemeName.light\n // note that we're writing cookie theme only on explicit calls,\n // not on \"internal theme state\" change\n updateGlobalTheme(newThemeName)\n // we do not need to run setTheme here, as effect is triggered\n return newThemeName\n })\n },\n }),\n [themeName],\n )\n\n if (isTopLevelProvider) {\n // if this provider is top-level we rely on element-theme-script.tsx logic\n // which defines data-lido-theme injection\n return (\n <ThemeToggleContext.Provider value={value}>\n <StyledThemeProvider theme={theme}>{children}</StyledThemeProvider>\n </ThemeToggleContext.Provider>\n )\n } else if (overrideThemeName) {\n return (\n <div style={{ display: 'contents' }} data-lido-theme={themeName}>\n <StyledThemeProvider theme={theme}>{children}</StyledThemeProvider>\n </div>\n )\n } else {\n return <>{children}</>\n }\n },\n)\n\nCookieThemeProvider.displayName = 'CookieThemeProvider'\n"],"names":["createContext","memo","useContext","useEffect","useMemo","useState","ThemeProvider","StyledThemeProvider","DEFAULT_THEME_NAME","prefersDarkThemeMediaQuery","ThemeName","themeMap","getThemeNameFromCookies","initColors","updateGlobalTheme","defaultThemeContext","ThemeToggleContext","CookieThemeProvider","children","initialThemeName","overrideThemeName","parentTheme","isTopLevelProvider","Object","keys","length","internalThemeName","setThemeName","themeName","theme","setTheme","systemThemeName","matches","dark","light","themeNameCookie","newThemeName","document","documentElement","dataset","lidoTheme","addEventListener","checkCookieThemeWasChanged","window","removeEventListener","value","toggleTheme","Provider","div","style","display","data-lido-theme","displayName"],"mappings":"AAAA;AAAA,SACEA,aAAa,EAEbC,IAAI,EAEJC,UAAU,EACVC,SAAS,EACTC,OAAO,EACPC,QAAQ,QACH,OAAO,CAAA;AACd,SAASC,aAAa,IAAIC,mBAAmB,QAAQ,mBAAmB,CAAA;AACxE,SACEC,kBAAkB,EAClBC,0BAA0B,EAC1BC,SAAS,QACJ,aAAa,CAAA;AACpB,SAASC,QAAQ,QAAQ,UAAU,CAAA;AACnC,SAASC,uBAAuB,QAAQ,iBAAiB,CAAA;AACzD,SAASC,UAAU,QAAQ,gCAA0B,CAAA;AACrD,SAASC,iBAAiB,QAAQ,+CAA+C,CAAA;AAGjF,MAAMC,mBAAmB,GAAG,EAAE,AAAgB;AAC9C,OAAO,MAAMC,kBAAkB,iBAC7BhB,aAAa,CAAee,mBAAmB,CAAC,CAAA;AAElD,uGAAuG;AACvGF,UAAU,EAAE;AAEZ;;;;;;;GAOG,GAEH,OAAO,MAAMI,mBAAmB,iBAM5BhB,IAAI,CACN,SAKM;QALL,EACCiB,QAAQ,CAAA,EACRC,gBAAgB,CAAA,EAChB,iDAAiD;IACjDC,iBAAiB,CAAA,IAClB;IACC,MAAMC,WAAW,GAAGnB,UAAU,CAACc,kBAAkB,CAAC;IAClD,6DAA6D;IAC7D,6DAA6D;IAC7D,MAAMM,kBAAkB,GAAGC,MAAM,CAACC,IAAI,CAACH,WAAW,CAAC,CAACI,MAAM,KAAK,CAAC;IAChE,qEAAqE;IACrE,+EAA+E;IAC/E,MAAM,CAACC,iBAAiB,EAAEC,YAAY,CAAC,GAAGtB,QAAQ,CAChDc,gBAAgB,IAAIX,kBAAkB,CACvC;IACD,4DAA4D;IAC5D,6EAA6E;IAC7E,2DAA2D;IAC3D,uFAAuF;IACvF,MAAMoB,SAAS,GAAGP,WAAW,CAACO,SAAS,IAAIF,iBAAiB;IAE5D,MAAMG,KAAK,GAAGlB,QAAQ,CAACiB,SAAS,CAAC;IAEjC,iGAAiG;IACjG,uCAAuC;IACvCzB,SAAS,CAAC,IAAM;QACd,mFAAmF;QACnF,IAAI,CAACmB,kBAAkB,EAAE;YACvB,OAAM;QACR,CAAC;QAED,MAAMQ,QAAQ,GAAG,IAAM;YACrB,MAAMC,eAAe,GAAGtB,CAAAA,0BAA0B,aAA1BA,0BAA0B,WAAS,GAAnCA,KAAAA,CAAmC,GAAnCA,0BAA0B,CAAEuB,OAAO,CAAA,GACvDtB,SAAS,CAACuB,IAAI,GACdvB,SAAS,CAACwB,KAAK;YACnB,MAAMC,eAAe,GAAGvB,uBAAuB,EAAE;YACjD,MAAMwB,YAAY,GAChB,qEAAqE;YACrEhB,iBAAiB,IACjB,0DAA0D;YAC1De,eAAe,IACf,wEAAwE;YACxE,qFAAqF;YACrFhB,gBAAgB,IAChB,uFAAuF;YACvFY,eAAe,IACf,wCAAwC;YACxCvB,kBAAkB;YACpBmB,YAAY,CAACS,YAAY,CAAC;YAC1B,qFAAqF;YACrF,6CAA6C;YAC7CC,QAAQ,CAACC,eAAe,CAACC,OAAO,CAACC,SAAS,GAAGJ,YAAY;QAC3D,CAAC;QAED,8GAA8G;QAC9G3B,0BAA0B,aAA1BA,0BAA0B,WAAkB,GAA5CA,KAAAA,CAA4C,GAA5CA,0BAA0B,CAAEgC,gBAAgB,CAAC,QAAQ,EAAEX,QAAQ,CAAC,CAAA;QAChEA,QAAQ,EAAE;QAEV,wGAAwG;QACxG,MAAMY,0BAA0B,GAAG,IAAM;YACvC,MAAMP,eAAe,GAAGvB,uBAAuB,EAAE;YAEjD,IACEuB,eAAe,IACf,CAACA,eAAe,KAAKzB,SAAS,CAACuB,IAAI,IACjCE,eAAe,KAAKzB,SAAS,CAACwB,KAAK,CAAC,EACtC;gBACAP,YAAY,CAACQ,eAAe,CAAC;YAC/B,CAAC;QACH,CAAC;QACDQ,MAAM,CAACF,gBAAgB,CAAC,OAAO,EAAEC,0BAA0B,CAAC;QAE5D,OAAO,IAAM;YACXC,MAAM,CAACC,mBAAmB,CAAC,OAAO,EAAEF,0BAA0B,CAAC;QACjE,CAAC,CAAA;IACH,CAAC,EAAE;QACDvB,gBAAgB;QAChBG,kBAAkB;QAClBF,iBAAiB;QACjBC,WAAW;QACXQ,KAAK;KACN,CAAC;IAEF,MAAMgB,KAAK,GAAGzC,OAAO,CACnB,IAAM,CAAC;YACLwB,SAAS;YACTkB,WAAW,IAAG;gBACZnB,YAAY,CAAC,CAACC,SAAS,GAAK;oBAC1B,MAAMQ,YAAY,GAChBR,SAAS,KAAKlB,SAAS,CAACwB,KAAK,GAAGxB,SAAS,CAACuB,IAAI,GAAGvB,SAAS,CAACwB,KAAK;oBAClE,+DAA+D;oBAC/D,uCAAuC;oBACvCpB,iBAAiB,CAACsB,YAAY,CAAC;oBAC/B,8DAA8D;oBAC9D,OAAOA,YAAY,CAAA;gBACrB,CAAC,CAAC;YACJ,CAAC;SACF,CAAC,EACF;QAACR,SAAS;KAAC,CACZ;IAED,IAAIN,kBAAkB,EAAE;QACtB,0EAA0E;QAC1E,0CAA0C;QAC1C,qBACE,KAACN,kBAAkB,CAAC+B,QAAQ;YAACF,KAAK,EAAEA,KAAK;sBACvC,cAAA,KAACtC,mBAAmB;gBAACsB,KAAK,EAAEA,KAAK;0BAAGX,QAAQ;cAAuB;UACvC,CAC/B;IACH,OAAO,IAAIE,iBAAiB,EAAE;QAC5B,qBACE,KAAC4B,KAAG;YAACC,KAAK,EAAE;gBAAEC,OAAO,EAAE,UAAU;aAAE;YAAEC,iBAAe,EAAEvB,SAAS;sBAC7D,cAAA,KAACrB,mBAAmB;gBAACsB,KAAK,EAAEA,KAAK;0BAAGX,QAAQ;cAAuB;UAC/D,CACP;IACH,OAAO;QACL,qBAAO;sBAAGA,QAAQ;UAAI,CAAA;IACxB,CAAC;AACH,CAAC,CACF,CAAA;AAEDD,mBAAmB,CAACmC,WAAW,GAAG,qBAAqB"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
const CSS_FONTS = `@import url(https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800);
|
|
3
3
|
body {
|
|
4
4
|
font-family: Manrope, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,
|
|
5
5
|
Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
|
|
6
6
|
}`;
|
|
7
|
-
export const Fonts = ()=>/*#__PURE__*/
|
|
7
|
+
export const Fonts = ()=>/*#__PURE__*/ _jsx("style", {
|
|
8
|
+
children: CSS_FONTS
|
|
9
|
+
});
|
|
8
10
|
|
|
9
11
|
//# sourceMappingURL=element-fonts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../packages/theme/document-head-contents/element-fonts.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../packages/theme/document-head-contents/element-fonts.tsx"],"sourcesContent":["const CSS_FONTS = `@import url(https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800);\nbody {\nfont-family: Manrope, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,\n Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;\n}`\n\nexport const Fonts = (): JSX.Element => <style>{CSS_FONTS}</style>\n"],"names":["CSS_FONTS","Fonts","style"],"mappings":"AAAA;AAAA,MAAMA,SAAS,GAAG,CAAC;;;;CAIlB,CAAC;AAEF,OAAO,MAAMC,KAAK,GAAG,kBAAmB,KAACC,OAAK;kBAAEF,SAAS;MAAS,CAAA"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import React from "react";
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
2
|
import { themeDark, themeLight } from "../themes";
|
|
4
3
|
import { generateCssColorVariables } from "../utils/generate-css-color-variables";
|
|
5
4
|
import { globalStyleDataAttribute, ThemeName } from "../constants";
|
|
@@ -42,12 +41,11 @@ if (typeof window !== 'undefined') {
|
|
|
42
41
|
};
|
|
43
42
|
}
|
|
44
43
|
}
|
|
45
|
-
export const StyleThemeColors = ()=>/*#__PURE__*/
|
|
46
|
-
[globalStyleDataAttribute]: true
|
|
47
|
-
}, {
|
|
44
|
+
export const StyleThemeColors = ()=>/*#__PURE__*/ _jsx("style", {
|
|
45
|
+
[globalStyleDataAttribute]: true,
|
|
48
46
|
dangerouslySetInnerHTML: {
|
|
49
47
|
__html: themeCSSValueString
|
|
50
48
|
}
|
|
51
|
-
})
|
|
49
|
+
});
|
|
52
50
|
|
|
53
51
|
//# sourceMappingURL=element-theme-colors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../packages/theme/document-head-contents/element-theme-colors.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"sources":["../../../../packages/theme/document-head-contents/element-theme-colors.tsx"],"sourcesContent":["import { themeDark, themeLight } from '../themes'\nimport { generateCssColorVariables } from '../utils/generate-css-color-variables'\nimport { globalStyleDataAttribute, ThemeName } from '../constants'\nimport { VOID_FN } from '@lidofinance/utils'\n\n/**\n * What is happening here:\n * We want to have React dehydrated HTML to be loaded after theme is initialized.\n * That means that we need to have some code executed BEFORE main react components code,\n * before even injected script itself, so we need to provide some CSS and JS in document head\n * to read the theme from cookie and make global CSS follow preferred palette.\n * This file is providing CSS themes that defines custom CSS variables with palette to\n * make HTML document styled even before any code is loaded\n * */\n\nconst darkThemeColors = generateCssColorVariables(themeDark.colors)\nconst lightThemeColors = generateCssColorVariables(themeLight.colors)\n\nexport let initGlobalColors = VOID_FN\nexport const themeCSSValueString = `\nhtml, [data-lido-theme='${ThemeName.light}'] {\ncolor-theme: light;\n${lightThemeColors}\n}\n@media (prefers-color-scheme: dark) {\nhtml:not([data-lido-theme='${ThemeName.light}']) { \ncolor-theme: dark;\n${darkThemeColors} \n}\n}\n[data-lido-theme='${ThemeName.dark}'] {\ncolor-theme: dark;\n${darkThemeColors}\n}`\n\nif (typeof window !== 'undefined') {\n if (!document.querySelector(`style[${globalStyleDataAttribute}]`)) {\n initGlobalColors = () => {\n const style = document.createElement('style')\n style.setAttribute(globalStyleDataAttribute, '')\n style.innerHTML = themeCSSValueString\n\n document.head.appendChild(style)\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n initGlobalColors = VOID_FN\n }\n }\n}\n\nexport const StyleThemeColors = () => (\n <style\n {...{ [globalStyleDataAttribute]: true }}\n dangerouslySetInnerHTML={{ __html: themeCSSValueString }}\n />\n)\n"],"names":["themeDark","themeLight","generateCssColorVariables","globalStyleDataAttribute","ThemeName","VOID_FN","darkThemeColors","colors","lightThemeColors","initGlobalColors","themeCSSValueString","light","dark","window","document","querySelector","style","createElement","setAttribute","innerHTML","head","appendChild","StyleThemeColors","dangerouslySetInnerHTML","__html"],"mappings":"AAAA;AAAA,SAASA,SAAS,EAAEC,UAAU,QAAQ,WAAW,CAAA;AACjD,SAASC,yBAAyB,QAAQ,uCAAuC,CAAA;AACjF,SAASC,wBAAwB,EAAEC,SAAS,QAAQ,cAAc,CAAA;AAClE,SAASC,OAAO,QAAQ,mBAAoB,CAAA;AAE5C;;;;;;;;GAQG,GAEH,MAAMC,eAAe,GAAGJ,yBAAyB,CAACF,SAAS,CAACO,MAAM,CAAC;AACnE,MAAMC,gBAAgB,GAAGN,yBAAyB,CAACD,UAAU,CAACM,MAAM,CAAC;AAErE,OAAO,IAAIE,gBAAgB,GAAGJ,OAAO,CAAA;AACrC,OAAO,MAAMK,mBAAmB,GAAG,CAAC;wBACZ,EAAEN,SAAS,CAACO,KAAK,CAAC;;AAE1C,EAAEH,gBAAgB,CAAC;;;2BAGQ,EAAEJ,SAAS,CAACO,KAAK,CAAC;;AAE7C,EAAEL,eAAe,CAAC;;;kBAGA,EAAEF,SAAS,CAACQ,IAAI,CAAC;;AAEnC,EAAEN,eAAe,CAAC;CACjB,CAAC,CAAA;AAEF,IAAI,OAAOO,MAAM,KAAK,WAAW,EAAE;IACjC,IAAI,CAACC,QAAQ,CAACC,aAAa,CAAC,CAAC,MAAM,EAAEZ,wBAAwB,CAAC,CAAC,CAAC,CAAC,EAAE;QACjEM,gBAAgB,GAAG,IAAM;YACvB,MAAMO,KAAK,GAAGF,QAAQ,CAACG,aAAa,CAAC,OAAO,CAAC;YAC7CD,KAAK,CAACE,YAAY,CAACf,wBAAwB,EAAE,EAAE,CAAC;YAChDa,KAAK,CAACG,SAAS,GAAGT,mBAAmB;YAErCI,QAAQ,CAACM,IAAI,CAACC,WAAW,CAACL,KAAK,CAAC;YAChC,gEAAgE;YAChEP,gBAAgB,GAAGJ,OAAO;QAC5B,CAAC;IACH,CAAC;AACH,CAAC;AAED,OAAO,MAAMiB,gBAAgB,GAAG,kBAC9B,KAACN,OAAK;QACE,CAACb,wBAAwB,CAAC,EAAE,IAAI;QACtCoB,uBAAuB,EAAE;YAAEC,MAAM,EAAEd,mBAAmB;SAAE;MACxD,AACH,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { VOID_FN } from "../../utils/index";
|
|
3
3
|
import { themeCookieKey } from "../constants";
|
|
4
4
|
import { setThemeCookie } from "../utils/set-theme-cookie";
|
|
@@ -44,7 +44,7 @@ export let initGlobalCookieTheme = typeof window === 'undefined' ? VOID_FN : ()=
|
|
|
44
44
|
setTheme();
|
|
45
45
|
};
|
|
46
46
|
};
|
|
47
|
-
export const ScriptThemeValue = ()=>/*#__PURE__*/
|
|
47
|
+
export const ScriptThemeValue = ()=>/*#__PURE__*/ _jsx("script", {
|
|
48
48
|
dangerouslySetInnerHTML: {
|
|
49
49
|
__html: `(${themeScriptValueString.toString()})("${themeCookieKey}")`
|
|
50
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../packages/theme/document-head-contents/element-theme-script.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"sources":["../../../../packages/theme/document-head-contents/element-theme-script.tsx"],"sourcesContent":["import { VOID_FN } from '@lidofinance/utils'\nimport { themeCookieKey, ThemeName } from '../constants'\nimport { setThemeCookie } from '../utils/set-theme-cookie'\n\n/**\n * What is happening here:\n * We want to have React dehydrated HTML to be loaded after theme is initialized.\n * That means that we need to have some code executed BEFORE main react components code,\n * before even injected script itself, so we need to provide some CSS and JS in document head\n * to read the theme from cookie and make global CSS follow preferred palette.\n * This file is providing JS code that reads/writes cookie value, including <script> element to inject\n * */\n\n/**\n * this FN should be hermetic and has zero external items - it is inlined via .toString()\n * __PURE__ annotation may throw an error on some external usage cases\n * (with chances, but it is better than nothing)\n * */\n/*#__PURE__*/\nconst themeScriptValueString = function (key: string) {\n if (!window.matchMedia) {\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n return () => {}\n }\n const match = window.matchMedia('(prefers-color-scheme: dark)')\n const setTheme = () => {\n const cookieMatcher = new RegExp(`(^| )${key}=([^;]+)`)\n const themeCookie =\n (document.cookie.match(cookieMatcher)?.[2] as ThemeName) ?? null\n if (themeCookie) {\n document.documentElement.dataset.lidoTheme = themeCookie\n } else {\n delete document.documentElement.dataset.lidoTheme\n }\n }\n setTheme()\n match.addEventListener('change', setTheme)\n return setTheme\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nexport let updateGlobalTheme: (theme: string) => void = VOID_FN\n\nexport let initGlobalCookieTheme =\n typeof window === 'undefined'\n ? VOID_FN\n : () => {\n const setTheme = themeScriptValueString(themeCookieKey)\n initGlobalCookieTheme = VOID_FN\n updateGlobalTheme = (theme: ThemeName) => {\n setThemeCookie(theme)\n setTheme()\n }\n }\n\nexport const ScriptThemeValue = () => (\n <script\n dangerouslySetInnerHTML={{\n __html: `(${themeScriptValueString.toString()})(\"${themeCookieKey}\")`,\n }}\n />\n)\n"],"names":["VOID_FN","themeCookieKey","setThemeCookie","themeScriptValueString","key","window","matchMedia","match","setTheme","document","cookieMatcher","RegExp","themeCookie","cookie","documentElement","dataset","lidoTheme","addEventListener","updateGlobalTheme","initGlobalCookieTheme","theme","ScriptThemeValue","script","dangerouslySetInnerHTML","__html","toString"],"mappings":"AAAA;AAAA,SAASA,OAAO,QAAQ,mBAAoB,CAAA;AAC5C,SAASC,cAAc,QAAmB,cAAc,CAAA;AACxD,SAASC,cAAc,QAAQ,2BAA2B,CAAA;AAE1D;;;;;;;GAOG,GAEH;;;;GAIG,GACH,WAAW,GACX,MAAMC,sBAAsB,GAAG,SAAUC,GAAW,EAAE;IACpD,IAAI,CAACC,MAAM,CAACC,UAAU,EAAE;QACtB,gEAAgE;QAChE,OAAO,IAAM,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,MAAMC,KAAK,GAAGF,MAAM,CAACC,UAAU,CAAC,8BAA8B,CAAC;IAC/D,MAAME,QAAQ,GAAG,IAAM;YAGlBC,GAAoC;QAFvC,MAAMC,aAAa,GAAG,IAAIC,MAAM,CAAC,CAAC,KAAK,EAAEP,GAAG,CAAC,QAAQ,CAAC,CAAC;YAErD,IAAwD;QAD1D,MAAMQ,WAAW,GACf,CAAA,IAAwD,GAAvDH,CAAAA,GAAoC,GAApCA,QAAQ,CAACI,MAAM,CAACN,KAAK,CAACG,aAAa,CAAC,cAApCD,GAAoC,WAAK,GAAzCA,KAAAA,CAAyC,GAAzCA,GAAoC,AAAE,CAAC,CAAC,CAAC,cAA1C,IAAwD,cAAxD,IAAwD,GAAI,IAAI;QAClE,IAAIG,WAAW,EAAE;YACfH,QAAQ,CAACK,eAAe,CAACC,OAAO,CAACC,SAAS,GAAGJ,WAAW;QAC1D,OAAO;YACL,OAAOH,QAAQ,CAACK,eAAe,CAACC,OAAO,CAACC,SAAS;QACnD,CAAC;IACH,CAAC;IACDR,QAAQ,EAAE;IACVD,KAAK,CAACU,gBAAgB,CAAC,QAAQ,EAAET,QAAQ,CAAC;IAC1C,OAAOA,QAAQ,CAAA;AACjB,CAAC;AAED,gEAAgE;AAChE,OAAO,IAAIU,iBAAiB,GAA4BlB,OAAO,CAAA;AAE/D,OAAO,IAAImB,qBAAqB,GAC9B,OAAOd,MAAM,KAAK,WAAW,GACzBL,OAAO,GACP,IAAM;IACJ,MAAMQ,QAAQ,GAAGL,sBAAsB,CAACF,cAAc,CAAC;IACvDkB,qBAAqB,GAAGnB,OAAO;IAC/BkB,iBAAiB,GAAG,CAACE,KAAgB,GAAK;QACxClB,cAAc,CAACkB,KAAK,CAAC;QACrBZ,QAAQ,EAAE;IACZ,CAAC;AACH,CAAC,CAAA;AAEP,OAAO,MAAMa,gBAAgB,GAAG,kBAC9B,KAACC,QAAM;QACLC,uBAAuB,EAAE;YACvBC,MAAM,EAAE,CAAC,CAAC,EAAErB,sBAAsB,CAACsB,QAAQ,EAAE,CAAC,GAAG,EAAExB,cAAc,CAAC,EAAE,CAAC;SACtE;MACD,AACH,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { Fonts } from "./element-fonts";
|
|
3
3
|
import { initGlobalColors, StyleThemeColors } from "./element-theme-colors";
|
|
4
4
|
import { initGlobalCookieTheme, ScriptThemeValue } from "./element-theme-script";
|
|
@@ -9,7 +9,13 @@ export const initColors = ()=>{
|
|
|
9
9
|
};
|
|
10
10
|
export const LidoUIHead = (param)=>/*#__PURE__*/ {
|
|
11
11
|
let { cssStyleVars =true , cssFont =false , jsStyleScript =true } = param;
|
|
12
|
-
return
|
|
12
|
+
return _jsxs(_Fragment, {
|
|
13
|
+
children: [
|
|
14
|
+
cssStyleVars ? /*#__PURE__*/ _jsx(StyleThemeColors, {}) : null,
|
|
15
|
+
jsStyleScript ? /*#__PURE__*/ _jsx(ScriptThemeValue, {}) : null,
|
|
16
|
+
cssFont ? /*#__PURE__*/ _jsx(Fonts, {}) : null
|
|
17
|
+
]
|
|
18
|
+
});
|
|
13
19
|
};
|
|
14
20
|
|
|
15
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../packages/theme/document-head-contents/index.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"sources":["../../../../packages/theme/document-head-contents/index.tsx"],"sourcesContent":["import { FC } from 'react'\nimport { Fonts } from './element-fonts'\nimport { initGlobalColors, StyleThemeColors } from './element-theme-colors'\nimport { initGlobalCookieTheme, ScriptThemeValue } from './element-theme-script'\nexport { Fonts } from './element-fonts'\n\nexport const initColors = () => {\n initGlobalColors()\n initGlobalCookieTheme()\n}\n\nexport const LidoUIHead: FC<{\n cssStyleVars?: boolean\n jsStyleScript?: boolean\n cssFont?: boolean\n}> = ({ cssStyleVars = true, cssFont = false, jsStyleScript = true }) => (\n <>\n {cssStyleVars ? <StyleThemeColors /> : null}\n {jsStyleScript ? <ScriptThemeValue /> : null}\n {cssFont ? <Fonts /> : null}\n </>\n)\n"],"names":["Fonts","initGlobalColors","StyleThemeColors","initGlobalCookieTheme","ScriptThemeValue","initColors","LidoUIHead","cssStyleVars","cssFont","jsStyleScript"],"mappings":"AAAA;AACA,SAASA,KAAK,QAAQ,iBAAiB,CAAA;AACvC,SAASC,gBAAgB,EAAEC,gBAAgB,QAAQ,wBAAwB,CAAA;AAC3E,SAASC,qBAAqB,EAAEC,gBAAgB,QAAQ,wBAAwB,CAAA;AAChF,SAASJ,KAAK,QAAQ,iBAAiB,CAAA;AAEvC,OAAO,MAAMK,UAAU,GAAG,IAAM;IAC9BJ,gBAAgB,EAAE;IAClBE,qBAAqB,EAAE;AACzB,CAAC,CAAA;AAED,OAAO,MAAMG,UAAU,GAIlB,uBACH;QADI,EAAEC,YAAY,EAAG,IAAI,CAAA,EAAEC,OAAO,EAAG,KAAK,CAAA,EAAEC,aAAa,EAAG,IAAI,CAAA,EAAE;WAClE;;YACGF,YAAY,iBAAG,KAACL,gBAAgB,KAAG,GAAG,IAAI;YAC1CO,aAAa,iBAAG,KAACL,gBAAgB,KAAG,GAAG,IAAI;YAC3CI,OAAO,iBAAG,KAACR,KAAK,KAAG,GAAG,IAAI;;MAC1B;AAAD,CACH,CAAA"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import React from "react";
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
2
|
import styled, { ThemeProvider as StyledThemeProvider } from "styled-components";
|
|
4
3
|
import { reverseThemeMap, themeDark, themeDefault, themeLight } from "./themes";
|
|
5
4
|
import { initColors } from "./document-head-contents/index";
|
|
@@ -23,15 +22,22 @@ export const ThemeProvider = (param)=>{
|
|
|
23
22
|
// if theme is auto-detected from cookies, it will interfere with global script logic - so we need to not provide CSS
|
|
24
23
|
colors: theme.colors
|
|
25
24
|
};
|
|
26
|
-
return /*#__PURE__*/
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
return /*#__PURE__*/ _jsx(StyledWrapper, {
|
|
26
|
+
...props,
|
|
27
|
+
children: /*#__PURE__*/ _jsx(StyledThemeProvider, {
|
|
28
|
+
theme: theme,
|
|
29
|
+
...rest,
|
|
30
|
+
children: children
|
|
31
|
+
})
|
|
32
|
+
});
|
|
29
33
|
};
|
|
30
|
-
export const LightThemeProvider = (props)=>/*#__PURE__*/
|
|
34
|
+
export const LightThemeProvider = (props)=>/*#__PURE__*/ _jsx(ThemeProvider, {
|
|
35
|
+
...props,
|
|
31
36
|
theme: themeLight
|
|
32
|
-
})
|
|
33
|
-
export const DarkThemeProvider = (props)=>/*#__PURE__*/
|
|
37
|
+
});
|
|
38
|
+
export const DarkThemeProvider = (props)=>/*#__PURE__*/ _jsx(ThemeProvider, {
|
|
39
|
+
...props,
|
|
34
40
|
theme: themeDark
|
|
35
|
-
})
|
|
41
|
+
});
|
|
36
42
|
|
|
37
43
|
//# sourceMappingURL=theme-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../packages/theme/theme-provider.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"sources":["../../../packages/theme/theme-provider.tsx"],"sourcesContent":["import { FC, PropsWithChildren } from 'react'\nimport styled, { ThemeProvider as StyledThemeProvider } from 'styled-components'\nimport { reverseThemeMap, themeDark, themeDefault, themeLight } from './themes'\nimport { initColors } from './document-head-contents'\nimport { generateCssColorVariables } from './utils/generate-css-color-variables'\nimport { Theme } from './types'\n\n// we need to initialize this before react component code if we're using this provider or CookieThemeProvider\ninitColors()\n\nconst StyledWrapper = styled.div<{ colors?: Record<string, string> }>`\n display: contents;\n ${({ colors }) => (colors ? generateCssColorVariables(colors) : null)}\n`\nexport const ThemeProvider: FC<PropsWithChildren<{ theme?: Theme }>> = ({\n theme = themeDefault,\n children,\n ...rest\n}) => {\n const internalThemeName = reverseThemeMap.get(theme)\n const props = internalThemeName\n ? {\n // if theme is detected as internally defined, we can just use data-lido-theme to set CSS vars instead of colors\n 'data-lido-theme': internalThemeName,\n }\n : {\n // if theme is auto-detected from cookies, it will interfere with global script logic - so we need to not provide CSS\n colors: theme.colors,\n }\n\n return (\n <StyledWrapper {...props}>\n <StyledThemeProvider theme={theme} {...rest}>\n {children}\n </StyledThemeProvider>\n </StyledWrapper>\n )\n}\n\nexport const LightThemeProvider: FC<PropsWithChildren> = (props) => (\n <ThemeProvider {...props} theme={themeLight} />\n)\n\nexport const DarkThemeProvider: FC<PropsWithChildren> = (props) => (\n <ThemeProvider {...props} theme={themeDark} />\n)\n"],"names":["styled","ThemeProvider","StyledThemeProvider","reverseThemeMap","themeDark","themeDefault","themeLight","initColors","generateCssColorVariables","StyledWrapper","div","colors","theme","children","rest","internalThemeName","get","props","LightThemeProvider","DarkThemeProvider"],"mappings":"AAAA;AACA,OAAOA,MAAM,IAAIC,aAAa,IAAIC,mBAAmB,QAAQ,mBAAmB,CAAA;AAChF,SAASC,eAAe,EAAEC,SAAS,EAAEC,YAAY,EAAEC,UAAU,QAAQ,UAAU,CAAA;AAC/E,SAASC,UAAU,QAAQ,gCAA0B,CAAA;AACrD,SAASC,yBAAyB,QAAQ,sCAAsC,CAAA;AAGhF,6GAA6G;AAC7GD,UAAU,EAAE;AAEZ,MAAME,aAAa,GAAGT,MAAM,CAACU,GAAG,AAAqC,CAAC;;EAEpE,EAAE,SAAgB;QAAf,EAAEC,MAAM,CAAA,EAAE;WAAMA,MAAM,GAAGH,yBAAyB,CAACG,MAAM,CAAC,GAAG,IAAI;AAAA,CAAC,CAAC;AACxE,CAAC;AACD,OAAO,MAAMV,aAAa,GAA6C,SAIjE;QAJkE,EACtEW,KAAK,EAAGP,YAAY,CAAA,EACpBQ,QAAQ,CAAA,EACR,GAAGC,IAAI,EACR;IACC,MAAMC,iBAAiB,GAAGZ,eAAe,CAACa,GAAG,CAACJ,KAAK,CAAC;IACpD,MAAMK,KAAK,GAAGF,iBAAiB,GAC3B;QACE,gHAAgH;QAChH,iBAAiB,EAAEA,iBAAiB;KACrC,GACD;QACE,qHAAqH;QACrHJ,MAAM,EAAEC,KAAK,CAACD,MAAM;KACrB;IAEL,qBACE,KAACF,aAAa;QAAE,GAAGQ,KAAK;kBACtB,cAAA,KAACf,mBAAmB;YAACU,KAAK,EAAEA,KAAK;YAAG,GAAGE,IAAI;sBACxCD,QAAQ;UACW;MACR,CACjB;AACH,CAAC,CAAA;AAED,OAAO,MAAMK,kBAAkB,GAA0B,CAACD,KAAK,iBAC7D,KAAChB,aAAa;QAAE,GAAGgB,KAAK;QAAEL,KAAK,EAAEN,UAAU;MAAI,AAChD,CAAA;AAED,OAAO,MAAMa,iBAAiB,GAA0B,CAACF,KAAK,iBAC5D,KAAChB,aAAa;QAAE,GAAGgB,KAAK;QAAEL,KAAK,EAAER,SAAS;MAAI,AAC/C,CAAA"}
|
|
@@ -1,9 +1,16 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { toast } from "react-toastify";
|
|
3
3
|
import { ToastPendingLoaderStyle, ToastPendingStyle, ToastPendingTextStyle } from "./ToastPendingStyles";
|
|
4
4
|
import { TOASTS_PENDING_OPTIONS } from "./toastsDefaultOptions";
|
|
5
5
|
export function ToastPending(content, options) {
|
|
6
|
-
return toast(/*#__PURE__*/
|
|
6
|
+
return toast(/*#__PURE__*/ _jsxs(ToastPendingStyle, {
|
|
7
|
+
children: [
|
|
8
|
+
/*#__PURE__*/ _jsx(ToastPendingLoaderStyle, {}),
|
|
9
|
+
/*#__PURE__*/ _jsx(ToastPendingTextStyle, {
|
|
10
|
+
children: content
|
|
11
|
+
})
|
|
12
|
+
]
|
|
13
|
+
}), {
|
|
7
14
|
...TOASTS_PENDING_OPTIONS,
|
|
8
15
|
...options || {}
|
|
9
16
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../packages/toast/ToastPending.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"sources":["../../../packages/toast/ToastPending.tsx"],"sourcesContent":["import { ReactText } from 'react'\nimport { toast, ToastOptions } from 'react-toastify'\nimport {\n ToastPendingLoaderStyle,\n ToastPendingStyle,\n ToastPendingTextStyle,\n} from './ToastPendingStyles'\nimport { TOASTS_PENDING_OPTIONS } from './toastsDefaultOptions'\n\nexport function ToastPending(\n content: JSX.Element,\n options?: ToastOptions,\n): ReactText {\n return toast(\n <ToastPendingStyle>\n <ToastPendingLoaderStyle />\n {/* eslint-disable-next-line */}\n <ToastPendingTextStyle>{content as any}</ToastPendingTextStyle>\n </ToastPendingStyle>,\n { ...TOASTS_PENDING_OPTIONS, ...(options || {}) },\n )\n}\n"],"names":["toast","ToastPendingLoaderStyle","ToastPendingStyle","ToastPendingTextStyle","TOASTS_PENDING_OPTIONS","ToastPending","content","options"],"mappings":"AAAA;AACA,SAASA,KAAK,QAAsB,gBAAgB,CAAA;AACpD,SACEC,uBAAuB,EACvBC,iBAAiB,EACjBC,qBAAqB,QAChB,sBAAsB,CAAA;AAC7B,SAASC,sBAAsB,QAAQ,wBAAwB,CAAA;AAE/D,OAAO,SAASC,YAAY,CAC1BC,OAAoB,EACpBC,OAAsB,EACX;IACX,OAAOP,KAAK,eACV,MAACE,iBAAiB;;0BAChB,KAACD,uBAAuB,KAAG;0BAE3B,KAACE,qBAAqB;0BAAEG,OAAO;cAAgC;;MAC7C,EACpB;QAAE,GAAGF,sBAAsB;QAAE,GAAIG,OAAO,IAAI,EAAE;KAAG,CAClD,CAAA;AACH,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef, Children, useRef, cloneElement, useState } from "react";
|
|
3
3
|
import { TooltipPopoverStyle } from "./TooltipStyles";
|
|
4
4
|
import { useMergeRefs } from "../hooks/index";
|
|
5
5
|
import { isElement } from "react-is";
|
|
6
6
|
const BODY_PERSISTENT_TIMEOUT = 150;
|
|
7
|
-
function Tooltip(
|
|
8
|
-
|
|
7
|
+
function Tooltip(param, ref) {
|
|
8
|
+
let { title , children , ...rest } = param;
|
|
9
9
|
const [state, setState] = useState(false);
|
|
10
10
|
const keepTimeoutRef = useRef(null);
|
|
11
11
|
const child = Children.only(children);
|
|
@@ -28,26 +28,33 @@ function Tooltip(props, ref) {
|
|
|
28
28
|
keepTimeoutRef.current = null;
|
|
29
29
|
}, BODY_PERSISTENT_TIMEOUT);
|
|
30
30
|
};
|
|
31
|
-
return /*#__PURE__*/
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
31
|
+
return /*#__PURE__*/ _jsxs(_Fragment, {
|
|
32
|
+
children: [
|
|
33
|
+
/*#__PURE__*/ cloneElement(child, {
|
|
34
|
+
ref: mergedRef,
|
|
35
|
+
onMouseEnter (event) {
|
|
36
|
+
var _props, ref;
|
|
37
|
+
handleMouseEnter();
|
|
38
|
+
(ref = (_props = child.props).onMouseEnter) === null || ref === void 0 ? void 0 : ref.call(_props, event);
|
|
39
|
+
},
|
|
40
|
+
onMouseLeave (event) {
|
|
41
|
+
var _props, ref;
|
|
42
|
+
handleMouseLeave();
|
|
43
|
+
(ref = (_props = child.props).onMouseLeave) === null || ref === void 0 ? void 0 : ref.call(_props, event);
|
|
44
|
+
}
|
|
45
|
+
}),
|
|
46
|
+
/*#__PURE__*/ _jsx(TooltipPopoverStyle, {
|
|
47
|
+
...rest,
|
|
48
|
+
open: state,
|
|
49
|
+
backdrop: false,
|
|
50
|
+
anchorRef: anchorRef,
|
|
51
|
+
onMouseEnter: handleMouseEnter,
|
|
52
|
+
onMouseLeave: handleMouseLeave,
|
|
53
|
+
ref: ref,
|
|
54
|
+
children: title
|
|
55
|
+
})
|
|
56
|
+
]
|
|
57
|
+
});
|
|
51
58
|
}
|
|
52
59
|
export default /*#__PURE__*/ forwardRef(Tooltip);
|
|
53
60
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../packages/tooltip/Tooltip.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"sources":["../../../packages/tooltip/Tooltip.tsx"],"sourcesContent":["import {\n ForwardedRef,\n forwardRef,\n Children,\n useRef,\n cloneElement,\n useState,\n MouseEvent,\n} from 'react'\nimport { TooltipPopoverStyle } from './TooltipStyles'\nimport { useMergeRefs } from '@lidofinance/hooks'\nimport { isElement } from 'react-is'\nimport { TooltipProps } from './types'\n\nconst BODY_PERSISTENT_TIMEOUT = 150\n\nfunction Tooltip(\n { title, children, ...rest }: TooltipProps,\n ref?: ForwardedRef<HTMLDivElement>,\n) {\n const [state, setState] = useState(false)\n const keepTimeoutRef = useRef<NodeJS.Timeout | null>(null)\n\n const child = Children.only(children)\n if (!isElement(child)) throw new Error('Child must be a React element')\n\n const anchorRef = useRef<HTMLElement>(null)\n const mergedRef = useMergeRefs([child.ref, anchorRef])\n\n const handleMouseEnter = () => {\n if (keepTimeoutRef.current) {\n clearTimeout(keepTimeoutRef.current)\n keepTimeoutRef.current = null\n }\n setState(true)\n }\n\n const handleMouseLeave = () => {\n keepTimeoutRef.current = setTimeout(() => {\n setState(false)\n keepTimeoutRef.current = null\n }, BODY_PERSISTENT_TIMEOUT)\n }\n\n return (\n <>\n {cloneElement(child, {\n ref: mergedRef,\n onMouseEnter(event: MouseEvent<HTMLElement>) {\n handleMouseEnter()\n child.props.onMouseEnter?.(event)\n },\n onMouseLeave(event: MouseEvent<HTMLElement>) {\n handleMouseLeave()\n child.props.onMouseLeave?.(event)\n },\n })}\n <TooltipPopoverStyle\n {...rest}\n open={state}\n backdrop={false}\n anchorRef={anchorRef}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n ref={ref}\n >\n {title}\n </TooltipPopoverStyle>\n </>\n )\n}\n\nexport default forwardRef(Tooltip)\n"],"names":["forwardRef","Children","useRef","cloneElement","useState","TooltipPopoverStyle","useMergeRefs","isElement","BODY_PERSISTENT_TIMEOUT","Tooltip","ref","title","children","rest","state","setState","keepTimeoutRef","child","only","Error","anchorRef","mergedRef","handleMouseEnter","current","clearTimeout","handleMouseLeave","setTimeout","onMouseEnter","event","props","onMouseLeave","open","backdrop"],"mappings":"AAAA;AAAA,SAEEA,UAAU,EACVC,QAAQ,EACRC,MAAM,EACNC,YAAY,EACZC,QAAQ,QAEH,OAAO,CAAA;AACd,SAASC,mBAAmB,QAAQ,iBAAiB,CAAA;AACrD,SAASC,YAAY,QAAQ,gBAAoB,CAAA;AACjD,SAASC,SAAS,QAAQ,UAAU,CAAA;AAGpC,MAAMC,uBAAuB,GAAG,GAAG;AAEnC,SAASC,OAAO,CACd,KAA0C,EAC1CC,GAAkC,EAClC;QAFA,EAAEC,KAAK,CAAA,EAAEC,QAAQ,CAAA,EAAE,GAAGC,IAAI,EAAgB,GAA1C,KAA0C;IAG1C,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGX,QAAQ,CAAC,KAAK,CAAC;IACzC,MAAMY,cAAc,GAAGd,MAAM,CAAwB,IAAI,CAAC;IAE1D,MAAMe,KAAK,GAAGhB,QAAQ,CAACiB,IAAI,CAACN,QAAQ,CAAC;IACrC,IAAI,CAACL,SAAS,CAACU,KAAK,CAAC,EAAE,MAAM,IAAIE,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAEvE,MAAMC,SAAS,GAAGlB,MAAM,CAAc,IAAI,CAAC;IAC3C,MAAMmB,SAAS,GAAGf,YAAY,CAAC;QAACW,KAAK,CAACP,GAAG;QAAEU,SAAS;KAAC,CAAC;IAEtD,MAAME,gBAAgB,GAAG,IAAM;QAC7B,IAAIN,cAAc,CAACO,OAAO,EAAE;YAC1BC,YAAY,CAACR,cAAc,CAACO,OAAO,CAAC;YACpCP,cAAc,CAACO,OAAO,GAAG,IAAI;QAC/B,CAAC;QACDR,QAAQ,CAAC,IAAI,CAAC;IAChB,CAAC;IAED,MAAMU,gBAAgB,GAAG,IAAM;QAC7BT,cAAc,CAACO,OAAO,GAAGG,UAAU,CAAC,IAAM;YACxCX,QAAQ,CAAC,KAAK,CAAC;YACfC,cAAc,CAACO,OAAO,GAAG,IAAI;QAC/B,CAAC,EAAEf,uBAAuB,CAAC;IAC7B,CAAC;IAED,qBACE;;0BACGL,YAAY,CAACc,KAAK,EAAE;gBACnBP,GAAG,EAAEW,SAAS;gBACdM,YAAY,EAACC,KAA8B,EAAE;wBAE3CX,MAAW,AAAa,EAAxBA,GAAwB;oBADxBK,gBAAgB,EAAE;oBAClBL,CAAAA,GAAwB,GAAxBA,CAAAA,MAAW,GAAXA,KAAK,CAACY,KAAK,EAACF,YAAY,cAAxBV,GAAwB,WAAS,GAAjCA,KAAAA,CAAiC,GAAjCA,GAAwB,CAAxBA,IAAiC,CAAjCA,MAAW,EAAgBW,KAAK,CAAC,CAAA;gBACnC,CAAC;gBACDE,YAAY,EAACF,KAA8B,EAAE;wBAE3CX,MAAW,AAAa,EAAxBA,GAAwB;oBADxBQ,gBAAgB,EAAE;oBAClBR,CAAAA,GAAwB,GAAxBA,CAAAA,MAAW,GAAXA,KAAK,CAACY,KAAK,EAACC,YAAY,cAAxBb,GAAwB,WAAS,GAAjCA,KAAAA,CAAiC,GAAjCA,GAAwB,CAAxBA,IAAiC,CAAjCA,MAAW,EAAgBW,KAAK,CAAC,CAAA;gBACnC,CAAC;aACF,CAAC;0BACF,KAACvB,mBAAmB;gBACjB,GAAGQ,IAAI;gBACRkB,IAAI,EAAEjB,KAAK;gBACXkB,QAAQ,EAAE,KAAK;gBACfZ,SAAS,EAAEA,SAAS;gBACpBO,YAAY,EAAEL,gBAAgB;gBAC9BQ,YAAY,EAAEL,gBAAgB;gBAC9Bf,GAAG,EAAEA,GAAG;0BAEPC,KAAK;cACc;;MACrB,CACJ;AACH,CAAC;AAED,6BAAeX,UAAU,CAACS,OAAO,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../packages/tooltip/types.ts"],"sourcesContent":["import { PopoverProps } from '@lidofinance/popover'\nimport
|
|
1
|
+
{"version":3,"sources":["../../../packages/tooltip/types.ts"],"sourcesContent":["import { PopoverProps } from '@lidofinance/popover'\nimport { ReactElement, ReactNode, RefAttributes } from 'react'\nexport type { Theme } from '@lidofinance/theme'\n\nexport type TooltipProps = Omit<\n PopoverProps,\n 'anchorRef' | 'title' | 'open' | 'backdrop' | 'children'\n> & {\n title: ReactNode\n children: ReactElement & RefAttributes<HTMLElement>\n}\n"],"names":[],"mappings":"AAAA,WAUC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef } from "react";
|
|
3
3
|
import { useMergeRefs } from "../hooks/index";
|
|
4
4
|
import { Transition } from "react-transition-group";
|
|
5
5
|
import { DEFAULT_DURATION } from "./constants";
|
|
6
6
|
export default function withTransition(Component) {
|
|
7
|
-
function Wrapped(
|
|
8
|
-
|
|
7
|
+
function Wrapped(param, externalRef) {
|
|
8
|
+
let { in: state = false , timeout =DEFAULT_DURATION , mountOnEnter =true , unmountOnExit =true , appear =true , enter =true , exit =true , addEndListener , onEnter , onEntering , onEntered , onExit , onExiting , onExited , ...rest } = param;
|
|
9
9
|
const transitionProps = {
|
|
10
10
|
in: state,
|
|
11
11
|
timeout,
|
|
@@ -25,13 +25,16 @@ export default function withTransition(Component) {
|
|
|
25
25
|
const ref = useMergeRefs([
|
|
26
26
|
externalRef
|
|
27
27
|
]);
|
|
28
|
-
return /*#__PURE__*/
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
28
|
+
return /*#__PURE__*/ _jsx(Transition, {
|
|
29
|
+
...transitionProps,
|
|
30
|
+
nodeRef: ref,
|
|
31
|
+
children: (status)=>/*#__PURE__*/ _jsx(Component, {
|
|
32
|
+
...rest,
|
|
33
|
+
duration: timeout,
|
|
34
|
+
transitionStatus: status,
|
|
35
|
+
ref: ref
|
|
36
|
+
})
|
|
37
|
+
});
|
|
35
38
|
}
|
|
36
39
|
return /*#__PURE__*/ forwardRef(Wrapped);
|
|
37
40
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../packages/transition/withTransition.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"sources":["../../../packages/transition/withTransition.tsx"],"sourcesContent":["import {\n ComponentType,\n ForwardedRef,\n forwardRef,\n ForwardRefExoticComponent,\n PropsWithoutRef,\n RefAttributes,\n} from 'react'\nimport { useMergeRefs } from '@lidofinance/hooks'\nimport { Transition } from 'react-transition-group'\nimport { DEFAULT_DURATION } from './constants'\nimport { TransitionWrapperProps, TransitionInnerProps } from './types'\n\ntype WrappedProps<T> = Omit<T, keyof TransitionInnerProps> &\n TransitionWrapperProps\n\nexport default function withTransition<\n P extends TransitionInnerProps,\n E extends HTMLElement,\n>(\n Component: ComponentType<P>,\n): ForwardRefExoticComponent<\n PropsWithoutRef<WrappedProps<P>> & RefAttributes<E>\n> {\n function Wrapped(\n {\n in: state = false,\n timeout = DEFAULT_DURATION,\n mountOnEnter = true,\n unmountOnExit = true,\n appear = true,\n enter = true,\n exit = true,\n addEndListener,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n ...rest\n }: WrappedProps<P>,\n externalRef: ForwardedRef<E>,\n ) {\n const transitionProps = {\n in: state,\n timeout,\n mountOnEnter,\n unmountOnExit,\n appear,\n enter,\n exit,\n addEndListener,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n }\n\n const ref = useMergeRefs([externalRef])\n\n return (\n <Transition {...transitionProps} nodeRef={ref}>\n {(status) => (\n <Component\n {...(rest as P)}\n duration={timeout}\n transitionStatus={status}\n ref={ref}\n />\n )}\n </Transition>\n )\n }\n\n return forwardRef(Wrapped)\n}\n"],"names":["forwardRef","useMergeRefs","Transition","DEFAULT_DURATION","withTransition","Component","Wrapped","externalRef","in","state","timeout","mountOnEnter","unmountOnExit","appear","enter","exit","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","rest","transitionProps","ref","nodeRef","status","duration","transitionStatus"],"mappings":"AAAA;AAAA,SAGEA,UAAU,QAIL,OAAO,CAAA;AACd,SAASC,YAAY,QAAQ,gBAAoB,CAAA;AACjD,SAASC,UAAU,QAAQ,wBAAwB,CAAA;AACnD,SAASC,gBAAgB,QAAQ,aAAa,CAAA;AAM9C,eAAe,SAASC,cAAc,CAIpCC,SAA2B,EAG3B;IACA,SAASC,OAAO,CACd,KAgBkB,EAClBC,WAA4B,EAC5B;YAlBA,EACEC,EAAE,EAAEC,KAAK,GAAG,KAAK,CAAA,EACjBC,OAAO,EAAGP,gBAAgB,CAAA,EAC1BQ,YAAY,EAAG,IAAI,CAAA,EACnBC,aAAa,EAAG,IAAI,CAAA,EACpBC,MAAM,EAAG,IAAI,CAAA,EACbC,KAAK,EAAG,IAAI,CAAA,EACZC,IAAI,EAAG,IAAI,CAAA,EACXC,cAAc,CAAA,EACdC,OAAO,CAAA,EACPC,UAAU,CAAA,EACVC,SAAS,CAAA,EACTC,MAAM,CAAA,EACNC,SAAS,CAAA,EACTC,QAAQ,CAAA,EACR,GAAGC,IAAI,EACS,GAhBlB,KAgBkB;QAGlB,MAAMC,eAAe,GAAG;YACtBhB,EAAE,EAAEC,KAAK;YACTC,OAAO;YACPC,YAAY;YACZC,aAAa;YACbC,MAAM;YACNC,KAAK;YACLC,IAAI;YACJC,cAAc;YACdC,OAAO;YACPC,UAAU;YACVC,SAAS;YACTC,MAAM;YACNC,SAAS;YACTC,QAAQ;SACT;QAED,MAAMG,GAAG,GAAGxB,YAAY,CAAC;YAACM,WAAW;SAAC,CAAC;QAEvC,qBACE,KAACL,UAAU;YAAE,GAAGsB,eAAe;YAAEE,OAAO,EAAED,GAAG;sBAC1C,CAACE,MAAM,iBACN,KAACtB,SAAS;oBACP,GAAIkB,IAAI;oBACTK,QAAQ,EAAElB,OAAO;oBACjBmB,gBAAgB,EAAEF,MAAM;oBACxBF,GAAG,EAAEA,GAAG;kBACR,AACH;UACU,CACd;IACH,CAAC;IAED,qBAAOzB,UAAU,CAACM,OAAO,CAAC,CAAA;AAC5B,CAAC,CAAA"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
declare const _default:
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
declare const _default: import("react").ForwardRefExoticComponent<{
|
|
3
3
|
defaultExpanded?: boolean | undefined;
|
|
4
|
-
summary:
|
|
5
|
-
} & Omit<
|
|
4
|
+
summary: import("react").ReactNode;
|
|
5
|
+
} & Omit<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
|
|
6
6
|
as?: keyof JSX.IntrinsicElements | undefined;
|
|
7
7
|
forwardedAs?: keyof JSX.IntrinsicElements | undefined;
|
|
8
|
-
}, "summary" | "ref" | "defaultExpanded"> &
|
|
8
|
+
}, "summary" | "ref" | "defaultExpanded"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
9
9
|
export default _default;
|
|
10
10
|
//# sourceMappingURL=Accordion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Accordion.d.ts","sourceRoot":"","sources":["../../../packages/accordion/Accordion.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Accordion.d.ts","sourceRoot":"","sources":["../../../packages/accordion/Accordion.tsx"],"names":[],"mappings":";;;;;;;;AAgCA,wBAAoC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { LidoComponentProps } from '@lidofinance/utils';
|
|
2
|
-
import
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
3
|
export type { Theme } from '@lidofinance/theme';
|
|
4
4
|
export declare type AccordionProps = LidoComponentProps<'div', {
|
|
5
5
|
defaultExpanded?: boolean;
|
|
6
|
-
summary:
|
|
6
|
+
summary: ReactNode;
|
|
7
7
|
}>;
|
|
8
8
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../packages/accordion/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../packages/accordion/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,YAAY,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAE/C,oBAAY,cAAc,GAAG,kBAAkB,CAC7C,KAAK,EACL;IACE,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,OAAO,EAAE,SAAS,CAAA;CACnB,CACF,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AccordionProps } from './types';
|
|
2
2
|
import { GetCollapsePropsOutput, GetTogglePropsOutput } from 'react-collapsed/dist/types';
|
|
3
|
-
declare type UseExpanded = (props: AccordionProps) => {
|
|
3
|
+
declare type UseExpanded = (props: Pick<AccordionProps, 'defaultExpanded'>) => {
|
|
4
4
|
toggleProps: GetTogglePropsOutput;
|
|
5
5
|
collapseProps: GetCollapsePropsOutput;
|
|
6
6
|
isExpanded: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useExpanded.d.ts","sourceRoot":"","sources":["../../../packages/accordion/useExpanded.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAExC,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,4BAA4B,CAAA;AAEnC,aAAK,WAAW,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK;
|
|
1
|
+
{"version":3,"file":"useExpanded.d.ts","sourceRoot":"","sources":["../../../packages/accordion/useExpanded.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAExC,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,4BAA4B,CAAA;AAEnC,aAAK,WAAW,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,iBAAiB,CAAC,KAAK;IACrE,WAAW,EAAE,oBAAoB,CAAA;IACjC,aAAa,EAAE,sBAAsB,CAAA;IACrC,UAAU,EAAE,OAAO,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,WAmBzB,CAAA"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
declare const _default:
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
declare const _default: import("react").ForwardRefExoticComponent<{
|
|
3
3
|
address: string;
|
|
4
4
|
symbols?: number | undefined;
|
|
5
|
-
} & Omit<
|
|
5
|
+
} & Omit<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
|
|
6
6
|
as?: keyof JSX.IntrinsicElements | undefined;
|
|
7
7
|
forwardedAs?: keyof JSX.IntrinsicElements | undefined;
|
|
8
|
-
}, "address" | "ref" | "symbols"> &
|
|
8
|
+
}, "address" | "ref" | "symbols"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
9
9
|
export default _default;
|
|
10
10
|
//# sourceMappingURL=Address.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Address.d.ts","sourceRoot":"","sources":["../../../packages/address/Address.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Address.d.ts","sourceRoot":"","sources":["../../../packages/address/Address.tsx"],"names":[],"mappings":";;;;;;;;AAqBA,wBAAkC"}
|