@laerdal/life-react-components 3.0.1-dev.2 → 3.0.1-dev.20.full

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/dist/Accordion/AccordionItem.cjs +2 -2
  2. package/dist/Accordion/AccordionItem.cjs.map +1 -1
  3. package/dist/Accordion/AccordionItem.js +3 -3
  4. package/dist/Accordion/AccordionItem.js.map +1 -1
  5. package/dist/Accordion/index.cjs +46 -4
  6. package/dist/Accordion/index.cjs.map +1 -1
  7. package/dist/Accordion/index.d.ts +4 -1
  8. package/dist/Accordion/index.js +4 -1
  9. package/dist/Accordion/index.js.map +1 -1
  10. package/dist/Accordion/styles.cjs +6 -6
  11. package/dist/Accordion/styles.cjs.map +1 -1
  12. package/dist/Accordion/styles.d.ts +2 -2
  13. package/dist/Accordion/styles.js +3 -3
  14. package/dist/Accordion/styles.js.map +1 -1
  15. package/dist/AuthPage/AuthPage.cjs +4 -3
  16. package/dist/AuthPage/AuthPage.cjs.map +1 -1
  17. package/dist/AuthPage/AuthPage.d.ts +2 -1
  18. package/dist/AuthPage/AuthPage.js +2 -2
  19. package/dist/AuthPage/AuthPage.js.map +1 -1
  20. package/dist/AuthPage/index.cjs +31 -3
  21. package/dist/AuthPage/index.cjs.map +1 -1
  22. package/dist/AuthPage/index.d.ts +4 -3
  23. package/dist/AuthPage/index.js +4 -3
  24. package/dist/AuthPage/index.js.map +1 -1
  25. package/dist/Banners/Banner.cjs +16 -11
  26. package/dist/Banners/Banner.cjs.map +1 -1
  27. package/dist/Banners/Banner.d.ts +33 -1
  28. package/dist/Banners/Banner.js +10 -10
  29. package/dist/Banners/Banner.js.map +1 -1
  30. package/dist/Banners/OverviewBanner.cjs +7 -5
  31. package/dist/Banners/OverviewBanner.cjs.map +1 -1
  32. package/dist/Banners/OverviewBanner.d.ts +8 -2
  33. package/dist/Banners/OverviewBanner.js +4 -4
  34. package/dist/Banners/OverviewBanner.js.map +1 -1
  35. package/dist/Banners/index.cjs +31 -3
  36. package/dist/Banners/index.cjs.map +1 -1
  37. package/dist/Banners/index.d.ts +4 -3
  38. package/dist/Banners/index.js +4 -5
  39. package/dist/Banners/index.js.map +1 -1
  40. package/dist/Breadcrumb/Breadcrumb.cjs +2 -2
  41. package/dist/Breadcrumb/Breadcrumb.cjs.map +1 -1
  42. package/dist/Breadcrumb/Breadcrumb.d.ts +1 -1
  43. package/dist/Breadcrumb/Breadcrumb.js +3 -3
  44. package/dist/Breadcrumb/Breadcrumb.js.map +1 -1
  45. package/dist/Breadcrumb/index.cjs +42 -2
  46. package/dist/Breadcrumb/index.cjs.map +1 -1
  47. package/dist/Breadcrumb/index.d.ts +3 -0
  48. package/dist/Breadcrumb/index.js +3 -0
  49. package/dist/Breadcrumb/index.js.map +1 -1
  50. package/dist/Breadcrumb/styles.cjs +5 -5
  51. package/dist/Breadcrumb/styles.cjs.map +1 -1
  52. package/dist/Breadcrumb/styles.d.ts +2 -2
  53. package/dist/Breadcrumb/styles.js +2 -2
  54. package/dist/Breadcrumb/styles.js.map +1 -1
  55. package/dist/Button/BackButton.cjs +2 -2
  56. package/dist/Button/BackButton.cjs.map +1 -1
  57. package/dist/Button/BackButton.d.ts +1 -1
  58. package/dist/Button/BackButton.js +2 -2
  59. package/dist/Button/BackButton.js.map +1 -1
  60. package/dist/Button/DualFunctionButton.cjs +3 -3
  61. package/dist/Button/DualFunctionButton.cjs.map +1 -1
  62. package/dist/Button/DualFunctionButton.js +4 -4
  63. package/dist/Button/DualFunctionButton.js.map +1 -1
  64. package/dist/Button/Iconbutton.cjs +10 -10
  65. package/dist/Button/Iconbutton.cjs.map +1 -1
  66. package/dist/Button/Iconbutton.d.ts +1 -1
  67. package/dist/Button/Iconbutton.js +8 -8
  68. package/dist/Button/Iconbutton.js.map +1 -1
  69. package/dist/Button/index.cjs +57 -5
  70. package/dist/Button/index.cjs.map +1 -1
  71. package/dist/Button/index.d.ts +4 -0
  72. package/dist/Button/index.js +4 -0
  73. package/dist/Button/index.js.map +1 -1
  74. package/dist/Card/VerticalCard/Card.cjs +7 -7
  75. package/dist/Card/VerticalCard/Card.cjs.map +1 -1
  76. package/dist/Card/VerticalCard/Card.d.ts +2 -2
  77. package/dist/Card/VerticalCard/Card.js +4 -4
  78. package/dist/Card/VerticalCard/Card.js.map +1 -1
  79. package/dist/Card/VerticalCard/CardBottomSection.cjs +21 -21
  80. package/dist/Card/VerticalCard/CardBottomSection.cjs.map +1 -1
  81. package/dist/Card/VerticalCard/CardBottomSection.d.ts +7 -7
  82. package/dist/Card/VerticalCard/CardBottomSection.js +13 -13
  83. package/dist/Card/VerticalCard/CardBottomSection.js.map +1 -1
  84. package/dist/Card/VerticalCard/CardMiddleSection.cjs +11 -11
  85. package/dist/Card/VerticalCard/CardMiddleSection.cjs.map +1 -1
  86. package/dist/Card/VerticalCard/CardMiddleSection.d.ts +3 -3
  87. package/dist/Card/VerticalCard/CardMiddleSection.js +7 -7
  88. package/dist/Card/VerticalCard/CardMiddleSection.js.map +1 -1
  89. package/dist/Card/VerticalCard/CardTopSection.cjs +13 -13
  90. package/dist/Card/VerticalCard/CardTopSection.cjs.map +1 -1
  91. package/dist/Card/VerticalCard/CardTopSection.d.ts +4 -4
  92. package/dist/Card/VerticalCard/CardTopSection.js +8 -8
  93. package/dist/Card/VerticalCard/CardTopSection.js.map +1 -1
  94. package/dist/Chips/index.cjs +19 -0
  95. package/dist/Chips/index.cjs.map +1 -1
  96. package/dist/Chips/index.d.ts +1 -0
  97. package/dist/Chips/index.js +1 -0
  98. package/dist/Chips/index.js.map +1 -1
  99. package/dist/Dropdown/BasicDropdown.cjs +3 -3
  100. package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
  101. package/dist/Dropdown/BasicDropdown.d.ts +5 -5
  102. package/dist/Dropdown/BasicDropdown.js +4 -4
  103. package/dist/Dropdown/BasicDropdown.js.map +1 -1
  104. package/dist/Dropdown/CommonStyling.cjs +19 -19
  105. package/dist/Dropdown/CommonStyling.cjs.map +1 -1
  106. package/dist/Dropdown/CommonStyling.d.ts +9 -9
  107. package/dist/Dropdown/CommonStyling.js +9 -9
  108. package/dist/Dropdown/CommonStyling.js.map +1 -1
  109. package/dist/Dropdown/DropdownButton.cjs +9 -8
  110. package/dist/Dropdown/DropdownButton.cjs.map +1 -1
  111. package/dist/Dropdown/DropdownButton.d.ts +1 -0
  112. package/dist/Dropdown/DropdownButton.js +8 -8
  113. package/dist/Dropdown/DropdownButton.js.map +1 -1
  114. package/dist/Dropdown/DropdownContent.cjs +18 -16
  115. package/dist/Dropdown/DropdownContent.cjs.map +1 -1
  116. package/dist/Dropdown/DropdownContent.d.ts +10 -1
  117. package/dist/Dropdown/DropdownContent.js +15 -15
  118. package/dist/Dropdown/DropdownContent.js.map +1 -1
  119. package/dist/Dropdown/DropdownFilter.cjs +3 -3
  120. package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
  121. package/dist/Dropdown/DropdownFilter.d.ts +1 -1
  122. package/dist/Dropdown/DropdownFilter.js +4 -4
  123. package/dist/Dropdown/DropdownFilter.js.map +1 -1
  124. package/dist/Dropdown/index.cjs +57 -5
  125. package/dist/Dropdown/index.cjs.map +1 -1
  126. package/dist/Dropdown/index.d.ts +4 -0
  127. package/dist/Dropdown/index.js +4 -0
  128. package/dist/Dropdown/index.js.map +1 -1
  129. package/dist/InputFields/DatepickerField.cjs +80 -4
  130. package/dist/InputFields/DatepickerField.cjs.map +1 -1
  131. package/dist/InputFields/DatepickerField.d.ts +2 -0
  132. package/dist/InputFields/DatepickerField.js +80 -4
  133. package/dist/InputFields/DatepickerField.js.map +1 -1
  134. package/dist/InputFields/NumberField.cjs +1 -1
  135. package/dist/InputFields/NumberField.cjs.map +1 -1
  136. package/dist/InputFields/NumberField.js +1 -1
  137. package/dist/InputFields/NumberField.js.map +1 -1
  138. package/dist/ProfileButton/ProfileButton.cjs +1 -1
  139. package/dist/ProfileButton/ProfileButton.cjs.map +1 -1
  140. package/dist/ProfileButton/ProfileButton.js +2 -2
  141. package/dist/ProfileButton/ProfileButton.js.map +1 -1
  142. package/dist/Table/Table.cjs +18 -6
  143. package/dist/Table/Table.cjs.map +1 -1
  144. package/dist/Table/Table.js +18 -6
  145. package/dist/Table/Table.js.map +1 -1
  146. package/dist/Table/TableBody.cjs +6 -4
  147. package/dist/Table/TableBody.cjs.map +1 -1
  148. package/dist/Table/TableBody.js +6 -4
  149. package/dist/Table/TableBody.js.map +1 -1
  150. package/dist/Table/TableStyles.cjs +4 -1
  151. package/dist/Table/TableStyles.cjs.map +1 -1
  152. package/dist/Table/TableStyles.d.ts +3 -1
  153. package/dist/Table/TableStyles.js +4 -1
  154. package/dist/Table/TableStyles.js.map +1 -1
  155. package/dist/Table/TableTypes.cjs.map +1 -1
  156. package/dist/Table/TableTypes.d.ts +2 -0
  157. package/dist/Table/TableTypes.js.map +1 -1
  158. package/dist/Toggles/ToggleButton.cjs +3 -2
  159. package/dist/Toggles/ToggleButton.cjs.map +1 -1
  160. package/dist/Toggles/ToggleButton.js +4 -3
  161. package/dist/Toggles/ToggleButton.js.map +1 -1
  162. package/dist/Toggles/ToggleSwitch.cjs +3 -0
  163. package/dist/Toggles/ToggleSwitch.cjs.map +1 -1
  164. package/dist/Toggles/ToggleSwitch.js +3 -0
  165. package/dist/Toggles/ToggleSwitch.js.map +1 -1
  166. package/dist/Toggles/TogglerStyles.cjs +5 -10
  167. package/dist/Toggles/TogglerStyles.cjs.map +1 -1
  168. package/dist/Toggles/TogglerStyles.js +5 -7
  169. package/dist/Toggles/TogglerStyles.js.map +1 -1
  170. package/dist/Tooltips/TooltipStyles.cjs +1 -1
  171. package/dist/Tooltips/TooltipStyles.cjs.map +1 -1
  172. package/dist/Tooltips/TooltipStyles.js +1 -1
  173. package/dist/Tooltips/TooltipStyles.js.map +1 -1
  174. package/dist/styles/z-indexes.cjs +1 -0
  175. package/dist/styles/z-indexes.cjs.map +1 -1
  176. package/dist/styles/z-indexes.d.ts +1 -0
  177. package/dist/styles/z-indexes.js +1 -0
  178. package/dist/styles/z-indexes.js.map +1 -1
  179. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"Iconbutton.cjs","names":["getBorderRadius","props","borderRadius","getBorderRadiusStyle","radius","flatEdge","IconButtonContent","styled","div","StyledIconButton","button","hideOnLowWidth","BREAKPOINTS","MEDIUM","unsetIconSize","invertFocus","invertedFocusStyles","focusStyles","StyledPrimaryIconButton","useTransparentBackground","COLORS","primary_500","iconColor","white","primary_700","primary_800","neutral_200","StyledSecondaryIconButton","neutral_600","shouldNotInteract","primary_20","primary_100","neutral_300","IconButton","React","forwardRef","ref","id","variant","shape","action","isInMobileMenu","children","disabled","tabIndex","focusBackgroundColor","type","hidden","dataTestId","focusOnClick","tooltip","rest","render","event","stopPropagation","defaultOnMouseDownHandler","undefined"],"sources":["../../src/Button/Iconbutton.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\n\nimport { BREAKPOINTS, COLORS, focusStyles, invertedFocusStyles } from '../styles';\nimport { defaultOnMouseDownHandler } from '../common';\nimport { Testable } from '../types';\nimport {TooltipProps} from \"../Tooltips/TooltipTypes\";\nimport TooltipWrapper from \"../Tooltips/TooltipWrapper\";\n\ninterface HeaderItemProps {\n hideOnLowWidth: boolean;\n inMobileMenu?: boolean;\n useTransparentBackground?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n borderRadius?: number;\n shape?: string;\n flatEdge?: string;\n focusBackgroundColor?: string;\n invertFocus?: boolean;\n shouldNotInteract?: boolean;\n}\n\nconst getBorderRadius = (props: HeaderItemProps) => (props.borderRadius ? `${props.borderRadius}px` : '4px');\n\nconst getBorderRadiusStyle = (props: HeaderItemProps) => {\n const radius = getBorderRadius(props);\n switch (props.flatEdge) {\n case 'left':\n return `0px ${radius} ${radius} 0px`;\n\n case 'right':\n return `${radius} 0px 0px ${radius}`;\n\n case 'none':\n default:\n return `${radius}`;\n }\n};\n\nexport const IconButtonContent = styled.div``;\n\nexport const StyledIconButton = styled.button<HeaderItemProps>`\n border-width: 0;\n cursor: pointer;\n height: 48px;\n width: 48px;\n background: transparent;\n position: relative;\n\n display: ${(props) => (props.hideOnLowWidth ? 'none' : 'block')};\n ${BREAKPOINTS.MEDIUM} {\n display: block;\n }\n\n border-radius: ${(props) => (props.borderRadius ? `${props.borderRadius}px` : '4px')};\n ${IconButtonContent} {\n height: 36px;\n width: 36px;\n border-radius: ${getBorderRadiusStyle};\n display: flex;\n justify-content: center;\n align-items: center;\n svg {\n height: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n width: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n padding: 0;\n }\n }\n &:only-child {\n margin: 0;\n }\n &:disabled {\n cursor: not-allowed;\n }\n\n &:focus {\n ${(props) => (props.invertFocus ? invertedFocusStyles : focusStyles)}\n }\n`;\n\nexport const StyledPrimaryIconButton = styled(StyledIconButton)`\n ${IconButtonContent} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.primary_500)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.white};\n path {\n fill: ${(props) => props.iconColor || COLORS.white};\n }\n }\n }\n &:hover:not(:disabled),\n &.hover-state {\n ${IconButtonContent} {\n background-color: ${COLORS.primary_700};\n }\n ${IconButtonContent} svg path,\n ${IconButtonContent} svg {\n fill: ${COLORS.white};\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ${IconButtonContent} {\n background: ${COLORS.primary_800};\n }\n ${IconButtonContent} svg path,\n ${IconButtonContent} svg {\n fill: ${COLORS.white};\n }\n }\n &:disabled {\n ${IconButtonContent} {\n background-color: ${COLORS.neutral_200};\n }\n svg {\n path {\n fill: ${COLORS.white};\n }\n fill: ${COLORS.white};\n }\n }\n`;\n\nexport const StyledSecondaryIconButton = styled(StyledIconButton)`\n ${IconButtonContent} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.white)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n path {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n }\n }\n }\n\n pointer-events: ${(props) => (props.shouldNotInteract ? 'none' : 'auto')};\n\n &:hover:not(:disabled) {\n ${IconButtonContent} {\n background-color: ${COLORS.primary_20};\n }\n ${IconButtonContent} svg path,\n ${IconButtonContent} svg {\n fill: ${COLORS.primary_700};\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ${IconButtonContent} {\n background: ${COLORS.primary_100};\n }\n ${IconButtonContent} svg path,\n ${IconButtonContent} svg {\n fill: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n ${IconButtonContent} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.white)};\n }\n svg {\n path {\n fill: ${COLORS.neutral_300};\n }\n fill: ${COLORS.neutral_300};\n }\n }\n`;\n\nexport interface IconButtonProps extends Testable, Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'onClick' | 'onMouseDown'> {\n variant?: 'primary' | 'secondary';\n shape?: 'square' | 'circular';\n action: (event?: React.MouseEvent<HTMLButtonElement>) => void;\n hideOnLowWidth?: boolean;\n flatEdge?: 'right' | 'left' | 'none' | undefined;\n isInMobileMenu?: boolean;\n useTransparentBackground?: boolean;\n shouldNotInteract?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n borderRadius?: number;\n focusBackgroundColor?: string;\n children?: React.ReactNode;\n invertFocus?: boolean;\n focusOnClick?: boolean;\n\n tooltip?: Omit<TooltipProps, 'tabIndex'>;\n}\n\nconst IconButton = React.forwardRef<HTMLButtonElement, IconButtonProps>(\n (\n {\n id,\n variant,\n shape,\n action,\n hideOnLowWidth,\n isInMobileMenu,\n children,\n useTransparentBackground,\n shouldNotInteract,\n disabled,\n iconColor,\n unsetIconSize,\n tabIndex,\n flatEdge,\n borderRadius,\n focusBackgroundColor,\n type,\n hidden,\n invertFocus,\n dataTestId,\n focusOnClick,\n tooltip,\n ...rest\n }: IconButtonProps,\n ref,\n ) => {\n\n const render = () => {\n // Let's render button\n switch (variant) {\n case 'secondary':\n return (\n <StyledSecondaryIconButton\n id={id}\n type={type ?? 'button'}\n data-testid={dataTestId}\n ref={ref}\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n action(event);\n }}\n disabled={disabled}\n\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n shouldNotInteract={shouldNotInteract}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={!focusOnClick ? defaultOnMouseDownHandler : undefined}\n hidden={hidden}\n invertFocus={invertFocus}\n focusBackgroundColor={focusBackgroundColor}\n {...rest}>\n <IconButtonContent>{children}</IconButtonContent>\n </StyledSecondaryIconButton>\n );\n case 'primary':\n default:\n return (\n <StyledPrimaryIconButton\n id={id}\n type={type ?? 'button'}\n data-testid={dataTestId}\n flatEdge={flatEdge}\n ref={ref}\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n action(event);\n }}\n disabled={disabled}\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={!focusOnClick ? defaultOnMouseDownHandler : undefined}\n hidden={hidden}\n invertFocus={invertFocus}\n focusBackgroundColor={focusBackgroundColor}\n {...rest}>\n <IconButtonContent>{children}</IconButtonContent>\n </StyledPrimaryIconButton>\n );\n }\n }\n\n return !tooltip\n ? render()\n : (\n <TooltipWrapper {...tooltip}>\n {render()}\n </TooltipWrapper>\n );\n },\n);\n\nexport default IconButton;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Iconbutton.cjs","names":["getBorderRadius","props","borderRadius","getBorderRadiusStyle","radius","flatEdge","IconButtonContentStyles","styled","div","StyledIconButton","button","hideOnLowWidth","BREAKPOINTS","MEDIUM","unsetIconSize","invertFocus","invertedFocusStyles","focusStyles","StyledPrimaryIconButton","useTransparentBackground","COLORS","primary_500","iconColor","white","primary_700","primary_800","neutral_200","StyledSecondaryIconButton","neutral_600","shouldNotInteract","primary_20","primary_100","neutral_300","IconButton","React","forwardRef","ref","id","variant","shape","action","isInMobileMenu","children","disabled","tabIndex","focusBackgroundColor","type","hidden","dataTestId","focusOnClick","tooltip","rest","render","event","stopPropagation","defaultOnMouseDownHandler","undefined"],"sources":["../../src/Button/Iconbutton.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\n\nimport { BREAKPOINTS, COLORS, focusStyles, invertedFocusStyles } from '../styles';\nimport { defaultOnMouseDownHandler } from '../common';\nimport { Testable } from '../types';\nimport {TooltipProps} from \"../Tooltips/TooltipTypes\";\nimport TooltipWrapper from \"../Tooltips/TooltipWrapper\";\n\ninterface HeaderItemProps {\n hideOnLowWidth: boolean;\n inMobileMenu?: boolean;\n useTransparentBackground?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n borderRadius?: number;\n shape?: string;\n flatEdge?: string;\n focusBackgroundColor?: string;\n invertFocus?: boolean;\n shouldNotInteract?: boolean;\n}\n\nconst getBorderRadius = (props: HeaderItemProps) => (props.borderRadius ? `${props.borderRadius}px` : '4px');\n\nconst getBorderRadiusStyle = (props: HeaderItemProps) => {\n const radius = getBorderRadius(props);\n switch (props.flatEdge) {\n case 'left':\n return `0px ${radius} ${radius} 0px`;\n\n case 'right':\n return `${radius} 0px 0px ${radius}`;\n\n case 'none':\n default:\n return `${radius}`;\n }\n};\n\nexport const IconButtonContentStyles = styled.div``;\n\nexport const StyledIconButton = styled.button<HeaderItemProps>`\n border-width: 0;\n cursor: pointer;\n height: 48px;\n width: 48px;\n background: transparent;\n position: relative;\n\n display: ${(props) => (props.hideOnLowWidth ? 'none' : 'block')};\n ${BREAKPOINTS.MEDIUM} {\n display: block;\n }\n\n border-radius: ${(props) => (props.borderRadius ? `${props.borderRadius}px` : '4px')};\n ${IconButtonContentStyles} {\n height: 36px;\n width: 36px;\n border-radius: ${getBorderRadiusStyle};\n display: flex;\n justify-content: center;\n align-items: center;\n svg {\n height: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n width: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n padding: 0;\n }\n }\n &:only-child {\n margin: 0;\n }\n &:disabled {\n cursor: not-allowed;\n }\n\n &:focus {\n ${(props) => (props.invertFocus ? invertedFocusStyles : focusStyles)}\n }\n`;\n\nexport const StyledPrimaryIconButton = styled(StyledIconButton)`\n ${IconButtonContentStyles} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.primary_500)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.white};\n path {\n fill: ${(props) => props.iconColor || COLORS.white};\n }\n }\n }\n &:hover:not(:disabled),\n &.hover-state {\n ${IconButtonContentStyles} {\n background-color: ${COLORS.primary_700};\n }\n ${IconButtonContentStyles} svg path,\n ${IconButtonContentStyles} svg {\n fill: ${COLORS.white};\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ${IconButtonContentStyles} {\n background: ${COLORS.primary_800};\n }\n ${IconButtonContentStyles} svg path,\n ${IconButtonContentStyles} svg {\n fill: ${COLORS.white};\n }\n }\n &:disabled {\n ${IconButtonContentStyles} {\n background-color: ${COLORS.neutral_200};\n }\n svg {\n path {\n fill: ${COLORS.white};\n }\n fill: ${COLORS.white};\n }\n }\n`;\n\nexport const StyledSecondaryIconButton = styled(StyledIconButton)`\n ${IconButtonContentStyles} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.white)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n path {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n }\n }\n }\n\n pointer-events: ${(props) => (props.shouldNotInteract ? 'none' : 'auto')};\n\n &:hover:not(:disabled) {\n ${IconButtonContentStyles} {\n background-color: ${COLORS.primary_20};\n }\n ${IconButtonContentStyles} svg path,\n ${IconButtonContentStyles} svg {\n fill: ${COLORS.primary_700};\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ${IconButtonContentStyles} {\n background: ${COLORS.primary_100};\n }\n ${IconButtonContentStyles} svg path,\n ${IconButtonContentStyles} svg {\n fill: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n ${IconButtonContentStyles} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.white)};\n }\n svg {\n path {\n fill: ${COLORS.neutral_300};\n }\n fill: ${COLORS.neutral_300};\n }\n }\n`;\n\nexport interface IconButtonProps extends Testable, Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'onClick' | 'onMouseDown'> {\n variant?: 'primary' | 'secondary';\n shape?: 'square' | 'circular';\n action: (event?: React.MouseEvent<HTMLButtonElement>) => void;\n hideOnLowWidth?: boolean;\n flatEdge?: 'right' | 'left' | 'none' | undefined;\n isInMobileMenu?: boolean;\n useTransparentBackground?: boolean;\n shouldNotInteract?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n borderRadius?: number;\n focusBackgroundColor?: string;\n children?: React.ReactNode;\n invertFocus?: boolean;\n focusOnClick?: boolean;\n\n tooltip?: Omit<TooltipProps, 'tabIndex'>;\n}\n\nconst IconButton = React.forwardRef<HTMLButtonElement, IconButtonProps>(\n (\n {\n id,\n variant,\n shape,\n action,\n hideOnLowWidth,\n isInMobileMenu,\n children,\n useTransparentBackground,\n shouldNotInteract,\n disabled,\n iconColor,\n unsetIconSize,\n tabIndex,\n flatEdge,\n borderRadius,\n focusBackgroundColor,\n type,\n hidden,\n invertFocus,\n dataTestId,\n focusOnClick,\n tooltip,\n ...rest\n }: IconButtonProps,\n ref,\n ) => {\n\n const render = () => {\n // Let's render button\n switch (variant) {\n case 'secondary':\n return (\n <StyledSecondaryIconButton\n id={id}\n type={type ?? 'button'}\n data-testid={dataTestId}\n ref={ref}\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n action(event);\n }}\n disabled={disabled}\n\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n shouldNotInteract={shouldNotInteract}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={!focusOnClick ? defaultOnMouseDownHandler : undefined}\n hidden={hidden}\n invertFocus={invertFocus}\n focusBackgroundColor={focusBackgroundColor}\n {...rest}>\n <IconButtonContentStyles>{children}</IconButtonContentStyles>\n </StyledSecondaryIconButton>\n );\n case 'primary':\n default:\n return (\n <StyledPrimaryIconButton\n id={id}\n type={type ?? 'button'}\n data-testid={dataTestId}\n flatEdge={flatEdge}\n ref={ref}\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n action(event);\n }}\n disabled={disabled}\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={!focusOnClick ? defaultOnMouseDownHandler : undefined}\n hidden={hidden}\n invertFocus={invertFocus}\n focusBackgroundColor={focusBackgroundColor}\n {...rest}>\n <IconButtonContentStyles>{children}</IconButtonContentStyles>\n </StyledPrimaryIconButton>\n );\n }\n }\n\n return !tooltip\n ? render()\n : (\n <TooltipWrapper {...tooltip}>\n {render()}\n </TooltipWrapper>\n );\n },\n);\n\nexport default IconButton;\n"],"mappings":"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"}
