@laerdal/life-react-components 6.0.0-dev.1 → 6.0.0-dev.10.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/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/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/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/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/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/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 +72 -19
- package/dist/Card/VerticalCard/CardBottomSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardBottomSection.d.ts +8 -1
- package/dist/Card/VerticalCard/CardBottomSection.js +73 -20
- 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/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/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/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/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/GlobalNavigationBar/__tests__/GlobalNavigationBar.tests.d.ts +1 -0
- package/dist/GlobalNavigationBar/__tests__/Logo.tests.d.ts +1 -0
- 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/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 +8 -2
- package/dist/InputFields/TextField.cjs.map +1 -1
- package/dist/InputFields/TextField.d.ts +1 -1
- package/dist/InputFields/TextField.js +8 -2
- 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/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/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.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/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/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/NavItem/NavItem.cjs +4 -1
- package/dist/NavItem/NavItem.cjs.map +1 -1
- package/dist/NavItem/NavItem.js +4 -1
- package/dist/NavItem/NavItem.js.map +1 -1
- 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/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/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/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/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/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/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/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/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/__tests__/TabLink.tests.d.ts +1 -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/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/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/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/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/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 +9 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_LoadingIndicator","_styles","_types","_common","_jsxRuntime","_excluded","_excluded2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","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","getBorderRadius","flatEdge","radius","ButtonContentContainer","exports","styled","div","ButtonBaseStyled","button","ButtonPrimaryStyled","props","$size","Size","Large","ComponentLStyling","ComponentTextStyle","Bold","$colorTheme","COLORS","getColor","theme","Small","ComponentSStyling","ComponentMStyling","$flatEdge","$width","Medium","$iconOnly","$invertFocus","undefined","invertedFocusStyles","focusStyles","ButtonSecondaryStyled","ButtonTertiaryStyled","ButtonPositiveStyled","ButtonCriticalStyled","Button","forwardRef","_ref","ref","children","variant","type","size","colorTheme","invertFocus","width","testId","disabled","icon","_objectWithoutProperties2","loading","renderProps","renderContent","jsxs","Fragment","jsx","className","LoadingIndicator","ButtonStyled","onMouseDown","defaultOnMouseDownHandler","propTypes","_propTypes","oneOf","bool","oneOfType","string","node","_default"],"sources":["../../src/Button/Button.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { css } from 'styled-components';\r\nimport { LoadingIndicator } from '../LoadingIndicator';\r\nimport { ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles';\r\nimport { COLORS, focusStyles, invertedFocusStyles } from '../styles';\r\nimport { Size, Testable } from '../types';\r\nimport { defaultOnMouseDownHandler } from '../common';\r\n\r\nconst getBorderRadius = (flatEdge: string | undefined, radius: number) => {\r\n switch (flatEdge) {\r\n case 'left':\r\n return `0px ${radius}px ${radius}px 0px`;\r\n\r\n case 'right':\r\n return `${radius}px 0px 0px ${radius}px`;\r\n\r\n case 'none':\r\n default:\r\n return `${radius}px`;\r\n }\r\n};\r\n\r\nexport const ButtonContentContainer = styled.div`\r\n min-width: 64px;\r\n`;\r\n\r\nconst ButtonBaseStyled = styled.button<{$iconOnly: boolean; $size: Size; $colorTheme: 'teal' | 'dark' | undefined; $flatEdge: string | undefined; $width: string; $invertFocus: boolean | undefined; }>``;\r\n\r\nexport const ButtonPrimaryStyled = styled(ButtonBaseStyled)`\r\n border: none;\r\n background-color: transparent;\r\n cursor: pointer;\r\n padding: 0;\r\n margin: 0;\r\n position: relative;\r\n box-sizing: border-box;\r\n min-height: ${(props) => (props.$size === Size.Large ? '56px' : '48px')};\r\n &.loading-state {\r\n cursor: wait;\r\n }\r\n ${ButtonContentContainer} {\r\n ${(props) =>\r\n props.$size === Size.Large\r\n ? ComponentLStyling(ComponentTextStyle.Bold, props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.getColor('white', props.theme))\r\n : props.$size === Size.Small\r\n ? ComponentSStyling(ComponentTextStyle.Bold, props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.getColor('white', props.theme))\r\n : ComponentMStyling(ComponentTextStyle.Bold, props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.getColor('white', props.theme))};\r\n\r\n background-color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.getColor('primary', props.theme))};\r\n border-radius: ${(props) => getBorderRadius(props.$flatEdge, 8)};\r\n\r\n width: ${(props) => props.$width};\r\n position: relative;\r\n\r\n min-height: ${(props) => (props.$size === Size.Large ? '56px' : props.$size === Size.Small ? '32px' : '40px')};\r\n\r\n box-sizing: border-box;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n padding: ${(props) => (props.$size === Size.Large ? '14px 16px' : props.$size === Size.Small ? '6px 8px' : '8px 12px')};\r\n\r\n span.icon:not(.loading) {\r\n pointer-events: none;\r\n }\r\n\r\n span.loading {\r\n opacity: 0;\r\n }\r\n\r\n .icon {\r\n margin: ${(props) => (props.$size === Size.Medium ? props.$iconOnly ? '-2px -8px' : '' : (props.$size === Size.Small ? props.$iconOnly ? '-2px -6px' : '' : '' ))};\r\n width: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')};\r\n height: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')};\r\n svg {\r\n width: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')} !important;\r\n height: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')} !important;\r\n }\r\n }\r\n\r\n .label {\r\n margin: 0 4px;\r\n }\r\n\r\n div {\r\n position: absolute;\r\n width: 100%;\r\n svg {\r\n height: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')};\r\n width: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')};\r\n path {\r\n fill: ${(props) => (props.$colorTheme === 'dark' ? COLORS.getColor('primary', props.theme) : COLORS.getColor('white', props.theme))};\r\n }\r\n }\r\n }\r\n }\r\n &:hover > ${ButtonContentContainer},\r\n &.hover-state > ${ButtonContentContainer} {\r\n background-color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_100', props.theme) : COLORS.getColor('primary_700', props.theme))};\r\n color: ${(props) => (props?.$colorTheme === 'dark' ? COLORS.getColor('primary_600', props.theme) : COLORS.getColor('white', props.theme))};\r\n }\r\n &:active > ${ButtonContentContainer},\r\n &.active-state > ${ButtonContentContainer} {\r\n background-color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_200', props.theme) : COLORS.getColor('primary_800', props.theme))};\r\n color: ${(props) => (props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.getColor('white', props.theme))};\r\n }\r\n\r\n &:focus,\r\n &.focus-state {\r\n ${(props) => (props.$invertFocus || (props.$invertFocus === undefined && props.$colorTheme === 'dark') ? invertedFocusStyles : focusStyles)}\r\n }\r\n &:disabled,\r\n &.disabled-state {\r\n cursor: not-allowed;\r\n }\r\n &:disabled > ${ButtonContentContainer},\r\n &.disabled-state > ${ButtonContentContainer} {\r\n pointer-events: none;\r\n background-color: ${(props) => (props.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.getColor('neutral_100', props.theme))};\r\n color: ${(props) => (props.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.getColor('neutral_300', props.theme))};\r\n }\r\n`;\r\n\r\nexport const ButtonSecondaryStyled = styled(ButtonPrimaryStyled)`\r\n ${ButtonContentContainer} {\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.getColor('primary', props.theme))};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : COLORS.getColor('primary', props.theme))};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.getColor('primary', props.theme))};\r\n \r\n padding: ${(props) => (props.$size === Size.Large ? '12px 16px' : props.$size === Size.Small ? '4px 8px' : '6px 12px')};\r\n }\r\n\r\n &:hover > ${ButtonContentContainer},\r\n &.hover-state > ${ButtonContentContainer} {\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_200', props.theme) : COLORS.getColor('primary_700', props.theme))};\r\n box-shadow: inset 0 0 0 2px ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_200', props.theme) : COLORS.getColor('primary_700', props.theme))};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : COLORS.getColor('primary_700', props.theme))};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${ButtonContentContainer},\r\n &.active-state > ${ButtonContentContainer} {\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_300', props.theme) : COLORS.getColor('primary_800', props.theme))};\r\n box-shadow: inset 0 0 0 2px ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_300', props.theme) : COLORS.getColor('primary_800', props.theme))};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.getColor('primary_800', props.theme))};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${ButtonContentContainer},\r\n &.disabled-state > ${ButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => (props?.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.getColor('neutral_300', props.theme))};\r\n box-shadow: inset 0 0 0 2px ${(props) => (props?.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.getColor('neutral_100', props.theme))};\r\n }\r\n`;\r\n\r\nexport const ButtonTertiaryStyled = styled(ButtonPrimaryStyled)`\r\n${ButtonContentContainer} {\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.getColor('primary_500', props.theme))};\r\n background-color: transparent;\r\n\r\n div svg path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.getColor('primary_500', props.theme))};\r\n }\r\n\r\n padding: ${(props) => (props.$size === Size.Large ? '12px 16px' : props.$size === Size.Small ? '4px 8px' : '6px 12px')};\r\n }\r\n\r\n &:hover > ${ButtonContentContainer},\r\n &.hover-state > ${ButtonContentContainer} {\r\n background-color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_20', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.getColor('primary_20', props.theme))};\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.getColor('primary_700', props.theme))};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.getColor('primary_700', props.theme))};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${ButtonContentContainer},\r\n &.active-state > ${ButtonContentContainer} {\r\n background-color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_100', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('primary_600', props.theme) : COLORS.getColor('primary_100', props.theme))};\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.getColor('primary_800', props.theme))};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.getColor('primary_800', props.theme))};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${ButtonContentContainer},\r\n &.disabled-state > ${ButtonContentContainer} {\r\n background-color: transparent !important;\r\n color: ${props => COLORS.getColor('primary_700', props.theme)};\r\n border-color: transparent !important;\r\n }\r\n`;\r\n\r\nexport const ButtonPositiveStyled = styled(ButtonPrimaryStyled)`\r\n ${ButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.getColor('correct_500', props.theme)};\r\n }\r\n &:hover > ${ButtonContentContainer},\r\n &.hover-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('correct_700', props.theme)};\r\n }\r\n &:active > ${ButtonContentContainer},\r\n &.active-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('correct_800', props.theme)};\r\n }\r\n\r\n &:disabled > ${ButtonContentContainer},\r\n &.disabled-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('neutral_100', props.theme)};\r\n color: ${props => COLORS.getColor('neutral_300', props.theme)};\r\n }\r\n`;\r\n\r\nexport const ButtonCriticalStyled = styled(ButtonPrimaryStyled)`\r\n ${ButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.getColor('critical_500', props.theme)};\r\n }\r\n &:hover > ${ButtonContentContainer},\r\n &.hover-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('critical_700', props.theme)};\r\n }\r\n &:active > ${ButtonContentContainer},\r\n &.active-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('critical_800', props.theme)};\r\n }\r\n\r\n &:disabled > ${ButtonContentContainer},\r\n &.disabled-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('neutral_100', props.theme)};\r\n color: ${props => COLORS.getColor('neutral_300', props.theme)}; \r\n }\r\n`;\r\n\r\nexport interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\r\n /** Look and feel variant of the component. Defaults to 'primary'. */\r\n variant?: 'primary' | 'secondary' | 'tertiary' | 'positive' | 'critical';\r\n /** Can be used in order to remove rounded corners on right or left edge of the button. Used by 'DualFunctionButton'. Defaults to 'undefined' */\r\n flatEdge?: 'right' | 'left' | 'none' | undefined;\r\n /** Size of the component. Small, Medium or Large. Defaults to 'medium' */\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n /** Color theme altering of the component. By default there is no altering applied. */\r\n colorTheme?: 'teal' | 'dark';\r\n /** Allows using inverted colors for outlining focus rect. Shown when component focused by keyboard. */\r\n invertFocus?: boolean;\r\n /** Can be used to set custom value for width style. Value is set for 'ButtonContent' container. */\r\n width?: 'auto' | string;\r\n /** If set, then 'opacity' of children container will be set to 0, and loading indicator will be shown. */\r\n loading?: boolean;\r\n /** TestId. Will be set to the top level button component. */\r\n testId?: string;\r\n /** Icon that will be shown on the left of the children. */\r\n icon?: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Button component\r\n */\r\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\r\n ({ children = '', variant = 'primary', type = 'button', size = Size.Medium, colorTheme, invertFocus, width: width = 'auto', testId, disabled, flatEdge, icon, ...props }, ref) => {\r\n // Let's filter out properties that we don't need to render.\r\n const { loading, ...renderProps } = props;\r\n\r\n const renderContent = () => (\r\n <>\r\n {icon && <span className={(children ? 'extramargin ' : '') + (loading ? 'icon loading' : 'icon')}>{icon}</span>}\r\n {children && <span className={loading ? 'label loading' : 'label'}>{children}</span>}\r\n {loading && <LoadingIndicator />}\r\n </>\r\n );\r\n\r\n let ButtonStyled = ButtonPrimaryStyled;\r\n switch (variant) {\r\n case 'secondary':\r\n ButtonStyled = ButtonSecondaryStyled;\r\n break;\r\n case 'tertiary':\r\n ButtonStyled = ButtonTertiaryStyled;\r\n break;\r\n case 'positive':\r\n ButtonStyled = ButtonPositiveStyled;\r\n break;\r\n case 'critical':\r\n ButtonStyled = ButtonCriticalStyled;\r\n break;\r\n }\r\n\r\n return (\r\n <ButtonStyled\r\n {...renderProps}\r\n $size={size}\r\n $colorTheme={colorTheme} \r\n $invertFocus={invertFocus} \r\n ref={ref}\r\n disabled={disabled}\r\n $iconOnly={!children}\r\n type={type}\r\n $flatEdge={flatEdge}\r\n $width={width}\r\n data-testid={testId}\r\n className={props.loading ? 'loading-state ' + props.className : ' ' + props.className}\r\n onMouseDown={defaultOnMouseDownHandler}>\r\n <ButtonContentContainer>{renderContent()}</ButtonContentContainer>\r\n </ButtonStyled>\r\n );\r\n },\r\n);\r\n\r\nexport default Button;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Button.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_LoadingIndicator","_styles","_types","_common","_jsxRuntime","_excluded","_excluded2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","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","getBorderRadius","flatEdge","radius","ButtonContentContainer","exports","styled","div","ButtonBaseStyled","button","ButtonPrimaryStyled","props","$size","Size","Large","ComponentLStyling","ComponentTextStyle","Bold","$colorTheme","COLORS","getColor","theme","generateToken","componentType","isOnFill","defaultVariant","Small","ComponentSStyling","ComponentMStyling","$flatEdge","$width","Medium","$iconOnly","state","$invertFocus","undefined","invertedFocusStyles","focusStyles","ButtonSecondaryStyled","ButtonTertiaryStyled","ButtonPositiveStyled","ButtonCriticalStyled","Button","forwardRef","_ref","ref","children","variant","type","size","colorTheme","invertFocus","width","testId","disabled","icon","iconPosition","_objectWithoutProperties2","loading","renderProps","useTheme","renderIcon","jsx","Fragment","className","renderContent","jsxs","LoadingIndicator","ButtonStyled","onMouseDown","defaultOnMouseDownHandler","propTypes","_propTypes","oneOf","bool","oneOfType","string","node","_default"],"sources":["../../src/Button/Button.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { css, useTheme } from 'styled-components';\r\nimport { LoadingIndicator } from '../LoadingIndicator';\r\nimport { ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles';\r\nimport { COLORS, focusStyles, invertedFocusStyles } from '../styles';\r\nimport { Size, Testable } from '../types';\r\nimport { defaultOnMouseDownHandler } from '../common';\r\n\r\nconst getBorderRadius = (flatEdge: string | undefined, radius: number) => {\r\n switch (flatEdge) {\r\n case 'left':\r\n return `0px ${radius}px ${radius}px 0px`;\r\n\r\n case 'right':\r\n return `${radius}px 0px 0px ${radius}px`;\r\n\r\n case 'none':\r\n default:\r\n return `${radius}px`;\r\n }\r\n};\r\n\r\nexport const ButtonContentContainer = styled.div`\r\n min-width: 64px;\r\n`;\r\n\r\nconst ButtonBaseStyled = styled.button<{$iconOnly: boolean; $size: Size; $colorTheme: 'teal' | 'dark' | undefined; $flatEdge: string | undefined; $width: string; $invertFocus: boolean | undefined; }>``;\r\n\r\nexport const ButtonPrimaryStyled = styled(ButtonBaseStyled)`\r\n border: none;\r\n background-color: transparent;\r\n cursor: pointer;\r\n padding: 0;\r\n margin: 0;\r\n position: relative;\r\n box-sizing: border-box; \r\n &.loading-state {\r\n cursor: wait;\r\n }\r\n ${ButtonContentContainer} {\r\n ${(props) =>\r\n props.$size === Size.Large\r\n ? ComponentLStyling(ComponentTextStyle.Bold, props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))\r\n : props.$size === Size.Small\r\n ? ComponentSStyling(ComponentTextStyle.Bold, props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))\r\n : ComponentMStyling(ComponentTextStyle.Bold, props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))};\r\n\r\n background-color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : \r\n COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'primary' }, props.theme))};\r\n border-radius: ${(props) => getBorderRadius(props.$flatEdge, 8)};\r\n\r\n width: ${(props) => props.$width};\r\n position: relative;\r\n\r\n min-height: ${(props) => (props.$size === Size.Large ? '56px' : props.$size === Size.Small ? '32px' : '40px')};\r\n\r\n box-sizing: border-box;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n padding: ${(props) => (props.$size === Size.Large ? '14px 16px' : props.$size === Size.Small ? '6px 8px' : '8px 12px')};\r\n\r\n span.icon:not(.loading) {\r\n pointer-events: none;\r\n }\r\n\r\n span.loading {\r\n opacity: 0;\r\n }\r\n\r\n .icon {\r\n margin: ${(props) => (props.$size === Size.Medium ? props.$iconOnly ? '-2px -8px' : '' : (props.$size === Size.Small ? props.$iconOnly ? '-2px -6px' : '' : '' ))};\r\n width: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')};\r\n height: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')};\r\n svg {\r\n width: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')} !important;\r\n height: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')} !important;\r\n }\r\n }\r\n\r\n .label {\r\n margin: 0 4px;\r\n }\r\n\r\n div {\r\n position: absolute;\r\n width: 100%;\r\n svg {\r\n height: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')};\r\n width: ${(props) => (props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px')};\r\n path {\r\n fill: ${(props) => (props.$colorTheme === 'dark' ? COLORS.getColor('primary', props.theme) : COLORS.generateToken({ componentType: 'icon', isOnFill: true, defaultVariant: 'primary' }, props.theme))};\r\n }\r\n }\r\n }\r\n }\r\n &:hover > ${ButtonContentContainer},\r\n &.hover-state > ${ButtonContentContainer} {\r\n background-color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_100', props.theme) : COLORS.generateToken({ componentType: 'bg-fill', state: 'hover', defaultVariant: 'primary' }, props.theme))};\r\n color: ${(props) => (props?.$colorTheme === 'dark' ? COLORS.getColor('primary_600', props.theme) : COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))};\r\n }\r\n &:active > ${ButtonContentContainer},\r\n &.active-state > ${ButtonContentContainer} {\r\n background-color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_200', props.theme) : COLORS.generateToken({ componentType: 'bg-fill', state: 'active', defaultVariant: 'primary' }, props.theme))};\r\n color: ${(props) => (props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))};\r\n }\r\n\r\n &:focus,\r\n &.focus-state {\r\n ${(props) => (props.$invertFocus || (props.$invertFocus === undefined && props.$colorTheme === 'dark') ? invertedFocusStyles : focusStyles)}\r\n }\r\n &:disabled,\r\n &.disabled-state {\r\n cursor: not-allowed;\r\n }\r\n &:disabled > ${ButtonContentContainer},\r\n &.disabled-state > ${ButtonContentContainer} {\r\n pointer-events: none;\r\n background-color: ${(props) => (props.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.generateToken({ componentType: 'bg-fill', state: 'disabled' }, props.theme))};\r\n color: ${(props) => (props.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.generateToken({ componentType: 'text', isOnFill: true, state: 'disabled' }, props.theme))};\r\n }\r\n`;\r\n\r\nexport const ButtonSecondaryStyled = styled(ButtonPrimaryStyled)`\r\n ${ButtonContentContainer} {\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme))};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : COLORS.generateToken({ componentType: 'icon', defaultVariant: 'primary' }, props.theme))};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({ componentType: 'border', defaultVariant: 'primary' }, props.theme))};\r\n \r\n padding: ${(props) => (props.$size === Size.Large ? '12px 16px' : props.$size === Size.Small ? '4px 8px' : '6px 12px')};\r\n }\r\n\r\n &:hover > ${ButtonContentContainer},\r\n &.hover-state > ${ButtonContentContainer} {\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_200', props.theme) : COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme))};\r\n box-shadow: inset 0 0 0 2px ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_200', props.theme) : COLORS.generateToken({ componentType: 'border', state:'hover', defaultVariant: 'primary' }, props.theme))};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme))};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${ButtonContentContainer},\r\n &.active-state > ${ButtonContentContainer} {\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_300', props.theme) : COLORS.generateToken({ componentType: 'text', state:'active', defaultVariant: 'primary' }, props.theme))};\r\n box-shadow: inset 0 0 0 2px ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_300', props.theme) : COLORS.generateToken({ componentType: 'border', state:'active', defaultVariant: 'primary' }, props.theme))};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme))};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${ButtonContentContainer},\r\n &.disabled-state > ${ButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => (props?.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.generateToken({ componentType: 'text', state:'disabled' }, props.theme))};\r\n box-shadow: inset 0 0 0 2px ${(props) => (props?.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.generateToken({ componentType: 'border', state:'disabled' }, props.theme))};\r\n }\r\n`;\r\n\r\nexport const ButtonTertiaryStyled = styled(ButtonPrimaryStyled)`\r\n${ButtonContentContainer} {\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme))};\r\n background-color: transparent;\r\n\r\n div svg path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme))};\r\n }\r\n\r\n padding: ${(props) => (props.$size === Size.Large ? '12px 16px' : props.$size === Size.Small ? '4px 8px' : '6px 12px')};\r\n }\r\n\r\n &:hover > ${ButtonContentContainer},\r\n &.hover-state > ${ButtonContentContainer} {\r\n background-color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_20', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.generateToken({ componentType: 'bg-surface', state:'hover' }, props.theme))};\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme))};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme))};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${ButtonContentContainer},\r\n &.active-state > ${ButtonContentContainer} {\r\n background-color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_100', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('primary_600', props.theme) : COLORS.generateToken({ componentType: 'bg-surface', state: 'active' }, props.theme))};\r\n color: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme))};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => (props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme))};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${ButtonContentContainer},\r\n &.disabled-state > ${ButtonContentContainer} {\r\n background-color: transparent !important;\r\n color: ${props => COLORS.generateToken({ componentType: 'text', isOnFill:true, state:'disabled' }, props.theme)};\r\n border-color: transparent !important;\r\n }\r\n`;\r\n\r\nexport const ButtonPositiveStyled = styled(ButtonPrimaryStyled)`\r\n ${ButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.getColor('positive_500', props.theme)};\r\n }\r\n &:hover > ${ButtonContentContainer},\r\n &.hover-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('positive_700', props.theme)};\r\n }\r\n &:active > ${ButtonContentContainer},\r\n &.active-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('positive_800', props.theme)};\r\n }\r\n\r\n &:disabled > ${ButtonContentContainer},\r\n &.disabled-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('neutral_100', props.theme)};\r\n color: ${props => COLORS.getColor('neutral_300', props.theme)};\r\n }\r\n`;\r\n\r\nexport const ButtonCriticalStyled = styled(ButtonPrimaryStyled)`\r\n ${ButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n &:hover > ${ButtonContentContainer},\r\n &.hover-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n &:active > ${ButtonContentContainer},\r\n &.active-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n\r\n &:disabled > ${ButtonContentContainer},\r\n &.disabled-state > ${ButtonContentContainer} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', state: 'disabled' }, props.theme)};\r\n color: ${props => COLORS.generateToken({ componentType: 'text', isOnFill: true, state: 'disabled' }, props.theme)}; \r\n }\r\n`;\r\n\r\nexport interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\r\n /** Look and feel variant of the component. Defaults to 'primary'. */\r\n variant?: 'primary' | 'secondary' | 'tertiary' | 'positive' | 'critical';\r\n /** Can be used in order to remove rounded corners on right or left edge of the button. Used by 'DualFunctionButton'. Defaults to 'undefined' */\r\n flatEdge?: 'right' | 'left' | 'none' | undefined;\r\n /** Size of the component. Small, Medium or Large. Defaults to 'medium' */\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n /** Color theme altering of the component. By default there is no altering applied. */\r\n colorTheme?: 'teal' | 'dark';\r\n /** Allows using inverted colors for outlining focus rect. Shown when component focused by keyboard. */\r\n invertFocus?: boolean;\r\n /** Can be used to set custom value for width style. Value is set for 'ButtonContent' container. */\r\n width?: 'auto' | string;\r\n /** If set, then 'opacity' of children container will be set to 0, and loading indicator will be shown. */\r\n loading?: boolean;\r\n /** TestId. Will be set to the top level button component. */\r\n testId?: string;\r\n /** Icon that will be shown on the left of the children. */\r\n icon?: React.ReactNode;\r\n /** Icon position in the button. Defaults to 'left' */\r\n iconPosition?: 'left' | 'right';\r\n}\r\n\r\n/**\r\n * Button component\r\n */\r\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\r\n ({ children = '', variant = 'primary', type = 'button', size = Size.Medium, colorTheme, invertFocus, width: width = 'auto', testId, disabled, flatEdge, icon, iconPosition = 'left', ...props }, ref) => {\r\n // Let's filter out properties that we don't need to render.\r\n const { loading, ...renderProps } = props;\r\n\r\n const theme = useTheme();\r\n const renderIcon = () => (\r\n <><span className={(children ? 'extramargin ' : '') + (loading ? 'icon loading' : 'icon')}>{icon}</span></>\r\n )\r\n\r\n const renderContent = () => (\r\n <>\r\n {icon && iconPosition == 'left' && renderIcon()}\r\n {children && <span className={loading ? 'label loading' : 'label'}>{children}</span>}\r\n {icon && iconPosition == 'right' && renderIcon()}\r\n {loading && <LoadingIndicator />}\r\n </>\r\n );\r\n\r\n let ButtonStyled = ButtonPrimaryStyled;\r\n switch (variant) {\r\n case 'secondary':\r\n ButtonStyled = ButtonSecondaryStyled;\r\n break;\r\n case 'tertiary':\r\n ButtonStyled = ButtonTertiaryStyled;\r\n break;\r\n case 'positive':\r\n ButtonStyled = ButtonPositiveStyled;\r\n break;\r\n case 'critical':\r\n ButtonStyled = ButtonCriticalStyled;\r\n break;\r\n }\r\n\r\n return (\r\n <ButtonStyled\r\n {...renderProps}\r\n $size={size}\r\n $colorTheme={colorTheme} \r\n $invertFocus={invertFocus} \r\n ref={ref}\r\n disabled={disabled}\r\n $iconOnly={!children}\r\n type={type}\r\n $flatEdge={flatEdge}\r\n $width={width}\r\n data-testid={testId}\r\n className={props.loading ? 'loading-state ' + props.className : ' ' + props.className}\r\n onMouseDown={defaultOnMouseDownHandler}>\r\n <ButtonContentContainer>{renderContent()}</ButtonContentContainer>\r\n </ButtonStyled>\r\n );\r\n },\r\n);\r\n\r\nexport default Button;\r\n"],"mappings":"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","ignoreList":[]}
|
package/dist/Button/Button.d.ts
CHANGED
|
@@ -60,6 +60,8 @@ export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElemen
|
|
|
60
60
|
testId?: string;
|
|
61
61
|
/** Icon that will be shown on the left of the children. */
|
|
62
62
|
icon?: React.ReactNode;
|
|
63
|
+
/** Icon position in the button. Defaults to 'left' */
|
|
64
|
+
iconPosition?: 'left' | 'right';
|
|
63
65
|
}
|
|
64
66
|
/**
|
|
65
67
|
* Button component
|
package/dist/Button/Button.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
3
|
import _pt from "prop-types";
|
|
4
|
-
const _excluded = ["children", "variant", "type", "size", "colorTheme", "invertFocus", "width", "testId", "disabled", "flatEdge", "icon"],
|
|
4
|
+
const _excluded = ["children", "variant", "type", "size", "colorTheme", "invertFocus", "width", "testId", "disabled", "flatEdge", "icon", "iconPosition"],
|
|
5
5
|
_excluded2 = ["loading"];
|
|
6
6
|
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; }
|
|
7
7
|
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; }
|
|
8
8
|
import * as React from 'react';
|
|
9
|
-
import styled from 'styled-components';
|
|
9
|
+
import styled, { useTheme } from 'styled-components';
|
|
10
10
|
import { LoadingIndicator } from '../LoadingIndicator';
|
|
11
11
|
import { ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles';
|
|
12
12
|
import { COLORS, focusStyles, invertedFocusStyles } from '../styles';
|
|
@@ -35,15 +35,29 @@ export const ButtonPrimaryStyled = styled(ButtonBaseStyled)`
|
|
|
35
35
|
padding: 0;
|
|
36
36
|
margin: 0;
|
|
37
37
|
position: relative;
|
|
38
|
-
box-sizing: border-box;
|
|
39
|
-
min-height: ${props => props.$size === Size.Large ? '56px' : '48px'};
|
|
38
|
+
box-sizing: border-box;
|
|
40
39
|
&.loading-state {
|
|
41
40
|
cursor: wait;
|
|
42
41
|
}
|
|
43
42
|
${ButtonContentContainer} {
|
|
44
|
-
${props => props.$size === Size.Large ? ComponentLStyling(ComponentTextStyle.Bold, props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.
|
|
43
|
+
${props => props.$size === Size.Large ? ComponentLStyling(ComponentTextStyle.Bold, props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.generateToken({
|
|
44
|
+
componentType: 'text',
|
|
45
|
+
isOnFill: true,
|
|
46
|
+
defaultVariant: 'primary'
|
|
47
|
+
}, props.theme)) : props.$size === Size.Small ? ComponentSStyling(ComponentTextStyle.Bold, props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.generateToken({
|
|
48
|
+
componentType: 'text',
|
|
49
|
+
isOnFill: true,
|
|
50
|
+
defaultVariant: 'primary'
|
|
51
|
+
}, props.theme)) : ComponentMStyling(ComponentTextStyle.Bold, props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.generateToken({
|
|
52
|
+
componentType: 'text',
|
|
53
|
+
isOnFill: true,
|
|
54
|
+
defaultVariant: 'primary'
|
|
55
|
+
}, props.theme))};
|
|
45
56
|
|
|
46
|
-
background-color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.
|
|
57
|
+
background-color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({
|
|
58
|
+
componentType: 'bg-fill',
|
|
59
|
+
defaultVariant: 'primary'
|
|
60
|
+
}, props.theme)};
|
|
47
61
|
border-radius: ${props => getBorderRadius(props.$flatEdge, 8)};
|
|
48
62
|
|
|
49
63
|
width: ${props => props.$width};
|
|
@@ -86,20 +100,40 @@ export const ButtonPrimaryStyled = styled(ButtonBaseStyled)`
|
|
|
86
100
|
height: ${props => props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px'};
|
|
87
101
|
width: ${props => props.$size === Size.Large ? '28px' : props.$size === Size.Small ? '20px' : '24px'};
|
|
88
102
|
path {
|
|
89
|
-
fill: ${props => props.$colorTheme === 'dark' ? COLORS.getColor('primary', props.theme) : COLORS.
|
|
103
|
+
fill: ${props => props.$colorTheme === 'dark' ? COLORS.getColor('primary', props.theme) : COLORS.generateToken({
|
|
104
|
+
componentType: 'icon',
|
|
105
|
+
isOnFill: true,
|
|
106
|
+
defaultVariant: 'primary'
|
|
107
|
+
}, props.theme)};
|
|
90
108
|
}
|
|
91
109
|
}
|
|
92
110
|
}
|
|
93
111
|
}
|
|
94
112
|
&:hover > ${ButtonContentContainer},
|
|
95
113
|
&.hover-state > ${ButtonContentContainer} {
|
|
96
|
-
background-color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_100', props.theme) : COLORS.
|
|
97
|
-
|
|
114
|
+
background-color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_100', props.theme) : COLORS.generateToken({
|
|
115
|
+
componentType: 'bg-fill',
|
|
116
|
+
state: 'hover',
|
|
117
|
+
defaultVariant: 'primary'
|
|
118
|
+
}, props.theme)};
|
|
119
|
+
color: ${props => props?.$colorTheme === 'dark' ? COLORS.getColor('primary_600', props.theme) : COLORS.generateToken({
|
|
120
|
+
componentType: 'text',
|
|
121
|
+
isOnFill: true,
|
|
122
|
+
defaultVariant: 'primary'
|
|
123
|
+
}, props.theme)};
|
|
98
124
|
}
|
|
99
125
|
&:active > ${ButtonContentContainer},
|
|
100
126
|
&.active-state > ${ButtonContentContainer} {
|
|
101
|
-
background-color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_200', props.theme) : COLORS.
|
|
102
|
-
|
|
127
|
+
background-color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_200', props.theme) : COLORS.generateToken({
|
|
128
|
+
componentType: 'bg-fill',
|
|
129
|
+
state: 'active',
|
|
130
|
+
defaultVariant: 'primary'
|
|
131
|
+
}, props.theme)};
|
|
132
|
+
color: ${props => props?.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.generateToken({
|
|
133
|
+
componentType: 'text',
|
|
134
|
+
isOnFill: true,
|
|
135
|
+
defaultVariant: 'primary'
|
|
136
|
+
}, props.theme)};
|
|
103
137
|
}
|
|
104
138
|
|
|
105
139
|
&:focus,
|
|
@@ -113,46 +147,86 @@ export const ButtonPrimaryStyled = styled(ButtonBaseStyled)`
|
|
|
113
147
|
&:disabled > ${ButtonContentContainer},
|
|
114
148
|
&.disabled-state > ${ButtonContentContainer} {
|
|
115
149
|
pointer-events: none;
|
|
116
|
-
background-color: ${props => props.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.
|
|
117
|
-
|
|
150
|
+
background-color: ${props => props.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.generateToken({
|
|
151
|
+
componentType: 'bg-fill',
|
|
152
|
+
state: 'disabled'
|
|
153
|
+
}, props.theme)};
|
|
154
|
+
color: ${props => props.$colorTheme === 'dark' ? COLORS.getColor('primary_800', props.theme) : COLORS.generateToken({
|
|
155
|
+
componentType: 'text',
|
|
156
|
+
isOnFill: true,
|
|
157
|
+
state: 'disabled'
|
|
158
|
+
}, props.theme)};
|
|
118
159
|
}
|
|
119
160
|
`;
|
|
120
161
|
export const ButtonSecondaryStyled = styled(ButtonPrimaryStyled)`
|
|
121
162
|
${ButtonContentContainer} {
|
|
122
|
-
color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.
|
|
163
|
+
color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({
|
|
164
|
+
componentType: 'text',
|
|
165
|
+
defaultVariant: 'primary'
|
|
166
|
+
}, props.theme)};
|
|
123
167
|
background-color: transparent;
|
|
124
168
|
div svg path {
|
|
125
|
-
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : COLORS.
|
|
169
|
+
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : COLORS.generateToken({
|
|
170
|
+
componentType: 'icon',
|
|
171
|
+
defaultVariant: 'primary'
|
|
172
|
+
}, props.theme)};
|
|
126
173
|
}
|
|
127
|
-
box-shadow: inset 0 0 0 2px ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.
|
|
174
|
+
box-shadow: inset 0 0 0 2px ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({
|
|
175
|
+
componentType: 'border',
|
|
176
|
+
defaultVariant: 'primary'
|
|
177
|
+
}, props.theme)};
|
|
128
178
|
|
|
129
179
|
padding: ${props => props.$size === Size.Large ? '12px 16px' : props.$size === Size.Small ? '4px 8px' : '6px 12px'};
|
|
130
180
|
}
|
|
131
181
|
|
|
132
182
|
&:hover > ${ButtonContentContainer},
|
|
133
183
|
&.hover-state > ${ButtonContentContainer} {
|
|
134
|
-
color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_200', props.theme) : COLORS.
|
|
135
|
-
|
|
184
|
+
color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_200', props.theme) : COLORS.generateToken({
|
|
185
|
+
componentType: 'text',
|
|
186
|
+
state: 'hover',
|
|
187
|
+
defaultVariant: 'primary'
|
|
188
|
+
}, props.theme)};
|
|
189
|
+
box-shadow: inset 0 0 0 2px ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_200', props.theme) : COLORS.generateToken({
|
|
190
|
+
componentType: 'border',
|
|
191
|
+
state: 'hover',
|
|
192
|
+
defaultVariant: 'primary'
|
|
193
|
+
}, props.theme)};
|
|
136
194
|
|
|
137
195
|
background-color: transparent;
|
|
138
196
|
div {
|
|
139
197
|
svg {
|
|
140
198
|
path {
|
|
141
|
-
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : COLORS.
|
|
199
|
+
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : COLORS.generateToken({
|
|
200
|
+
componentType: 'text',
|
|
201
|
+
state: 'hover',
|
|
202
|
+
defaultVariant: 'primary'
|
|
203
|
+
}, props.theme)};
|
|
142
204
|
}
|
|
143
205
|
}
|
|
144
206
|
}
|
|
145
207
|
}
|
|
146
208
|
&:active > ${ButtonContentContainer},
|
|
147
209
|
&.active-state > ${ButtonContentContainer} {
|
|
148
|
-
color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_300', props.theme) : COLORS.
|
|
149
|
-
|
|
210
|
+
color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_300', props.theme) : COLORS.generateToken({
|
|
211
|
+
componentType: 'text',
|
|
212
|
+
state: 'active',
|
|
213
|
+
defaultVariant: 'primary'
|
|
214
|
+
}, props.theme)};
|
|
215
|
+
box-shadow: inset 0 0 0 2px ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('primary_300', props.theme) : COLORS.generateToken({
|
|
216
|
+
componentType: 'border',
|
|
217
|
+
state: 'active',
|
|
218
|
+
defaultVariant: 'primary'
|
|
219
|
+
}, props.theme)};
|
|
150
220
|
|
|
151
221
|
background-color: transparent;
|
|
152
222
|
div {
|
|
153
223
|
svg {
|
|
154
224
|
path {
|
|
155
|
-
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.
|
|
225
|
+
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props?.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({
|
|
226
|
+
componentType: 'text',
|
|
227
|
+
state: 'hover',
|
|
228
|
+
defaultVariant: 'primary'
|
|
229
|
+
}, props.theme)};
|
|
156
230
|
}
|
|
157
231
|
}
|
|
158
232
|
}
|
|
@@ -161,17 +235,29 @@ export const ButtonSecondaryStyled = styled(ButtonPrimaryStyled)`
|
|
|
161
235
|
&:disabled > ${ButtonContentContainer},
|
|
162
236
|
&.disabled-state > ${ButtonContentContainer} {
|
|
163
237
|
background-color: transparent;
|
|
164
|
-
color: ${props => props?.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.
|
|
165
|
-
|
|
238
|
+
color: ${props => props?.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.generateToken({
|
|
239
|
+
componentType: 'text',
|
|
240
|
+
state: 'disabled'
|
|
241
|
+
}, props.theme)};
|
|
242
|
+
box-shadow: inset 0 0 0 2px ${props => props?.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.generateToken({
|
|
243
|
+
componentType: 'border',
|
|
244
|
+
state: 'disabled'
|
|
245
|
+
}, props.theme)};
|
|
166
246
|
}
|
|
167
247
|
`;
|
|
168
248
|
export const ButtonTertiaryStyled = styled(ButtonPrimaryStyled)`
|
|
169
249
|
${ButtonContentContainer} {
|
|
170
|
-
color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.
|
|
250
|
+
color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({
|
|
251
|
+
componentType: 'text',
|
|
252
|
+
defaultVariant: 'primary'
|
|
253
|
+
}, props.theme)};
|
|
171
254
|
background-color: transparent;
|
|
172
255
|
|
|
173
256
|
div svg path {
|
|
174
|
-
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.
|
|
257
|
+
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({
|
|
258
|
+
componentType: 'text',
|
|
259
|
+
defaultVariant: 'primary'
|
|
260
|
+
}, props.theme)};
|
|
175
261
|
}
|
|
176
262
|
|
|
177
263
|
padding: ${props => props.$size === Size.Large ? '12px 16px' : props.$size === Size.Small ? '4px 8px' : '6px 12px'};
|
|
@@ -179,26 +265,44 @@ ${ButtonContentContainer} {
|
|
|
179
265
|
|
|
180
266
|
&:hover > ${ButtonContentContainer},
|
|
181
267
|
&.hover-state > ${ButtonContentContainer} {
|
|
182
|
-
background-color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_20', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.
|
|
183
|
-
|
|
268
|
+
background-color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_20', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('primary_700', props.theme) : COLORS.generateToken({
|
|
269
|
+
componentType: 'bg-surface',
|
|
270
|
+
state: 'hover'
|
|
271
|
+
}, props.theme)};
|
|
272
|
+
color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({
|
|
273
|
+
componentType: 'text',
|
|
274
|
+
defaultVariant: 'primary'
|
|
275
|
+
}, props.theme)};
|
|
184
276
|
|
|
185
277
|
div {
|
|
186
278
|
svg {
|
|
187
279
|
path {
|
|
188
|
-
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.
|
|
280
|
+
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_700', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({
|
|
281
|
+
componentType: 'text',
|
|
282
|
+
defaultVariant: 'primary'
|
|
283
|
+
}, props.theme)};
|
|
189
284
|
}
|
|
190
285
|
}
|
|
191
286
|
}
|
|
192
287
|
}
|
|
193
288
|
&:active > ${ButtonContentContainer},
|
|
194
289
|
&.active-state > ${ButtonContentContainer} {
|
|
195
|
-
background-color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_100', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('primary_600', props.theme) : COLORS.
|
|
196
|
-
|
|
290
|
+
background-color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_100', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('primary_600', props.theme) : COLORS.generateToken({
|
|
291
|
+
componentType: 'bg-surface',
|
|
292
|
+
state: 'active'
|
|
293
|
+
}, props.theme)};
|
|
294
|
+
color: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({
|
|
295
|
+
componentType: 'text',
|
|
296
|
+
defaultVariant: 'primary'
|
|
297
|
+
}, props.theme)};
|
|
197
298
|
|
|
198
299
|
div {
|
|
199
300
|
svg {
|
|
200
301
|
path {
|
|
201
|
-
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.
|
|
302
|
+
fill: ${props => props.$colorTheme === 'teal' ? COLORS.getColor('accent1_800', props.theme) : props.$colorTheme === 'dark' ? COLORS.getColor('white', props.theme) : COLORS.generateToken({
|
|
303
|
+
componentType: 'text',
|
|
304
|
+
defaultVariant: 'primary'
|
|
305
|
+
}, props.theme)};
|
|
202
306
|
}
|
|
203
307
|
}
|
|
204
308
|
}
|
|
@@ -207,22 +311,26 @@ ${ButtonContentContainer} {
|
|
|
207
311
|
&:disabled > ${ButtonContentContainer},
|
|
208
312
|
&.disabled-state > ${ButtonContentContainer} {
|
|
209
313
|
background-color: transparent !important;
|
|
210
|
-
color: ${props => COLORS.
|
|
314
|
+
color: ${props => COLORS.generateToken({
|
|
315
|
+
componentType: 'text',
|
|
316
|
+
isOnFill: true,
|
|
317
|
+
state: 'disabled'
|
|
318
|
+
}, props.theme)};
|
|
211
319
|
border-color: transparent !important;
|
|
212
320
|
}
|
|
213
321
|
`;
|
|
214
322
|
export const ButtonPositiveStyled = styled(ButtonPrimaryStyled)`
|
|
215
323
|
${ButtonContentContainer} {
|
|
216
324
|
color: white;
|
|
217
|
-
background-color: ${props => COLORS.getColor('
|
|
325
|
+
background-color: ${props => COLORS.getColor('positive_500', props.theme)};
|
|
218
326
|
}
|
|
219
327
|
&:hover > ${ButtonContentContainer},
|
|
220
328
|
&.hover-state > ${ButtonContentContainer} {
|
|
221
|
-
background-color: ${props => COLORS.getColor('
|
|
329
|
+
background-color: ${props => COLORS.getColor('positive_700', props.theme)};
|
|
222
330
|
}
|
|
223
331
|
&:active > ${ButtonContentContainer},
|
|
224
332
|
&.active-state > ${ButtonContentContainer} {
|
|
225
|
-
background-color: ${props => COLORS.getColor('
|
|
333
|
+
background-color: ${props => COLORS.getColor('positive_800', props.theme)};
|
|
226
334
|
}
|
|
227
335
|
|
|
228
336
|
&:disabled > ${ButtonContentContainer},
|
|
@@ -234,21 +342,39 @@ export const ButtonPositiveStyled = styled(ButtonPrimaryStyled)`
|
|
|
234
342
|
export const ButtonCriticalStyled = styled(ButtonPrimaryStyled)`
|
|
235
343
|
${ButtonContentContainer} {
|
|
236
344
|
color: white;
|
|
237
|
-
background-color: ${props => COLORS.
|
|
345
|
+
background-color: ${props => COLORS.generateToken({
|
|
346
|
+
componentType: 'bg-fill',
|
|
347
|
+
defaultVariant: 'critical'
|
|
348
|
+
}, props.theme)};
|
|
238
349
|
}
|
|
239
350
|
&:hover > ${ButtonContentContainer},
|
|
240
351
|
&.hover-state > ${ButtonContentContainer} {
|
|
241
|
-
background-color: ${props => COLORS.
|
|
352
|
+
background-color: ${props => COLORS.generateToken({
|
|
353
|
+
componentType: 'bg-fill',
|
|
354
|
+
state: 'hover',
|
|
355
|
+
defaultVariant: 'critical'
|
|
356
|
+
}, props.theme)};
|
|
242
357
|
}
|
|
243
358
|
&:active > ${ButtonContentContainer},
|
|
244
359
|
&.active-state > ${ButtonContentContainer} {
|
|
245
|
-
background-color: ${props => COLORS.
|
|
360
|
+
background-color: ${props => COLORS.generateToken({
|
|
361
|
+
componentType: 'bg-fill',
|
|
362
|
+
state: 'active',
|
|
363
|
+
defaultVariant: 'critical'
|
|
364
|
+
}, props.theme)};
|
|
246
365
|
}
|
|
247
366
|
|
|
248
367
|
&:disabled > ${ButtonContentContainer},
|
|
249
368
|
&.disabled-state > ${ButtonContentContainer} {
|
|
250
|
-
background-color: ${props => COLORS.
|
|
251
|
-
|
|
369
|
+
background-color: ${props => COLORS.generateToken({
|
|
370
|
+
componentType: 'bg-fill',
|
|
371
|
+
state: 'disabled'
|
|
372
|
+
}, props.theme)};
|
|
373
|
+
color: ${props => COLORS.generateToken({
|
|
374
|
+
componentType: 'text',
|
|
375
|
+
isOnFill: true,
|
|
376
|
+
state: 'disabled'
|
|
377
|
+
}, props.theme)};
|
|
252
378
|
}
|
|
253
379
|
`;
|
|
254
380
|
/**
|
|
@@ -266,7 +392,8 @@ const Button = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
266
392
|
testId,
|
|
267
393
|
disabled,
|
|
268
394
|
flatEdge,
|
|
269
|
-
icon
|
|
395
|
+
icon,
|
|
396
|
+
iconPosition = 'left'
|
|
270
397
|
} = _ref,
|
|
271
398
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
272
399
|
// Let's filter out properties that we don't need to render.
|
|
@@ -274,14 +401,18 @@ const Button = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
274
401
|
loading
|
|
275
402
|
} = props,
|
|
276
403
|
renderProps = _objectWithoutProperties(props, _excluded2);
|
|
277
|
-
const
|
|
278
|
-
|
|
404
|
+
const theme = useTheme();
|
|
405
|
+
const renderIcon = () => /*#__PURE__*/_jsx(_Fragment, {
|
|
406
|
+
children: /*#__PURE__*/_jsx("span", {
|
|
279
407
|
className: (children ? 'extramargin ' : '') + (loading ? 'icon loading' : 'icon'),
|
|
280
408
|
children: icon
|
|
281
|
-
})
|
|
409
|
+
})
|
|
410
|
+
});
|
|
411
|
+
const renderContent = () => /*#__PURE__*/_jsxs(_Fragment, {
|
|
412
|
+
children: [icon && iconPosition == 'left' && renderIcon(), children && /*#__PURE__*/_jsx("span", {
|
|
282
413
|
className: loading ? 'label loading' : 'label',
|
|
283
414
|
children: children
|
|
284
|
-
}), loading && /*#__PURE__*/_jsx(LoadingIndicator, {})]
|
|
415
|
+
}), icon && iconPosition == 'right' && renderIcon(), loading && /*#__PURE__*/_jsx(LoadingIndicator, {})]
|
|
285
416
|
});
|
|
286
417
|
let ButtonStyled = ButtonPrimaryStyled;
|
|
287
418
|
switch (variant) {
|
|
@@ -323,7 +454,8 @@ Button.propTypes = {
|
|
|
323
454
|
width: _pt.oneOfType([_pt.oneOf(['auto']), _pt.string]),
|
|
324
455
|
loading: _pt.bool,
|
|
325
456
|
testId: _pt.string,
|
|
326
|
-
icon: _pt.node
|
|
457
|
+
icon: _pt.node,
|
|
458
|
+
iconPosition: _pt.oneOf(['left', 'right'])
|
|
327
459
|
};
|
|
328
460
|
export default Button;
|
|
329
461
|
//# sourceMappingURL=Button.js.map
|