@laerdal/life-react-components 6.0.0-dev.2.full → 6.0.0-dev.20.full
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/Accordion/ContentAccordion.cjs +40 -11
- package/dist/Accordion/ContentAccordion.cjs.map +1 -1
- package/dist/Accordion/ContentAccordion.js +40 -11
- package/dist/Accordion/ContentAccordion.js.map +1 -1
- package/dist/Accordion/__tests__/AccordionMenu.test.tsx +42 -0
- package/dist/Accordion/__tests__/ContentAccordion.test.tsx +150 -0
- package/dist/Accordion/styles.cjs +51 -13
- package/dist/Accordion/styles.cjs.map +1 -1
- package/dist/Accordion/styles.js +51 -13
- package/dist/Accordion/styles.js.map +1 -1
- package/dist/AuthPage/__tests__/AuthPage.test.tsx +27 -0
- package/dist/Banners/Banner.cjs +38 -34
- package/dist/Banners/Banner.cjs.map +1 -1
- package/dist/Banners/Banner.d.ts +2 -3
- package/dist/Banners/Banner.js +38 -34
- package/dist/Banners/Banner.js.map +1 -1
- package/dist/Banners/__tests__/Banner.test.tsx +47 -0
- package/dist/Banners/__tests__/OverviewBanner.test.tsx +20 -0
- package/dist/Banners/styles.cjs +8 -16
- package/dist/Banners/styles.cjs.map +1 -1
- package/dist/Banners/styles.js +8 -16
- package/dist/Banners/styles.js.map +1 -1
- package/dist/Breadcrumb/Breadcrumb.cjs +8 -2
- package/dist/Breadcrumb/Breadcrumb.cjs.map +1 -1
- package/dist/Breadcrumb/Breadcrumb.js +8 -2
- package/dist/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/Breadcrumb/__tests__/Breadcrumb.test.tsx +78 -0
- package/dist/Breadcrumb/styles.cjs +15 -4
- package/dist/Breadcrumb/styles.cjs.map +1 -1
- package/dist/Breadcrumb/styles.js +15 -4
- package/dist/Breadcrumb/styles.js.map +1 -1
- package/dist/Button/BackButton.cjs +27 -6
- package/dist/Button/BackButton.cjs.map +1 -1
- package/dist/Button/BackButton.js +27 -6
- package/dist/Button/BackButton.js.map +1 -1
- package/dist/Button/Button.cjs +179 -47
- package/dist/Button/Button.cjs.map +1 -1
- package/dist/Button/Button.d.ts +2 -0
- package/dist/Button/Button.js +179 -47
- package/dist/Button/Button.js.map +1 -1
- package/dist/Button/Iconbutton.cjs +83 -21
- package/dist/Button/Iconbutton.cjs.map +1 -1
- package/dist/Button/Iconbutton.js +83 -21
- package/dist/Button/Iconbutton.js.map +1 -1
- package/dist/Button/__tests__/BackButton.test.tsx +32 -0
- package/dist/Button/__tests__/Button.test.tsx +45 -0
- package/dist/Button/__tests__/DualButton.test.tsx +119 -0
- package/dist/Card/HorizontalCard/HorizontalCard.cjs +20 -5
- package/dist/Card/HorizontalCard/HorizontalCard.cjs.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCard.js +20 -5
- package/dist/Card/HorizontalCard/HorizontalCard.js.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardBody.cjs +12 -3
- package/dist/Card/HorizontalCard/HorizontalCardBody.cjs.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardBody.js +12 -3
- package/dist/Card/HorizontalCard/HorizontalCardBody.js.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.cjs +8 -2
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.cjs.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.js +8 -2
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.js.map +1 -1
- package/dist/Card/HorizontalCard/__tests__/HorizontalCard.test.tsx +71 -0
- package/dist/Card/HorizontalCard/__tests__/VerticalCard.test.tsx +124 -0
- package/dist/Card/VerticalCard/Card.cjs +20 -5
- package/dist/Card/VerticalCard/Card.cjs.map +1 -1
- package/dist/Card/VerticalCard/Card.js +20 -5
- package/dist/Card/VerticalCard/Card.js.map +1 -1
- package/dist/Card/VerticalCard/CardBottomSection.cjs +28 -7
- package/dist/Card/VerticalCard/CardBottomSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardBottomSection.js +28 -7
- package/dist/Card/VerticalCard/CardBottomSection.js.map +1 -1
- package/dist/Card/VerticalCard/CardMiddleSection.cjs +19 -4
- package/dist/Card/VerticalCard/CardMiddleSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardMiddleSection.js +19 -4
- package/dist/Card/VerticalCard/CardMiddleSection.js.map +1 -1
- package/dist/Card/VerticalCard/CardTopSection.cjs +9 -2
- package/dist/Card/VerticalCard/CardTopSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardTopSection.js +9 -2
- package/dist/Card/VerticalCard/CardTopSection.js.map +1 -1
- package/dist/Card/__tests__/Card.test.tsx +146 -0
- package/dist/Chips/ChipStyles.cjs +4 -1
- package/dist/Chips/ChipStyles.cjs.map +1 -1
- package/dist/Chips/ChipStyles.js +4 -1
- package/dist/Chips/ChipStyles.js.map +1 -1
- package/dist/Chips/__tests__/ActionChip.test.tsx +94 -0
- package/dist/Chips/__tests__/ChoiceChips.test.tsx +79 -0
- package/dist/Chips/__tests__/FilterChip.test.tsx +95 -0
- package/dist/Chips/__tests__/InputChip.test.tsx +155 -0
- package/dist/ChipsInput/ChipInputField.cjs +16 -4
- package/dist/ChipsInput/ChipInputField.cjs.map +1 -1
- package/dist/ChipsInput/ChipInputField.js +16 -4
- package/dist/ChipsInput/ChipInputField.js.map +1 -1
- package/dist/ChipsInput/__tests__/ChipDropdownInput.test.tsx +100 -0
- package/dist/ChipsInput/__tests__/ChipInputFields.test.tsx +155 -0
- package/dist/Dropdown/BasicDropdown.cjs +12 -3
- package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
- package/dist/Dropdown/BasicDropdown.js +12 -3
- package/dist/Dropdown/BasicDropdown.js.map +1 -1
- package/dist/Dropdown/CommonStyling.cjs +172 -42
- package/dist/Dropdown/CommonStyling.cjs.map +1 -1
- package/dist/Dropdown/CommonStyling.js +172 -42
- package/dist/Dropdown/CommonStyling.js.map +1 -1
- package/dist/Dropdown/DropdownContent.cjs +36 -10
- package/dist/Dropdown/DropdownContent.cjs.map +1 -1
- package/dist/Dropdown/DropdownContent.js +36 -10
- package/dist/Dropdown/DropdownContent.js.map +1 -1
- package/dist/Dropdown/DropdownFilter.cjs +12 -3
- package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
- package/dist/Dropdown/DropdownFilter.js +12 -3
- package/dist/Dropdown/DropdownFilter.js.map +1 -1
- package/dist/Dropdown/__tests__/DropdownFilter.test.tsx +39 -0
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs +4 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs.map +1 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.js +4 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.js.map +1 -1
- package/dist/Footer/__tests__/Footer.test.tsx +182 -0
- package/dist/GlobalNavigationBar/Logo.cjs +2 -1
- package/dist/GlobalNavigationBar/Logo.cjs.map +1 -1
- package/dist/GlobalNavigationBar/Logo.js +2 -1
- package/dist/GlobalNavigationBar/Logo.js.map +1 -1
- package/dist/GlobalNavigationBar/__tests__/GlobalNavigationBar.tests.d.ts +1 -0
- package/dist/GlobalNavigationBar/__tests__/Logo.test.tsx +39 -0
- package/dist/GlobalNavigationBar/__tests__/Logo.tests.d.ts +1 -0
- package/dist/GlobalNavigationBar/desktop/MainMenu.cjs +10 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.js +10 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/desktop/RightSideNav.cjs +3 -2
- package/dist/GlobalNavigationBar/desktop/RightSideNav.cjs.map +1 -1
- package/dist/GlobalNavigationBar/desktop/RightSideNav.js +3 -2
- package/dist/GlobalNavigationBar/desktop/RightSideNav.js.map +1 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs +4 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.js +4 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/desktop/__tests__/DesktopActions.test.tsx +108 -0
- package/dist/GlobalNavigationBar/desktop/__tests__/ExtendedMainMenu.test.tsx +28 -0
- package/dist/GlobalNavigationBar/desktop/__tests__/MainMenu.test.tsx +55 -0
- package/dist/GlobalNavigationBar/desktop/__tests__/RightSideNav.test.tsx +45 -0
- package/dist/GlobalNavigationBar/desktop/__tests__/UserMenu.test.tsx +125 -0
- package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenu.test.tsx +317 -0
- package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenuContent.test.tsx +294 -0
- package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenuHeader.test.tsx +195 -0
- package/dist/HyperLink/HyperLink.cjs +18 -2
- package/dist/HyperLink/HyperLink.cjs.map +1 -1
- package/dist/HyperLink/HyperLink.d.ts +2 -0
- package/dist/HyperLink/HyperLink.js +18 -2
- package/dist/HyperLink/HyperLink.js.map +1 -1
- package/dist/HyperLink/styling.cjs +38 -8
- package/dist/HyperLink/styling.cjs.map +1 -1
- package/dist/HyperLink/styling.js +38 -8
- package/dist/HyperLink/styling.js.map +1 -1
- package/dist/InputFields/Checkbox.cjs +54 -14
- package/dist/InputFields/Checkbox.cjs.map +1 -1
- package/dist/InputFields/Checkbox.js +54 -14
- package/dist/InputFields/Checkbox.js.map +1 -1
- package/dist/InputFields/DatepickerField.cjs +149 -43
- package/dist/InputFields/DatepickerField.cjs.map +1 -1
- package/dist/InputFields/DatepickerField.d.ts +1 -1
- package/dist/InputFields/DatepickerField.js +150 -44
- package/dist/InputFields/DatepickerField.js.map +1 -1
- package/dist/InputFields/DatepickerFieldHeader.cjs +20 -5
- package/dist/InputFields/DatepickerFieldHeader.cjs.map +1 -1
- package/dist/InputFields/DatepickerFieldHeader.js +20 -5
- package/dist/InputFields/DatepickerFieldHeader.js.map +1 -1
- package/dist/InputFields/Label.cjs +38 -11
- package/dist/InputFields/Label.cjs.map +1 -1
- package/dist/InputFields/Label.js +38 -11
- package/dist/InputFields/Label.js.map +1 -1
- package/dist/InputFields/NumberField.cjs +66 -16
- package/dist/InputFields/NumberField.cjs.map +1 -1
- package/dist/InputFields/NumberField.js +66 -16
- package/dist/InputFields/NumberField.js.map +1 -1
- package/dist/InputFields/PasswordField.cjs +4 -1
- package/dist/InputFields/PasswordField.cjs.map +1 -1
- package/dist/InputFields/PasswordField.d.ts +1 -1
- package/dist/InputFields/PasswordField.js +4 -1
- package/dist/InputFields/PasswordField.js.map +1 -1
- package/dist/InputFields/QuickSearch.cjs +30 -6
- package/dist/InputFields/QuickSearch.cjs.map +1 -1
- package/dist/InputFields/QuickSearch.js +30 -6
- package/dist/InputFields/QuickSearch.js.map +1 -1
- package/dist/InputFields/RadioButton.cjs +63 -15
- package/dist/InputFields/RadioButton.cjs.map +1 -1
- package/dist/InputFields/RadioButton.js +63 -15
- package/dist/InputFields/RadioButton.js.map +1 -1
- package/dist/InputFields/RichTextField.cjs +60 -15
- package/dist/InputFields/RichTextField.cjs.map +1 -1
- package/dist/InputFields/RichTextField.js +60 -15
- package/dist/InputFields/RichTextField.js.map +1 -1
- package/dist/InputFields/SearchBar.cjs +4 -1
- package/dist/InputFields/SearchBar.cjs.map +1 -1
- package/dist/InputFields/SearchBar.js +4 -1
- package/dist/InputFields/SearchBar.js.map +1 -1
- package/dist/InputFields/TextField.cjs +9 -3
- package/dist/InputFields/TextField.cjs.map +1 -1
- package/dist/InputFields/TextField.d.ts +1 -1
- package/dist/InputFields/TextField.js +9 -3
- package/dist/InputFields/TextField.js.map +1 -1
- package/dist/InputFields/Textarea.cjs +68 -17
- package/dist/InputFields/Textarea.cjs.map +1 -1
- package/dist/InputFields/Textarea.js +68 -17
- package/dist/InputFields/Textarea.js.map +1 -1
- package/dist/InputFields/__tests__/NumberField.test.tsx +67 -0
- package/dist/InputFields/__tests__/NumberInput.test.tsx +68 -0
- package/dist/InputFields/__tests__/QuickSearch.test.tsx +42 -0
- package/dist/InputFields/components/SearchBarInput.cjs +28 -7
- package/dist/InputFields/components/SearchBarInput.cjs.map +1 -1
- package/dist/InputFields/components/SearchBarInput.js +28 -7
- package/dist/InputFields/components/SearchBarInput.js.map +1 -1
- package/dist/InputFields/components/SearchField.cjs +60 -15
- package/dist/InputFields/components/SearchField.cjs.map +1 -1
- package/dist/InputFields/components/SearchField.js +60 -15
- package/dist/InputFields/components/SearchField.js.map +1 -1
- package/dist/InputFields/styling.cjs +95 -39
- package/dist/InputFields/styling.cjs.map +1 -1
- package/dist/InputFields/styling.d.ts +1 -2
- package/dist/InputFields/styling.js +95 -39
- package/dist/InputFields/styling.js.map +1 -1
- package/dist/LinearProgress/LinearProgress.cjs +161 -53
- package/dist/LinearProgress/LinearProgress.cjs.map +1 -1
- package/dist/LinearProgress/LinearProgress.js +161 -53
- package/dist/LinearProgress/LinearProgress.js.map +1 -1
- package/dist/LinearProgress/__tests__/LinearProgress.test.tsx +25 -0
- package/dist/List/ListRow.cjs +36 -9
- package/dist/List/ListRow.cjs.map +1 -1
- package/dist/List/ListRow.js +36 -9
- package/dist/List/ListRow.js.map +1 -1
- package/dist/List/__tests__/ListRow.test.tsx +18 -0
- package/dist/List/__tests__/ListRow.tests.d.ts +1 -0
- package/dist/LoadingIndicator/LoadingIndicator.cjs +4 -1
- package/dist/LoadingIndicator/LoadingIndicator.cjs.map +1 -1
- package/dist/LoadingIndicator/LoadingIndicator.js +4 -1
- package/dist/LoadingIndicator/LoadingIndicator.js.map +1 -1
- package/dist/LoadingPage/GlobalLoadingPage.cjs +4 -1
- package/dist/LoadingPage/GlobalLoadingPage.cjs.map +1 -1
- package/dist/LoadingPage/GlobalLoadingPage.js +4 -1
- package/dist/LoadingPage/GlobalLoadingPage.js.map +1 -1
- package/dist/LoadingPage/__tests__/GlobalLoadingPage.test.tsx +23 -0
- package/dist/MenuItem/MenuItem.cjs +101 -26
- package/dist/MenuItem/MenuItem.cjs.map +1 -1
- package/dist/MenuItem/MenuItem.js +101 -26
- package/dist/MenuItem/MenuItem.js.map +1 -1
- package/dist/MiniProductCard/MiniProductCard.cjs +15 -1
- package/dist/MiniProductCard/MiniProductCard.cjs.map +1 -1
- package/dist/MiniProductCard/MiniProductCard.d.ts +1 -0
- package/dist/MiniProductCard/MiniProductCard.js +15 -1
- package/dist/MiniProductCard/MiniProductCard.js.map +1 -1
- package/dist/Modals/Modal.cjs +4 -1
- package/dist/Modals/Modal.cjs.map +1 -1
- package/dist/Modals/Modal.js +4 -1
- package/dist/Modals/Modal.js.map +1 -1
- package/dist/Modals/ModalContent.cjs +24 -6
- package/dist/Modals/ModalContent.cjs.map +1 -1
- package/dist/Modals/ModalContent.js +24 -6
- package/dist/Modals/ModalContent.js.map +1 -1
- package/dist/Modals/ModalDialog.cjs +12 -3
- package/dist/Modals/ModalDialog.cjs.map +1 -1
- package/dist/Modals/ModalDialog.js +12 -3
- package/dist/Modals/ModalDialog.js.map +1 -1
- package/dist/Modals/ModalNote.cjs +16 -4
- package/dist/Modals/ModalNote.cjs.map +1 -1
- package/dist/Modals/ModalNote.js +16 -4
- package/dist/Modals/ModalNote.js.map +1 -1
- package/dist/Modals/ModalStyles.cjs +44 -11
- package/dist/Modals/ModalStyles.cjs.map +1 -1
- package/dist/Modals/ModalStyles.js +44 -11
- package/dist/Modals/ModalStyles.js.map +1 -1
- package/dist/Modals/__tests__/Modal.test.tsx +169 -0
- package/dist/Modals/__tests__/ModalContainer.test.tsx +77 -0
- package/dist/Modals/__tests__/ModalContent.test.tsx +126 -0
- package/dist/NavItem/NavItem.cjs +11 -2
- package/dist/NavItem/NavItem.cjs.map +1 -1
- package/dist/NavItem/NavItem.js +11 -2
- package/dist/NavItem/NavItem.js.map +1 -1
- package/dist/NavItem/__tests__/NavItem.test.ts +6 -0
- package/dist/NotificationDot/NotificationDot.cjs +17 -2
- package/dist/NotificationDot/NotificationDot.cjs.map +1 -1
- package/dist/NotificationDot/NotificationDot.js +17 -2
- package/dist/NotificationDot/NotificationDot.js.map +1 -1
- package/dist/NotificationDot/__tests__/NotificationDot.test.tsx +33 -0
- package/dist/Paginator/Paginator.cjs +76 -29
- package/dist/Paginator/Paginator.cjs.map +1 -1
- package/dist/Paginator/Paginator.js +76 -29
- package/dist/Paginator/Paginator.js.map +1 -1
- package/dist/Paginator/__tests__/Paginator.test.tsx +39 -0
- package/dist/Panel/Panel.cjs +4 -1
- package/dist/Panel/Panel.cjs.map +1 -1
- package/dist/Panel/Panel.js +4 -1
- package/dist/Panel/Panel.js.map +1 -1
- package/dist/Popover/Popover.cjs +22 -3
- package/dist/Popover/Popover.cjs.map +1 -1
- package/dist/Popover/Popover.js +22 -3
- package/dist/Popover/Popover.js.map +1 -1
- package/dist/Popover/__tests__/Popover.test.tsx +64 -0
- package/dist/ProfileButton/ProfileButton.cjs +9 -2
- package/dist/ProfileButton/ProfileButton.cjs.map +1 -1
- package/dist/ProfileButton/ProfileButton.js +9 -2
- package/dist/ProfileButton/ProfileButton.js.map +1 -1
- package/dist/ProfileButton/__tests__/ProfileButton.test.tsx +31 -0
- package/dist/QuizButton/__tests__/QuizButton.test.tsx +53 -0
- package/dist/SegmentControl/SegmentControl.cjs +46 -11
- package/dist/SegmentControl/SegmentControl.cjs.map +1 -1
- package/dist/SegmentControl/SegmentControl.js +46 -11
- package/dist/SegmentControl/SegmentControl.js.map +1 -1
- package/dist/SegmentControl/__tests__/SegmentControl.test.tsx +145 -0
- package/dist/SideMenu/SideMenuHeader.cjs +12 -3
- package/dist/SideMenu/SideMenuHeader.cjs.map +1 -1
- package/dist/SideMenu/SideMenuHeader.js +12 -3
- package/dist/SideMenu/SideMenuHeader.js.map +1 -1
- package/dist/SideMenu/__tests__/SideMenu.test.tsx +99 -0
- package/dist/Switcher/SwitcherMenuItem.cjs +4 -1
- package/dist/Switcher/SwitcherMenuItem.cjs.map +1 -1
- package/dist/Switcher/SwitcherMenuItem.js +4 -1
- package/dist/Switcher/SwitcherMenuItem.js.map +1 -1
- package/dist/Switcher/__tests__/SwitcherMenuItem.tsx +14 -0
- package/dist/Table/TableFooter.cjs +8 -2
- package/dist/Table/TableFooter.cjs.map +1 -1
- package/dist/Table/TableFooter.js +8 -2
- package/dist/Table/TableFooter.js.map +1 -1
- package/dist/Table/TableStyles.cjs +132 -33
- package/dist/Table/TableStyles.cjs.map +1 -1
- package/dist/Table/TableStyles.js +132 -33
- package/dist/Table/TableStyles.js.map +1 -1
- package/dist/Table/__tests__/Table.test.tsx +499 -0
- package/dist/Tabs/HorizontalTabs.cjs +68 -18
- package/dist/Tabs/HorizontalTabs.cjs.map +1 -1
- package/dist/Tabs/HorizontalTabs.js +68 -18
- package/dist/Tabs/HorizontalTabs.js.map +1 -1
- package/dist/Tabs/TabLink.cjs +4 -1
- package/dist/Tabs/TabLink.cjs.map +1 -1
- package/dist/Tabs/TabLink.js +4 -1
- package/dist/Tabs/TabLink.js.map +1 -1
- package/dist/Tabs/VerticalTabs.cjs +1 -0
- package/dist/Tabs/VerticalTabs.cjs.map +1 -1
- package/dist/Tabs/VerticalTabs.js +1 -0
- package/dist/Tabs/VerticalTabs.js.map +1 -1
- package/dist/Tabs/__tests__/HorizontalTabs.test.tsx +95 -0
- package/dist/Tabs/__tests__/TabLink.test.tsx +40 -0
- package/dist/Tabs/__tests__/TabLink.tests.d.ts +1 -0
- package/dist/Tabs/__tests__/Tablist.test.tsx +37 -0
- package/dist/Tabs/__tests__/Tablist.tests.d.ts +2 -0
- package/dist/Tag/Tag.cjs +2 -2
- package/dist/Tag/Tag.cjs.map +1 -1
- package/dist/Tag/Tag.js +2 -2
- package/dist/Tag/Tag.js.map +1 -1
- package/dist/Tag/__tests__/Tag.test.tsx +86 -0
- package/dist/Tile/Tile.cjs +8 -2
- package/dist/Tile/Tile.cjs.map +1 -1
- package/dist/Tile/Tile.js +8 -2
- package/dist/Tile/Tile.js.map +1 -1
- package/dist/Tile/TileCommonItems.cjs +8 -2
- package/dist/Tile/TileCommonItems.cjs.map +1 -1
- package/dist/Tile/TileCommonItems.js +8 -2
- package/dist/Tile/TileCommonItems.js.map +1 -1
- package/dist/Tile/TileFooter.cjs +4 -1
- package/dist/Tile/TileFooter.cjs.map +1 -1
- package/dist/Tile/TileFooter.js +4 -1
- package/dist/Tile/TileFooter.js.map +1 -1
- package/dist/Tile/TileHeader.cjs +12 -3
- package/dist/Tile/TileHeader.cjs.map +1 -1
- package/dist/Tile/TileHeader.js +12 -3
- package/dist/Tile/TileHeader.js.map +1 -1
- package/dist/Toasters/Toast.cjs +62 -13
- package/dist/Toasters/Toast.cjs.map +1 -1
- package/dist/Toasters/Toast.js +62 -13
- package/dist/Toasters/Toast.js.map +1 -1
- package/dist/Toasters/__tests__/Toast.test.tsx +74 -0
- package/dist/Toggles/ToggleButton.cjs +9 -3
- package/dist/Toggles/ToggleButton.cjs.map +1 -1
- package/dist/Toggles/ToggleButton.d.ts +1 -1
- package/dist/Toggles/ToggleButton.js +9 -3
- package/dist/Toggles/ToggleButton.js.map +1 -1
- package/dist/Toggles/TogglerStyles.cjs +22 -8
- package/dist/Toggles/TogglerStyles.cjs.map +1 -1
- package/dist/Toggles/TogglerStyles.js +22 -8
- package/dist/Toggles/TogglerStyles.js.map +1 -1
- package/dist/Toggles/__tests__/ToggleButton.test.tsx +53 -0
- package/dist/Toggles/__tests__/ToggleSwitch.test.tsx +87 -0
- package/dist/Tooltips/TooltipStyles.cjs +28 -6
- package/dist/Tooltips/TooltipStyles.cjs.map +1 -1
- package/dist/Tooltips/TooltipStyles.js +28 -6
- package/dist/Tooltips/TooltipStyles.js.map +1 -1
- package/dist/Tooltips/__tests__/TooltipWrapper.test.tsx +16 -0
- package/dist/common/InputStyling.cjs +30 -7
- package/dist/common/InputStyling.cjs.map +1 -1
- package/dist/common/InputStyling.js +30 -7
- package/dist/common/InputStyling.js.map +1 -1
- package/dist/common/Link.cjs +45 -0
- package/dist/common/Link.cjs.map +1 -0
- package/dist/common/Link.d.ts +9 -0
- package/dist/common/Link.js +37 -0
- package/dist/common/Link.js.map +1 -0
- package/dist/common/NavigationHelper.cjs +30 -0
- package/dist/common/NavigationHelper.cjs.map +1 -0
- package/dist/common/NavigationHelper.d.ts +4 -0
- package/dist/common/NavigationHelper.js +23 -0
- package/dist/common/NavigationHelper.js.map +1 -0
- package/dist/custom.d.ts +2 -0
- package/dist/styles/colors.cjs +439 -84
- package/dist/styles/colors.cjs.map +1 -1
- package/dist/styles/colors.d.ts +200 -11
- package/dist/styles/colors.js +439 -84
- package/dist/styles/colors.js.map +1 -1
- package/dist/styles/global.cjs +19 -2
- package/dist/styles/global.cjs.map +1 -1
- package/dist/styles/global.d.ts +3 -2
- package/dist/styles/global.js +18 -3
- package/dist/styles/global.js.map +1 -1
- package/dist/styles/index.cjs +21 -9
- package/dist/styles/index.cjs.map +1 -1
- package/dist/styles/index.d.ts +2 -2
- package/dist/styles/index.js +18 -6
- package/dist/styles/index.js.map +1 -1
- package/dist/styles/react-datepicker.css +766 -0
- package/dist/utils/color-tokens.cjs +91 -0
- package/dist/utils/color-tokens.cjs.map +1 -0
- package/dist/utils/color-tokens.d.ts +19 -0
- package/dist/utils/color-tokens.js +82 -0
- package/dist/utils/color-tokens.js.map +1 -0
- package/package.json +144 -141
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { fireEvent, render } from '../../test-utils';
|
|
3
|
+
import { DualFunctionButton } from '../index';
|
|
4
|
+
import '@testing-library/jest-dom';
|
|
5
|
+
import { Size, SystemIcons } from '../..';
|
|
6
|
+
import 'jest-styled-components';
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
describe('<DualButton />', () => {
|
|
12
|
+
it('Renders checkbox button', async () => {
|
|
13
|
+
const dropdownItems = [
|
|
14
|
+
{ value: 'Item 1', icon: undefined },
|
|
15
|
+
{ value: 'Item 2', icon: undefined, disabled: true },
|
|
16
|
+
];
|
|
17
|
+
const { getByText, container, getByTestId } = render(
|
|
18
|
+
<DualFunctionButton
|
|
19
|
+
dropdownCustomizationProps={{
|
|
20
|
+
items: dropdownItems,
|
|
21
|
+
itemsType: 'checkbox',
|
|
22
|
+
multiSelect: true,
|
|
23
|
+
pinTopItem: true,
|
|
24
|
+
actionLabel: 'Custom Action',
|
|
25
|
+
action: () => {},
|
|
26
|
+
onValueUpdate: (vals) => {},
|
|
27
|
+
scrollable: true,
|
|
28
|
+
}}
|
|
29
|
+
id="test"
|
|
30
|
+
size={Size.Small}
|
|
31
|
+
variant="primary">
|
|
32
|
+
Dual button checkbox test
|
|
33
|
+
</DualFunctionButton>,
|
|
34
|
+
);
|
|
35
|
+
//expect button name defined
|
|
36
|
+
expect(getByText('Dual button checkbox test')).toBeTruthy();
|
|
37
|
+
//expect all items displayed
|
|
38
|
+
expect(getByText('Item 1')).toBeTruthy();
|
|
39
|
+
expect(getByText('Item 2')).toBeTruthy();
|
|
40
|
+
|
|
41
|
+
//check that checkbox controls are displayed
|
|
42
|
+
expect(getByText('Item 1').closest('label')).toHaveClass('checkbox-label');
|
|
43
|
+
expect(getByText('Item 2').closest('label')).toHaveClass('checkbox-label');
|
|
44
|
+
|
|
45
|
+
//expect item 2 to be disabled
|
|
46
|
+
expect(getByText('Item 2').closest('div')).toHaveAttribute('disabled');
|
|
47
|
+
|
|
48
|
+
//expect the toggle button to be defined
|
|
49
|
+
expect(getByTestId('options_toggleBtn')).toBeTruthy();
|
|
50
|
+
|
|
51
|
+
//expect select all displayed as pin top item is set as "true"
|
|
52
|
+
expect(document.body.querySelector('[id*="checkbox_selectall"]')).toBeTruthy();
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
it('Renders normal dual button', async () => {
|
|
56
|
+
const dropdownItems = [
|
|
57
|
+
{ value: 'Item 1', icon: undefined },
|
|
58
|
+
{ value: 'Item 2', icon: undefined },
|
|
59
|
+
];
|
|
60
|
+
const { getByText, container, getByTestId } = render(
|
|
61
|
+
<DualFunctionButton
|
|
62
|
+
dropdownCustomizationProps={{
|
|
63
|
+
items: dropdownItems,
|
|
64
|
+
itemsType: 'normal',
|
|
65
|
+
multiSelect: true,
|
|
66
|
+
action: () => {},
|
|
67
|
+
onValueUpdate: (vals) => {},
|
|
68
|
+
scrollable: true,
|
|
69
|
+
}}
|
|
70
|
+
id="test"
|
|
71
|
+
size={Size.Small}
|
|
72
|
+
variant="primary">
|
|
73
|
+
Dual button test
|
|
74
|
+
</DualFunctionButton>,
|
|
75
|
+
);
|
|
76
|
+
//check that the dual button text defined
|
|
77
|
+
expect(getByText('Dual button test')).toBeTruthy();
|
|
78
|
+
expect(getByText('Item 1')).toBeTruthy();
|
|
79
|
+
expect(getByText('Item 2')).toBeTruthy();
|
|
80
|
+
//check that none of the items disabled
|
|
81
|
+
expect(getByText('Item 1').closest('div')).not.toHaveAttribute('disabled');
|
|
82
|
+
expect(getByText('Item 2').closest('div')).not.toHaveAttribute('disabled');
|
|
83
|
+
expect(getByTestId('options_toggleBtn')).toBeTruthy();
|
|
84
|
+
|
|
85
|
+
//two options available
|
|
86
|
+
expect(document.body.querySelectorAll('button[tabindex="-1"]')).toHaveLength(2);
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
it('Renders radio-button type dual button', async () => {
|
|
90
|
+
const dropdownItems = [
|
|
91
|
+
{ value: 'Item 1', icon: undefined, disabled: true },
|
|
92
|
+
{ value: 'Item 2', icon: undefined, disabled: true },
|
|
93
|
+
];
|
|
94
|
+
const { getByText, container, getByTestId } = render(
|
|
95
|
+
<DualFunctionButton
|
|
96
|
+
dropdownCustomizationProps={{
|
|
97
|
+
items: dropdownItems,
|
|
98
|
+
itemsType: 'radio',
|
|
99
|
+
multiSelect: true,
|
|
100
|
+
action: () => {},
|
|
101
|
+
onValueUpdate: (vals) => {},
|
|
102
|
+
scrollable: true,
|
|
103
|
+
}}
|
|
104
|
+
id="test"
|
|
105
|
+
size={Size.Small}
|
|
106
|
+
variant="primary">
|
|
107
|
+
Dual button test radio
|
|
108
|
+
</DualFunctionButton>,
|
|
109
|
+
);
|
|
110
|
+
//check that the dual button text defined
|
|
111
|
+
expect(getByText('Dual button test radio')).toBeTruthy();
|
|
112
|
+
expect(getByText('Item 1')).toBeTruthy();
|
|
113
|
+
expect(getByText('Item 2')).toBeTruthy();
|
|
114
|
+
|
|
115
|
+
//check that radio buttons displayed
|
|
116
|
+
expect(getByText('Item 1').closest('div')).toHaveClass('radio-button-label');
|
|
117
|
+
expect(getByText('Item 2').closest('div')).toHaveClass('radio-button-label');
|
|
118
|
+
});
|
|
119
|
+
});
|
|
@@ -24,7 +24,10 @@ const HorizontalCardContentContainer = exports.HorizontalCardContentContainer =
|
|
|
24
24
|
flex: 1;
|
|
25
25
|
flex-direction: row;
|
|
26
26
|
align-items: center;
|
|
27
|
-
background-color: ${props => _styles.COLORS.
|
|
27
|
+
background-color: ${props => _styles.COLORS.generateToken({
|
|
28
|
+
componentType: 'bg-surface',
|
|
29
|
+
defaultVariant: 'default'
|
|
30
|
+
}, props.theme)};
|
|
28
31
|
border-radius: 8px;
|
|
29
32
|
`;
|
|
30
33
|
const HorizontalCardContainer = exports.HorizontalCardContainer = _styledComponents.default.div`
|
|
@@ -33,7 +36,10 @@ const HorizontalCardContainer = exports.HorizontalCardContainer = _styledCompone
|
|
|
33
36
|
|
|
34
37
|
&.outline {
|
|
35
38
|
${HorizontalCardContentContainer} {
|
|
36
|
-
box-shadow: inset 0 0 0 1px ${props => _styles.COLORS.
|
|
39
|
+
box-shadow: inset 0 0 0 1px ${props => _styles.COLORS.generateToken({
|
|
40
|
+
componentType: 'border',
|
|
41
|
+
defaultVariant: 'subtle'
|
|
42
|
+
}, props.theme)};
|
|
37
43
|
}
|
|
38
44
|
}
|
|
39
45
|
|
|
@@ -49,7 +55,10 @@ const HorizontalCardContainer = exports.HorizontalCardContainer = _styledCompone
|
|
|
49
55
|
&:hover:not(.action-within):not(.disabled) {
|
|
50
56
|
&.outline {
|
|
51
57
|
${HorizontalCardContentContainer} {
|
|
52
|
-
background-color: ${props => _styles.COLORS.
|
|
58
|
+
background-color: ${props => _styles.COLORS.generateToken({
|
|
59
|
+
componentType: 'bg-surface',
|
|
60
|
+
state: 'hover'
|
|
61
|
+
}, props.theme)};
|
|
53
62
|
}
|
|
54
63
|
}
|
|
55
64
|
|
|
@@ -63,7 +72,10 @@ const HorizontalCardContainer = exports.HorizontalCardContainer = _styledCompone
|
|
|
63
72
|
&:active:not(.action-within):not(.disabled) {
|
|
64
73
|
&.outline {
|
|
65
74
|
${HorizontalCardContentContainer} {
|
|
66
|
-
background-color: ${props => _styles.COLORS.
|
|
75
|
+
background-color: ${props => _styles.COLORS.generateToken({
|
|
76
|
+
componentType: 'bg-surface',
|
|
77
|
+
state: 'active'
|
|
78
|
+
}, props.theme)};
|
|
67
79
|
}
|
|
68
80
|
}
|
|
69
81
|
|
|
@@ -90,7 +102,10 @@ const HorizontalCardContainer = exports.HorizontalCardContainer = _styledCompone
|
|
|
90
102
|
|
|
91
103
|
&.outline {
|
|
92
104
|
${HorizontalCardContentContainer} {
|
|
93
|
-
box-shadow: inset 0 0 0 1px ${props => _styles.COLORS.
|
|
105
|
+
box-shadow: inset 0 0 0 1px ${props => _styles.COLORS.generateToken({
|
|
106
|
+
componentType: 'border',
|
|
107
|
+
state: 'disabled'
|
|
108
|
+
}, props.theme)};
|
|
94
109
|
}
|
|
95
110
|
}
|
|
96
111
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalCard.cjs","names":["_react","_interopRequireDefault","require","_styledComponents","_styles","_HorizontalCardThumbnail","_HorizontalCardBody","_HorizontalCardActions","_common","_jsxRuntime","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","HorizontalCardContentContainer","exports","styled","div","props","COLORS","getColor","theme","HorizontalCardContainer","BOXSHADOWS","BOXSHADOW_L1","BOXSHADOW_L3","BOXSHADOW_L2","focusStyles","HorizontalCard","_ref","title","description","tags","progress","icon","variant","image","action","actions","disabled","className","dataTestId","rest","_objectWithoutProperties2","actionsRefs","setActionsRefs","React","useState","containerRef","useRef","useActionWithin","cls","handleClick","handleButtonPress","key","jsx","ref","tabIndex","onKeyDown","onClick","onMouseDown","defaultOnMouseDownHandler","children","jsxs","HorizontalCardThumbnail","HorizontalCardBody","HorizontalCardActions","instance","_default"],"sources":["../../../src/Card/HorizontalCard/HorizontalCard.tsx"],"sourcesContent":["import React, {useEffect} from 'react';\r\nimport {HorizontalCardProps} from './types';\r\nimport styled from 'styled-components';\r\nimport {BOXSHADOWS, COLORS, focusStyles} from '../../styles';\r\nimport {HorizontalCardThumbnail} from './HorizontalCardThumbnail';\r\nimport {HorizontalCardBody} from './HorizontalCardBody';\r\nimport {HorizontalCardActions} from './HorizontalCardActions';\r\nimport {defaultOnMouseDownHandler, useActionWithin} from '../../common';\r\n\r\nexport const HorizontalCardContentContainer = styled.div`\r\n position: relative;\r\n display: flex;\r\n flex: 1;\r\n flex-direction: row;\r\n align-items: center;\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n border-radius: 8px;\r\n`;\r\n\r\nexport const HorizontalCardContainer = styled.div`\r\n display: flex;\r\n flex: 1;\r\n\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.getColor('neutral_200', props.theme)};\r\n }\r\n }\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L1};\r\n }\r\n }\r\n\r\n &.clickable {\r\n cursor: pointer;\r\n\r\n &:hover:not(.action-within):not(.disabled) {\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n background-color: ${props => COLORS.getColor('primary_20', props.theme)};\r\n }\r\n }\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L3};\r\n }\r\n }\r\n }\r\n\r\n &:active:not(.action-within):not(.disabled) {\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n background-color: ${props => COLORS.getColor('primary_100', props.theme)};\r\n }\r\n }\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L2};\r\n }\r\n }\r\n }\r\n\r\n &:focus {\r\n ${focusStyles}\r\n }\r\n }\r\n\r\n &.disabled {\r\n cursor: not-allowed;\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L1};\r\n }\r\n }\r\n\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.getColor('neutral_100', props.theme)};\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport const HorizontalCard: React.FunctionComponent<HorizontalCardProps> = ({\r\n title,\r\n description,\r\n tags,\r\n progress,\r\n icon,\r\n variant = 'outline',\r\n image,\r\n action,\r\n actions,\r\n disabled,\r\n className,\r\n dataTestId,\r\n ...rest\r\n }) => {\r\n\r\n const [actionsRefs, setActionsRefs] = React.useState<React.RefObject<HTMLButtonElement | null>[]>([]);\r\n const containerRef = React.useRef<HTMLDivElement>(null);\r\n\r\n useActionWithin(containerRef, actionsRefs);\r\n\r\n const cls = `${variant} ${action ? 'clickable' : ''} ${disabled ? 'disabled' : ''} ${className || ''}`;\r\n\r\n const handleClick = () => {\r\n !disabled && action && action();\r\n }\r\n\r\n const handleButtonPress = (e: React.KeyboardEvent<HTMLDivElement>) => {\r\n e.key === 'Enter' && handleClick();\r\n };\r\n\r\n return (\r\n <HorizontalCardContainer ref={containerRef}\r\n tabIndex={action && !disabled ? 0 : -1}\r\n className={cls}\r\n onKeyDown={handleButtonPress}\r\n onClick={handleClick}\r\n onMouseDown={defaultOnMouseDownHandler}>\r\n <HorizontalCardContentContainer\r\n onMouseDown={defaultOnMouseDownHandler}\r\n data-testid={dataTestId}\r\n {...rest}>\r\n\r\n <HorizontalCardThumbnail image={image}\r\n icon={icon}/>\r\n\r\n <HorizontalCardBody title={title}\r\n description={description}\r\n tags={tags}\r\n progress={progress}/>\r\n\r\n <HorizontalCardActions ref={instance => {\r\n setActionsRefs(instance ?? []);\r\n }}\r\n actions={actions}\r\n disabled={disabled}/>\r\n\r\n </HorizontalCardContentContainer>\r\n </HorizontalCardContainer>\r\n );\r\n};\r\n\r\nexport default HorizontalCard;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"HorizontalCard.cjs","names":["_react","_interopRequireDefault","require","_styledComponents","_styles","_HorizontalCardThumbnail","_HorizontalCardBody","_HorizontalCardActions","_common","_jsxRuntime","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","HorizontalCardContentContainer","exports","styled","div","props","COLORS","generateToken","componentType","defaultVariant","theme","HorizontalCardContainer","BOXSHADOWS","BOXSHADOW_L1","state","BOXSHADOW_L3","BOXSHADOW_L2","focusStyles","HorizontalCard","_ref","title","description","tags","progress","icon","variant","image","action","actions","disabled","className","dataTestId","rest","_objectWithoutProperties2","actionsRefs","setActionsRefs","React","useState","containerRef","useRef","useActionWithin","cls","handleClick","handleButtonPress","key","jsx","ref","tabIndex","onKeyDown","onClick","onMouseDown","defaultOnMouseDownHandler","children","jsxs","HorizontalCardThumbnail","HorizontalCardBody","HorizontalCardActions","instance","_default"],"sources":["../../../src/Card/HorizontalCard/HorizontalCard.tsx"],"sourcesContent":["import React, {useEffect} from 'react';\r\nimport {HorizontalCardProps} from './types';\r\nimport styled from 'styled-components';\r\nimport {BOXSHADOWS, COLORS, focusStyles} from '../../styles';\r\nimport {HorizontalCardThumbnail} from './HorizontalCardThumbnail';\r\nimport {HorizontalCardBody} from './HorizontalCardBody';\r\nimport {HorizontalCardActions} from './HorizontalCardActions';\r\nimport {defaultOnMouseDownHandler, useActionWithin} from '../../common';\r\n\r\nexport const HorizontalCardContentContainer = styled.div`\r\n position: relative;\r\n display: flex;\r\n flex: 1;\r\n flex-direction: row;\r\n align-items: center;\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', defaultVariant:'default' }, props.theme)};\r\n border-radius: 8px;\r\n`;\r\n\r\nexport const HorizontalCardContainer = styled.div`\r\n display: flex;\r\n flex: 1;\r\n\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.generateToken({ componentType: 'border', defaultVariant: 'subtle' }, props.theme)};\r\n }\r\n }\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L1};\r\n }\r\n }\r\n\r\n &.clickable {\r\n cursor: pointer;\r\n\r\n &:hover:not(.action-within):not(.disabled) {\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n background-color: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'hover'}, props.theme)};\r\n }\r\n }\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L3};\r\n }\r\n }\r\n }\r\n\r\n &:active:not(.action-within):not(.disabled) {\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n background-color: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'active'}, props.theme)};\r\n }\r\n }\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L2};\r\n }\r\n }\r\n }\r\n\r\n &:focus {\r\n ${focusStyles}\r\n }\r\n }\r\n\r\n &.disabled {\r\n cursor: not-allowed;\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L1};\r\n }\r\n }\r\n\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.generateToken({ componentType: 'border', state: 'disabled' }, props.theme)};\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport const HorizontalCard: React.FunctionComponent<HorizontalCardProps> = ({\r\n title,\r\n description,\r\n tags,\r\n progress,\r\n icon,\r\n variant = 'outline',\r\n image,\r\n action,\r\n actions,\r\n disabled,\r\n className,\r\n dataTestId,\r\n ...rest\r\n }) => {\r\n\r\n const [actionsRefs, setActionsRefs] = React.useState<React.RefObject<HTMLButtonElement | null>[]>([]);\r\n const containerRef = React.useRef<HTMLDivElement>(null);\r\n\r\n useActionWithin(containerRef, actionsRefs);\r\n\r\n const cls = `${variant} ${action ? 'clickable' : ''} ${disabled ? 'disabled' : ''} ${className || ''}`;\r\n\r\n const handleClick = () => {\r\n !disabled && action && action();\r\n }\r\n\r\n const handleButtonPress = (e: React.KeyboardEvent<HTMLDivElement>) => {\r\n e.key === 'Enter' && handleClick();\r\n };\r\n\r\n return (\r\n <HorizontalCardContainer ref={containerRef}\r\n tabIndex={action && !disabled ? 0 : -1}\r\n className={cls}\r\n onKeyDown={handleButtonPress}\r\n onClick={handleClick}\r\n onMouseDown={defaultOnMouseDownHandler}>\r\n <HorizontalCardContentContainer\r\n onMouseDown={defaultOnMouseDownHandler}\r\n data-testid={dataTestId}\r\n {...rest}>\r\n\r\n <HorizontalCardThumbnail image={image}\r\n icon={icon}/>\r\n\r\n <HorizontalCardBody title={title}\r\n description={description}\r\n tags={tags}\r\n progress={progress}/>\r\n\r\n <HorizontalCardActions ref={instance => {\r\n setActionsRefs(instance ?? []);\r\n }}\r\n actions={actions}\r\n disabled={disabled}/>\r\n\r\n </HorizontalCardContentContainer>\r\n </HorizontalCardContainer>\r\n );\r\n};\r\n\r\nexport default HorizontalCard;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -17,7 +17,10 @@ export const HorizontalCardContentContainer = styled.div`
|
|
|
17
17
|
flex: 1;
|
|
18
18
|
flex-direction: row;
|
|
19
19
|
align-items: center;
|
|
20
|
-
background-color: ${props => COLORS.
|
|
20
|
+
background-color: ${props => COLORS.generateToken({
|
|
21
|
+
componentType: 'bg-surface',
|
|
22
|
+
defaultVariant: 'default'
|
|
23
|
+
}, props.theme)};
|
|
21
24
|
border-radius: 8px;
|
|
22
25
|
`;
|
|
23
26
|
export const HorizontalCardContainer = styled.div`
|
|
@@ -26,7 +29,10 @@ export const HorizontalCardContainer = styled.div`
|
|
|
26
29
|
|
|
27
30
|
&.outline {
|
|
28
31
|
${HorizontalCardContentContainer} {
|
|
29
|
-
box-shadow: inset 0 0 0 1px ${props => COLORS.
|
|
32
|
+
box-shadow: inset 0 0 0 1px ${props => COLORS.generateToken({
|
|
33
|
+
componentType: 'border',
|
|
34
|
+
defaultVariant: 'subtle'
|
|
35
|
+
}, props.theme)};
|
|
30
36
|
}
|
|
31
37
|
}
|
|
32
38
|
|
|
@@ -42,7 +48,10 @@ export const HorizontalCardContainer = styled.div`
|
|
|
42
48
|
&:hover:not(.action-within):not(.disabled) {
|
|
43
49
|
&.outline {
|
|
44
50
|
${HorizontalCardContentContainer} {
|
|
45
|
-
background-color: ${props => COLORS.
|
|
51
|
+
background-color: ${props => COLORS.generateToken({
|
|
52
|
+
componentType: 'bg-surface',
|
|
53
|
+
state: 'hover'
|
|
54
|
+
}, props.theme)};
|
|
46
55
|
}
|
|
47
56
|
}
|
|
48
57
|
|
|
@@ -56,7 +65,10 @@ export const HorizontalCardContainer = styled.div`
|
|
|
56
65
|
&:active:not(.action-within):not(.disabled) {
|
|
57
66
|
&.outline {
|
|
58
67
|
${HorizontalCardContentContainer} {
|
|
59
|
-
background-color: ${props => COLORS.
|
|
68
|
+
background-color: ${props => COLORS.generateToken({
|
|
69
|
+
componentType: 'bg-surface',
|
|
70
|
+
state: 'active'
|
|
71
|
+
}, props.theme)};
|
|
60
72
|
}
|
|
61
73
|
}
|
|
62
74
|
|
|
@@ -83,7 +95,10 @@ export const HorizontalCardContainer = styled.div`
|
|
|
83
95
|
|
|
84
96
|
&.outline {
|
|
85
97
|
${HorizontalCardContentContainer} {
|
|
86
|
-
box-shadow: inset 0 0 0 1px ${props => COLORS.
|
|
98
|
+
box-shadow: inset 0 0 0 1px ${props => COLORS.generateToken({
|
|
99
|
+
componentType: 'border',
|
|
100
|
+
state: 'disabled'
|
|
101
|
+
}, props.theme)};
|
|
87
102
|
}
|
|
88
103
|
}
|
|
89
104
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalCard.js","names":["React","styled","BOXSHADOWS","COLORS","focusStyles","HorizontalCardThumbnail","HorizontalCardBody","HorizontalCardActions","defaultOnMouseDownHandler","useActionWithin","jsx","_jsx","jsxs","_jsxs","HorizontalCardContentContainer","div","props","
|
|
1
|
+
{"version":3,"file":"HorizontalCard.js","names":["React","styled","BOXSHADOWS","COLORS","focusStyles","HorizontalCardThumbnail","HorizontalCardBody","HorizontalCardActions","defaultOnMouseDownHandler","useActionWithin","jsx","_jsx","jsxs","_jsxs","HorizontalCardContentContainer","div","props","generateToken","componentType","defaultVariant","theme","HorizontalCardContainer","BOXSHADOW_L1","state","BOXSHADOW_L3","BOXSHADOW_L2","HorizontalCard","_ref","title","description","tags","progress","icon","variant","image","action","actions","disabled","className","dataTestId","rest","_objectWithoutProperties","_excluded","actionsRefs","setActionsRefs","useState","containerRef","useRef","cls","handleClick","handleButtonPress","e","key","ref","tabIndex","onKeyDown","onClick","onMouseDown","children","_objectSpread","instance"],"sources":["../../../src/Card/HorizontalCard/HorizontalCard.tsx"],"sourcesContent":["import React, {useEffect} from 'react';\r\nimport {HorizontalCardProps} from './types';\r\nimport styled from 'styled-components';\r\nimport {BOXSHADOWS, COLORS, focusStyles} from '../../styles';\r\nimport {HorizontalCardThumbnail} from './HorizontalCardThumbnail';\r\nimport {HorizontalCardBody} from './HorizontalCardBody';\r\nimport {HorizontalCardActions} from './HorizontalCardActions';\r\nimport {defaultOnMouseDownHandler, useActionWithin} from '../../common';\r\n\r\nexport const HorizontalCardContentContainer = styled.div`\r\n position: relative;\r\n display: flex;\r\n flex: 1;\r\n flex-direction: row;\r\n align-items: center;\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', defaultVariant:'default' }, props.theme)};\r\n border-radius: 8px;\r\n`;\r\n\r\nexport const HorizontalCardContainer = styled.div`\r\n display: flex;\r\n flex: 1;\r\n\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.generateToken({ componentType: 'border', defaultVariant: 'subtle' }, props.theme)};\r\n }\r\n }\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L1};\r\n }\r\n }\r\n\r\n &.clickable {\r\n cursor: pointer;\r\n\r\n &:hover:not(.action-within):not(.disabled) {\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n background-color: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'hover'}, props.theme)};\r\n }\r\n }\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L3};\r\n }\r\n }\r\n }\r\n\r\n &:active:not(.action-within):not(.disabled) {\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n background-color: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'active'}, props.theme)};\r\n }\r\n }\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L2};\r\n }\r\n }\r\n }\r\n\r\n &:focus {\r\n ${focusStyles}\r\n }\r\n }\r\n\r\n &.disabled {\r\n cursor: not-allowed;\r\n\r\n &.elevated {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L1};\r\n }\r\n }\r\n\r\n &.outline {\r\n ${HorizontalCardContentContainer} {\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.generateToken({ componentType: 'border', state: 'disabled' }, props.theme)};\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport const HorizontalCard: React.FunctionComponent<HorizontalCardProps> = ({\r\n title,\r\n description,\r\n tags,\r\n progress,\r\n icon,\r\n variant = 'outline',\r\n image,\r\n action,\r\n actions,\r\n disabled,\r\n className,\r\n dataTestId,\r\n ...rest\r\n }) => {\r\n\r\n const [actionsRefs, setActionsRefs] = React.useState<React.RefObject<HTMLButtonElement | null>[]>([]);\r\n const containerRef = React.useRef<HTMLDivElement>(null);\r\n\r\n useActionWithin(containerRef, actionsRefs);\r\n\r\n const cls = `${variant} ${action ? 'clickable' : ''} ${disabled ? 'disabled' : ''} ${className || ''}`;\r\n\r\n const handleClick = () => {\r\n !disabled && action && action();\r\n }\r\n\r\n const handleButtonPress = (e: React.KeyboardEvent<HTMLDivElement>) => {\r\n e.key === 'Enter' && handleClick();\r\n };\r\n\r\n return (\r\n <HorizontalCardContainer ref={containerRef}\r\n tabIndex={action && !disabled ? 0 : -1}\r\n className={cls}\r\n onKeyDown={handleButtonPress}\r\n onClick={handleClick}\r\n onMouseDown={defaultOnMouseDownHandler}>\r\n <HorizontalCardContentContainer\r\n onMouseDown={defaultOnMouseDownHandler}\r\n data-testid={dataTestId}\r\n {...rest}>\r\n\r\n <HorizontalCardThumbnail image={image}\r\n icon={icon}/>\r\n\r\n <HorizontalCardBody title={title}\r\n description={description}\r\n tags={tags}\r\n progress={progress}/>\r\n\r\n <HorizontalCardActions ref={instance => {\r\n setActionsRefs(instance ?? []);\r\n }}\r\n actions={actions}\r\n disabled={disabled}/>\r\n\r\n </HorizontalCardContentContainer>\r\n </HorizontalCardContainer>\r\n );\r\n};\r\n\r\nexport default HorizontalCard;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -19,13 +19,22 @@ const HorizontalCardBodyContainer = exports.HorizontalCardBodyContainer = _style
|
|
|
19
19
|
padding: 16px;
|
|
20
20
|
`;
|
|
21
21
|
const HorizontalCardBodyTitle = exports.HorizontalCardBodyTitle = _styledComponents.default.div`
|
|
22
|
-
${props => (0, _styles.ComponentMStyling)(_styles.ComponentTextStyle.Bold, _styles.COLORS.
|
|
22
|
+
${props => (0, _styles.ComponentMStyling)(_styles.ComponentTextStyle.Bold, _styles.COLORS.generateToken({
|
|
23
|
+
componentType: 'text',
|
|
24
|
+
defaultVariant: 'default'
|
|
25
|
+
}, props.theme))}
|
|
23
26
|
.disabled & {
|
|
24
|
-
color: ${props => _styles.COLORS.
|
|
27
|
+
color: ${props => _styles.COLORS.generateToken({
|
|
28
|
+
componentType: 'text',
|
|
29
|
+
state: 'disabled'
|
|
30
|
+
}, props.theme)};
|
|
25
31
|
}
|
|
26
32
|
`;
|
|
27
33
|
const HorizontalCardBodyDescription = exports.HorizontalCardBodyDescription = _styledComponents.default.div`
|
|
28
|
-
${props => (0, _styles.ComponentXSStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.
|
|
34
|
+
${props => (0, _styles.ComponentXSStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.generateToken({
|
|
35
|
+
componentType: 'text',
|
|
36
|
+
defaultVariant: 'subtle'
|
|
37
|
+
}, props.theme))}
|
|
29
38
|
`;
|
|
30
39
|
const HorizontalCardBodyTagsContainer = exports.HorizontalCardBodyTagsContainer = _styledComponents.default.div`
|
|
31
40
|
display: flex;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalCardBody.cjs","names":["_react","_interopRequireDefault","require","_styledComponents","_styles","_LinearProgress","_Tag","_jsxRuntime","HorizontalCardBodyContainer","exports","styled","div","HorizontalCardBodyTitle","props","ComponentMStyling","ComponentTextStyle","Bold","COLORS","
|
|
1
|
+
{"version":3,"file":"HorizontalCardBody.cjs","names":["_react","_interopRequireDefault","require","_styledComponents","_styles","_LinearProgress","_Tag","_jsxRuntime","HorizontalCardBodyContainer","exports","styled","div","HorizontalCardBodyTitle","props","ComponentMStyling","ComponentTextStyle","Bold","COLORS","generateToken","componentType","defaultVariant","theme","state","HorizontalCardBodyDescription","ComponentXSStyling","Regular","HorizontalCardBodyTagsContainer","HorizontalCardBody","_ref","title","description","progress","tags","jsxs","children","jsx","map","tag","index","Tag","label","variant","icon","LinearProgress","value","max"],"sources":["../../../src/Card/HorizontalCard/HorizontalCardBody.tsx"],"sourcesContent":["import React from 'react';\r\nimport {HorizontalCardProps} from './types';\r\nimport styled from 'styled-components';\r\nimport {COLORS, ComponentMStyling, ComponentTextStyle, ComponentXSStyling} from '../../styles';\r\nimport {LinearProgress} from '../../LinearProgress';\r\nimport {Tag} from '../../Tag';\r\n\r\nexport const HorizontalCardBodyContainer = styled.div`\r\n display: flex;\r\n flex: 1;\r\n flex-direction: column;\r\n gap: 8px;\r\n padding: 16px;\r\n`;\r\n\r\nexport const HorizontalCardBodyTitle = styled.div`\r\n ${props => ComponentMStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', defaultVariant: 'default' }, props.theme))}\r\n .disabled & {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\nexport const HorizontalCardBodyDescription = styled.div`\r\n ${props => ComponentXSStyling(ComponentTextStyle.Regular, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n`;\r\n\r\nexport const HorizontalCardBodyTagsContainer = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: wrap;\r\n padding: 4px 0;\r\n gap: 4px;\r\n`;\r\n\r\ntype Props = Pick<HorizontalCardProps, 'title' | 'description' | 'progress' | 'tags'>;\r\n\r\nexport const HorizontalCardBody: React.FunctionComponent<Props> = ({\r\n title,\r\n description,\r\n progress,\r\n tags,\r\n }) => {\r\n\r\n return (\r\n <HorizontalCardBodyContainer>\r\n <HorizontalCardBodyTitle>{title}</HorizontalCardBodyTitle>\r\n {description && <HorizontalCardBodyDescription>{description}</HorizontalCardBodyDescription>}\r\n {\r\n tags &&\r\n <HorizontalCardBodyTagsContainer>{tags.map((tag, index) => (\r\n <Tag key={index} label={tag.label} variant={tag.variant} icon={tag.icon}/>))}\r\n </HorizontalCardBodyTagsContainer>\r\n }\r\n {progress && <LinearProgress value={progress.value} max={progress.max}/>}\r\n </HorizontalCardBodyContainer>\r\n )\r\n};\r\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,iBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AACA,IAAAI,IAAA,GAAAJ,OAAA;AAA8B,IAAAK,WAAA,GAAAL,OAAA;AAEvB,MAAMM,2BAA2B,GAAAC,OAAA,CAAAD,2BAAA,GAAGE,yBAAM,CAACC,GAAG;AACrD;AACA;AACA;AACA;AACA;AACA,CAAC;AAEM,MAAMC,uBAAuB,GAAAH,OAAA,CAAAG,uBAAA,GAAGF,yBAAM,CAACC,GAAG;AACjD,IAAIE,KAAK,IAAI,IAAAC,yBAAiB,EAACC,0BAAkB,CAACC,IAAI,EAAEC,cAAM,CAACC,aAAa,CAAC;EAAEC,aAAa,EAAE,MAAM;EAAEC,cAAc,EAAE;AAAU,CAAC,EAAEP,KAAK,CAACQ,KAAK,CAAC,CAAC;AAChJ;AACA,aAAaR,KAAK,IAAII,cAAM,CAACC,aAAa,CAAC;EAAEC,aAAa,EAAE,MAAM;EAAEG,KAAK,EAAE;AAAW,CAAC,EAAET,KAAK,CAACQ,KAAK,CAAC;AACrG;AACA,CAAC;AAEM,MAAME,6BAA6B,GAAAd,OAAA,CAAAc,6BAAA,GAAGb,yBAAM,CAACC,GAAG;AACvD,IAAIE,KAAK,IAAI,IAAAW,0BAAkB,EAACT,0BAAkB,CAACU,OAAO,EAAER,cAAM,CAACC,aAAa,CAAC;EAAEC,aAAa,EAAE,MAAM;EAAEC,cAAc,EAAE;AAAS,CAAC,EAAEP,KAAK,CAACQ,KAAK,CAAC,CAAC;AACnJ,CAAC;AAEM,MAAMK,+BAA+B,GAAAjB,OAAA,CAAAiB,+BAAA,GAAGhB,yBAAM,CAACC,GAAG;AACzD;AACA;AACA;AACA;AACA;AACA,CAAC;AAIM,MAAMgB,kBAAkD,GAAGC,IAAA,IAKO;EAAA,IALN;IACEC,KAAK;IACLC,WAAW;IACXC,QAAQ;IACRC;EACF,CAAC,GAAAJ,IAAA;EAElE,oBACE,IAAArB,WAAA,CAAA0B,IAAA,EAACzB,2BAA2B;IAAA0B,QAAA,gBAC1B,IAAA3B,WAAA,CAAA4B,GAAA,EAACvB,uBAAuB;MAAAsB,QAAA,EAAEL;IAAK,CAA0B,CAAC,EACzDC,WAAW,iBAAI,IAAAvB,WAAA,CAAA4B,GAAA,EAACZ,6BAA6B;MAAAW,QAAA,EAAEJ;IAAW,CAAgC,CAAC,EAE1FE,IAAI,iBACJ,IAAAzB,WAAA,CAAA4B,GAAA,EAACT,+BAA+B;MAAAQ,QAAA,EAAEF,IAAI,CAACI,GAAG,CAAC,CAACC,GAAG,EAAEC,KAAK,kBACpD,IAAA/B,WAAA,CAAA4B,GAAA,EAAC7B,IAAA,CAAAiC,GAAG;QAAaC,KAAK,EAAEH,GAAG,CAACG,KAAM;QAACC,OAAO,EAAEJ,GAAG,CAACI,OAAQ;QAACC,IAAI,EAAEL,GAAG,CAACK;MAAK,GAA9DJ,KAA+D,CAAE;IAAC,CAC7C,CAAC,EAEnCP,QAAQ,iBAAI,IAAAxB,WAAA,CAAA4B,GAAA,EAAC9B,eAAA,CAAAsC,cAAc;MAACC,KAAK,EAAEb,QAAQ,CAACa,KAAM;MAACC,GAAG,EAAEd,QAAQ,CAACc;IAAI,CAAC,CAAC;EAAA,CAC7C,CAAC;AAElC,CAAC;AAACpC,OAAA,CAAAkB,kBAAA,GAAAA,kBAAA","ignoreList":[]}
|
|
@@ -12,13 +12,22 @@ export const HorizontalCardBodyContainer = styled.div`
|
|
|
12
12
|
padding: 16px;
|
|
13
13
|
`;
|
|
14
14
|
export const HorizontalCardBodyTitle = styled.div`
|
|
15
|
-
${props => ComponentMStyling(ComponentTextStyle.Bold, COLORS.
|
|
15
|
+
${props => ComponentMStyling(ComponentTextStyle.Bold, COLORS.generateToken({
|
|
16
|
+
componentType: 'text',
|
|
17
|
+
defaultVariant: 'default'
|
|
18
|
+
}, props.theme))}
|
|
16
19
|
.disabled & {
|
|
17
|
-
color: ${props => COLORS.
|
|
20
|
+
color: ${props => COLORS.generateToken({
|
|
21
|
+
componentType: 'text',
|
|
22
|
+
state: 'disabled'
|
|
23
|
+
}, props.theme)};
|
|
18
24
|
}
|
|
19
25
|
`;
|
|
20
26
|
export const HorizontalCardBodyDescription = styled.div`
|
|
21
|
-
${props => ComponentXSStyling(ComponentTextStyle.Regular, COLORS.
|
|
27
|
+
${props => ComponentXSStyling(ComponentTextStyle.Regular, COLORS.generateToken({
|
|
28
|
+
componentType: 'text',
|
|
29
|
+
defaultVariant: 'subtle'
|
|
30
|
+
}, props.theme))}
|
|
22
31
|
`;
|
|
23
32
|
export const HorizontalCardBodyTagsContainer = styled.div`
|
|
24
33
|
display: flex;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalCardBody.js","names":["React","styled","COLORS","ComponentMStyling","ComponentTextStyle","ComponentXSStyling","LinearProgress","Tag","jsx","_jsx","jsxs","_jsxs","HorizontalCardBodyContainer","div","HorizontalCardBodyTitle","props","Bold","
|
|
1
|
+
{"version":3,"file":"HorizontalCardBody.js","names":["React","styled","COLORS","ComponentMStyling","ComponentTextStyle","ComponentXSStyling","LinearProgress","Tag","jsx","_jsx","jsxs","_jsxs","HorizontalCardBodyContainer","div","HorizontalCardBodyTitle","props","Bold","generateToken","componentType","defaultVariant","theme","state","HorizontalCardBodyDescription","Regular","HorizontalCardBodyTagsContainer","HorizontalCardBody","_ref","title","description","progress","tags","children","map","tag","index","label","variant","icon","value","max"],"sources":["../../../src/Card/HorizontalCard/HorizontalCardBody.tsx"],"sourcesContent":["import React from 'react';\r\nimport {HorizontalCardProps} from './types';\r\nimport styled from 'styled-components';\r\nimport {COLORS, ComponentMStyling, ComponentTextStyle, ComponentXSStyling} from '../../styles';\r\nimport {LinearProgress} from '../../LinearProgress';\r\nimport {Tag} from '../../Tag';\r\n\r\nexport const HorizontalCardBodyContainer = styled.div`\r\n display: flex;\r\n flex: 1;\r\n flex-direction: column;\r\n gap: 8px;\r\n padding: 16px;\r\n`;\r\n\r\nexport const HorizontalCardBodyTitle = styled.div`\r\n ${props => ComponentMStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', defaultVariant: 'default' }, props.theme))}\r\n .disabled & {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\nexport const HorizontalCardBodyDescription = styled.div`\r\n ${props => ComponentXSStyling(ComponentTextStyle.Regular, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n`;\r\n\r\nexport const HorizontalCardBodyTagsContainer = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: wrap;\r\n padding: 4px 0;\r\n gap: 4px;\r\n`;\r\n\r\ntype Props = Pick<HorizontalCardProps, 'title' | 'description' | 'progress' | 'tags'>;\r\n\r\nexport const HorizontalCardBody: React.FunctionComponent<Props> = ({\r\n title,\r\n description,\r\n progress,\r\n tags,\r\n }) => {\r\n\r\n return (\r\n <HorizontalCardBodyContainer>\r\n <HorizontalCardBodyTitle>{title}</HorizontalCardBodyTitle>\r\n {description && <HorizontalCardBodyDescription>{description}</HorizontalCardBodyDescription>}\r\n {\r\n tags &&\r\n <HorizontalCardBodyTagsContainer>{tags.map((tag, index) => (\r\n <Tag key={index} label={tag.label} variant={tag.variant} icon={tag.icon}/>))}\r\n </HorizontalCardBodyTagsContainer>\r\n }\r\n {progress && <LinearProgress value={progress.value} max={progress.max}/>}\r\n </HorizontalCardBodyContainer>\r\n )\r\n};\r\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,MAAM,MAAM,mBAAmB;AACtC,SAAQC,MAAM,EAAEC,iBAAiB,EAAEC,kBAAkB,EAAEC,kBAAkB,QAAO,cAAc;AAC9F,SAAQC,cAAc,QAAO,sBAAsB;AACnD,SAAQC,GAAG,QAAO,WAAW;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAE9B,OAAO,MAAMC,2BAA2B,GAAGX,MAAM,CAACY,GAAG;AACrD;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,OAAO,MAAMC,uBAAuB,GAAGb,MAAM,CAACY,GAAG;AACjD,IAAIE,KAAK,IAAIZ,iBAAiB,CAACC,kBAAkB,CAACY,IAAI,EAAEd,MAAM,CAACe,aAAa,CAAC;EAAEC,aAAa,EAAE,MAAM;EAAEC,cAAc,EAAE;AAAU,CAAC,EAAEJ,KAAK,CAACK,KAAK,CAAC,CAAC;AAChJ;AACA,aAAaL,KAAK,IAAIb,MAAM,CAACe,aAAa,CAAC;EAAEC,aAAa,EAAE,MAAM;EAAEG,KAAK,EAAE;AAAW,CAAC,EAAEN,KAAK,CAACK,KAAK,CAAC;AACrG;AACA,CAAC;AAED,OAAO,MAAME,6BAA6B,GAAGrB,MAAM,CAACY,GAAG;AACvD,IAAIE,KAAK,IAAIV,kBAAkB,CAACD,kBAAkB,CAACmB,OAAO,EAAErB,MAAM,CAACe,aAAa,CAAC;EAAEC,aAAa,EAAE,MAAM;EAAEC,cAAc,EAAE;AAAS,CAAC,EAAEJ,KAAK,CAACK,KAAK,CAAC,CAAC;AACnJ,CAAC;AAED,OAAO,MAAMI,+BAA+B,GAAGvB,MAAM,CAACY,GAAG;AACzD;AACA;AACA;AACA;AACA;AACA,CAAC;AAID,OAAO,MAAMY,kBAAkD,GAAGC,IAAA,IAKO;EAAA,IALN;IACEC,KAAK;IACLC,WAAW;IACXC,QAAQ;IACRC;EACF,CAAC,GAAAJ,IAAA;EAElE,oBACEf,KAAA,CAACC,2BAA2B;IAAAmB,QAAA,gBAC1BtB,IAAA,CAACK,uBAAuB;MAAAiB,QAAA,EAAEJ;IAAK,CAA0B,CAAC,EACzDC,WAAW,iBAAInB,IAAA,CAACa,6BAA6B;MAAAS,QAAA,EAAEH;IAAW,CAAgC,CAAC,EAE1FE,IAAI,iBACJrB,IAAA,CAACe,+BAA+B;MAAAO,QAAA,EAAED,IAAI,CAACE,GAAG,CAAC,CAACC,GAAG,EAAEC,KAAK,kBACpDzB,IAAA,CAACF,GAAG;QAAa4B,KAAK,EAAEF,GAAG,CAACE,KAAM;QAACC,OAAO,EAAEH,GAAG,CAACG,OAAQ;QAACC,IAAI,EAAEJ,GAAG,CAACI;MAAK,GAA9DH,KAA+D,CAAE;IAAC,CAC7C,CAAC,EAEnCL,QAAQ,iBAAIpB,IAAA,CAACH,cAAc;MAACgC,KAAK,EAAET,QAAQ,CAACS,KAAM;MAACC,GAAG,EAAEV,QAAQ,CAACU;IAAI,CAAC,CAAC;EAAA,CAC7C,CAAC;AAElC,CAAC","ignoreList":[]}
|
|
@@ -17,10 +17,16 @@ const HorizontalCardIconContainer = exports.HorizontalCardIconContainer = _style
|
|
|
17
17
|
width: 64px;
|
|
18
18
|
height: 80px;
|
|
19
19
|
|
|
20
|
-
color: ${props => _styles.COLORS.
|
|
20
|
+
color: ${props => _styles.COLORS.generateToken({
|
|
21
|
+
componentType: 'icon',
|
|
22
|
+
defaultVariant: 'subtle'
|
|
23
|
+
}, props.theme)};
|
|
21
24
|
|
|
22
25
|
.disabled & {
|
|
23
|
-
color: ${props => _styles.COLORS.
|
|
26
|
+
color: ${props => _styles.COLORS.generateToken({
|
|
27
|
+
componentType: 'icon',
|
|
28
|
+
state: 'disabled'
|
|
29
|
+
}, props.theme)};
|
|
24
30
|
}
|
|
25
31
|
`;
|
|
26
32
|
const HorizontalCardImageContainer = exports.HorizontalCardImageContainer = _styledComponents.default.div`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalCardThumbnail.cjs","names":["_react","_interopRequireDefault","require","_styledComponents","_styles","_Image","_jsxRuntime","HorizontalCardIconContainer","exports","styled","div","props","COLORS","
|
|
1
|
+
{"version":3,"file":"HorizontalCardThumbnail.cjs","names":["_react","_interopRequireDefault","require","_styledComponents","_styles","_Image","_jsxRuntime","HorizontalCardIconContainer","exports","styled","div","props","COLORS","generateToken","componentType","defaultVariant","theme","state","HorizontalCardImageContainer","HorizontalCardThumbnail","_ref","image","icon","jsxs","Fragment","children","jsx","React","cloneElement","width","height","ImageWithFallbacks","fallbacks","fallbackSrc","src","alt","loader"],"sources":["../../../src/Card/HorizontalCard/HorizontalCardThumbnail.tsx"],"sourcesContent":["import React from 'react';\r\nimport {HorizontalCardProps} from './types';\r\nimport styled from 'styled-components';\r\nimport {COLORS} from '../../styles';\r\nimport {ImageWithFallbacks} from \"../../Image\";\r\n\r\nexport const HorizontalCardIconContainer = styled.div`\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\r\n width: 64px;\r\n height: 80px;\r\n\r\n color: ${props => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'subtle' }, props.theme)};\r\n\r\n .disabled & {\r\n color: ${props => COLORS.generateToken({ componentType: 'icon', state: 'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\n\r\nexport const HorizontalCardImageContainer = styled.div`\r\n height: 100%;\r\n overflow: hidden;\r\n border-bottom-left-radius: 8px;\r\n border-top-left-radius: 8px;\r\n width: 120px;\r\n\r\n img {\r\n mix-blend-mode: multiply;\r\n object-fit: cover;\r\n width: 100%;\r\n height: 100%;\r\n\r\n }\r\n\r\n .disabled & {\r\n img {\r\n filter: grayscale(100%);\r\n }\r\n }\r\n\r\n`;\r\n\r\ntype Props = Pick<HorizontalCardProps, 'image' | 'icon'>;\r\n\r\nexport const HorizontalCardThumbnail: React.FunctionComponent<Props> = ({\r\n image,\r\n icon\r\n }) => {\r\n\r\n return (\r\n <>\r\n {\r\n icon &&\r\n <HorizontalCardIconContainer>\r\n {React.cloneElement(icon, {width: 48, height: 48})}\r\n </HorizontalCardIconContainer>\r\n }\r\n {\r\n image &&\r\n <HorizontalCardImageContainer>\r\n <ImageWithFallbacks fallbacks={image.fallbackSrc ?? ''} src={image.src} alt={image.alt}\r\n loader={image.loader ?? false} width={image.width} height={image.height}/>\r\n </HorizontalCardImageContainer>\r\n }\r\n </>\r\n )\r\n};\r\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,iBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAA+C,IAAAI,WAAA,GAAAJ,OAAA;AAExC,MAAMK,2BAA2B,GAAAC,OAAA,CAAAD,2BAAA,GAAGE,yBAAM,CAACC,GAAG;AACrD;AACA;AACA;AACA;AACA;AACA;AACA,WAAWC,KAAK,IAAIC,cAAM,CAACC,aAAa,CAAC;EAAEC,aAAa,EAAE,MAAM;EAAEC,cAAc,EAAE;AAAS,CAAC,EAAEJ,KAAK,CAACK,KAAK,CAAC;AAC1G;AACA;AACA,aAAaL,KAAK,IAAIC,cAAM,CAACC,aAAa,CAAC;EAAEC,aAAa,EAAE,MAAM;EAAEG,KAAK,EAAE;AAAW,CAAC,EAAEN,KAAK,CAACK,KAAK,CAAC;AACrG;AACA,CAAC;AAGM,MAAME,4BAA4B,GAAAV,OAAA,CAAAU,4BAAA,GAAGT,yBAAM,CAACC,GAAG;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAIM,MAAMS,uBAAuD,GAAGC,IAAA,IAGO;EAAA,IAHN;IACEC,KAAK;IACLC;EACF,CAAC,GAAAF,IAAA;EAEvE,oBACE,IAAAd,WAAA,CAAAiB,IAAA,EAAAjB,WAAA,CAAAkB,QAAA;IAAAC,QAAA,GAEIH,IAAI,iBACF,IAAAhB,WAAA,CAAAoB,GAAA,EAACnB,2BAA2B;MAAAkB,QAAA,eACzBE,cAAK,CAACC,YAAY,CAACN,IAAI,EAAE;QAACO,KAAK,EAAE,EAAE;QAAEC,MAAM,EAAE;MAAE,CAAC;IAAC,CACvB,CAAC,EAGhCT,KAAK,iBACH,IAAAf,WAAA,CAAAoB,GAAA,EAACR,4BAA4B;MAAAO,QAAA,eACzB,IAAAnB,WAAA,CAAAoB,GAAA,EAACrB,MAAA,CAAA0B,kBAAkB;QAACC,SAAS,EAAEX,KAAK,CAACY,WAAW,IAAI,EAAG;QAACC,GAAG,EAAEb,KAAK,CAACa,GAAI;QAACC,GAAG,EAAEd,KAAK,CAACc,GAAI;QACnEC,MAAM,EAAEf,KAAK,CAACe,MAAM,IAAI,KAAM;QAACP,KAAK,EAAER,KAAK,CAACQ,KAAM;QAACC,MAAM,EAAET,KAAK,CAACS;MAAO,CAAC;IAAC,CACpE,CAAC;EAAA,CAEnC,CAAC;AAEP,CAAC;AAACtB,OAAA,CAAAW,uBAAA,GAAAA,uBAAA","ignoreList":[]}
|
|
@@ -10,10 +10,16 @@ export const HorizontalCardIconContainer = styled.div`
|
|
|
10
10
|
width: 64px;
|
|
11
11
|
height: 80px;
|
|
12
12
|
|
|
13
|
-
color: ${props => COLORS.
|
|
13
|
+
color: ${props => COLORS.generateToken({
|
|
14
|
+
componentType: 'icon',
|
|
15
|
+
defaultVariant: 'subtle'
|
|
16
|
+
}, props.theme)};
|
|
14
17
|
|
|
15
18
|
.disabled & {
|
|
16
|
-
color: ${props => COLORS.
|
|
19
|
+
color: ${props => COLORS.generateToken({
|
|
20
|
+
componentType: 'icon',
|
|
21
|
+
state: 'disabled'
|
|
22
|
+
}, props.theme)};
|
|
17
23
|
}
|
|
18
24
|
`;
|
|
19
25
|
export const HorizontalCardImageContainer = styled.div`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalCardThumbnail.js","names":["React","styled","COLORS","ImageWithFallbacks","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","HorizontalCardIconContainer","div","props","
|
|
1
|
+
{"version":3,"file":"HorizontalCardThumbnail.js","names":["React","styled","COLORS","ImageWithFallbacks","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","HorizontalCardIconContainer","div","props","generateToken","componentType","defaultVariant","theme","state","HorizontalCardImageContainer","HorizontalCardThumbnail","_ref","image","icon","children","cloneElement","width","height","fallbacks","fallbackSrc","src","alt","loader"],"sources":["../../../src/Card/HorizontalCard/HorizontalCardThumbnail.tsx"],"sourcesContent":["import React from 'react';\r\nimport {HorizontalCardProps} from './types';\r\nimport styled from 'styled-components';\r\nimport {COLORS} from '../../styles';\r\nimport {ImageWithFallbacks} from \"../../Image\";\r\n\r\nexport const HorizontalCardIconContainer = styled.div`\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\r\n width: 64px;\r\n height: 80px;\r\n\r\n color: ${props => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'subtle' }, props.theme)};\r\n\r\n .disabled & {\r\n color: ${props => COLORS.generateToken({ componentType: 'icon', state: 'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\n\r\nexport const HorizontalCardImageContainer = styled.div`\r\n height: 100%;\r\n overflow: hidden;\r\n border-bottom-left-radius: 8px;\r\n border-top-left-radius: 8px;\r\n width: 120px;\r\n\r\n img {\r\n mix-blend-mode: multiply;\r\n object-fit: cover;\r\n width: 100%;\r\n height: 100%;\r\n\r\n }\r\n\r\n .disabled & {\r\n img {\r\n filter: grayscale(100%);\r\n }\r\n }\r\n\r\n`;\r\n\r\ntype Props = Pick<HorizontalCardProps, 'image' | 'icon'>;\r\n\r\nexport const HorizontalCardThumbnail: React.FunctionComponent<Props> = ({\r\n image,\r\n icon\r\n }) => {\r\n\r\n return (\r\n <>\r\n {\r\n icon &&\r\n <HorizontalCardIconContainer>\r\n {React.cloneElement(icon, {width: 48, height: 48})}\r\n </HorizontalCardIconContainer>\r\n }\r\n {\r\n image &&\r\n <HorizontalCardImageContainer>\r\n <ImageWithFallbacks fallbacks={image.fallbackSrc ?? ''} src={image.src} alt={image.alt}\r\n loader={image.loader ?? false} width={image.width} height={image.height}/>\r\n </HorizontalCardImageContainer>\r\n }\r\n </>\r\n )\r\n};\r\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,MAAM,MAAM,mBAAmB;AACtC,SAAQC,MAAM,QAAO,cAAc;AACnC,SAAQC,kBAAkB,QAAO,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAE/C,OAAO,MAAMC,2BAA2B,GAAGT,MAAM,CAACU,GAAG;AACrD;AACA;AACA;AACA;AACA;AACA;AACA,WAAWC,KAAK,IAAIV,MAAM,CAACW,aAAa,CAAC;EAAEC,aAAa,EAAE,MAAM;EAAEC,cAAc,EAAE;AAAS,CAAC,EAAEH,KAAK,CAACI,KAAK,CAAC;AAC1G;AACA;AACA,aAAaJ,KAAK,IAAIV,MAAM,CAACW,aAAa,CAAC;EAAEC,aAAa,EAAE,MAAM;EAAEG,KAAK,EAAE;AAAW,CAAC,EAAEL,KAAK,CAACI,KAAK,CAAC;AACrG;AACA,CAAC;AAGD,OAAO,MAAME,4BAA4B,GAAGjB,MAAM,CAACU,GAAG;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAID,OAAO,MAAMQ,uBAAuD,GAAGC,IAAA,IAGO;EAAA,IAHN;IACEC,KAAK;IACLC;EACF,CAAC,GAAAF,IAAA;EAEvE,oBACEX,KAAA,CAAAF,SAAA;IAAAgB,QAAA,GAEID,IAAI,iBACFjB,IAAA,CAACK,2BAA2B;MAAAa,QAAA,eACzBvB,KAAK,CAACwB,YAAY,CAACF,IAAI,EAAE;QAACG,KAAK,EAAE,EAAE;QAAEC,MAAM,EAAE;MAAE,CAAC;IAAC,CACvB,CAAC,EAGhCL,KAAK,iBACHhB,IAAA,CAACa,4BAA4B;MAAAK,QAAA,eACzBlB,IAAA,CAACF,kBAAkB;QAACwB,SAAS,EAAEN,KAAK,CAACO,WAAW,IAAI,EAAG;QAACC,GAAG,EAAER,KAAK,CAACQ,GAAI;QAACC,GAAG,EAAET,KAAK,CAACS,GAAI;QACnEC,MAAM,EAAEV,KAAK,CAACU,MAAM,IAAI,KAAM;QAACN,KAAK,EAAEJ,KAAK,CAACI,KAAM;QAACC,MAAM,EAAEL,KAAK,CAACK;MAAO,CAAC;IAAC,CACpE,CAAC;EAAA,CAEnC,CAAC;AAEP,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import {act, render} from '../../../test-utils';
|
|
3
|
+
import {
|
|
4
|
+
HorizontalCard,
|
|
5
|
+
HorizontalCardDropdownButton,
|
|
6
|
+
HorizontalCardIconButton, HorizontalCardLinearProgression, HorizontalCardTag,
|
|
7
|
+
HorizontalCardToggleButton
|
|
8
|
+
} from '../index';
|
|
9
|
+
import {SystemIcons} from '../../../icons';
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
describe('HorizontalCard', () => {
|
|
14
|
+
const action = jest.fn();
|
|
15
|
+
|
|
16
|
+
const actions: (HorizontalCardIconButton | HorizontalCardToggleButton | HorizontalCardDropdownButton)[] = [
|
|
17
|
+
{componentType: 'icon', action: action, icon: <SystemIcons.Share/>},
|
|
18
|
+
{componentType: 'icon', action: action, icon: <SystemIcons.OpenNewWindow/>}
|
|
19
|
+
]
|
|
20
|
+
|
|
21
|
+
const tags: HorizontalCardTag[] = [{label: 'label 1'}, {label: 'label 2'}, {label: 'label 3'}];
|
|
22
|
+
|
|
23
|
+
const progress: HorizontalCardLinearProgression = {max: 100, value: 30};
|
|
24
|
+
|
|
25
|
+
beforeEach(() => {
|
|
26
|
+
action.mockReset();
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
it('should render title', async () => {
|
|
30
|
+
const {queryByText} = render(<HorizontalCard title={'title'}/>)
|
|
31
|
+
|
|
32
|
+
expect(queryByText('title')).toBeDefined()
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
it('should render tags', async () => {
|
|
36
|
+
|
|
37
|
+
const {queryByText} = render(<HorizontalCard title={'title'} tags={tags}/>)
|
|
38
|
+
|
|
39
|
+
expect(queryByText('label 1')).toBeDefined()
|
|
40
|
+
expect(queryByText('label 2')).toBeDefined()
|
|
41
|
+
expect(queryByText('label 3')).toBeDefined()
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
it('should render actions', async () => {
|
|
45
|
+
const {container} = render(<HorizontalCard title={'title'} actions={actions}/>)
|
|
46
|
+
|
|
47
|
+
expect(container.querySelectorAll('button')).toHaveLength(2)
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
it('should call action on component click', async () => {
|
|
51
|
+
const {container} = render(<HorizontalCard title={'title'} action={action}/>)
|
|
52
|
+
|
|
53
|
+
act(() => {
|
|
54
|
+
// @ts-ignore
|
|
55
|
+
container.querySelector('.clickable').click();
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
expect(action).toHaveBeenCalled()
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
it('should call action on button press', async () => {
|
|
62
|
+
const {container} = render(<HorizontalCard title={'title'} actions={actions}/>)
|
|
63
|
+
|
|
64
|
+
act(() => {
|
|
65
|
+
container.querySelectorAll('button').forEach(a => a.click());
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
expect(action).toHaveBeenCalledTimes(2)
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
});
|