@@ -14,7 +14,7 @@ interface HeaderItemProps {
14
14
  invertFocus?: boolean;
15
15
  shouldNotInteract?: boolean;
16
16
  }
17
- export declare const IconButtonContent: import("styled-components").StyledComponent<"div", any, {}, never>;
17
+ export declare const IconButtonContentStyles: import("styled-components").StyledComponent<"div", any, {}, never>;
18
18
  export declare const StyledIconButton: import("styled-components").StyledComponent<"button", any, HeaderItemProps, never>;
19
19
  export declare const StyledPrimaryIconButton: import("styled-components").StyledComponent<"button", any, HeaderItemProps, never>;
20
20
  export declare const StyledSecondaryIconButton: import("styled-components").StyledComponent<"button", any, HeaderItemProps, never>;
@@ -27,26 +27,26 @@ var getBorderRadiusStyle = function getBorderRadiusStyle(props) {
27
27
  return "".concat(radius);
28
28
  }
29
29
  };
30
- export var IconButtonContent = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral([""])));
30
+ export var IconButtonContentStyles = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral([""])));
31
31
  export var StyledIconButton = styled.button(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n border-width: 0;\n cursor: pointer;\n height: 48px;\n width: 48px;\n background: transparent;\n position: relative;\n\n display: ", ";\n ", " {\n display: block;\n }\n\n border-radius: ", ";\n ", " {\n height: 36px;\n width: 36px;\n border-radius: ", ";\n display: flex;\n justify-content: center;\n align-items: center;\n svg {\n height: ", ";\n width: ", ";\n padding: 0;\n }\n }\n &:only-child {\n margin: 0;\n }\n &:disabled {\n cursor: not-allowed;\n }\n\n &:focus {\n ", "\n }\n"])), function (props) {
32
32
  return props.hideOnLowWidth ? 'none' : 'block';
33
33
  }, BREAKPOINTS.MEDIUM, function (props) {
34
34
  return props.borderRadius ? "".concat(props.borderRadius, "px") : '4px';
35
- }, IconButtonContent, getBorderRadiusStyle, function (props) {
35
+ }, IconButtonContentStyles, getBorderRadiusStyle, function (props) {
36
36
  return props.unsetIconSize ? 'unset' : '24px';
37
37
  }, function (props) {
38
38
  return props.unsetIconSize ? 'unset' : '24px';
39
39
  }, function (props) {
40
40
  return props.invertFocus ? invertedFocusStyles : focusStyles;
41
41
  });
