@laerdal/life-react-components 3.5.1-dev.15 → 3.5.1-dev.17
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 +25 -3
- package/dist/Accordion/ContentAccordion.cjs.map +1 -1
- package/dist/Accordion/ContentAccordion.js +25 -3
- package/dist/Accordion/ContentAccordion.js.map +1 -1
- package/dist/Accordion/styles.cjs +29 -3
- package/dist/Accordion/styles.cjs.map +1 -1
- package/dist/Accordion/styles.js +29 -3
- package/dist/Accordion/styles.js.map +1 -1
- package/dist/Banners/Banner.cjs +34 -29
- package/dist/Banners/Banner.cjs.map +1 -1
- package/dist/Banners/Banner.js +34 -29
- package/dist/Banners/Banner.js.map +1 -1
- package/dist/Banners/OverviewBanner.cjs +6 -2
- package/dist/Banners/OverviewBanner.cjs.map +1 -1
- package/dist/Banners/OverviewBanner.js +6 -2
- package/dist/Banners/OverviewBanner.js.map +1 -1
- package/dist/Banners/styles.cjs +29 -29
- package/dist/Banners/styles.cjs.map +1 -1
- package/dist/Banners/styles.d.ts +1 -1
- package/dist/Banners/styles.js +29 -29
- package/dist/Banners/styles.js.map +1 -1
- package/dist/Breadcrumb/Breadcrumb.cjs +4 -2
- package/dist/Breadcrumb/Breadcrumb.cjs.map +1 -1
- package/dist/Breadcrumb/Breadcrumb.js +4 -2
- package/dist/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/Breadcrumb/styles.cjs +7 -3
- package/dist/Breadcrumb/styles.cjs.map +1 -1
- package/dist/Breadcrumb/styles.js +7 -3
- package/dist/Breadcrumb/styles.js.map +1 -1
- package/dist/Button/BackButton.cjs +12 -2
- package/dist/Button/BackButton.cjs.map +1 -1
- package/dist/Button/BackButton.js +12 -2
- package/dist/Button/BackButton.js.map +1 -1
- package/dist/Button/Button.cjs +51 -41
- package/dist/Button/Button.cjs.map +1 -1
- package/dist/Button/Button.js +51 -41
- package/dist/Button/Button.js.map +1 -1
- package/dist/Button/Iconbutton.cjs +36 -10
- package/dist/Button/Iconbutton.cjs.map +1 -1
- package/dist/Button/Iconbutton.js +36 -10
- package/dist/Button/Iconbutton.js.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCard.cjs +12 -2
- package/dist/Card/HorizontalCard/HorizontalCard.cjs.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCard.js +12 -2
- package/dist/Card/HorizontalCard/HorizontalCard.js.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardBody.cjs +8 -2
- package/dist/Card/HorizontalCard/HorizontalCardBody.cjs.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardBody.js +8 -2
- package/dist/Card/HorizontalCard/HorizontalCardBody.js.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.cjs +5 -1
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.cjs.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.js +5 -1
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.js.map +1 -1
- package/dist/Card/VerticalCard/Card.cjs +12 -2
- package/dist/Card/VerticalCard/Card.cjs.map +1 -1
- package/dist/Card/VerticalCard/Card.js +12 -2
- package/dist/Card/VerticalCard/Card.js.map +1 -1
- package/dist/Card/VerticalCard/CardBottomSection.cjs +16 -7
- package/dist/Card/VerticalCard/CardBottomSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardBottomSection.js +16 -7
- package/dist/Card/VerticalCard/CardBottomSection.js.map +1 -1
- package/dist/Card/VerticalCard/CardMiddleSection.cjs +8 -5
- package/dist/Card/VerticalCard/CardMiddleSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardMiddleSection.js +8 -5
- package/dist/Card/VerticalCard/CardMiddleSection.js.map +1 -1
- package/dist/Card/VerticalCard/CardTopSection.cjs +6 -3
- package/dist/Card/VerticalCard/CardTopSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardTopSection.js +6 -3
- package/dist/Card/VerticalCard/CardTopSection.js.map +1 -1
- package/dist/Chips/ChipStyles.cjs +59 -1
- package/dist/Chips/ChipStyles.cjs.map +1 -1
- package/dist/Chips/ChipStyles.js +59 -1
- package/dist/Chips/ChipStyles.js.map +1 -1
- package/dist/ChipsInput/ChipInputField.cjs +33 -5
- package/dist/ChipsInput/ChipInputField.cjs.map +1 -1
- package/dist/ChipsInput/ChipInputField.js +30 -5
- package/dist/ChipsInput/ChipInputField.js.map +1 -1
- package/dist/Dropdown/BasicDropdown.cjs +5 -3
- package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
- package/dist/Dropdown/BasicDropdown.js +5 -3
- package/dist/Dropdown/BasicDropdown.js.map +1 -1
- package/dist/Dropdown/CommonStyling.cjs +93 -13
- package/dist/Dropdown/CommonStyling.cjs.map +1 -1
- package/dist/Dropdown/CommonStyling.js +93 -13
- package/dist/Dropdown/CommonStyling.js.map +1 -1
- package/dist/Dropdown/DropdownContent.cjs +16 -10
- package/dist/Dropdown/DropdownContent.cjs.map +1 -1
- package/dist/Dropdown/DropdownContent.js +16 -10
- package/dist/Dropdown/DropdownContent.js.map +1 -1
- package/dist/Dropdown/DropdownFilter.cjs +5 -3
- package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
- package/dist/Dropdown/DropdownFilter.js +5 -3
- package/dist/Dropdown/DropdownFilter.js.map +1 -1
- package/dist/Footer/Components/FooterBottomLinks.cjs +3 -1
- package/dist/Footer/Components/FooterBottomLinks.cjs.map +1 -1
- package/dist/Footer/Components/FooterBottomLinks.js +3 -1
- package/dist/Footer/Components/FooterBottomLinks.js.map +1 -1
- package/dist/Footer/Components/FooterDropdownLinks.cjs +32 -4
- package/dist/Footer/Components/FooterDropdownLinks.cjs.map +1 -1
- package/dist/Footer/Components/FooterDropdownLinks.js +32 -4
- package/dist/Footer/Components/FooterDropdownLinks.js.map +1 -1
- package/dist/Footer/Components/FooterNavSection.cjs +3 -1
- package/dist/Footer/Components/FooterNavSection.cjs.map +1 -1
- package/dist/Footer/Components/FooterNavSection.js +3 -1
- package/dist/Footer/Components/FooterNavSection.js.map +1 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs +26 -4
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs.map +1 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.js +26 -4
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.js.map +1 -1
- package/dist/Footer/Components/FooterTop.cjs +19 -6
- package/dist/Footer/Components/FooterTop.cjs.map +1 -1
- package/dist/Footer/Components/FooterTop.js +19 -6
- package/dist/Footer/Components/FooterTop.js.map +1 -1
- package/dist/Footer/Footer.cjs +3 -1
- package/dist/Footer/Footer.cjs.map +1 -1
- package/dist/Footer/Footer.js +3 -1
- package/dist/Footer/Footer.js.map +1 -1
- package/dist/Footer/SiteFooter.cjs +8 -2
- package/dist/Footer/SiteFooter.cjs.map +1 -1
- package/dist/Footer/SiteFooter.js +8 -2
- package/dist/Footer/SiteFooter.js.map +1 -1
- package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs +6 -2
- package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs.map +1 -1
- package/dist/GlobalNavigationBar/GlobalNavigationBar.js +6 -2
- package/dist/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
- package/dist/GlobalNavigationBar/Logo.cjs +8 -7
- package/dist/GlobalNavigationBar/Logo.cjs.map +1 -1
- package/dist/GlobalNavigationBar/Logo.d.ts +1 -1
- package/dist/GlobalNavigationBar/Logo.js +8 -7
- package/dist/GlobalNavigationBar/Logo.js.map +1 -1
- package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.cjs +6 -2
- package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.js +6 -2
- package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.cjs +6 -2
- package/dist/GlobalNavigationBar/desktop/MainMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.js +6 -2
- package/dist/GlobalNavigationBar/desktop/MainMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs +19 -5
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.js +19 -5
- package/dist/GlobalNavigationBar/desktop/UserMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs +42 -8
- package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/CommonStyles.d.ts +1 -1
- package/dist/GlobalNavigationBar/mobile/CommonStyles.js +42 -8
- package/dist/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileActionContainer.cjs +3 -1
- package/dist/GlobalNavigationBar/mobile/MobileActionContainer.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileActionContainer.js +3 -1
- package/dist/GlobalNavigationBar/mobile/MobileActionContainer.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs +7 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenu.js +7 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs +26 -6
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js +26 -6
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.cjs +5 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.js +5 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.js.map +1 -1
- package/dist/HyperLink/styling.cjs +32 -2
- package/dist/HyperLink/styling.cjs.map +1 -1
- package/dist/HyperLink/styling.d.ts +2 -2
- package/dist/HyperLink/styling.js +32 -2
- package/dist/HyperLink/styling.js.map +1 -1
- package/dist/InputFields/Checkbox.cjs +29 -3
- package/dist/InputFields/Checkbox.cjs.map +1 -1
- package/dist/InputFields/Checkbox.js +29 -3
- package/dist/InputFields/Checkbox.js.map +1 -1
- package/dist/InputFields/DatepickerField.cjs +97 -5
- package/dist/InputFields/DatepickerField.cjs.map +1 -1
- package/dist/InputFields/DatepickerField.js +94 -5
- package/dist/InputFields/DatepickerField.js.map +1 -1
- package/dist/InputFields/DatepickerFieldHeader.cjs +11 -1
- package/dist/InputFields/DatepickerFieldHeader.cjs.map +1 -1
- package/dist/InputFields/DatepickerFieldHeader.js +11 -1
- package/dist/InputFields/DatepickerFieldHeader.js.map +1 -1
- package/dist/InputFields/Label.cjs +25 -4
- package/dist/InputFields/Label.cjs.map +1 -1
- package/dist/InputFields/Label.js +25 -4
- package/dist/InputFields/Label.js.map +1 -1
- package/dist/InputFields/NumberField.cjs +33 -5
- package/dist/InputFields/NumberField.cjs.map +1 -1
- package/dist/InputFields/NumberField.js +33 -5
- package/dist/InputFields/NumberField.js.map +1 -1
- package/dist/InputFields/PasswordField.cjs +3 -2
- package/dist/InputFields/PasswordField.cjs.map +1 -1
- package/dist/InputFields/PasswordField.js +3 -2
- package/dist/InputFields/PasswordField.js.map +1 -1
- package/dist/InputFields/QuickSearch.cjs +12 -5
- package/dist/InputFields/QuickSearch.cjs.map +1 -1
- package/dist/InputFields/QuickSearch.js +12 -5
- package/dist/InputFields/QuickSearch.js.map +1 -1
- package/dist/InputFields/RadioButton.cjs +31 -3
- package/dist/InputFields/RadioButton.cjs.map +1 -1
- package/dist/InputFields/RadioButton.js +31 -3
- package/dist/InputFields/RadioButton.js.map +1 -1
- package/dist/InputFields/RichTextField.cjs +34 -4
- package/dist/InputFields/RichTextField.cjs.map +1 -1
- package/dist/InputFields/RichTextField.js +31 -4
- package/dist/InputFields/RichTextField.js.map +1 -1
- package/dist/InputFields/SearchBar.cjs +6 -2
- package/dist/InputFields/SearchBar.cjs.map +1 -1
- package/dist/InputFields/SearchBar.js +3 -2
- package/dist/InputFields/SearchBar.js.map +1 -1
- package/dist/InputFields/TextField.cjs +4 -2
- package/dist/InputFields/TextField.cjs.map +1 -1
- package/dist/InputFields/TextField.js +4 -2
- package/dist/InputFields/TextField.js.map +1 -1
- package/dist/InputFields/Textarea.cjs +38 -5
- package/dist/InputFields/Textarea.cjs.map +1 -1
- package/dist/InputFields/Textarea.js +38 -5
- package/dist/InputFields/Textarea.js.map +1 -1
- package/dist/InputFields/components/SearchBarInput.cjs +15 -1
- package/dist/InputFields/components/SearchBarInput.cjs.map +1 -1
- package/dist/InputFields/components/SearchBarInput.js +15 -1
- package/dist/InputFields/components/SearchBarInput.js.map +1 -1
- package/dist/InputFields/components/SearchField.cjs +31 -1
- package/dist/InputFields/components/SearchField.cjs.map +1 -1
- package/dist/InputFields/components/SearchField.js +31 -1
- package/dist/InputFields/components/SearchField.js.map +1 -1
- package/dist/InputFields/styling.cjs +50 -13
- package/dist/InputFields/styling.cjs.map +1 -1
- package/dist/InputFields/styling.d.ts +3 -3
- package/dist/InputFields/styling.js +50 -13
- package/dist/InputFields/styling.js.map +1 -1
- package/dist/LinearProgress/LinearProgress.cjs +47 -5
- package/dist/LinearProgress/LinearProgress.cjs.map +1 -1
- package/dist/LinearProgress/LinearProgress.js +47 -5
- package/dist/LinearProgress/LinearProgress.js.map +1 -1
- package/dist/List/ListRow.cjs +19 -1
- package/dist/List/ListRow.cjs.map +1 -1
- package/dist/List/ListRow.js +19 -1
- package/dist/List/ListRow.js.map +1 -1
- package/dist/LoadingPage/GlobalLoadingPage.cjs +11 -3
- package/dist/LoadingPage/GlobalLoadingPage.cjs.map +1 -1
- package/dist/LoadingPage/GlobalLoadingPage.js +11 -3
- package/dist/LoadingPage/GlobalLoadingPage.js.map +1 -1
- package/dist/MenuItem/MenuItem.cjs +51 -2
- package/dist/MenuItem/MenuItem.cjs.map +1 -1
- package/dist/MenuItem/MenuItem.d.ts +1 -1
- package/dist/MenuItem/MenuItem.js +52 -3
- package/dist/MenuItem/MenuItem.js.map +1 -1
- package/dist/MiniProductCard/MiniProductCard.cjs +21 -6
- package/dist/MiniProductCard/MiniProductCard.cjs.map +1 -1
- package/dist/MiniProductCard/MiniProductCard.d.ts +1 -1
- package/dist/MiniProductCard/MiniProductCard.js +21 -6
- package/dist/MiniProductCard/MiniProductCard.js.map +1 -1
- package/dist/Modals/Modal.cjs +3 -2
- package/dist/Modals/Modal.cjs.map +1 -1
- package/dist/Modals/Modal.js +3 -2
- package/dist/Modals/Modal.js.map +1 -1
- package/dist/Modals/ModalContent.cjs +17 -7
- package/dist/Modals/ModalContent.cjs.map +1 -1
- package/dist/Modals/ModalContent.js +14 -7
- package/dist/Modals/ModalContent.js.map +1 -1
- package/dist/Modals/ModalDialog.cjs +5 -3
- package/dist/Modals/ModalDialog.cjs.map +1 -1
- package/dist/Modals/ModalDialog.js +5 -3
- package/dist/Modals/ModalDialog.js.map +1 -1
- package/dist/Modals/ModalNote.cjs +6 -4
- package/dist/Modals/ModalNote.cjs.map +1 -1
- package/dist/Modals/ModalNote.js +6 -4
- package/dist/Modals/ModalNote.js.map +1 -1
- package/dist/Modals/ModalStyles.cjs +17 -15
- package/dist/Modals/ModalStyles.cjs.map +1 -1
- package/dist/Modals/ModalStyles.d.ts +2 -2
- package/dist/Modals/ModalStyles.js +17 -15
- package/dist/Modals/ModalStyles.js.map +1 -1
- package/dist/NavItem/NavItem.cjs +27 -1
- package/dist/NavItem/NavItem.cjs.map +1 -1
- package/dist/NavItem/NavItem.js +27 -1
- package/dist/NavItem/NavItem.js.map +1 -1
- package/dist/NotificationDot/NotificationDot.cjs +2 -2
- package/dist/NotificationDot/NotificationDot.cjs.map +1 -1
- package/dist/NotificationDot/NotificationDot.js +2 -2
- package/dist/NotificationDot/NotificationDot.js.map +1 -1
- package/dist/Paginator/Paginator.cjs +33 -3
- package/dist/Paginator/Paginator.cjs.map +1 -1
- package/dist/Paginator/Paginator.js +33 -3
- package/dist/Paginator/Paginator.js.map +1 -1
- package/dist/Panel/Panel.cjs +6 -2
- package/dist/Panel/Panel.cjs.map +1 -1
- package/dist/Panel/Panel.js +6 -2
- package/dist/Panel/Panel.js.map +1 -1
- package/dist/Popover/Popover.cjs +7 -4
- package/dist/Popover/Popover.cjs.map +1 -1
- package/dist/Popover/Popover.js +7 -4
- package/dist/Popover/Popover.js.map +1 -1
- package/dist/ProfileButton/ProfileButton.cjs +11 -4
- package/dist/ProfileButton/ProfileButton.cjs.map +1 -1
- package/dist/ProfileButton/ProfileButton.js +11 -4
- package/dist/ProfileButton/ProfileButton.js.map +1 -1
- package/dist/QuizButton/QuizButton.cjs +51 -14
- package/dist/QuizButton/QuizButton.cjs.map +1 -1
- package/dist/QuizButton/QuizButton.js +51 -14
- package/dist/QuizButton/QuizButton.js.map +1 -1
- package/dist/SegmentControl/SegmentControl.cjs +25 -3
- package/dist/SegmentControl/SegmentControl.cjs.map +1 -1
- package/dist/SegmentControl/SegmentControl.js +25 -3
- package/dist/SegmentControl/SegmentControl.js.map +1 -1
- package/dist/SideMenu/SideMenu.cjs +3 -1
- package/dist/SideMenu/SideMenu.cjs.map +1 -1
- package/dist/SideMenu/SideMenu.js +3 -1
- package/dist/SideMenu/SideMenu.js.map +1 -1
- package/dist/SideMenu/SideMenuFooter.cjs +9 -3
- package/dist/SideMenu/SideMenuFooter.cjs.map +1 -1
- package/dist/SideMenu/SideMenuFooter.js +9 -3
- package/dist/SideMenu/SideMenuFooter.js.map +1 -1
- package/dist/SideMenu/SideMenuHeader.cjs +7 -1
- package/dist/SideMenu/SideMenuHeader.cjs.map +1 -1
- package/dist/SideMenu/SideMenuHeader.js +7 -1
- package/dist/SideMenu/SideMenuHeader.js.map +1 -1
- package/dist/SkipToContent/SkipToContent.cjs +6 -2
- package/dist/SkipToContent/SkipToContent.cjs.map +1 -1
- package/dist/SkipToContent/SkipToContent.js +6 -2
- package/dist/SkipToContent/SkipToContent.js.map +1 -1
- package/dist/Switcher/SwitcherMenuItem.cjs +27 -1
- package/dist/Switcher/SwitcherMenuItem.cjs.map +1 -1
- package/dist/Switcher/SwitcherMenuItem.js +27 -1
- package/dist/Switcher/SwitcherMenuItem.js.map +1 -1
- package/dist/Table/TableFooter.cjs +4 -2
- package/dist/Table/TableFooter.cjs.map +1 -1
- package/dist/Table/TableFooter.js +4 -2
- package/dist/Table/TableFooter.js.map +1 -1
- package/dist/Table/TableStyles.cjs +80 -12
- package/dist/Table/TableStyles.cjs.map +1 -1
- package/dist/Table/TableStyles.js +80 -12
- package/dist/Table/TableStyles.js.map +1 -1
- package/dist/Tabs/HorizontalTabs.cjs +36 -2
- package/dist/Tabs/HorizontalTabs.cjs.map +1 -1
- package/dist/Tabs/HorizontalTabs.js +36 -2
- package/dist/Tabs/HorizontalTabs.js.map +1 -1
- package/dist/Tabs/TabLink.cjs +33 -3
- package/dist/Tabs/TabLink.cjs.map +1 -1
- package/dist/Tabs/TabLink.js +33 -3
- package/dist/Tabs/TabLink.js.map +1 -1
- package/dist/Tag/Tag.cjs +25 -1
- package/dist/Tag/Tag.cjs.map +1 -1
- package/dist/Tag/Tag.js +25 -1
- package/dist/Tag/Tag.js.map +1 -1
- package/dist/Tile/Tile.cjs +5 -1
- package/dist/Tile/Tile.cjs.map +1 -1
- package/dist/Tile/Tile.js +5 -1
- package/dist/Tile/Tile.js.map +1 -1
- package/dist/Tile/TileCommonItems.cjs +6 -2
- package/dist/Tile/TileCommonItems.cjs.map +1 -1
- package/dist/Tile/TileCommonItems.js +6 -2
- package/dist/Tile/TileCommonItems.js.map +1 -1
- package/dist/Tile/TileFooter.cjs +3 -1
- package/dist/Tile/TileFooter.cjs.map +1 -1
- package/dist/Tile/TileFooter.js +3 -1
- package/dist/Tile/TileFooter.js.map +1 -1
- package/dist/Tile/TileHeader.cjs +12 -4
- package/dist/Tile/TileHeader.cjs.map +1 -1
- package/dist/Tile/TileHeader.js +9 -4
- package/dist/Tile/TileHeader.js.map +1 -1
- package/dist/Toasters/Toast.cjs +49 -4
- package/dist/Toasters/Toast.cjs.map +1 -1
- package/dist/Toasters/Toast.js +50 -5
- package/dist/Toasters/Toast.js.map +1 -1
- package/dist/Toggles/ToggleButton.cjs +7 -1
- package/dist/Toggles/ToggleButton.cjs.map +1 -1
- package/dist/Toggles/ToggleButton.js +7 -1
- package/dist/Toggles/ToggleButton.js.map +1 -1
- package/dist/Toggles/ToggleSwitch.cjs +3 -2
- package/dist/Toggles/ToggleSwitch.cjs.map +1 -1
- package/dist/Toggles/ToggleSwitch.js +3 -2
- package/dist/Toggles/ToggleSwitch.js.map +1 -1
- package/dist/Toggles/TogglerStyles.cjs +38 -2
- package/dist/Toggles/TogglerStyles.cjs.map +1 -1
- package/dist/Toggles/TogglerStyles.js +38 -2
- package/dist/Toggles/TogglerStyles.js.map +1 -1
- package/dist/Tooltips/TooltipStyles.cjs +10 -8
- package/dist/Tooltips/TooltipStyles.cjs.map +1 -1
- package/dist/Tooltips/TooltipStyles.js +10 -8
- package/dist/Tooltips/TooltipStyles.js.map +1 -1
- package/dist/common/InputStyling.cjs +15 -1
- package/dist/common/InputStyling.cjs.map +1 -1
- package/dist/common/InputStyling.d.ts +1 -1
- package/dist/common/InputStyling.js +15 -1
- package/dist/common/InputStyling.js.map +1 -1
- package/dist/styles/colors.cjs +6 -1
- package/dist/styles/colors.cjs.map +1 -1
- package/dist/styles/colors.d.ts +1 -0
- package/dist/styles/colors.js +6 -1
- package/dist/styles/colors.js.map +1 -1
- package/dist/styles/global.cjs +11 -3
- package/dist/styles/global.cjs.map +1 -1
- package/dist/styles/global.js +11 -3
- package/dist/styles/global.js.map +1 -1
- package/dist/styles/index.cjs +9 -1
- package/dist/styles/index.cjs.map +1 -1
- package/dist/styles/index.d.ts +1 -1
- package/dist/styles/index.js +9 -1
- package/dist/styles/index.js.map +1 -1
- package/dist/styles/typography.cjs +3 -1
- package/dist/styles/typography.cjs.map +1 -1
- package/dist/styles/typography.d.ts +6 -6
- package/dist/styles/typography.js +3 -1
- package/dist/styles/typography.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProfileButton.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_","_Iconbutton","_NotificationDot","_styles","_jsxRuntime","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","PortraitOverlay","styled","div","_taggedTemplateLiteral2","COLORS","black","ProfileButtonContainer","IconButtonStyledPrimary","props","hideOnLowWidth","BREAKPOINTS","MEDIUM","IconButtonContentStyles","neutral_100","neutral_300","exports","NotificationContainer","ImageWrapper","ProfileButton","forwardRef","_ref","ref","portraitSrc","icon","initials","onClick","disabled","notificationVariant","className","tabIndex","rest","_objectWithoutProperties2","renderIcon","jsxs","children","jsx","src","ComponentS","textStyle","ComponentTextStyle","Bold","color","white","Fragment","IconButton","action","variant","shape","NotificationDot","size","Size","Medium","propTypes","_propTypes","string","node","func","isRequired","oneOf","_default"],"sources":["../../src/ProfileButton/ProfileButton.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport {COLORS, IconButton, Size} from '..';\r\nimport {IconButtonContentStyles, IconButtonStyledPrimary} from '../Button/Iconbutton';\r\nimport {NotificationDot} from '../NotificationDot';\r\nimport {BREAKPOINTS, ComponentS, ComponentTextStyle} from '../styles';\r\n\r\nexport type ProfileButtonProps = {\r\n /**\r\n * Optional. The source URL of the profile picture.\r\n */\r\n portraitSrc?: string;\r\n\r\n /**\r\n * Optional. The icon of the profile to be displayed in absence of 'portraitSrc' and 'initials'.\r\n */\r\n icon?: React.ReactNode;\r\n\r\n /**\r\n * Optional. The initials of the user. If provided, these will be displayed in circle in the absence of a profile picture.\r\n */\r\n initials?: string;\r\n\r\n /**\r\n * Required. The handler function to be called when the button is clicked.\r\n */\r\n onClick: (event?: React.MouseEvent<HTMLButtonElement>) => void;\r\n\r\n /**\r\n * Optional. The variant of the notification dot. It can be 'positive' or 'critical'.\r\n */\r\n notificationVariant?: 'positive' | 'critical';\r\n} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'onClick'> ;\r\n\r\nconst PortraitOverlay = styled.div`\r\n width: 100%;\r\n height: 100%;\r\n border-radius: 50%;\r\n background-color: ${COLORS.black};\r\n opacity: 0;\r\n position: absolute;\r\n top: 0px;\r\n left: 0px;\r\n`;\r\n\r\nexport const ProfileButtonContainer = styled.div<{ hideOnLowWidth?: boolean }>`\r\n width: 48px;\r\n height: 48px;\r\n display: inline;\r\n user-select: none;\r\n \r\n ${IconButtonStyledPrimary} {\r\n display: ${props => (props.hideOnLowWidth ? 'none' : 'inline')};\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: inline;\r\n }\r\n\r\n :disabled {\r\n img {\r\n filter: grayscale(100%);\r\n }\r\n\r\n ${IconButtonContentStyles} {\r\n background-color: ${COLORS.neutral_100};\r\n\r\n svg, svg path {\r\n fill: ${COLORS.neutral_300};\r\n }\r\n }\r\n }\r\n\r\n :hover:not(:disabled):not(:active),\r\n &.hover-state {\r\n ${PortraitOverlay} {\r\n opacity: 0.25;\r\n transition: opacity 100ms ease-in-out;\r\n }\r\n }\r\n\r\n :active:not(:disabled),\r\n &.active-state {\r\n ${PortraitOverlay} {\r\n opacity: 0.5;\r\n transition: opacity 0ms ease-in-out;\r\n }\r\n }\r\n }\r\n`;\r\n\r\nconst NotificationContainer = styled.div`\r\n position: absolute;\r\n left: 30px;\r\n bottom: 30px;\r\n`;\r\n\r\nconst ImageWrapper = styled.div`\r\n width: 36px;\r\n height: 36px;\r\n position: relative;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n border-radius: 50%;\r\n object-fit: cover;\r\n }\r\n`;\r\n\r\nconst ProfileButton = React.forwardRef<HTMLButtonElement, ProfileButtonProps>(({\r\n portraitSrc,\r\n icon,\r\n initials,\r\n onClick,\r\n disabled,\r\n notificationVariant,\r\n className,\r\n tabIndex,\r\n ...rest\r\n }, ref) => {\r\n const renderIcon = () => {\r\n return (\r\n (portraitSrc && (\r\n <ImageWrapper>\r\n <img src={portraitSrc}/>\r\n <PortraitOverlay/>\r\n </ImageWrapper>\r\n )) ||\r\n (initials && (\r\n <ComponentS className=\"initials\" textStyle={ComponentTextStyle.Bold}\r\n color={disabled ? COLORS.neutral_300 : COLORS.white}>\r\n {initials}\r\n </ComponentS>\r\n )) || <>{icon}</>\r\n );\r\n };\r\n\r\n return (\r\n <ProfileButtonContainer>\r\n <IconButton ref={ref}\r\n className={className}\r\n disabled={disabled}\r\n action={onClick}\r\n variant=\"primary\"\r\n tabIndex={tabIndex}\r\n shape=\"circular\"\r\n {...rest}>\r\n {renderIcon()}\r\n {notificationVariant && (\r\n <NotificationContainer>\r\n <NotificationDot size={Size.Medium} variant={notificationVariant}/>\r\n </NotificationContainer>\r\n )}\r\n </IconButton>\r\n </ProfileButtonContainer>\r\n );\r\n});\r\n\r\nexport default ProfileButton;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ProfileButton.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_","_Iconbutton","_NotificationDot","_styles","_jsxRuntime","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","PortraitOverlay","styled","div","_taggedTemplateLiteral2","props","COLORS","getColor","theme","ProfileButtonContainer","IconButtonStyledPrimary","hideOnLowWidth","BREAKPOINTS","MEDIUM","IconButtonContentStyles","exports","NotificationContainer","ImageWrapper","ProfileButton","forwardRef","_ref","ref","portraitSrc","icon","initials","onClick","disabled","notificationVariant","className","tabIndex","rest","_objectWithoutProperties2","useTheme","renderIcon","jsxs","children","jsx","src","ComponentS","textStyle","ComponentTextStyle","Bold","color","Fragment","IconButton","action","variant","shape","NotificationDot","size","Size","Medium","propTypes","_propTypes","string","node","func","isRequired","oneOf","_default"],"sources":["../../src/ProfileButton/ProfileButton.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport {COLORS, IconButton, Size} from '..';\r\nimport {IconButtonContentStyles, IconButtonStyledPrimary} from '../Button/Iconbutton';\r\nimport {NotificationDot} from '../NotificationDot';\r\nimport {BREAKPOINTS, ComponentS, ComponentTextStyle} from '../styles';\r\n\r\nexport type ProfileButtonProps = {\r\n /**\r\n * Optional. The source URL of the profile picture.\r\n */\r\n portraitSrc?: string;\r\n\r\n /**\r\n * Optional. The icon of the profile to be displayed in absence of 'portraitSrc' and 'initials'.\r\n */\r\n icon?: React.ReactNode;\r\n\r\n /**\r\n * Optional. The initials of the user. If provided, these will be displayed in circle in the absence of a profile picture.\r\n */\r\n initials?: string;\r\n\r\n /**\r\n * Required. The handler function to be called when the button is clicked.\r\n */\r\n onClick: (event?: React.MouseEvent<HTMLButtonElement>) => void;\r\n\r\n /**\r\n * Optional. The variant of the notification dot. It can be 'positive' or 'critical'.\r\n */\r\n notificationVariant?: 'positive' | 'critical';\r\n} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'onClick'> ;\r\n\r\nconst PortraitOverlay = styled.div`\r\n width: 100%;\r\n height: 100%;\r\n border-radius: 50%;\r\n background-color: ${props => COLORS.getColor('black', props.theme)};\r\n opacity: 0;\r\n position: absolute;\r\n top: 0px;\r\n left: 0px;\r\n`;\r\n\r\nexport const ProfileButtonContainer = styled.div<{ hideOnLowWidth?: boolean }>`\r\n width: 48px;\r\n height: 48px;\r\n display: inline;\r\n user-select: none;\r\n \r\n ${IconButtonStyledPrimary} {\r\n display: ${props => (props.hideOnLowWidth ? 'none' : 'inline')};\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: inline;\r\n }\r\n\r\n :disabled {\r\n img {\r\n filter: grayscale(100%);\r\n }\r\n\r\n ${IconButtonContentStyles} {\r\n background-color: ${props => COLORS.getColor('neutral_100', props.theme)};\r\n\r\n svg, svg path {\r\n fill: ${props => COLORS.getColor('neutral_300', props.theme)};\r\n }\r\n }\r\n }\r\n\r\n :hover:not(:disabled):not(:active),\r\n &.hover-state {\r\n ${PortraitOverlay} {\r\n opacity: 0.25;\r\n transition: opacity 100ms ease-in-out;\r\n }\r\n }\r\n\r\n :active:not(:disabled),\r\n &.active-state {\r\n ${PortraitOverlay} {\r\n opacity: 0.5;\r\n transition: opacity 0ms ease-in-out;\r\n }\r\n }\r\n }\r\n`;\r\n\r\nconst NotificationContainer = styled.div`\r\n position: absolute;\r\n left: 30px;\r\n bottom: 30px;\r\n`;\r\n\r\nconst ImageWrapper = styled.div`\r\n width: 36px;\r\n height: 36px;\r\n position: relative;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n border-radius: 50%;\r\n object-fit: cover;\r\n }\r\n`;\r\n\r\nconst ProfileButton = React.forwardRef<HTMLButtonElement, ProfileButtonProps>(({\r\n portraitSrc,\r\n icon,\r\n initials,\r\n onClick,\r\n disabled,\r\n notificationVariant,\r\n className,\r\n tabIndex,\r\n ...rest\r\n }, ref) => {\r\n const theme = useTheme();\r\n const renderIcon = () => {\r\n return (\r\n (portraitSrc && (\r\n <ImageWrapper>\r\n <img src={portraitSrc}/>\r\n <PortraitOverlay/>\r\n </ImageWrapper>\r\n )) ||\r\n (initials && (\r\n <ComponentS className=\"initials\" textStyle={ComponentTextStyle.Bold}\r\n color={disabled ? COLORS.getColor('neutral_300', theme) : COLORS.getColor('white', theme)}>\r\n {initials}\r\n </ComponentS>\r\n )) || <>{icon}</>\r\n );\r\n };\r\n\r\n return (\r\n <ProfileButtonContainer>\r\n <IconButton ref={ref}\r\n className={className}\r\n disabled={disabled}\r\n action={onClick}\r\n variant=\"primary\"\r\n tabIndex={tabIndex}\r\n shape=\"circular\"\r\n {...rest}>\r\n {renderIcon()}\r\n {notificationVariant && (\r\n <NotificationContainer>\r\n <NotificationDot size={Size.Medium} variant={notificationVariant}/>\r\n </NotificationContainer>\r\n )}\r\n </IconButton>\r\n </ProfileButtonContainer>\r\n );\r\n});\r\n\r\nexport default ProfileButton;\r\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAF,uBAAA,CAAAC,OAAA;AACA,IAAAE,CAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAAsE,IAAAM,WAAA,GAAAN,OAAA;AAAA,IAAAO,SAAA;AAAA,IAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA;AAAA,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAd,wBAAAc,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAW,QAAAnB,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAQ,MAAA,CAAAS,IAAA,CAAApB,CAAA,OAAAW,MAAA,CAAAU,qBAAA,QAAAC,CAAA,GAAAX,MAAA,CAAAU,qBAAA,CAAArB,CAAA,GAAAE,CAAA,KAAAoB,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAArB,CAAA,WAAAS,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAE,CAAA,EAAAsB,UAAA,OAAArB,CAAA,CAAAsB,IAAA,CAAAC,KAAA,CAAAvB,CAAA,EAAAmB,CAAA,YAAAnB,CAAA;AAAA,SAAAwB,cAAA3B,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAA0B,SAAA,CAAAC,MAAA,EAAA3B,CAAA,UAAAC,CAAA,WAAAyB,SAAA,CAAA1B,CAAA,IAAA0B,SAAA,CAAA1B,CAAA,QAAAA,CAAA,OAAAiB,OAAA,CAAAR,MAAA,CAAAR,CAAA,OAAA2B,OAAA,WAAA5B,CAAA,QAAA6B,gBAAA,aAAA/B,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAS,MAAA,CAAAqB,yBAAA,GAAArB,MAAA,CAAAsB,gBAAA,CAAAjC,CAAA,EAAAW,MAAA,CAAAqB,yBAAA,CAAA7B,CAAA,KAAAgB,OAAA,CAAAR,MAAA,CAAAR,CAAA,GAAA2B,OAAA,WAAA5B,CAAA,IAAAS,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,EAAAS,MAAA,CAAAE,wBAAA,CAAAV,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AA6BtE,IAAMkC,eAAe,GAAGC,4BAAM,CAACC,GAAG,CAAAzC,eAAA,KAAAA,eAAA,OAAA0C,uBAAA,2KAIZ,UAAAC,KAAK;EAAA,OAAIC,QAAM,CAACC,QAAQ,CAAC,OAAO,EAAEF,KAAK,CAACG,KAAK,CAAC;AAAA,EAKnE;AAEM,IAAMC,sBAAsB,GAAGP,4BAAM,CAACC,GAAG,CAAAxC,gBAAA,KAAAA,gBAAA,OAAAyC,uBAAA,6rBAM5CM,mCAAuB,EACZ,UAAAL,KAAK;EAAA,OAAKA,KAAK,CAACM,cAAc,GAAG,MAAM,GAAG,QAAQ;AAAA,CAAC,EAE5DC,mBAAW,CAACC,MAAM,EAShBC,mCAAuB,EACH,UAAAT,KAAK;EAAA,OAAIC,QAAM,CAACC,QAAQ,CAAC,aAAa,EAAEF,KAAK,CAACG,KAAK,CAAC;AAAA,GAG9D,UAAAH,KAAK;EAAA,OAAIC,QAAM,CAACC,QAAQ,CAAC,aAAa,EAAEF,KAAK,CAACG,KAAK,CAAC;AAAA,GAO9DP,eAAe,EAQfA,eAAe,CAMtB;AAACc,OAAA,CAAAN,sBAAA,GAAAA,sBAAA;AAEF,IAAMO,qBAAqB,GAAGd,4BAAM,CAACC,GAAG,CAAAvC,gBAAA,KAAAA,gBAAA,OAAAwC,uBAAA,6EAIvC;AAED,IAAMa,YAAY,GAAGf,4BAAM,CAACC,GAAG,CAAAtC,gBAAA,KAAAA,gBAAA,OAAAuC,uBAAA,oLAW9B;AAED,IAAMc,aAAa,gBAAGlE,KAAK,CAACmE,UAAU,CAAwC,UAAAC,IAAA,EAUIC,GAAG,EAAK;EAAA,IATTC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IACXC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IACJC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;IACRC,OAAO,GAAAL,IAAA,CAAPK,OAAO;IACPC,QAAQ,GAAAN,IAAA,CAARM,QAAQ;IACRC,mBAAmB,GAAAP,IAAA,CAAnBO,mBAAmB;IACnBC,SAAS,GAAAR,IAAA,CAATQ,SAAS;IACTC,QAAQ,GAAAT,IAAA,CAARS,QAAQ;IACLC,IAAI,OAAAC,yBAAA,aAAAX,IAAA,EAAA3D,SAAA;EAEtF,IAAM+C,KAAK,GAAG,IAAAwB,0BAAQ,EAAC,CAAC;EACxB,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAA,EAAS;IACvB,OACGX,WAAW,iBACV,IAAA9D,WAAA,CAAA0E,IAAA,EAACjB,YAAY;MAAAkB,QAAA,gBACX,IAAA3E,WAAA,CAAA4E,GAAA;QAAKC,GAAG,EAAEf;MAAY,CAAC,CAAC,eACxB,IAAA9D,WAAA,CAAA4E,GAAA,EAACnC,eAAe,IAAC,CAAC;IAAA,CACN,CACf,IACAuB,QAAQ,iBACP,IAAAhE,WAAA,CAAA4E,GAAA,EAAC7E,OAAA,CAAA+E,UAAU;MAACV,SAAS,EAAC,UAAU;MAACW,SAAS,EAAEC,0BAAkB,CAACC,IAAK;MACxDC,KAAK,EAAEhB,QAAQ,GAAGpB,QAAM,CAACC,QAAQ,CAAC,aAAa,EAAEC,KAAK,CAAC,GAAGF,QAAM,CAACC,QAAQ,CAAC,OAAO,EAAEC,KAAK,CAAE;MAAA2B,QAAA,EACnGX;IAAQ,CACC,CACZ,iBAAI,IAAAhE,WAAA,CAAA4E,GAAA,EAAA5E,WAAA,CAAAmF,QAAA;MAAAR,QAAA,EAAGZ;IAAI,CAAG,CAAC;EAErB,CAAC;EAED,oBACE,IAAA/D,WAAA,CAAA4E,GAAA,EAAC3B,sBAAsB;IAAA0B,QAAA,eACrB,IAAA3E,WAAA,CAAA0E,IAAA,EAAC9E,CAAA,CAAAwF,UAAU,EAAAlD,aAAA,CAAAA,aAAA;MAAC2B,GAAG,EAAEA,GAAI;MACTO,SAAS,EAAEA,SAAU;MACrBF,QAAQ,EAAEA,QAAS;MACnBmB,MAAM,EAAEpB,OAAQ;MAChBqB,OAAO,EAAC,SAAS;MACjBjB,QAAQ,EAAEA,QAAS;MACnBkB,KAAK,EAAC;IAAU,GACZjB,IAAI;MAAAK,QAAA,GACjBF,UAAU,CAAC,CAAC,EACZN,mBAAmB,iBAClB,IAAAnE,WAAA,CAAA4E,GAAA,EAACpB,qBAAqB;QAAAmB,QAAA,eACpB,IAAA3E,WAAA,CAAA4E,GAAA,EAAC9E,gBAAA,CAAA0F,eAAe;UAACC,IAAI,EAAEC,MAAI,CAACC,MAAO;UAACL,OAAO,EAAEnB;QAAoB,CAAC;MAAC,CAC9C,CACxB;IAAA,EACS;EAAC,CACS,CAAC;AAE7B,CAAC,CAAC;AAACT,aAAA,CAAAkC,SAAA;EAlJD9B,WAAW,EAAA+B,UAAA,YAAAC,MAAA;EAKX/B,IAAI,EAAA8B,UAAA,YAAAE,IAAA;EAKJ/B,QAAQ,EAAA6B,UAAA,YAAAC,MAAA;EAKR7B,OAAO,EAAA4B,UAAA,YAAAG,IAAA,CAAAC,UAAA;EAKP9B,mBAAmB,EAAA0B,UAAA,YAAAK,KAAA,EAAG,UAAU,EAAG,UAAU;AAAA;AAAA,IAAAC,QAAA,GAgIhCzC,aAAa;AAAAH,OAAA,cAAA4C,QAAA","ignoreList":[]}
|
|
@@ -7,7 +7,7 @@ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
|
7
7
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
8
8
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
9
9
|
import * as React from 'react';
|
|
10
|
-
import styled from 'styled-components';
|
|
10
|
+
import styled, { useTheme } from 'styled-components';
|
|
11
11
|
import { COLORS, IconButton, Size } from '..';
|
|
12
12
|
import { IconButtonContentStyles, IconButtonStyledPrimary } from '../Button/Iconbutton';
|
|
13
13
|
import { NotificationDot } from '../NotificationDot';
|
|
@@ -15,10 +15,16 @@ import { BREAKPOINTS, ComponentS, ComponentTextStyle } from '../styles';
|
|
|
15
15
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
16
16
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
17
17
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
18
|
-
var PortraitOverlay = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: 100%;\n height: 100%;\n border-radius: 50%;\n background-color: ", ";\n opacity: 0;\n position: absolute;\n top: 0px;\n left: 0px;\n"])),
|
|
18
|
+
var PortraitOverlay = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: 100%;\n height: 100%;\n border-radius: 50%;\n background-color: ", ";\n opacity: 0;\n position: absolute;\n top: 0px;\n left: 0px;\n"])), function (props) {
|
|
19
|
+
return COLORS.getColor('black', props.theme);
|
|
20
|
+
});
|
|
19
21
|
export var ProfileButtonContainer = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n width: 48px;\n height: 48px;\n display: inline;\n user-select: none;\n \n ", " {\n display: ", ";\n\n ", " {\n display: inline;\n }\n\n :disabled {\n img {\n filter: grayscale(100%);\n }\n\n ", " {\n background-color: ", ";\n\n svg, svg path {\n fill: ", ";\n }\n }\n }\n\n :hover:not(:disabled):not(:active),\n &.hover-state {\n ", " {\n opacity: 0.25;\n transition: opacity 100ms ease-in-out;\n }\n }\n\n :active:not(:disabled),\n &.active-state {\n ", " {\n opacity: 0.5;\n transition: opacity 0ms ease-in-out;\n }\n }\n }\n"])), IconButtonStyledPrimary, function (props) {
|
|
20
22
|
return props.hideOnLowWidth ? 'none' : 'inline';
|
|
21
|
-
}, BREAKPOINTS.MEDIUM, IconButtonContentStyles,
|
|
23
|
+
}, BREAKPOINTS.MEDIUM, IconButtonContentStyles, function (props) {
|
|
24
|
+
return COLORS.getColor('neutral_100', props.theme);
|
|
25
|
+
}, function (props) {
|
|
26
|
+
return COLORS.getColor('neutral_300', props.theme);
|
|
27
|
+
}, PortraitOverlay, PortraitOverlay);
|
|
22
28
|
var NotificationContainer = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n position: absolute;\n left: 30px;\n bottom: 30px;\n"])));
|
|
23
29
|
var ImageWrapper = styled.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n width: 36px;\n height: 36px;\n position: relative;\n\n img {\n width: 100%;\n height: 100%;\n border-radius: 50%;\n object-fit: cover;\n }\n"])));
|
|
24
30
|
var ProfileButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
@@ -31,6 +37,7 @@ var ProfileButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
31
37
|
className = _ref.className,
|
|
32
38
|
tabIndex = _ref.tabIndex,
|
|
33
39
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
40
|
+
var theme = useTheme();
|
|
34
41
|
var renderIcon = function renderIcon() {
|
|
35
42
|
return portraitSrc && /*#__PURE__*/_jsxs(ImageWrapper, {
|
|
36
43
|
children: [/*#__PURE__*/_jsx("img", {
|
|
@@ -39,7 +46,7 @@ var ProfileButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
39
46
|
}) || initials && /*#__PURE__*/_jsx(ComponentS, {
|
|
40
47
|
className: "initials",
|
|
41
48
|
textStyle: ComponentTextStyle.Bold,
|
|
42
|
-
color: disabled ? COLORS.neutral_300 : COLORS.white,
|
|
49
|
+
color: disabled ? COLORS.getColor('neutral_300', theme) : COLORS.getColor('white', theme),
|
|
43
50
|
children: initials
|
|
44
51
|
}) || /*#__PURE__*/_jsx(_Fragment, {
|
|
45
52
|
children: icon
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProfileButton.js","names":["React","styled","COLORS","IconButton","Size","IconButtonContentStyles","IconButtonStyledPrimary","NotificationDot","BREAKPOINTS","ComponentS","ComponentTextStyle","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","PortraitOverlay","div","_templateObject","_taggedTemplateLiteral","
|
|
1
|
+
{"version":3,"file":"ProfileButton.js","names":["React","styled","useTheme","COLORS","IconButton","Size","IconButtonContentStyles","IconButtonStyledPrimary","NotificationDot","BREAKPOINTS","ComponentS","ComponentTextStyle","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","PortraitOverlay","div","_templateObject","_taggedTemplateLiteral","props","getColor","theme","ProfileButtonContainer","_templateObject2","hideOnLowWidth","MEDIUM","NotificationContainer","_templateObject3","ImageWrapper","_templateObject4","ProfileButton","forwardRef","_ref","ref","portraitSrc","icon","initials","onClick","disabled","notificationVariant","className","tabIndex","rest","_objectWithoutProperties","_excluded","renderIcon","children","src","textStyle","Bold","color","_objectSpread","action","variant","shape","size","Medium","propTypes","_pt","string","node","func","isRequired","oneOf"],"sources":["../../src/ProfileButton/ProfileButton.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport {COLORS, IconButton, Size} from '..';\r\nimport {IconButtonContentStyles, IconButtonStyledPrimary} from '../Button/Iconbutton';\r\nimport {NotificationDot} from '../NotificationDot';\r\nimport {BREAKPOINTS, ComponentS, ComponentTextStyle} from '../styles';\r\n\r\nexport type ProfileButtonProps = {\r\n /**\r\n * Optional. The source URL of the profile picture.\r\n */\r\n portraitSrc?: string;\r\n\r\n /**\r\n * Optional. The icon of the profile to be displayed in absence of 'portraitSrc' and 'initials'.\r\n */\r\n icon?: React.ReactNode;\r\n\r\n /**\r\n * Optional. The initials of the user. If provided, these will be displayed in circle in the absence of a profile picture.\r\n */\r\n initials?: string;\r\n\r\n /**\r\n * Required. The handler function to be called when the button is clicked.\r\n */\r\n onClick: (event?: React.MouseEvent<HTMLButtonElement>) => void;\r\n\r\n /**\r\n * Optional. The variant of the notification dot. It can be 'positive' or 'critical'.\r\n */\r\n notificationVariant?: 'positive' | 'critical';\r\n} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'onClick'> ;\r\n\r\nconst PortraitOverlay = styled.div`\r\n width: 100%;\r\n height: 100%;\r\n border-radius: 50%;\r\n background-color: ${props => COLORS.getColor('black', props.theme)};\r\n opacity: 0;\r\n position: absolute;\r\n top: 0px;\r\n left: 0px;\r\n`;\r\n\r\nexport const ProfileButtonContainer = styled.div<{ hideOnLowWidth?: boolean }>`\r\n width: 48px;\r\n height: 48px;\r\n display: inline;\r\n user-select: none;\r\n \r\n ${IconButtonStyledPrimary} {\r\n display: ${props => (props.hideOnLowWidth ? 'none' : 'inline')};\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: inline;\r\n }\r\n\r\n :disabled {\r\n img {\r\n filter: grayscale(100%);\r\n }\r\n\r\n ${IconButtonContentStyles} {\r\n background-color: ${props => COLORS.getColor('neutral_100', props.theme)};\r\n\r\n svg, svg path {\r\n fill: ${props => COLORS.getColor('neutral_300', props.theme)};\r\n }\r\n }\r\n }\r\n\r\n :hover:not(:disabled):not(:active),\r\n &.hover-state {\r\n ${PortraitOverlay} {\r\n opacity: 0.25;\r\n transition: opacity 100ms ease-in-out;\r\n }\r\n }\r\n\r\n :active:not(:disabled),\r\n &.active-state {\r\n ${PortraitOverlay} {\r\n opacity: 0.5;\r\n transition: opacity 0ms ease-in-out;\r\n }\r\n }\r\n }\r\n`;\r\n\r\nconst NotificationContainer = styled.div`\r\n position: absolute;\r\n left: 30px;\r\n bottom: 30px;\r\n`;\r\n\r\nconst ImageWrapper = styled.div`\r\n width: 36px;\r\n height: 36px;\r\n position: relative;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n border-radius: 50%;\r\n object-fit: cover;\r\n }\r\n`;\r\n\r\nconst ProfileButton = React.forwardRef<HTMLButtonElement, ProfileButtonProps>(({\r\n portraitSrc,\r\n icon,\r\n initials,\r\n onClick,\r\n disabled,\r\n notificationVariant,\r\n className,\r\n tabIndex,\r\n ...rest\r\n }, ref) => {\r\n const theme = useTheme();\r\n const renderIcon = () => {\r\n return (\r\n (portraitSrc && (\r\n <ImageWrapper>\r\n <img src={portraitSrc}/>\r\n <PortraitOverlay/>\r\n </ImageWrapper>\r\n )) ||\r\n (initials && (\r\n <ComponentS className=\"initials\" textStyle={ComponentTextStyle.Bold}\r\n color={disabled ? COLORS.getColor('neutral_300', theme) : COLORS.getColor('white', theme)}>\r\n {initials}\r\n </ComponentS>\r\n )) || <>{icon}</>\r\n );\r\n };\r\n\r\n return (\r\n <ProfileButtonContainer>\r\n <IconButton ref={ref}\r\n className={className}\r\n disabled={disabled}\r\n action={onClick}\r\n variant=\"primary\"\r\n tabIndex={tabIndex}\r\n shape=\"circular\"\r\n {...rest}>\r\n {renderIcon()}\r\n {notificationVariant && (\r\n <NotificationContainer>\r\n <NotificationDot size={Size.Medium} variant={notificationVariant}/>\r\n </NotificationContainer>\r\n )}\r\n </IconButton>\r\n </ProfileButtonContainer>\r\n );\r\n});\r\n\r\nexport default ProfileButton;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,7 +11,7 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
|
|
|
11
11
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
12
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
13
|
var React = _interopRequireWildcard(require("react"));
|
|
14
|
-
var _styledComponents =
|
|
14
|
+
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
15
15
|
var _ = require("..");
|
|
16
16
|
var _typography = require("../styles/typography");
|
|
17
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -21,43 +21,79 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
21
21
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
22
22
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
23
23
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
24
|
-
var TextContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n border-radius: 0 8px 8px 0;\n display: flex;\n background: ", ";\n width: 100%;\n\n transition: background 100ms ease-in-out;\n align-items: center;\n\n padding: ", ";\n ", "\n"])),
|
|
24
|
+
var TextContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n border-radius: 0 8px 8px 0;\n display: flex;\n background: ", ";\n width: 100%;\n\n transition: background 100ms ease-in-out;\n align-items: center;\n\n padding: ", ";\n ", "\n"])), function (props) {
|
|
25
|
+
return _.COLORS.getColor('accent1_20', props.theme);
|
|
26
|
+
}, function (props) {
|
|
25
27
|
return props.size === _.Size.Small ? '6px 8px' : props.size === _.Size.Large ? '20px 16px' : '12px 16px';
|
|
26
28
|
}, function (props) {
|
|
27
29
|
return props.size === _.Size.Small ? (0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Regular, null) : props.size === _.Size.Large ? (0, _typography.ComponentLStyling)(_typography.ComponentTextStyle.Regular, null) : (0, _typography.ComponentMStyling)(_typography.ComponentTextStyle.Regular, null);
|
|
28
30
|
});
|
|
29
31
|
var TextWrapper = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])([""])));
|
|
30
|
-
var ButtonContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n border-radius: 8px 0 0 8px;\n display: flex;\n background: ", ";\n\n width: ", ";\n\n transition: background 100ms ease-in-out;\n\n .quiz-button-result-icon {\n height: ", ";\n width: ", ";\n }\n\n .radio-button-icon, .checkbox-icon {\n margin: auto;\n min-width: unset;\n background: transparent;\n\n svg {\n color: ", ";\n }\n\n &:hover {\n background: transparent;\n }\n\n &:active {\n background: transparent;\n }\n }\n\n .small {\n min-width: 32px;\n min-height: 32px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 16px;\n width: 16px;\n }\n }\n }\n\n .medium {\n min-width: 48px;\n min-height: 48px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 24px;\n width: 24px;\n }\n }\n }\n\n .large {\n min-width: 64px;\n min-height: 64px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 32px;\n width: 32px;\n }\n }\n }\n"])),
|
|
32
|
+
var ButtonContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n border-radius: 8px 0 0 8px;\n display: flex;\n background: ", ";\n\n width: ", ";\n\n transition: background 100ms ease-in-out;\n\n .quiz-button-result-icon {\n height: ", ";\n width: ", ";\n }\n\n .radio-button-icon, .checkbox-icon {\n margin: auto;\n min-width: unset;\n background: transparent;\n\n svg {\n color: ", ";\n }\n\n &:hover {\n background: transparent;\n }\n\n &:active {\n background: transparent;\n }\n }\n\n .small {\n min-width: 32px;\n min-height: 32px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 16px;\n width: 16px;\n }\n }\n }\n\n .medium {\n min-width: 48px;\n min-height: 48px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 24px;\n width: 24px;\n }\n }\n }\n\n .large {\n min-width: 64px;\n min-height: 64px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 32px;\n width: 32px;\n }\n }\n }\n"])), function (props) {
|
|
33
|
+
return _.COLORS.getColor('accent1_100', props.theme);
|
|
34
|
+
}, function (props) {
|
|
31
35
|
return props.size === _.Size.Small ? '32px' : props.size === _.Size.Large ? '64px' : '48px';
|
|
32
36
|
}, function (props) {
|
|
33
37
|
return props.size === _.Size.Small ? '16px' : props.size === _.Size.Large ? '32px' : '24px';
|
|
34
38
|
}, function (props) {
|
|
35
39
|
return props.size === _.Size.Small ? '32px' : props.size === _.Size.Large ? '64px' : '48px';
|
|
36
|
-
},
|
|
40
|
+
}, function (props) {
|
|
41
|
+
return _.COLORS.getColor('accent1_600', props.theme);
|
|
42
|
+
});
|
|
37
43
|
var OptionContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n cursor: pointer;\n max-width: 65ch; \n word-break: break-word;\n\n min-height: ", ";\n margin-bottom: ", ";\n\n &.selected {\n ", " {\n background: ", ";\n }\n ", " {\n background: ", ";\n }\n }\n \n &.disabled {\n cursor: not-allowed;\n \n ", " {\n pointer-events: none;\n background: ", ";\n }\n ", " {\n pointer-events: none;\n background: ", ";\n color: ", ";\n }\n\n .radio-button-icon, .checkbox-icon {\n background: transparent;\n }\n }\n\n &.correct {\n ", " { \n background: ", ";\n }\n ", " {\n background: ", ";\n svg {\n margin: auto;\n }\n }\n }\n\n &.incorrect {\n ", " { \n background: ", ";\n }\n ", " {\n background: ", ";\n svg {\n margin: auto;\n }\n }\n }\n\n &.partial {\n ", " { \n background: ", ";\n }\n ", " {\n background: ", ";\n svg {\n margin: auto;\n }\n }\n }\n\n &:focus,\n &.focus-state {\n ", "\n }\n\n &:hover,\n &.hover-state {\n .radio-button-icon, .checkbox-icon {\n background: transparent;\n }\n }\n\n &:active,\n &.active-state {\n .radio-button-icon, .checkbox-icon {\n background: transparent;\n }\n }\n\n &:hover:not(.disabled):not(.result),\n &.hover-state {\n ", " {\n background: ", ";\n }\n ", " {\n background: ", ";\n }\n \n .radio-button-icon, .checkbox-icon {\n background: transparent;\n svg {\n color: ", ";\n }\n }\n }\n\n &:active:not(.disabled):not(.result),\n &.active-state {\n ", " {\n background: ", ";\n transition: none;\n }\n ", " {\n background: ", ";\n transition: none;\n }\n\n .radio-button-icon, .checkbox-icon {\n background: transparent;\n svg {\n color: ", ";\n }\n }\n }\n"])), function (props) {
|
|
38
44
|
return props.size === _.Size.Small ? '32px' : props.size === _.Size.Large ? '64px' : '48px';
|
|
39
45
|
}, function (props) {
|
|
40
46
|
return props.size === _.Size.Small ? '16px' : props.size === _.Size.Large ? '32px' : '24px';
|
|
41
|
-
}, TextContainer,
|
|
42
|
-
return
|
|
43
|
-
},
|
|
44
|
-
return
|
|
45
|
-
},
|
|
46
|
-
|
|
47
|
+
}, TextContainer, function (props) {
|
|
48
|
+
return _.COLORS.getColor('accent1_100', props.theme);
|
|
49
|
+
}, ButtonContainer, function (props) {
|
|
50
|
+
return _.COLORS.getColor('accent1_200', props.theme);
|
|
51
|
+
}, ButtonContainer, function (props) {
|
|
52
|
+
return _.COLORS.getColor('neutral_100', props.theme);
|
|
53
|
+
}, TextContainer, function (props) {
|
|
54
|
+
return _.COLORS.getColor('neutral_20', props.theme);
|
|
55
|
+
}, function (props) {
|
|
56
|
+
return _.COLORS.getColor('neutral_300', props.theme);
|
|
57
|
+
}, TextContainer, function (props) {
|
|
58
|
+
return _.COLORS.getColor('correct_20', props.theme);
|
|
59
|
+
}, ButtonContainer, function (props) {
|
|
60
|
+
return _.COLORS.getColor('correct_400', props.theme);
|
|
61
|
+
}, TextContainer, function (props) {
|
|
62
|
+
return _.COLORS.getColor('critical_20', props.theme);
|
|
63
|
+
}, ButtonContainer, function (props) {
|
|
64
|
+
return _.COLORS.getColor('critical_500', props.theme);
|
|
65
|
+
}, TextContainer, function (props) {
|
|
66
|
+
return _.COLORS.getColor('warning_20', props.theme);
|
|
67
|
+
}, ButtonContainer, function (props) {
|
|
68
|
+
return _.COLORS.getColor('warning_400', props.theme);
|
|
69
|
+
}, _.focusStyles, ButtonContainer, function (props) {
|
|
70
|
+
return _.COLORS.getColor('accent1_300', props.theme);
|
|
71
|
+
}, TextContainer, function (props) {
|
|
72
|
+
return props.isSelected ? _.COLORS.getColor('accent1_200', props.theme) : _.COLORS.getColor('accent1_100', props.theme);
|
|
73
|
+
}, function (props) {
|
|
74
|
+
return _.COLORS.getColor('accent1_700', props.theme);
|
|
75
|
+
}, ButtonContainer, function (props) {
|
|
76
|
+
return _.COLORS.getColor('accent1_400', props.theme);
|
|
77
|
+
}, TextContainer, function (props) {
|
|
78
|
+
return props.isSelected ? _.COLORS.getColor('accent1_300', props.theme) : _.COLORS.getColor('accent1_200', props.theme);
|
|
79
|
+
}, function (props) {
|
|
80
|
+
return _.COLORS.getColor('accent1_800', props.theme);
|
|
81
|
+
});
|
|
82
|
+
var renderResultContent = function renderResultContent(resultType, theme) {
|
|
47
83
|
switch (resultType) {
|
|
48
84
|
case 'correct':
|
|
49
85
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_.SystemIcons.CheckMark, {
|
|
50
|
-
color: _.COLORS.white,
|
|
86
|
+
color: _.COLORS.getColor('white', theme),
|
|
51
87
|
className: 'quiz-button-result-icon'
|
|
52
88
|
});
|
|
53
89
|
case 'incorrect':
|
|
54
90
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_.SystemIcons.Close, {
|
|
55
|
-
color: _.COLORS.white,
|
|
91
|
+
color: _.COLORS.getColor('white', theme),
|
|
56
92
|
className: 'quiz-button-result-icon'
|
|
57
93
|
});
|
|
58
94
|
default:
|
|
59
95
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_.SystemIcons.Close, {
|
|
60
|
-
color: _.COLORS.white,
|
|
96
|
+
color: _.COLORS.getColor('white', theme),
|
|
61
97
|
className: 'quiz-button-result-icon'
|
|
62
98
|
});
|
|
63
99
|
}
|
|
@@ -76,6 +112,7 @@ var QuizButton = function QuizButton(_ref) {
|
|
|
76
112
|
_ref$size = _ref.size,
|
|
77
113
|
size = _ref$size === void 0 ? _.Size.Medium : _ref$size,
|
|
78
114
|
rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
115
|
+
var theme = (0, _styledComponents.useTheme)();
|
|
79
116
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(OptionContainer, _objectSpread(_objectSpread({
|
|
80
117
|
onClick: onClick,
|
|
81
118
|
isSelected: selected,
|
|
@@ -91,7 +128,7 @@ var QuizButton = function QuizButton(_ref) {
|
|
|
91
128
|
"data-testid": 'btnContainer',
|
|
92
129
|
className: 'quiz-button-icon',
|
|
93
130
|
size: size,
|
|
94
|
-
children: resultType ? renderResultContent(resultType) : type === 'radio' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_.RadioButton, {
|
|
131
|
+
children: resultType ? renderResultContent(resultType, theme) : type === 'radio' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_.RadioButton, {
|
|
95
132
|
selected: selected,
|
|
96
133
|
disabled: disabled,
|
|
97
134
|
size: size,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuizButton.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_","_typography","_jsxRuntime","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","TextContainer","styled","div","_taggedTemplateLiteral2","COLORS","accent1_20","props","size","Size","Small","Large","ComponentSStyling","ComponentTextStyle","Regular","ComponentLStyling","ComponentMStyling","TextWrapper","ButtonContainer","accent1_100","accent1_600","OptionContainer","accent1_200","neutral_100","neutral_20","neutral_300","correct_20","correct_400","critical_20","critical_500","warning_20","warning_400","focusStyles","accent1_300","isSelected","accent1_700","accent1_400","accent1_800","renderResultContent","resultType","jsx","SystemIcons","CheckMark","color","white","className","Close","QuizButton","_ref","text","type","onClick","id","_ref$selected","selected","_ref$disabled","disabled","_ref$size","Medium","rest","_objectWithoutProperties2","jsxs","tabIndex","onMouseDown","defaultOnMouseDownHandler","concat","role","children","RadioButton","tabIndexVal","select","Checkbox","propTypes","_propTypes","oneOf","string","isRequired","func","bool","_default","exports"],"sources":["../../src/QuizButton/QuizButton.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport {Checkbox, COLORS, defaultOnMouseDownHandler, focusStyles, RadioButton, Size, SystemIcons} from '..';\r\nimport { ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles/typography';\r\n\r\nconst TextContainer = styled.div<{size: Size}>`\r\n border-radius: 0 8px 8px 0;\r\n display: flex;\r\n background: ${COLORS.accent1_20};\r\n width: 100%;\r\n\r\n transition: background 100ms ease-in-out;\r\n align-items: center;\r\n\r\n padding: ${props=>props.size===Size.Small?'6px 8px':(props.size===Size.Large?'20px 16px':'12px 16px')};\r\n ${props=>props.size===Size.Small ? ComponentSStyling(ComponentTextStyle.Regular,null) : (props.size===Size.Large ? ComponentLStyling(ComponentTextStyle.Regular,null) : ComponentMStyling(ComponentTextStyle.Regular,null))}\r\n`;\r\n\r\nconst TextWrapper = styled.div<{size:Size}>``;\r\n\r\nconst ButtonContainer = styled.div<{size: Size}>`\r\n border-radius: 8px 0 0 8px;\r\n display: flex;\r\n background: ${COLORS.accent1_100};\r\n\r\n width: ${props=>props.size===Size.Small?'32px':(props.size===Size.Large?'64px':'48px')};\r\n\r\n transition: background 100ms ease-in-out;\r\n\r\n .quiz-button-result-icon {\r\n height: ${props=>props.size===Size.Small?'16px':(props.size===Size.Large?'32px':'24px')};\r\n width: ${props=>props.size===Size.Small?'32px':(props.size===Size.Large?'64px':'48px')};\r\n }\r\n\r\n .radio-button-icon, .checkbox-icon {\r\n margin: auto;\r\n min-width: unset;\r\n background: transparent;\r\n\r\n svg {\r\n color: ${COLORS.accent1_600};\r\n }\r\n\r\n &:hover {\r\n background: transparent;\r\n }\r\n\r\n &:active {\r\n background: transparent;\r\n }\r\n }\r\n\r\n .small {\r\n min-width: 32px;\r\n min-height: 32px;\r\n .radio-button-icon, .checkbox-icon {\r\n svg {\r\n height: 16px;\r\n width: 16px;\r\n }\r\n }\r\n }\r\n\r\n .medium {\r\n min-width: 48px;\r\n min-height: 48px;\r\n .radio-button-icon, .checkbox-icon {\r\n svg {\r\n height: 24px;\r\n width: 24px;\r\n }\r\n }\r\n }\r\n\r\n .large {\r\n min-width: 64px;\r\n min-height: 64px;\r\n .radio-button-icon, .checkbox-icon {\r\n svg {\r\n height: 32px;\r\n width: 32px;\r\n }\r\n }\r\n }\r\n`;\r\n\r\nconst OptionContainer = styled.div<{isSelected:boolean, size:Size}>`\r\n display: flex;\r\n flex-direction: row;\r\n cursor: pointer;\r\n max-width: 65ch; \r\n word-break: break-word;\r\n\r\n min-height: ${props=>props.size===Size.Small?'32px':(props.size===Size.Large?'64px':'48px')};\r\n margin-bottom: ${props=>props.size===Size.Small?'16px':(props.size===Size.Large?'32px':'24px')};\r\n\r\n &.selected {\r\n ${TextContainer} {\r\n background: ${COLORS.accent1_100};\r\n }\r\n ${ButtonContainer} {\r\n background: ${COLORS.accent1_200};\r\n }\r\n }\r\n \r\n &.disabled {\r\n cursor: not-allowed;\r\n \r\n ${ButtonContainer} {\r\n pointer-events: none;\r\n background: ${COLORS.neutral_100};\r\n }\r\n ${TextContainer} {\r\n pointer-events: none;\r\n background: ${COLORS.neutral_20};\r\n color: ${COLORS.neutral_300};\r\n }\r\n\r\n .radio-button-icon, .checkbox-icon {\r\n background: transparent;\r\n }\r\n }\r\n\r\n &.correct {\r\n ${TextContainer} { \r\n background: ${COLORS.correct_20};\r\n }\r\n ${ButtonContainer} {\r\n background: ${COLORS.correct_400};\r\n svg {\r\n margin: auto;\r\n }\r\n }\r\n }\r\n\r\n &.incorrect {\r\n ${TextContainer} { \r\n background: ${COLORS.critical_20};\r\n }\r\n ${ButtonContainer} {\r\n background: ${COLORS.critical_500};\r\n svg {\r\n margin: auto;\r\n }\r\n }\r\n }\r\n\r\n &.partial {\r\n ${TextContainer} { \r\n background: ${COLORS.warning_20};\r\n }\r\n ${ButtonContainer} {\r\n background: ${COLORS.warning_400};\r\n svg {\r\n margin: auto;\r\n }\r\n }\r\n }\r\n\r\n &:focus,\r\n &.focus-state {\r\n ${focusStyles}\r\n }\r\n\r\n &:hover,\r\n &.hover-state {\r\n .radio-button-icon, .checkbox-icon {\r\n background: transparent;\r\n }\r\n }\r\n\r\n &:active,\r\n &.active-state {\r\n .radio-button-icon, .checkbox-icon {\r\n background: transparent;\r\n }\r\n }\r\n\r\n &:hover:not(.disabled):not(.result),\r\n &.hover-state {\r\n ${ButtonContainer} {\r\n background: ${COLORS.accent1_300};\r\n }\r\n ${TextContainer} {\r\n background: ${props=>props.isSelected ? COLORS.accent1_200 : COLORS.accent1_100};\r\n }\r\n \r\n .radio-button-icon, .checkbox-icon {\r\n background: transparent;\r\n svg {\r\n color: ${COLORS.accent1_700};\r\n }\r\n }\r\n }\r\n\r\n &:active:not(.disabled):not(.result),\r\n &.active-state {\r\n ${ButtonContainer} {\r\n background: ${COLORS.accent1_400};\r\n transition: none;\r\n }\r\n ${TextContainer} {\r\n background: ${props=>props.isSelected ? COLORS.accent1_300 : COLORS.accent1_200};\r\n transition: none;\r\n }\r\n\r\n .radio-button-icon, .checkbox-icon {\r\n background: transparent;\r\n svg {\r\n color: ${COLORS.accent1_800};\r\n }\r\n }\r\n }\r\n`;\r\n\r\nconst renderResultContent = (resultType: string) => {\r\n switch(resultType){\r\n case 'correct' : return <SystemIcons.CheckMark color={COLORS.white} className={'quiz-button-result-icon'}/>;\r\n\r\n case 'incorrect' : return <SystemIcons.Close color={COLORS.white} className={'quiz-button-result-icon'}/>;\r\n\r\n default : return <SystemIcons.Close color={COLORS.white} className={'quiz-button-result-icon'}/>;\r\n }\r\n};\r\n\r\nexport type QuizButtonProps = {\r\n /**\r\n * Optional. The result type of the quiz button. Can be 'correct', 'incorrect', or 'partial'.\r\n */\r\n resultType?: 'correct' | 'incorrect' | 'partial';\r\n\r\n /**\r\n * Required. The text to be displayed on the quiz button.\r\n */\r\n text: string;\r\n\r\n /**\r\n * Optional. A function to be called when the quiz button is clicked.\r\n */\r\n onClick?: (arg:any)=>void;\r\n\r\n /**\r\n * Required. The ID of the quiz button.\r\n */\r\n id: string;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the quiz button is selected.\r\n */\r\n selected?: boolean;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the quiz button is disabled.\r\n */\r\n disabled?: boolean;\r\n\r\n /**\r\n * Optional. The size of the quiz button. Can be 'Small', 'Medium', or 'Large'.\r\n */\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n\r\n /**\r\n * Required. The type of the quiz button. Can be 'radio' or 'checkbox'.\r\n */\r\n type: 'radio' | 'checkbox';\r\n} & Omit<React.HTMLAttributes<HTMLDivElement>, 'onClick' | 'id' | 'tabIndex' | 'onMouseDown'>\r\n\r\nconst QuizButton: React.FunctionComponent<QuizButtonProps> = ({\r\n text,\r\n type,\r\n onClick,\r\n resultType,\r\n id,\r\n className,\r\n selected = false,\r\n disabled = false,\r\n size = Size.Medium,\r\n ...rest\r\n }) => {\r\n return ( \r\n <OptionContainer\r\n onClick={onClick}\r\n isSelected={selected}\r\n tabIndex={(disabled || resultType) ? -1 : 0}\r\n onMouseDown={defaultOnMouseDownHandler}\r\n size={size}\r\n className={'quiz-button '.concat(selected ? ' selected' : '')\r\n .concat(disabled ? ' disabled' : '')\r\n .concat(resultType ? ' result ' + resultType : '')\r\n .concat(className ? ' ' + className : '')}\r\n data-testid={'container'}\r\n aria-checked={selected}\r\n role={type === 'radio'? 'radio' : 'checkbox'}\r\n {...rest}>\r\n <ButtonContainer data-testid={'btnContainer'} className={'quiz-button-icon'} size={size}>\r\n {\r\n resultType ? renderResultContent(resultType) : (\r\n type==='radio' ? <RadioButton selected={selected} disabled={disabled} size={size} tabIndexVal={-1}\r\n select={()=>{}} id={id}/> : <Checkbox selected={selected} disabled={disabled} size={size} tabIndexVal={-1}\r\n select={()=>{}} id={id}/>\r\n )\r\n }\r\n </ButtonContainer>\r\n\r\n <TextContainer data-testid={'txtContainer'} className={'quiz-button-text'} size={size}>\r\n <TextWrapper size={size}>\r\n {text}\r\n </TextWrapper>\r\n </TextContainer>\r\n </OptionContainer>\r\n );\r\n};\r\n\r\nexport default QuizButton;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"QuizButton.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_","_typography","_jsxRuntime","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","TextContainer","styled","div","_taggedTemplateLiteral2","props","COLORS","getColor","theme","size","Size","Small","Large","ComponentSStyling","ComponentTextStyle","Regular","ComponentLStyling","ComponentMStyling","TextWrapper","ButtonContainer","OptionContainer","focusStyles","isSelected","renderResultContent","resultType","jsx","SystemIcons","CheckMark","color","className","Close","QuizButton","_ref","text","type","onClick","id","_ref$selected","selected","_ref$disabled","disabled","_ref$size","Medium","rest","_objectWithoutProperties2","useTheme","jsxs","tabIndex","onMouseDown","defaultOnMouseDownHandler","concat","role","children","RadioButton","tabIndexVal","select","Checkbox","propTypes","_propTypes","oneOf","string","isRequired","func","bool","_default","exports"],"sources":["../../src/QuizButton/QuizButton.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport {Checkbox, COLORS, defaultOnMouseDownHandler, focusStyles, RadioButton, Size, SystemIcons} from '..';\r\nimport { ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles/typography';\r\n\r\nconst TextContainer = styled.div<{size: Size}>`\r\n border-radius: 0 8px 8px 0;\r\n display: flex;\r\n background: ${props => COLORS.getColor('accent1_20', props.theme)};\r\n width: 100%;\r\n\r\n transition: background 100ms ease-in-out;\r\n align-items: center;\r\n\r\n padding: ${props=>props.size===Size.Small?'6px 8px':(props.size===Size.Large?'20px 16px':'12px 16px')};\r\n ${props=>props.size===Size.Small ? ComponentSStyling(ComponentTextStyle.Regular,null) : (props.size===Size.Large ? ComponentLStyling(ComponentTextStyle.Regular,null) : ComponentMStyling(ComponentTextStyle.Regular,null))}\r\n`;\r\n\r\nconst TextWrapper = styled.div<{size:Size}>``;\r\n\r\nconst ButtonContainer = styled.div<{size: Size}>`\r\n border-radius: 8px 0 0 8px;\r\n display: flex;\r\n background: ${props => COLORS.getColor('accent1_100', props.theme)};\r\n\r\n width: ${props=>props.size===Size.Small?'32px':(props.size===Size.Large?'64px':'48px')};\r\n\r\n transition: background 100ms ease-in-out;\r\n\r\n .quiz-button-result-icon {\r\n height: ${props=>props.size===Size.Small?'16px':(props.size===Size.Large?'32px':'24px')};\r\n width: ${props=>props.size===Size.Small?'32px':(props.size===Size.Large?'64px':'48px')};\r\n }\r\n\r\n .radio-button-icon, .checkbox-icon {\r\n margin: auto;\r\n min-width: unset;\r\n background: transparent;\r\n\r\n svg {\r\n color: ${props => COLORS.getColor('accent1_600', props.theme)};\r\n }\r\n\r\n &:hover {\r\n background: transparent;\r\n }\r\n\r\n &:active {\r\n background: transparent;\r\n }\r\n }\r\n\r\n .small {\r\n min-width: 32px;\r\n min-height: 32px;\r\n .radio-button-icon, .checkbox-icon {\r\n svg {\r\n height: 16px;\r\n width: 16px;\r\n }\r\n }\r\n }\r\n\r\n .medium {\r\n min-width: 48px;\r\n min-height: 48px;\r\n .radio-button-icon, .checkbox-icon {\r\n svg {\r\n height: 24px;\r\n width: 24px;\r\n }\r\n }\r\n }\r\n\r\n .large {\r\n min-width: 64px;\r\n min-height: 64px;\r\n .radio-button-icon, .checkbox-icon {\r\n svg {\r\n height: 32px;\r\n width: 32px;\r\n }\r\n }\r\n }\r\n`;\r\n\r\nconst OptionContainer = styled.div<{isSelected:boolean, size:Size}>`\r\n display: flex;\r\n flex-direction: row;\r\n cursor: pointer;\r\n max-width: 65ch; \r\n word-break: break-word;\r\n\r\n min-height: ${props=>props.size===Size.Small?'32px':(props.size===Size.Large?'64px':'48px')};\r\n margin-bottom: ${props=>props.size===Size.Small?'16px':(props.size===Size.Large?'32px':'24px')};\r\n\r\n &.selected {\r\n ${TextContainer} {\r\n background: ${props => COLORS.getColor('accent1_100', props.theme)};\r\n }\r\n ${ButtonContainer} {\r\n background: ${props => COLORS.getColor('accent1_200', props.theme)};\r\n }\r\n }\r\n \r\n &.disabled {\r\n cursor: not-allowed;\r\n \r\n ${ButtonContainer} {\r\n pointer-events: none;\r\n background: ${props => COLORS.getColor('neutral_100', props.theme)};\r\n }\r\n ${TextContainer} {\r\n pointer-events: none;\r\n background: ${props => COLORS.getColor('neutral_20', props.theme)};\r\n color: ${props => COLORS.getColor('neutral_300', props.theme)};\r\n }\r\n\r\n .radio-button-icon, .checkbox-icon {\r\n background: transparent;\r\n }\r\n }\r\n\r\n &.correct {\r\n ${TextContainer} { \r\n background: ${props => COLORS.getColor('correct_20', props.theme)};\r\n }\r\n ${ButtonContainer} {\r\n background: ${props => COLORS.getColor('correct_400', props.theme)};\r\n svg {\r\n margin: auto;\r\n }\r\n }\r\n }\r\n\r\n &.incorrect {\r\n ${TextContainer} { \r\n background: ${props => COLORS.getColor('critical_20', props.theme)};\r\n }\r\n ${ButtonContainer} {\r\n background: ${props => COLORS.getColor('critical_500', props.theme)};\r\n svg {\r\n margin: auto;\r\n }\r\n }\r\n }\r\n\r\n &.partial {\r\n ${TextContainer} { \r\n background: ${props => COLORS.getColor('warning_20', props.theme)};\r\n }\r\n ${ButtonContainer} {\r\n background: ${props => COLORS.getColor('warning_400', props.theme)};\r\n svg {\r\n margin: auto;\r\n }\r\n }\r\n }\r\n\r\n &:focus,\r\n &.focus-state {\r\n ${focusStyles}\r\n }\r\n\r\n &:hover,\r\n &.hover-state {\r\n .radio-button-icon, .checkbox-icon {\r\n background: transparent;\r\n }\r\n }\r\n\r\n &:active,\r\n &.active-state {\r\n .radio-button-icon, .checkbox-icon {\r\n background: transparent;\r\n }\r\n }\r\n\r\n &:hover:not(.disabled):not(.result),\r\n &.hover-state {\r\n ${ButtonContainer} {\r\n background: ${props => COLORS.getColor('accent1_300', props.theme)};\r\n }\r\n ${TextContainer} {\r\n background: ${props=>props.isSelected ? COLORS.getColor('accent1_200', props.theme) : COLORS.getColor('accent1_100', props.theme)};\r\n }\r\n \r\n .radio-button-icon, .checkbox-icon {\r\n background: transparent;\r\n svg {\r\n color: ${props => COLORS.getColor('accent1_700', props.theme)};\r\n }\r\n }\r\n }\r\n\r\n &:active:not(.disabled):not(.result),\r\n &.active-state {\r\n ${ButtonContainer} {\r\n background: ${props => COLORS.getColor('accent1_400', props.theme)};\r\n transition: none;\r\n }\r\n ${TextContainer} {\r\n background: ${props=>props.isSelected ? COLORS.getColor('accent1_300', props.theme) : COLORS.getColor('accent1_200', props.theme)};\r\n transition: none;\r\n }\r\n\r\n .radio-button-icon, .checkbox-icon {\r\n background: transparent;\r\n svg {\r\n color: ${props => COLORS.getColor('accent1_800', props.theme)};\r\n }\r\n }\r\n }\r\n`;\r\n\r\nconst renderResultContent = (resultType: string, theme: any) => {\r\n switch(resultType){\r\n case 'correct' : return <SystemIcons.CheckMark color={COLORS.getColor('white', theme)} className={'quiz-button-result-icon'}/>;\r\n\r\n case 'incorrect' : return <SystemIcons.Close color={COLORS.getColor('white', theme)} className={'quiz-button-result-icon'}/>;\r\n\r\n default : return <SystemIcons.Close color={COLORS.getColor('white', theme)} className={'quiz-button-result-icon'}/>;\r\n }\r\n};\r\n\r\nexport type QuizButtonProps = {\r\n /**\r\n * Optional. The result type of the quiz button. Can be 'correct', 'incorrect', or 'partial'.\r\n */\r\n resultType?: 'correct' | 'incorrect' | 'partial';\r\n\r\n /**\r\n * Required. The text to be displayed on the quiz button.\r\n */\r\n text: string;\r\n\r\n /**\r\n * Optional. A function to be called when the quiz button is clicked.\r\n */\r\n onClick?: (arg:any)=>void;\r\n\r\n /**\r\n * Required. The ID of the quiz button.\r\n */\r\n id: string;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the quiz button is selected.\r\n */\r\n selected?: boolean;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the quiz button is disabled.\r\n */\r\n disabled?: boolean;\r\n\r\n /**\r\n * Optional. The size of the quiz button. Can be 'Small', 'Medium', or 'Large'.\r\n */\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n\r\n /**\r\n * Required. The type of the quiz button. Can be 'radio' or 'checkbox'.\r\n */\r\n type: 'radio' | 'checkbox';\r\n} & Omit<React.HTMLAttributes<HTMLDivElement>, 'onClick' | 'id' | 'tabIndex' | 'onMouseDown'>\r\n\r\nconst QuizButton: React.FunctionComponent<QuizButtonProps> = ({\r\n text,\r\n type,\r\n onClick,\r\n resultType,\r\n id,\r\n className,\r\n selected = false,\r\n disabled = false,\r\n size = Size.Medium,\r\n ...rest\r\n }) => {\r\n\r\n const theme = useTheme();\r\n return ( \r\n <OptionContainer\r\n onClick={onClick}\r\n isSelected={selected}\r\n tabIndex={(disabled || resultType) ? -1 : 0}\r\n onMouseDown={defaultOnMouseDownHandler}\r\n size={size}\r\n className={'quiz-button '.concat(selected ? ' selected' : '')\r\n .concat(disabled ? ' disabled' : '')\r\n .concat(resultType ? ' result ' + resultType : '')\r\n .concat(className ? ' ' + className : '')}\r\n data-testid={'container'}\r\n aria-checked={selected}\r\n role={type === 'radio'? 'radio' : 'checkbox'}\r\n {...rest}>\r\n <ButtonContainer data-testid={'btnContainer'} className={'quiz-button-icon'} size={size}>\r\n {\r\n resultType ? renderResultContent(resultType, theme) : (\r\n type==='radio' ? <RadioButton selected={selected} disabled={disabled} size={size} tabIndexVal={-1}\r\n select={()=>{}} id={id}/> : <Checkbox selected={selected} disabled={disabled} size={size} tabIndexVal={-1}\r\n select={()=>{}} id={id}/>\r\n )\r\n }\r\n </ButtonContainer>\r\n\r\n <TextContainer data-testid={'txtContainer'} className={'quiz-button-text'} size={size}>\r\n <TextWrapper size={size}>\r\n {text}\r\n </TextWrapper>\r\n </TextContainer>\r\n </OptionContainer>\r\n );\r\n};\r\n\r\nexport default QuizButton;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,48 +7,84 @@ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
|
7
7
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
8
8
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
9
9
|
import * as React from 'react';
|
|
10
|
-
import styled from 'styled-components';
|
|
10
|
+
import styled, { useTheme } from 'styled-components';
|
|
11
11
|
import { Checkbox, COLORS, defaultOnMouseDownHandler, focusStyles, RadioButton, Size, SystemIcons } from '..';
|
|
12
12
|
import { ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles/typography';
|
|
13
13
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
14
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
15
|
-
var TextContainer = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n border-radius: 0 8px 8px 0;\n display: flex;\n background: ", ";\n width: 100%;\n\n transition: background 100ms ease-in-out;\n align-items: center;\n\n padding: ", ";\n ", "\n"])),
|
|
15
|
+
var TextContainer = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n border-radius: 0 8px 8px 0;\n display: flex;\n background: ", ";\n width: 100%;\n\n transition: background 100ms ease-in-out;\n align-items: center;\n\n padding: ", ";\n ", "\n"])), function (props) {
|
|
16
|
+
return COLORS.getColor('accent1_20', props.theme);
|
|
17
|
+
}, function (props) {
|
|
16
18
|
return props.size === Size.Small ? '6px 8px' : props.size === Size.Large ? '20px 16px' : '12px 16px';
|
|
17
19
|
}, function (props) {
|
|
18
20
|
return props.size === Size.Small ? ComponentSStyling(ComponentTextStyle.Regular, null) : props.size === Size.Large ? ComponentLStyling(ComponentTextStyle.Regular, null) : ComponentMStyling(ComponentTextStyle.Regular, null);
|
|
19
21
|
});
|
|
20
22
|
var TextWrapper = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([""])));
|
|
21
|
-
var ButtonContainer = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n border-radius: 8px 0 0 8px;\n display: flex;\n background: ", ";\n\n width: ", ";\n\n transition: background 100ms ease-in-out;\n\n .quiz-button-result-icon {\n height: ", ";\n width: ", ";\n }\n\n .radio-button-icon, .checkbox-icon {\n margin: auto;\n min-width: unset;\n background: transparent;\n\n svg {\n color: ", ";\n }\n\n &:hover {\n background: transparent;\n }\n\n &:active {\n background: transparent;\n }\n }\n\n .small {\n min-width: 32px;\n min-height: 32px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 16px;\n width: 16px;\n }\n }\n }\n\n .medium {\n min-width: 48px;\n min-height: 48px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 24px;\n width: 24px;\n }\n }\n }\n\n .large {\n min-width: 64px;\n min-height: 64px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 32px;\n width: 32px;\n }\n }\n }\n"])),
|
|
23
|
+
var ButtonContainer = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n border-radius: 8px 0 0 8px;\n display: flex;\n background: ", ";\n\n width: ", ";\n\n transition: background 100ms ease-in-out;\n\n .quiz-button-result-icon {\n height: ", ";\n width: ", ";\n }\n\n .radio-button-icon, .checkbox-icon {\n margin: auto;\n min-width: unset;\n background: transparent;\n\n svg {\n color: ", ";\n }\n\n &:hover {\n background: transparent;\n }\n\n &:active {\n background: transparent;\n }\n }\n\n .small {\n min-width: 32px;\n min-height: 32px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 16px;\n width: 16px;\n }\n }\n }\n\n .medium {\n min-width: 48px;\n min-height: 48px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 24px;\n width: 24px;\n }\n }\n }\n\n .large {\n min-width: 64px;\n min-height: 64px;\n .radio-button-icon, .checkbox-icon {\n svg {\n height: 32px;\n width: 32px;\n }\n }\n }\n"])), function (props) {
|
|
24
|
+
return COLORS.getColor('accent1_100', props.theme);
|
|
25
|
+
}, function (props) {
|
|
22
26
|
return props.size === Size.Small ? '32px' : props.size === Size.Large ? '64px' : '48px';
|
|
23
27
|
}, function (props) {
|
|
24
28
|
return props.size === Size.Small ? '16px' : props.size === Size.Large ? '32px' : '24px';
|
|
25
29
|
}, function (props) {
|
|
26
30
|
return props.size === Size.Small ? '32px' : props.size === Size.Large ? '64px' : '48px';
|
|
27
|
-
},
|
|
31
|
+
}, function (props) {
|
|
32
|
+
return COLORS.getColor('accent1_600', props.theme);
|
|
33
|
+
});
|
|
28
34
|
var OptionContainer = styled.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n cursor: pointer;\n max-width: 65ch; \n word-break: break-word;\n\n min-height: ", ";\n margin-bottom: ", ";\n\n &.selected {\n ", " {\n background: ", ";\n }\n ", " {\n background: ", ";\n }\n }\n \n &.disabled {\n cursor: not-allowed;\n \n ", " {\n pointer-events: none;\n background: ", ";\n }\n ", " {\n pointer-events: none;\n background: ", ";\n color: ", ";\n }\n\n .radio-button-icon, .checkbox-icon {\n background: transparent;\n }\n }\n\n &.correct {\n ", " { \n background: ", ";\n }\n ", " {\n background: ", ";\n svg {\n margin: auto;\n }\n }\n }\n\n &.incorrect {\n ", " { \n background: ", ";\n }\n ", " {\n background: ", ";\n svg {\n margin: auto;\n }\n }\n }\n\n &.partial {\n ", " { \n background: ", ";\n }\n ", " {\n background: ", ";\n svg {\n margin: auto;\n }\n }\n }\n\n &:focus,\n &.focus-state {\n ", "\n }\n\n &:hover,\n &.hover-state {\n .radio-button-icon, .checkbox-icon {\n background: transparent;\n }\n }\n\n &:active,\n &.active-state {\n .radio-button-icon, .checkbox-icon {\n background: transparent;\n }\n }\n\n &:hover:not(.disabled):not(.result),\n &.hover-state {\n ", " {\n background: ", ";\n }\n ", " {\n background: ", ";\n }\n \n .radio-button-icon, .checkbox-icon {\n background: transparent;\n svg {\n color: ", ";\n }\n }\n }\n\n &:active:not(.disabled):not(.result),\n &.active-state {\n ", " {\n background: ", ";\n transition: none;\n }\n ", " {\n background: ", ";\n transition: none;\n }\n\n .radio-button-icon, .checkbox-icon {\n background: transparent;\n svg {\n color: ", ";\n }\n }\n }\n"])), function (props) {
|
|
29
35
|
return props.size === Size.Small ? '32px' : props.size === Size.Large ? '64px' : '48px';
|
|
30
36
|
}, function (props) {
|
|
31
37
|
return props.size === Size.Small ? '16px' : props.size === Size.Large ? '32px' : '24px';
|
|
32
|
-
}, TextContainer,
|
|
33
|
-
return
|
|
34
|
-
},
|
|
35
|
-
return
|
|
36
|
-
},
|
|
37
|
-
|
|
38
|
+
}, TextContainer, function (props) {
|
|
39
|
+
return COLORS.getColor('accent1_100', props.theme);
|
|
40
|
+
}, ButtonContainer, function (props) {
|
|
41
|
+
return COLORS.getColor('accent1_200', props.theme);
|
|
42
|
+
}, ButtonContainer, function (props) {
|
|
43
|
+
return COLORS.getColor('neutral_100', props.theme);
|
|
44
|
+
}, TextContainer, function (props) {
|
|
45
|
+
return COLORS.getColor('neutral_20', props.theme);
|
|
46
|
+
}, function (props) {
|
|
47
|
+
return COLORS.getColor('neutral_300', props.theme);
|
|
48
|
+
}, TextContainer, function (props) {
|
|
49
|
+
return COLORS.getColor('correct_20', props.theme);
|
|
50
|
+
}, ButtonContainer, function (props) {
|
|
51
|
+
return COLORS.getColor('correct_400', props.theme);
|
|
52
|
+
}, TextContainer, function (props) {
|
|
53
|
+
return COLORS.getColor('critical_20', props.theme);
|
|
54
|
+
}, ButtonContainer, function (props) {
|
|
55
|
+
return COLORS.getColor('critical_500', props.theme);
|
|
56
|
+
}, TextContainer, function (props) {
|
|
57
|
+
return COLORS.getColor('warning_20', props.theme);
|
|
58
|
+
}, ButtonContainer, function (props) {
|
|
59
|
+
return COLORS.getColor('warning_400', props.theme);
|
|
60
|
+
}, focusStyles, ButtonContainer, function (props) {
|
|
61
|
+
return COLORS.getColor('accent1_300', props.theme);
|
|
62
|
+
}, TextContainer, function (props) {
|
|
63
|
+
return props.isSelected ? COLORS.getColor('accent1_200', props.theme) : COLORS.getColor('accent1_100', props.theme);
|
|
64
|
+
}, function (props) {
|
|
65
|
+
return COLORS.getColor('accent1_700', props.theme);
|
|
66
|
+
}, ButtonContainer, function (props) {
|
|
67
|
+
return COLORS.getColor('accent1_400', props.theme);
|
|
68
|
+
}, TextContainer, function (props) {
|
|
69
|
+
return props.isSelected ? COLORS.getColor('accent1_300', props.theme) : COLORS.getColor('accent1_200', props.theme);
|
|
70
|
+
}, function (props) {
|
|
71
|
+
return COLORS.getColor('accent1_800', props.theme);
|
|
72
|
+
});
|
|
73
|
+
var renderResultContent = function renderResultContent(resultType, theme) {
|
|
38
74
|
switch (resultType) {
|
|
39
75
|
case 'correct':
|
|
40
76
|
return /*#__PURE__*/_jsx(SystemIcons.CheckMark, {
|
|
41
|
-
color: COLORS.white,
|
|
77
|
+
color: COLORS.getColor('white', theme),
|
|
42
78
|
className: 'quiz-button-result-icon'
|
|
43
79
|
});
|
|
44
80
|
case 'incorrect':
|
|
45
81
|
return /*#__PURE__*/_jsx(SystemIcons.Close, {
|
|
46
|
-
color: COLORS.white,
|
|
82
|
+
color: COLORS.getColor('white', theme),
|
|
47
83
|
className: 'quiz-button-result-icon'
|
|
48
84
|
});
|
|
49
85
|
default:
|
|
50
86
|
return /*#__PURE__*/_jsx(SystemIcons.Close, {
|
|
51
|
-
color: COLORS.white,
|
|
87
|
+
color: COLORS.getColor('white', theme),
|
|
52
88
|
className: 'quiz-button-result-icon'
|
|
53
89
|
});
|
|
54
90
|
}
|
|
@@ -67,6 +103,7 @@ var QuizButton = function QuizButton(_ref) {
|
|
|
67
103
|
_ref$size = _ref.size,
|
|
68
104
|
size = _ref$size === void 0 ? Size.Medium : _ref$size,
|
|
69
105
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
106
|
+
var theme = useTheme();
|
|
70
107
|
return /*#__PURE__*/_jsxs(OptionContainer, _objectSpread(_objectSpread({
|
|
71
108
|
onClick: onClick,
|
|
72
109
|
isSelected: selected,
|
|
@@ -82,7 +119,7 @@ var QuizButton = function QuizButton(_ref) {
|
|
|
82
119
|
"data-testid": 'btnContainer',
|
|
83
120
|
className: 'quiz-button-icon',
|
|
84
121
|
size: size,
|
|
85
|
-
children: resultType ? renderResultContent(resultType) : type === 'radio' ? /*#__PURE__*/_jsx(RadioButton, {
|
|
122
|
+
children: resultType ? renderResultContent(resultType, theme) : type === 'radio' ? /*#__PURE__*/_jsx(RadioButton, {
|
|
86
123
|
selected: selected,
|
|
87
124
|
disabled: disabled,
|
|
88
125
|
size: size,
|