42
- export var StyledPrimaryIconButton = styled(StyledIconButton)(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n ", " {\n background-color: ", ";\n\n svg {\n fill: ", ";\n path {\n fill: ", ";\n }\n }\n }\n &:hover:not(:disabled),\n &.hover-state {\n ", " {\n background-color: ", ";\n }\n ", " svg path,\n ", " svg {\n fill: ", ";\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ", " {\n background: ", ";\n }\n ", " svg path,\n ", " svg {\n fill: ", ";\n }\n }\n &:disabled {\n ", " {\n background-color: ", ";\n }\n svg {\n path {\n fill: ", ";\n }\n fill: ", ";\n }\n }\n"])), IconButtonContent, function (props) {
42
+ export var StyledPrimaryIconButton = styled(StyledIconButton)(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n ", " {\n background-color: ", ";\n\n svg {\n fill: ", ";\n path {\n fill: ", ";\n }\n }\n }\n &:hover:not(:disabled),\n &.hover-state {\n ", " {\n background-color: ", ";\n }\n ", " svg path,\n ", " svg {\n fill: ", ";\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ", " {\n background: ", ";\n }\n ", " svg path,\n ", " svg {\n fill: ", ";\n }\n }\n &:disabled {\n ", " {\n background-color: ", ";\n }\n svg {\n path {\n fill: ", ";\n }\n fill: ", ";\n }\n }\n"])), IconButtonContentStyles, function (props) {
43
43
  return props.useTransparentBackground ? 'transparent' : COLORS.primary_500;
44
44
  }, function (props) {
45
45
  return props.iconColor || COLORS.white;
46
46
  }, function (props) {
47
47
  return props.iconColor || COLORS.white;
48
- }, IconButtonContent, COLORS.primary_700, IconButtonContent, IconButtonContent, COLORS.white, IconButtonContent, COLORS.primary_800, IconButtonContent, IconButtonContent, COLORS.white, IconButtonContent, COLORS.neutral_200, COLORS.white, COLORS.white);
49
- export var StyledSecondaryIconButton = styled(StyledIconButton)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n ", " {\n background-color: ", ";\n\n svg {\n fill: ", ";\n path {\n fill: ", ";\n }\n }\n }\n\n pointer-events: ", ";\n\n &:hover:not(:disabled) {\n ", " {\n background-color: ", ";\n }\n ", " svg path,\n ", " svg {\n fill: ", ";\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ", " {\n background: ", ";\n }\n ", " svg path,\n ", " svg {\n fill: ", ";\n }\n }\n\n &:disabled {\n ", " {\n background-color: ", ";\n }\n svg {\n path {\n fill: ", ";\n }\n fill: ", ";\n }\n }\n"])), IconButtonContent, function (props) {
48
+ }, IconButtonContentStyles, COLORS.primary_700, IconButtonContentStyles, IconButtonContentStyles, COLORS.white, IconButtonContentStyles, COLORS.primary_800, IconButtonContentStyles, IconButtonContentStyles, COLORS.white, IconButtonContentStyles, COLORS.neutral_200, COLORS.white, COLORS.white);
49
+ export var StyledSecondaryIconButton = styled(StyledIconButton)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n ", " {\n background-color: ", ";\n\n svg {\n fill: ", ";\n path {\n fill: ", ";\n }\n }\n }\n\n pointer-events: ", ";\n\n &:hover:not(:disabled) {\n ", " {\n background-color: ", ";\n }\n ", " svg path,\n ", " svg {\n fill: ", ";\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ", " {\n background: ", ";\n }\n ", " svg path,\n ", " svg {\n fill: ", ";\n }\n }\n\n &:disabled {\n ", " {\n background-color: ", ";\n }\n svg {\n path {\n fill: ", ";\n }\n fill: ", ";\n }\n }\n"])), IconButtonContentStyles, function (props) {
50
50
  return props.useTransparentBackground ? 'transparent' : COLORS.white;
51
51
  }, function (props) {
52
52
  return props.iconColor || COLORS.neutral_600;
@@ -54,7 +54,7 @@ export var StyledSecondaryIconButton = styled(StyledIconButton)(_templateObject4
54
54
  return props.iconColor || COLORS.neutral_600;
55
55
  }, function (props) {
56
56
  return props.shouldNotInteract ? 'none' : 'auto';
57
- }, IconButtonContent, COLORS.primary_20, IconButtonContent, IconButtonContent, COLORS.primary_700, IconButtonContent, COLORS.primary_100, IconButtonContent, IconButtonContent, COLORS.primary_800, IconButtonContent, function (props) {
57
+ }, IconButtonContentStyles, COLORS.primary_20, IconButtonContentStyles, IconButtonContentStyles, COLORS.primary_700, IconButtonContentStyles, COLORS.primary_100, IconButtonContentStyles, IconButtonContentStyles, COLORS.primary_800, IconButtonContentStyles, function (props) {
58
58
  return props.useTransparentBackground ? 'transparent' : COLORS.white;
59
59
  }, COLORS.neutral_300, COLORS.neutral_300);
60
60
  var IconButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
@@ -108,7 +108,7 @@ var IconButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
108
108
  invertFocus: invertFocus,
109
109
  focusBackgroundColor: focusBackgroundColor
110
110
  }, rest), {}, {
111
- children: /*#__PURE__*/_jsx(IconButtonContent, {
111
+ children: /*#__PURE__*/_jsx(IconButtonContentStyles, {
112
112
  children: children
113
113
  })
114
114
  }));
@@ -137,7 +137,7 @@ var IconButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
137
137
  invertFocus: invertFocus,
138
138
  focusBackgroundColor: focusBackgroundColor
139
139
  }, rest), {}, {
140
- children: /*#__PURE__*/_jsx(IconButtonContent, {
140
+ children: /*#__PURE__*/_jsx(IconButtonContentStyles, {
141
141
  children: children
142
142
  })
143
143
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"Iconbutton.js","names":["React","styled","BREAKPOINTS","COLORS","focusStyles","invertedFocusStyles","defaultOnMouseDownHandler","TooltipWrapper","getBorderRadius","props","borderRadius","getBorderRadiusStyle","radius","flatEdge","IconButtonContent","div","StyledIconButton","button","hideOnLowWidth","MEDIUM","unsetIconSize","invertFocus","StyledPrimaryIconButton","useTransparentBackground","primary_500","iconColor","white","primary_700","primary_800","neutral_200","StyledSecondaryIconButton","neutral_600","shouldNotInteract","primary_20","primary_100","neutral_300","IconButton","forwardRef","ref","id","variant","shape","action","isInMobileMenu","children","disabled","tabIndex","focusBackgroundColor","type","hidden","dataTestId","focusOnClick","tooltip","rest","render","event","stopPropagation","undefined"],"sources":["../../src/Button/Iconbutton.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\n\nimport { BREAKPOINTS, COLORS, focusStyles, invertedFocusStyles } from '../styles';\nimport { defaultOnMouseDownHandler } from '../common';\nimport { Testable } from '../types';\nimport {TooltipProps} from \"../Tooltips/TooltipTypes\";\nimport TooltipWrapper from \"../Tooltips/TooltipWrapper\";\n\ninterface HeaderItemProps {\n hideOnLowWidth: boolean;\n inMobileMenu?: boolean;\n useTransparentBackground?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n borderRadius?: number;\n shape?: string;\n flatEdge?: string;\n focusBackgroundColor?: string;\n invertFocus?: boolean;\n shouldNotInteract?: boolean;\n}\n\nconst getBorderRadius = (props: HeaderItemProps) => (props.borderRadius ? `${props.borderRadius}px` : '4px');\n\nconst getBorderRadiusStyle = (props: HeaderItemProps) => {\n const radius = getBorderRadius(props);\n switch (props.flatEdge) {\n case 'left':\n return `0px ${radius} ${radius} 0px`;\n\n case 'right':\n return `${radius} 0px 0px ${radius}`;\n\n case 'none':\n default:\n return `${radius}`;\n }\n};\n\nexport const IconButtonContent = styled.div``;\n\nexport const StyledIconButton = styled.button<HeaderItemProps>`\n border-width: 0;\n cursor: pointer;\n height: 48px;\n width: 48px;\n background: transparent;\n position: relative;\n\n display: ${(props) => (props.hideOnLowWidth ? 'none' : 'block')};\n ${BREAKPOINTS.MEDIUM} {\n display: block;\n }\n\n border-radius: ${(props) => (props.borderRadius ? `${props.borderRadius}px` : '4px')};\n ${IconButtonContent} {\n height: 36px;\n width: 36px;\n border-radius: ${getBorderRadiusStyle};\n display: flex;\n justify-content: center;\n align-items: center;\n svg {\n height: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n width: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n padding: 0;\n }\n }\n &:only-child {\n margin: 0;\n }\n &:disabled {\n cursor: not-allowed;\n }\n\n &:focus {\n ${(props) => (props.invertFocus ? invertedFocusStyles : focusStyles)}\n }\n`;\n\nexport const StyledPrimaryIconButton = styled(StyledIconButton)`\n ${IconButtonContent} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.primary_500)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.white};\n path {\n fill: ${(props) => props.iconColor || COLORS.white};\n }\n }\n }\n &:hover:not(:disabled),\n &.hover-state {\n ${IconButtonContent} {\n background-color: ${COLORS.primary_700};\n }\n ${IconButtonContent} svg path,\n ${IconButtonContent} svg {\n fill: ${COLORS.white};\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ${IconButtonContent} {\n background: ${COLORS.primary_800};\n }\n ${IconButtonContent} svg path,\n ${IconButtonContent} svg {\n fill: ${COLORS.white};\n }\n }\n &:disabled {\n ${IconButtonContent} {\n background-color: ${COLORS.neutral_200};\n }\n svg {\n path {\n fill: ${COLORS.white};\n }\n fill: ${COLORS.white};\n }\n }\n`;\n\nexport const StyledSecondaryIconButton = styled(StyledIconButton)`\n ${IconButtonContent} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.white)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n path {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n }\n }\n }\n\n pointer-events: ${(props) => (props.shouldNotInteract ? 'none' : 'auto')};\n\n &:hover:not(:disabled) {\n ${IconButtonContent} {\n background-color: ${COLORS.primary_20};\n }\n ${IconButtonContent} svg path,\n ${IconButtonContent} svg {\n fill: ${COLORS.primary_700};\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ${IconButtonContent} {\n background: ${COLORS.primary_100};\n }\n ${IconButtonContent} svg path,\n ${IconButtonContent} svg {\n fill: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n ${IconButtonContent} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.white)};\n }\n svg {\n path {\n fill: ${COLORS.neutral_300};\n }\n fill: ${COLORS.neutral_300};\n }\n }\n`;\n\nexport interface IconButtonProps extends Testable, Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'onClick' | 'onMouseDown'> {\n variant?: 'primary' | 'secondary';\n shape?: 'square' | 'circular';\n action: (event?: React.MouseEvent<HTMLButtonElement>) => void;\n hideOnLowWidth?: boolean;\n flatEdge?: 'right' | 'left' | 'none' | undefined;\n isInMobileMenu?: boolean;\n useTransparentBackground?: boolean;\n shouldNotInteract?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n borderRadius?: number;\n focusBackgroundColor?: string;\n children?: React.ReactNode;\n invertFocus?: boolean;\n focusOnClick?: boolean;\n\n tooltip?: Omit<TooltipProps, 'tabIndex'>;\n}\n\nconst IconButton = React.forwardRef<HTMLButtonElement, IconButtonProps>(\n (\n {\n id,\n variant,\n shape,\n action,\n hideOnLowWidth,\n isInMobileMenu,\n children,\n useTransparentBackground,\n shouldNotInteract,\n disabled,\n iconColor,\n unsetIconSize,\n tabIndex,\n flatEdge,\n borderRadius,\n focusBackgroundColor,\n type,\n hidden,\n invertFocus,\n dataTestId,\n focusOnClick,\n tooltip,\n ...rest\n }: IconButtonProps,\n ref,\n ) => {\n\n const render = () => {\n // Let's render button\n switch (variant) {\n case 'secondary':\n return (\n <StyledSecondaryIconButton\n id={id}\n type={type ?? 'button'}\n data-testid={dataTestId}\n ref={ref}\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n action(event);\n }}\n disabled={disabled}\n\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n shouldNotInteract={shouldNotInteract}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={!focusOnClick ? defaultOnMouseDownHandler : undefined}\n hidden={hidden}\n invertFocus={invertFocus}\n focusBackgroundColor={focusBackgroundColor}\n {...rest}>\n <IconButtonContent>{children}</IconButtonContent>\n </StyledSecondaryIconButton>\n );\n case 'primary':\n default:\n return (\n <StyledPrimaryIconButton\n id={id}\n type={type ?? 'button'}\n data-testid={dataTestId}\n flatEdge={flatEdge}\n ref={ref}\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n action(event);\n }}\n disabled={disabled}\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={!focusOnClick ? defaultOnMouseDownHandler : undefined}\n hidden={hidden}\n invertFocus={invertFocus}\n focusBackgroundColor={focusBackgroundColor}\n {...rest}>\n <IconButtonContent>{children}</IconButtonContent>\n </StyledPrimaryIconButton>\n );\n }\n }\n\n return !tooltip\n ? render()\n : (\n <TooltipWrapper {...tooltip}>\n {render()}\n </TooltipWrapper>\n );\n },\n);\n\nexport default IconButton;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Iconbutton.js","names":["React","styled","BREAKPOINTS","COLORS","focusStyles","invertedFocusStyles","defaultOnMouseDownHandler","TooltipWrapper","getBorderRadius","props","borderRadius","getBorderRadiusStyle","radius","flatEdge","IconButtonContentStyles","div","StyledIconButton","button","hideOnLowWidth","MEDIUM","unsetIconSize","invertFocus","StyledPrimaryIconButton","useTransparentBackground","primary_500","iconColor","white","primary_700","primary_800","neutral_200","StyledSecondaryIconButton","neutral_600","shouldNotInteract","primary_20","primary_100","neutral_300","IconButton","forwardRef","ref","id","variant","shape","action","isInMobileMenu","children","disabled","tabIndex","focusBackgroundColor","type","hidden","dataTestId","focusOnClick","tooltip","rest","render","event","stopPropagation","undefined"],"sources":["../../src/Button/Iconbutton.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\n\nimport { BREAKPOINTS, COLORS, focusStyles, invertedFocusStyles } from '../styles';\nimport { defaultOnMouseDownHandler } from '../common';\nimport { Testable } from '../types';\nimport {TooltipProps} from \"../Tooltips/TooltipTypes\";\nimport TooltipWrapper from \"../Tooltips/TooltipWrapper\";\n\ninterface HeaderItemProps {\n hideOnLowWidth: boolean;\n inMobileMenu?: boolean;\n useTransparentBackground?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n borderRadius?: number;\n shape?: string;\n flatEdge?: string;\n focusBackgroundColor?: string;\n invertFocus?: boolean;\n shouldNotInteract?: boolean;\n}\n\nconst getBorderRadius = (props: HeaderItemProps) => (props.borderRadius ? `${props.borderRadius}px` : '4px');\n\nconst getBorderRadiusStyle = (props: HeaderItemProps) => {\n const radius = getBorderRadius(props);\n switch (props.flatEdge) {\n case 'left':\n return `0px ${radius} ${radius} 0px`;\n\n case 'right':\n return `${radius} 0px 0px ${radius}`;\n\n case 'none':\n default:\n return `${radius}`;\n }\n};\n\nexport const IconButtonContentStyles = styled.div``;\n\nexport const StyledIconButton = styled.button<HeaderItemProps>`\n border-width: 0;\n cursor: pointer;\n height: 48px;\n width: 48px;\n background: transparent;\n position: relative;\n\n display: ${(props) => (props.hideOnLowWidth ? 'none' : 'block')};\n ${BREAKPOINTS.MEDIUM} {\n display: block;\n }\n\n border-radius: ${(props) => (props.borderRadius ? `${props.borderRadius}px` : '4px')};\n ${IconButtonContentStyles} {\n height: 36px;\n width: 36px;\n border-radius: ${getBorderRadiusStyle};\n display: flex;\n justify-content: center;\n align-items: center;\n svg {\n height: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n width: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n padding: 0;\n }\n }\n &:only-child {\n margin: 0;\n }\n &:disabled {\n cursor: not-allowed;\n }\n\n &:focus {\n ${(props) => (props.invertFocus ? invertedFocusStyles : focusStyles)}\n }\n`;\n\nexport const StyledPrimaryIconButton = styled(StyledIconButton)`\n ${IconButtonContentStyles} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.primary_500)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.white};\n path {\n fill: ${(props) => props.iconColor || COLORS.white};\n }\n }\n }\n &:hover:not(:disabled),\n &.hover-state {\n ${IconButtonContentStyles} {\n background-color: ${COLORS.primary_700};\n }\n ${IconButtonContentStyles} svg path,\n ${IconButtonContentStyles} svg {\n fill: ${COLORS.white};\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ${IconButtonContentStyles} {\n background: ${COLORS.primary_800};\n }\n ${IconButtonContentStyles} svg path,\n ${IconButtonContentStyles} svg {\n fill: ${COLORS.white};\n }\n }\n &:disabled {\n ${IconButtonContentStyles} {\n background-color: ${COLORS.neutral_200};\n }\n svg {\n path {\n fill: ${COLORS.white};\n }\n fill: ${COLORS.white};\n }\n }\n`;\n\nexport const StyledSecondaryIconButton = styled(StyledIconButton)`\n ${IconButtonContentStyles} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.white)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n path {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n }\n }\n }\n\n pointer-events: ${(props) => (props.shouldNotInteract ? 'none' : 'auto')};\n\n &:hover:not(:disabled) {\n ${IconButtonContentStyles} {\n background-color: ${COLORS.primary_20};\n }\n ${IconButtonContentStyles} svg path,\n ${IconButtonContentStyles} svg {\n fill: ${COLORS.primary_700};\n }\n }\n &:active:not(:disabled),\n &.active-state {\n ${IconButtonContentStyles} {\n background: ${COLORS.primary_100};\n }\n ${IconButtonContentStyles} svg path,\n ${IconButtonContentStyles} svg {\n fill: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n ${IconButtonContentStyles} {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.white)};\n }\n svg {\n path {\n fill: ${COLORS.neutral_300};\n }\n fill: ${COLORS.neutral_300};\n }\n }\n`;\n\nexport interface IconButtonProps extends Testable, Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'onClick' | 'onMouseDown'> {\n variant?: 'primary' | 'secondary';\n shape?: 'square' | 'circular';\n action: (event?: React.MouseEvent<HTMLButtonElement>) => void;\n hideOnLowWidth?: boolean;\n flatEdge?: 'right' | 'left' | 'none' | undefined;\n isInMobileMenu?: boolean;\n useTransparentBackground?: boolean;\n shouldNotInteract?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n borderRadius?: number;\n focusBackgroundColor?: string;\n children?: React.ReactNode;\n invertFocus?: boolean;\n focusOnClick?: boolean;\n\n tooltip?: Omit<TooltipProps, 'tabIndex'>;\n}\n\nconst IconButton = React.forwardRef<HTMLButtonElement, IconButtonProps>(\n (\n {\n id,\n variant,\n shape,\n action,\n hideOnLowWidth,\n isInMobileMenu,\n children,\n useTransparentBackground,\n shouldNotInteract,\n disabled,\n iconColor,\n unsetIconSize,\n tabIndex,\n flatEdge,\n borderRadius,\n focusBackgroundColor,\n type,\n hidden,\n invertFocus,\n dataTestId,\n focusOnClick,\n tooltip,\n ...rest\n }: IconButtonProps,\n ref,\n ) => {\n\n const render = () => {\n // Let's render button\n switch (variant) {\n case 'secondary':\n return (\n <StyledSecondaryIconButton\n id={id}\n type={type ?? 'button'}\n data-testid={dataTestId}\n ref={ref}\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n action(event);\n }}\n disabled={disabled}\n\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n shouldNotInteract={shouldNotInteract}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={!focusOnClick ? defaultOnMouseDownHandler : undefined}\n hidden={hidden}\n invertFocus={invertFocus}\n focusBackgroundColor={focusBackgroundColor}\n {...rest}>\n <IconButtonContentStyles>{children}</IconButtonContentStyles>\n </StyledSecondaryIconButton>\n );\n case 'primary':\n default:\n return (\n <StyledPrimaryIconButton\n id={id}\n type={type ?? 'button'}\n data-testid={dataTestId}\n flatEdge={flatEdge}\n ref={ref}\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n action(event);\n }}\n disabled={disabled}\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={!focusOnClick ? defaultOnMouseDownHandler : undefined}\n hidden={hidden}\n invertFocus={invertFocus}\n focusBackgroundColor={focusBackgroundColor}\n {...rest}>\n <IconButtonContentStyles>{children}</IconButtonContentStyles>\n </StyledPrimaryIconButton>\n );\n }\n }\n\n return !tooltip\n ? render()\n : (\n <TooltipWrapper {...tooltip}>\n {render()}\n </TooltipWrapper>\n );\n },\n);\n\nexport default IconButton;\n"],"mappings":"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"}
@@ -1,9 +1,15 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
+ var _exportNames = {
8
+ IconButton: true,
9
+ Button: true,
10
+ BackButton: true,
11
+ DualFunctionButton: true
12
+ };
7
13
  Object.defineProperty(exports, "BackButton", {
8
14
  enumerable: true,
9
15
  get: function get() {
@@ -28,8 +34,54 @@ Object.defineProperty(exports, "IconButton", {
28
34
  return _Iconbutton.default;
29
35
  }
30
36
  });
31
- var _Iconbutton = _interopRequireDefault(require("./Iconbutton"));
32
- var _Button = _interopRequireDefault(require("./Button"));
33
- var _BackButton = _interopRequireDefault(require("./BackButton"));
34
- var _DualFunctionButton = _interopRequireDefault(require("./DualFunctionButton"));
37
+ var _Iconbutton = _interopRequireWildcard(require("./Iconbutton"));
38
+ Object.keys(_Iconbutton).forEach(function (key) {
39
+ if (key === "default" || key === "__esModule") return;
40
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
41
+ if (key in exports && exports[key] === _Iconbutton[key]) return;
42
+ Object.defineProperty(exports, key, {
43
+ enumerable: true,
44
+ get: function get() {
45
+ return _Iconbutton[key];
46
+ }
47
+ });
48
+ });
49
+ var _Button = _interopRequireWildcard(require("./Button"));
50
+ Object.keys(_Button).forEach(function (key) {
51
+ if (key === "default" || key === "__esModule") return;
52
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
53
+ if (key in exports && exports[key] === _Button[key]) return;
54
+ Object.defineProperty(exports, key, {
55
+ enumerable: true,
56
+ get: function get() {
57
+ return _Button[key];
58
+ }
59
+ });
60
+ });
61
+ var _BackButton = _interopRequireWildcard(require("./BackButton"));
62
+ Object.keys(_BackButton).forEach(function (key) {
63
+ if (key === "default" || key === "__esModule") return;
64
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
65
+ if (key in exports && exports[key] === _BackButton[key]) return;
66
+ Object.defineProperty(exports, key, {
67
+ enumerable: true,
68
+ get: function get() {
69
+ return _BackButton[key];
70
+ }
71
+ });
72
+ });
73
+ var _DualFunctionButton = _interopRequireWildcard(require("./DualFunctionButton"));
74
+ Object.keys(_DualFunctionButton).forEach(function (key) {
75
+ if (key === "default" || key === "__esModule") return;
76
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
77
+ if (key in exports && exports[key] === _DualFunctionButton[key]) return;
78
+ Object.defineProperty(exports, key, {
79
+ enumerable: true,
80
+ get: function get() {
81
+ return _DualFunctionButton[key];
82
+ }
83
+ });
84
+ });
85
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
86
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
87
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":[],"sources":["../../src/Button/index.ts"],"sourcesContent":["export {default as IconButton} from './Iconbutton';\nexport {default as Button} from './Button';\nexport {default as BackButton} from './BackButton';\nexport {default as DualFunctionButton} from './DualFunctionButton';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"index.cjs","names":[],"sources":["../../src/Button/index.ts"],"sourcesContent":["export { default as IconButton } from './Iconbutton';\nexport * from './Iconbutton';\nexport { default as Button } from './Button';\nexport * from './Button';\nexport { default as BackButton } from './BackButton';\nexport * from './BackButton';\nexport { default as DualFunctionButton } from './DualFunctionButton';\nexport * from './DualFunctionButton';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AACA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AACA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AACA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAAqC;AAAA"}
@@ -1,4 +1,8 @@
1
1
  export { default as IconButton } from './Iconbutton';
2
+ export * from './Iconbutton';
2
3
  export { default as Button } from './Button';
4
+ export * from './Button';
3
5
  export { default as BackButton } from './BackButton';
6
+ export * from './BackButton';
4
7
  export { default as DualFunctionButton } from './DualFunctionButton';
8
+ export * from './DualFunctionButton';
@@ -1,5 +1,9 @@
1
1
  export { default as IconButton } from './Iconbutton';
2
+ export * from './Iconbutton';
2
3
  export { default as Button } from './Button';
4
+ export * from './Button';
3
5
  export { default as BackButton } from './BackButton';
6
+ export * from './BackButton';
4
7
  export { default as DualFunctionButton } from './DualFunctionButton';
8
+ export * from './DualFunctionButton';
5
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default","IconButton","Button","BackButton","DualFunctionButton"],"sources":["../../src/Button/index.ts"],"sourcesContent":["export {default as IconButton} from './Iconbutton';\nexport {default as Button} from './Button';\nexport {default as BackButton} from './BackButton';\nexport {default as DualFunctionButton} from './DualFunctionButton';\n"],"mappings":"AAAA,SAAQA,OAAO,IAAIC,UAAU,QAAO,cAAc;AAClD,SAAQD,OAAO,IAAIE,MAAM,QAAO,UAAU;AAC1C,SAAQF,OAAO,IAAIG,UAAU,QAAO,cAAc;AAClD,SAAQH,OAAO,IAAII,kBAAkB,QAAO,sBAAsB"}
1
+ {"version":3,"file":"index.js","names":["default","IconButton","Button","BackButton","DualFunctionButton"],"sources":["../../src/Button/index.ts"],"sourcesContent":["export { default as IconButton } from './Iconbutton';\nexport * from './Iconbutton';\nexport { default as Button } from './Button';\nexport * from './Button';\nexport { default as BackButton } from './BackButton';\nexport * from './BackButton';\nexport { default as DualFunctionButton } from './DualFunctionButton';\nexport * from './DualFunctionButton';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,UAAU,QAAQ,cAAc;AACpD,cAAc,cAAc;AAC5B,SAASD,OAAO,IAAIE,MAAM,QAAQ,UAAU;AAC5C,cAAc,UAAU;AACxB,SAASF,OAAO,IAAIG,UAAU,QAAQ,cAAc;AACpD,cAAc,cAAc;AAC5B,SAASH,OAAO,IAAII,kBAAkB,QAAQ,sBAAsB;AACpE,cAAc,sBAAsB"}
@@ -5,7 +5,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.default = exports.Wrapper = exports.CardTopLevelContainer = void 0;
8
+ exports.default = exports.CardTopLevelContainerStyles = exports.CardContainerStyles = void 0;
9
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
10
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
@@ -25,10 +25,10 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
25
25
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
26
26
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
27
27
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
28
- var CardTopLevelContainer = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n background-color: ", ";\n min-width: 240px;\n overflow: hidden;\n\n border-radius: 8px;\n\n background-clip: padding-box;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n\n .elevated & {\n box-shadow: ", ";\n }\n\n .outline & {\n border: 1px solid ", ";\n }\n"])), _index.COLORS.white, _index.BOXSHADOWS.BOXSHADOW_L1, _index.COLORS.neutral_200);
29
- exports.CardTopLevelContainer = CardTopLevelContainer;
30
- var Wrapper = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n &.interactive:focus {\n ", "\n }\n\n &.interactive:not(.disabled) {\n cursor: pointer;\n\n &.outline:not(.action-within) {\n ", " {\n &:hover {\n background-color: ", ";\n }\n\n &:active, &.active-state {\n background-color: ", ";\n }\n }\n }\n\n &.elevated:not(.action-within) {\n ", " {\n &:hover {\n box-shadow: ", ";\n }\n\n &:active, &.active-state {\n box-shadow: ", ";\n }\n }\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n ", "{\n border: 1px solid ", ";\n }\n }\n"])), _index.focusStyles, CardTopLevelContainer, _index.COLORS.primary_20, _index.COLORS.primary_100, CardTopLevelContainer, _index.BOXSHADOWS.BOXSHADOW_L3, _index.BOXSHADOWS.BOXSHADOW_L2, CardTopLevelContainer, _index.COLORS.neutral_100);
31
- exports.Wrapper = Wrapper;
28
+ var CardTopLevelContainerStyles = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n background-color: ", ";\n min-width: 240px;\n overflow: hidden;\n\n border-radius: 8px;\n\n background-clip: padding-box;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n\n .elevated & {\n box-shadow: ", ";\n }\n\n .outline & {\n border: 1px solid ", ";\n }\n"])), _index.COLORS.white, _index.BOXSHADOWS.BOXSHADOW_L1, _index.COLORS.neutral_200);
29
+ exports.CardTopLevelContainerStyles = CardTopLevelContainerStyles;
30
+ var CardContainerStyles = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n &.interactive:focus {\n ", "\n }\n\n &.interactive:not(.disabled) {\n cursor: pointer;\n\n &.outline:not(.action-within) {\n ", " {\n &:hover {\n background-color: ", ";\n }\n\n &:active, &.active-state {\n background-color: ", ";\n }\n }\n }\n\n &.elevated:not(.action-within) {\n ", " {\n &:hover {\n box-shadow: ", ";\n }\n\n &:active, &.active-state {\n box-shadow: ", ";\n }\n }\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n ", "{\n border: 1px solid ", ";\n }\n }\n"])), _index.focusStyles, CardTopLevelContainerStyles, _index.COLORS.primary_20, _index.COLORS.primary_100, CardTopLevelContainerStyles, _index.BOXSHADOWS.BOXSHADOW_L3, _index.BOXSHADOWS.BOXSHADOW_L2, CardTopLevelContainerStyles, _index.COLORS.neutral_100);
31
+ exports.CardContainerStyles = CardContainerStyles;
32
32
  var Card = function Card(_ref) {
33
33
  var onCardClicked = _ref.onCardClicked,
34
34
  topSectionProps = _ref.topSectionProps,
@@ -49,7 +49,7 @@ var Card = function Card(_ref) {
49
49
  var containerRef = React.useRef(null);
50
50
  (0, _index.useActionWithin)(containerRef, [].concat((0, _toConsumableArray2.default)(actionsRefs), [checkBoxRef]));
51
51
  var cls = "".concat(!!onCardClicked ? 'interactive' : '', " ").concat(disabled ? 'disabled' : '', " ").concat(variant, " ").concat(className || '');
52
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(Wrapper, _objectSpread(_objectSpread({
52
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(CardContainerStyles, _objectSpread(_objectSpread({
53
53
  ref: containerRef,
54
54
  className: cls,
55
55
  tabIndex: !!onCardClicked && !disabled ? 0 : -1,
@@ -62,7 +62,7 @@ var Card = function Card(_ref) {
62
62
  },
63
63
  "data-testid": 'card-wrapper'
64
64
  }, rest), {}, {
65
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(CardTopLevelContainer, {
65
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(CardTopLevelContainerStyles, {
66
66
  style: {
67
67
  maxWidth: maxWidth
68
68
  },
@@ -1 +1 @@
1
- {"version":3,"file":"Card.cjs","names":["CardTopLevelContainer","styled","div","COLORS","white","BOXSHADOWS","BOXSHADOW_L1","neutral_200","Wrapper","focusStyles","primary_20","primary_100","BOXSHADOW_L3","BOXSHADOW_L2","neutral_100","Card","onCardClicked","topSectionProps","middleSectionProps","bottomSectionProps","disabled","variant","className","maxWidth","rest","React","useState","actionsRefs","setActionsRefs","checkBoxRef","useRef","containerRef","useActionWithin","cls","defaultOnMouseDownHandler","a","key","e","instance"],"sources":["../../../src/Card/VerticalCard/Card.tsx"],"sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport CardTopSection, {CardTopSectionProps} from './CardTopSection';\nimport CardMiddleSection, {CardMiddleSectionProps} from './CardMiddleSection';\nimport CardBottomSection, {CardBottomSectionProps} from './CardBottomSection';\nimport {BOXSHADOWS, COLORS, defaultOnMouseDownHandler, focusStyles, useActionWithin} from '../../index';\n\nexport const CardTopLevelContainer = styled.div`\n background-color: ${COLORS.white};\n min-width: 240px;\n overflow: hidden;\n\n border-radius: 8px;\n\n background-clip: padding-box;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n\n .elevated & {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L1};\n }\n\n .outline & {\n border: 1px solid ${COLORS.neutral_200};\n }\n`;\n\n\nexport const Wrapper = styled.div`\n &.interactive:focus {\n ${focusStyles}\n }\n\n &.interactive:not(.disabled) {\n cursor: pointer;\n\n &.outline:not(.action-within) {\n ${CardTopLevelContainer} {\n &:hover {\n background-color: ${COLORS.primary_20};\n }\n\n &:active, &.active-state {\n background-color: ${COLORS.primary_100};\n }\n }\n }\n\n &.elevated:not(.action-within) {\n ${CardTopLevelContainer} {\n &:hover {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L3};\n }\n\n &:active, &.active-state {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L2};\n }\n }\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n ${CardTopLevelContainer}{\n border: 1px solid ${COLORS.neutral_100};\n }\n }\n`;\n\n\nexport interface CardProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'tabIndex' | 'onMouseDown' | 'onKeyDown' | 'onClick'> {\n onCardClicked?: () => {};\n disabled?: boolean;\n maxWidth?: number | string;\n topSectionProps?: CardTopSectionProps;\n middleSectionProps?: CardMiddleSectionProps;\n bottomSectionProps?: CardBottomSectionProps;\n variant?: 'outline' | 'elevated';\n}\n\nconst Card: React.FunctionComponent<CardProps> = ({\n onCardClicked,\n topSectionProps,\n middleSectionProps,\n bottomSectionProps,\n disabled,\n variant = 'elevated',\n className,\n maxWidth = 560,\n ...rest\n }: CardProps) => {\n\n\n const [actionsRefs, setActionsRefs] = React.useState<React.RefObject<HTMLElement>[]>([]);\n const checkBoxRef = React.useRef<HTMLDivElement>(null);\n const containerRef = React.useRef<HTMLDivElement>(null);\n\n useActionWithin(containerRef, [...actionsRefs, checkBoxRef]);\n\n const cls = `${!!onCardClicked ? 'interactive' : ''} ${disabled ? 'disabled' : ''} ${variant} ${className || ''}`;\n\n return (\n <Wrapper ref={containerRef}\n className={cls}\n tabIndex={!!onCardClicked && !disabled ? 0 : -1}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyDown={a => a.key === 'Enter' && !disabled && onCardClicked && onCardClicked()}\n onClick={e => !disabled && onCardClicked && onCardClicked()}\n data-testid={'card-wrapper'}\n {...rest}>\n <CardTopLevelContainer style={{maxWidth: maxWidth}}>\n {\n topSectionProps &&\n <CardTopSection ref={checkBoxRef}\n {...topSectionProps} disabled={disabled}/>\n }\n {\n middleSectionProps &&\n <CardMiddleSection {...middleSectionProps} disabled={disabled}/>\n }\n {\n bottomSectionProps &&\n <CardBottomSection ref={instance => setActionsRefs(instance ?? [])}\n {...bottomSectionProps} disabled={disabled}/>\n }\n </CardTopLevelContainer>\n </Wrapper>\n\n );\n};\n\nexport default Card;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Card.cjs","names":["CardTopLevelContainerStyles","styled","div","COLORS","white","BOXSHADOWS","BOXSHADOW_L1","neutral_200","CardContainerStyles","focusStyles","primary_20","primary_100","BOXSHADOW_L3","BOXSHADOW_L2","neutral_100","Card","onCardClicked","topSectionProps","middleSectionProps","bottomSectionProps","disabled","variant","className","maxWidth","rest","React","useState","actionsRefs","setActionsRefs","checkBoxRef","useRef","containerRef","useActionWithin","cls","defaultOnMouseDownHandler","a","key","e","instance"],"sources":["../../../src/Card/VerticalCard/Card.tsx"],"sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport CardTopSection, {CardTopSectionProps} from './CardTopSection';\nimport CardMiddleSection, {CardMiddleSectionProps} from './CardMiddleSection';\nimport CardBottomSection, {CardBottomSectionProps} from './CardBottomSection';\nimport {BOXSHADOWS, COLORS, defaultOnMouseDownHandler, focusStyles, useActionWithin} from '../../index';\n\nexport const CardTopLevelContainerStyles = styled.div`\n background-color: ${COLORS.white};\n min-width: 240px;\n overflow: hidden;\n\n border-radius: 8px;\n\n background-clip: padding-box;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n\n .elevated & {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L1};\n }\n\n .outline & {\n border: 1px solid ${COLORS.neutral_200};\n }\n`;\n\n\nexport const CardContainerStyles = styled.div`\n &.interactive:focus {\n ${focusStyles}\n }\n\n &.interactive:not(.disabled) {\n cursor: pointer;\n\n &.outline:not(.action-within) {\n ${CardTopLevelContainerStyles} {\n &:hover {\n background-color: ${COLORS.primary_20};\n }\n\n &:active, &.active-state {\n background-color: ${COLORS.primary_100};\n }\n }\n }\n\n &.elevated:not(.action-within) {\n ${CardTopLevelContainerStyles} {\n &:hover {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L3};\n }\n\n &:active, &.active-state {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L2};\n }\n }\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n ${CardTopLevelContainerStyles}{\n border: 1px solid ${COLORS.neutral_100};\n }\n }\n`;\n\n\nexport interface CardProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'tabIndex' | 'onMouseDown' | 'onKeyDown' | 'onClick'> {\n onCardClicked?: () => {};\n disabled?: boolean;\n maxWidth?: number | string;\n topSectionProps?: CardTopSectionProps;\n middleSectionProps?: CardMiddleSectionProps;\n bottomSectionProps?: CardBottomSectionProps;\n variant?: 'outline' | 'elevated';\n}\n\nconst Card: React.FunctionComponent<CardProps> = ({\n onCardClicked,\n topSectionProps,\n middleSectionProps,\n bottomSectionProps,\n disabled,\n variant = 'elevated',\n className,\n maxWidth = 560,\n ...rest\n }: CardProps) => {\n\n\n const [actionsRefs, setActionsRefs] = React.useState<React.RefObject<HTMLElement>[]>([]);\n const checkBoxRef = React.useRef<HTMLDivElement>(null);\n const containerRef = React.useRef<HTMLDivElement>(null);\n\n useActionWithin(containerRef, [...actionsRefs, checkBoxRef]);\n\n const cls = `${!!onCardClicked ? 'interactive' : ''} ${disabled ? 'disabled' : ''} ${variant} ${className || ''}`;\n\n return (\n <CardContainerStyles ref={containerRef}\n className={cls}\n tabIndex={!!onCardClicked && !disabled ? 0 : -1}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyDown={a => a.key === 'Enter' && !disabled && onCardClicked && onCardClicked()}\n onClick={e => !disabled && onCardClicked && onCardClicked()}\n data-testid={'card-wrapper'}\n {...rest}>\n <CardTopLevelContainerStyles style={{maxWidth: maxWidth}}>\n {\n topSectionProps &&\n <CardTopSection ref={checkBoxRef}\n {...topSectionProps} disabled={disabled}/>\n }\n {\n middleSectionProps &&\n <CardMiddleSection {...middleSectionProps} disabled={disabled}/>\n }\n {\n bottomSectionProps &&\n <CardBottomSection ref={instance => setActionsRefs(instance ?? [])}\n {...bottomSectionProps} disabled={disabled}/>\n }\n </CardTopLevelContainerStyles>\n </CardContainerStyles>\n\n );\n};\n\nexport default Card;\n"],"mappings":"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"}
@@ -2,8 +2,8 @@ import * as React from 'react';
2
2
  import { CardTopSectionProps } from './CardTopSection';
3
3
  import { CardMiddleSectionProps } from './CardMiddleSection';
4
4
  import { CardBottomSectionProps } from './CardBottomSection';
5
- export declare const CardTopLevelContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
6
- export declare const Wrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
5
+ export declare const CardTopLevelContainerStyles: import("styled-components").StyledComponent<"div", any, {}, never>;
6
+ export declare const CardContainerStyles: import("styled-components").StyledComponent<"div", any, {}, never>;
7
7
  export interface CardProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'tabIndex' | 'onMouseDown' | 'onKeyDown' | 'onClick'> {
8
8
  onCardClicked?: () => {};
9
9
  disabled?: boolean;
@@ -16,8 +16,8 @@ import CardBottomSection from './CardBottomSection';
16
16
  import { BOXSHADOWS, COLORS, defaultOnMouseDownHandler, focusStyles, useActionWithin } from '../../index';
17
17
  import { jsx as _jsx } from "react/jsx-runtime";
18
18
  import { jsxs as _jsxs } from "react/jsx-runtime";
19
- export var CardTopLevelContainer = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n background-color: ", ";\n min-width: 240px;\n overflow: hidden;\n\n border-radius: 8px;\n\n background-clip: padding-box;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n\n .elevated & {\n box-shadow: ", ";\n }\n\n .outline & {\n border: 1px solid ", ";\n }\n"])), COLORS.white, BOXSHADOWS.BOXSHADOW_L1, COLORS.neutral_200);
20
- export var Wrapper = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n &.interactive:focus {\n ", "\n }\n\n &.interactive:not(.disabled) {\n cursor: pointer;\n\n &.outline:not(.action-within) {\n ", " {\n &:hover {\n background-color: ", ";\n }\n\n &:active, &.active-state {\n background-color: ", ";\n }\n }\n }\n\n &.elevated:not(.action-within) {\n ", " {\n &:hover {\n box-shadow: ", ";\n }\n\n &:active, &.active-state {\n box-shadow: ", ";\n }\n }\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n ", "{\n border: 1px solid ", ";\n }\n }\n"])), focusStyles, CardTopLevelContainer, COLORS.primary_20, COLORS.primary_100, CardTopLevelContainer, BOXSHADOWS.BOXSHADOW_L3, BOXSHADOWS.BOXSHADOW_L2, CardTopLevelContainer, COLORS.neutral_100);
19
+ export var CardTopLevelContainerStyles = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n background-color: ", ";\n min-width: 240px;\n overflow: hidden;\n\n border-radius: 8px;\n\n background-clip: padding-box;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n\n .elevated & {\n box-shadow: ", ";\n }\n\n .outline & {\n border: 1px solid ", ";\n }\n"])), COLORS.white, BOXSHADOWS.BOXSHADOW_L1, COLORS.neutral_200);
20
+ export var CardContainerStyles = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n &.interactive:focus {\n ", "\n }\n\n &.interactive:not(.disabled) {\n cursor: pointer;\n\n &.outline:not(.action-within) {\n ", " {\n &:hover {\n background-color: ", ";\n }\n\n &:active, &.active-state {\n background-color: ", ";\n }\n }\n }\n\n &.elevated:not(.action-within) {\n ", " {\n &:hover {\n box-shadow: ", ";\n }\n\n &:active, &.active-state {\n box-shadow: ", ";\n }\n }\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n ", "{\n border: 1px solid ", ";\n }\n }\n"])), focusStyles, CardTopLevelContainerStyles, COLORS.primary_20, COLORS.primary_100, CardTopLevelContainerStyles, BOXSHADOWS.BOXSHADOW_L3, BOXSHADOWS.BOXSHADOW_L2, CardTopLevelContainerStyles, COLORS.neutral_100);
21
21
  var Card = function Card(_ref) {
22
22
  var onCardClicked = _ref.onCardClicked,
23
23
  topSectionProps = _ref.topSectionProps,
@@ -38,7 +38,7 @@ var Card = function Card(_ref) {
38
38
  var containerRef = React.useRef(null);
39
39
  useActionWithin(containerRef, [].concat(_toConsumableArray(actionsRefs), [checkBoxRef]));
40
40
  var cls = "".concat(!!onCardClicked ? 'interactive' : '', " ").concat(disabled ? 'disabled' : '', " ").concat(variant, " ").concat(className || '');
41
- return /*#__PURE__*/_jsx(Wrapper, _objectSpread(_objectSpread({
41
+ return /*#__PURE__*/_jsx(CardContainerStyles, _objectSpread(_objectSpread({
42
42
  ref: containerRef,
43
43
  className: cls,
44
44
  tabIndex: !!onCardClicked && !disabled ? 0 : -1,
@@ -51,7 +51,7 @@ var Card = function Card(_ref) {
51
51
  },
52
52
  "data-testid": 'card-wrapper'
53
53
  }, rest), {}, {
54
- children: /*#__PURE__*/_jsxs(CardTopLevelContainer, {
54
+ children: /*#__PURE__*/_jsxs(CardTopLevelContainerStyles, {
55
55
  style: {
56
56
  maxWidth: maxWidth
57
57
  },
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","names":["React","styled","CardTopSection","CardMiddleSection","CardBottomSection","BOXSHADOWS","COLORS","defaultOnMouseDownHandler","focusStyles","useActionWithin","CardTopLevelContainer","div","white","BOXSHADOW_L1","neutral_200","Wrapper","primary_20","primary_100","BOXSHADOW_L3","BOXSHADOW_L2","neutral_100","Card","onCardClicked","topSectionProps","middleSectionProps","bottomSectionProps","disabled","variant","className","maxWidth","rest","useState","actionsRefs","setActionsRefs","checkBoxRef","useRef","containerRef","cls","a","key","e","instance"],"sources":["../../../src/Card/VerticalCard/Card.tsx"],"sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport CardTopSection, {CardTopSectionProps} from './CardTopSection';\nimport CardMiddleSection, {CardMiddleSectionProps} from './CardMiddleSection';\nimport CardBottomSection, {CardBottomSectionProps} from './CardBottomSection';\nimport {BOXSHADOWS, COLORS, defaultOnMouseDownHandler, focusStyles, useActionWithin} from '../../index';\n\nexport const CardTopLevelContainer = styled.div`\n background-color: ${COLORS.white};\n min-width: 240px;\n overflow: hidden;\n\n border-radius: 8px;\n\n background-clip: padding-box;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n\n .elevated & {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L1};\n }\n\n .outline & {\n border: 1px solid ${COLORS.neutral_200};\n }\n`;\n\n\nexport const Wrapper = styled.div`\n &.interactive:focus {\n ${focusStyles}\n }\n\n &.interactive:not(.disabled) {\n cursor: pointer;\n\n &.outline:not(.action-within) {\n ${CardTopLevelContainer} {\n &:hover {\n background-color: ${COLORS.primary_20};\n }\n\n &:active, &.active-state {\n background-color: ${COLORS.primary_100};\n }\n }\n }\n\n &.elevated:not(.action-within) {\n ${CardTopLevelContainer} {\n &:hover {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L3};\n }\n\n &:active, &.active-state {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L2};\n }\n }\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n ${CardTopLevelContainer}{\n border: 1px solid ${COLORS.neutral_100};\n }\n }\n`;\n\n\nexport interface CardProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'tabIndex' | 'onMouseDown' | 'onKeyDown' | 'onClick'> {\n onCardClicked?: () => {};\n disabled?: boolean;\n maxWidth?: number | string;\n topSectionProps?: CardTopSectionProps;\n middleSectionProps?: CardMiddleSectionProps;\n bottomSectionProps?: CardBottomSectionProps;\n variant?: 'outline' | 'elevated';\n}\n\nconst Card: React.FunctionComponent<CardProps> = ({\n onCardClicked,\n topSectionProps,\n middleSectionProps,\n bottomSectionProps,\n disabled,\n variant = 'elevated',\n className,\n maxWidth = 560,\n ...rest\n }: CardProps) => {\n\n\n const [actionsRefs, setActionsRefs] = React.useState<React.RefObject<HTMLElement>[]>([]);\n const checkBoxRef = React.useRef<HTMLDivElement>(null);\n const containerRef = React.useRef<HTMLDivElement>(null);\n\n useActionWithin(containerRef, [...actionsRefs, checkBoxRef]);\n\n const cls = `${!!onCardClicked ? 'interactive' : ''} ${disabled ? 'disabled' : ''} ${variant} ${className || ''}`;\n\n return (\n <Wrapper ref={containerRef}\n className={cls}\n tabIndex={!!onCardClicked && !disabled ? 0 : -1}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyDown={a => a.key === 'Enter' && !disabled && onCardClicked && onCardClicked()}\n onClick={e => !disabled && onCardClicked && onCardClicked()}\n data-testid={'card-wrapper'}\n {...rest}>\n <CardTopLevelContainer style={{maxWidth: maxWidth}}>\n {\n topSectionProps &&\n <CardTopSection ref={checkBoxRef}\n {...topSectionProps} disabled={disabled}/>\n }\n {\n middleSectionProps &&\n <CardMiddleSection {...middleSectionProps} disabled={disabled}/>\n }\n {\n bottomSectionProps &&\n <CardBottomSection ref={instance => setActionsRefs(instance ?? [])}\n {...bottomSectionProps} disabled={disabled}/>\n }\n </CardTopLevelContainer>\n </Wrapper>\n\n );\n};\n\nexport default Card;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Card.js","names":["React","styled","CardTopSection","CardMiddleSection","CardBottomSection","BOXSHADOWS","COLORS","defaultOnMouseDownHandler","focusStyles","useActionWithin","CardTopLevelContainerStyles","div","white","BOXSHADOW_L1","neutral_200","CardContainerStyles","primary_20","primary_100","BOXSHADOW_L3","BOXSHADOW_L2","neutral_100","Card","onCardClicked","topSectionProps","middleSectionProps","bottomSectionProps","disabled","variant","className","maxWidth","rest","useState","actionsRefs","setActionsRefs","checkBoxRef","useRef","containerRef","cls","a","key","e","instance"],"sources":["../../../src/Card/VerticalCard/Card.tsx"],"sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport CardTopSection, {CardTopSectionProps} from './CardTopSection';\nimport CardMiddleSection, {CardMiddleSectionProps} from './CardMiddleSection';\nimport CardBottomSection, {CardBottomSectionProps} from './CardBottomSection';\nimport {BOXSHADOWS, COLORS, defaultOnMouseDownHandler, focusStyles, useActionWithin} from '../../index';\n\nexport const CardTopLevelContainerStyles = styled.div`\n background-color: ${COLORS.white};\n min-width: 240px;\n overflow: hidden;\n\n border-radius: 8px;\n\n background-clip: padding-box;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n\n .elevated & {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L1};\n }\n\n .outline & {\n border: 1px solid ${COLORS.neutral_200};\n }\n`;\n\n\nexport const CardContainerStyles = styled.div`\n &.interactive:focus {\n ${focusStyles}\n }\n\n &.interactive:not(.disabled) {\n cursor: pointer;\n\n &.outline:not(.action-within) {\n ${CardTopLevelContainerStyles} {\n &:hover {\n background-color: ${COLORS.primary_20};\n }\n\n &:active, &.active-state {\n background-color: ${COLORS.primary_100};\n }\n }\n }\n\n &.elevated:not(.action-within) {\n ${CardTopLevelContainerStyles} {\n &:hover {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L3};\n }\n\n &:active, &.active-state {\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L2};\n }\n }\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n ${CardTopLevelContainerStyles}{\n border: 1px solid ${COLORS.neutral_100};\n }\n }\n`;\n\n\nexport interface CardProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'tabIndex' | 'onMouseDown' | 'onKeyDown' | 'onClick'> {\n onCardClicked?: () => {};\n disabled?: boolean;\n maxWidth?: number | string;\n topSectionProps?: CardTopSectionProps;\n middleSectionProps?: CardMiddleSectionProps;\n bottomSectionProps?: CardBottomSectionProps;\n variant?: 'outline' | 'elevated';\n}\n\nconst Card: React.FunctionComponent<CardProps> = ({\n onCardClicked,\n topSectionProps,\n middleSectionProps,\n bottomSectionProps,\n disabled,\n variant = 'elevated',\n className,\n maxWidth = 560,\n ...rest\n }: CardProps) => {\n\n\n const [actionsRefs, setActionsRefs] = React.useState<React.RefObject<HTMLElement>[]>([]);\n const checkBoxRef = React.useRef<HTMLDivElement>(null);\n const containerRef = React.useRef<HTMLDivElement>(null);\n\n useActionWithin(containerRef, [...actionsRefs, checkBoxRef]);\n\n const cls = `${!!onCardClicked ? 'interactive' : ''} ${disabled ? 'disabled' : ''} ${variant} ${className || ''}`;\n\n return (\n <CardContainerStyles ref={containerRef}\n className={cls}\n tabIndex={!!onCardClicked && !disabled ? 0 : -1}\n onMouseDown={defaultOnMouseDownHandler}\n onKeyDown={a => a.key === 'Enter' && !disabled && onCardClicked && onCardClicked()}\n onClick={e => !disabled && onCardClicked && onCardClicked()}\n data-testid={'card-wrapper'}\n {...rest}>\n <CardTopLevelContainerStyles style={{maxWidth: maxWidth}}>\n {\n topSectionProps &&\n <CardTopSection ref={checkBoxRef}\n {...topSectionProps} disabled={disabled}/>\n }\n {\n middleSectionProps &&\n <CardMiddleSection {...middleSectionProps} disabled={disabled}/>\n }\n {\n bottomSectionProps &&\n <CardBottomSection ref={instance => setActionsRefs(instance ?? [])}\n {...bottomSectionProps} disabled={disabled}/>\n }\n </CardTopLevelContainerStyles>\n </CardContainerStyles>\n\n );\n};\n\nexport default Card;\n"],"mappings":"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"}