@laerdal/life-react-components 6.0.4 → 6.0.6
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/Button/TextButton.cjs +94 -2
- package/dist/Button/TextButton.cjs.map +1 -1
- package/dist/Button/TextButton.d.ts +8 -1
- package/dist/Button/TextButton.js +93 -1
- package/dist/Button/TextButton.js.map +1 -1
- package/dist/Toasters/Toast.cjs +8 -0
- package/dist/Toasters/Toast.cjs.map +1 -1
- package/dist/Toasters/Toast.js +8 -0
- package/dist/Toasters/Toast.js.map +1 -1
- package/package.json +1 -1
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.default = exports.TextButtonTertiaryStyled = exports.TextButtonSecondaryStyled = exports.TextButtonSecondaryDestructiveStyled = exports.TextButtonPrimaryStyled = exports.TextButtonPositiveStyled = exports.TextButtonDestructiveStyled = exports.TextButtonContentContainer = void 0;
|
|
7
|
+
exports.default = exports.TextButtonTertiaryStyled = exports.TextButtonSecondaryStyled = exports.TextButtonSecondaryDestructiveStyled = exports.TextButtonPrimaryStyled = exports.TextButtonPositiveStyled = exports.TextButtonInvertedSecondaryStyled = exports.TextButtonDestructiveStyled = exports.TextButtonContentContainer = void 0;
|
|
8
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
9
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
10
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -253,6 +253,95 @@ const TextButtonSecondaryStyled = exports.TextButtonSecondaryStyled = (0, _style
|
|
|
253
253
|
}, props.theme)};
|
|
254
254
|
}
|
|
255
255
|
`;
|
|
256
|
+
const TextButtonInvertedSecondaryStyled = exports.TextButtonInvertedSecondaryStyled = (0, _styledComponents.default)(TextButtonPrimaryStyled)`
|
|
257
|
+
${TextButtonContentContainer} {
|
|
258
|
+
color: ${props => _styles.COLORS.generateToken({
|
|
259
|
+
componentType: 'text',
|
|
260
|
+
defaultVariant: 'inverse'
|
|
261
|
+
}, props.theme)};
|
|
262
|
+
background-color: transparent;
|
|
263
|
+
div svg path {
|
|
264
|
+
fill: ${props => _styles.COLORS.generateToken({
|
|
265
|
+
componentType: 'icon',
|
|
266
|
+
defaultVariant: 'inverse'
|
|
267
|
+
}, props.theme)};
|
|
268
|
+
}
|
|
269
|
+
box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.generateToken({
|
|
270
|
+
componentType: 'border',
|
|
271
|
+
defaultVariant: 'inverse'
|
|
272
|
+
}, props.theme)};
|
|
273
|
+
|
|
274
|
+
padding: ${props => props.$size === _types.Size.Large ? '12px 16px' : props.$size === _types.Size.Small ? '4px 8px' : '6px 12px'};
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
&:hover > ${TextButtonContentContainer},
|
|
278
|
+
&.hover-state > ${TextButtonContentContainer} {
|
|
279
|
+
color: ${props => _styles.COLORS.generateToken({
|
|
280
|
+
componentType: 'text',
|
|
281
|
+
state: 'hover',
|
|
282
|
+
defaultVariant: 'inverse'
|
|
283
|
+
}, props.theme)};
|
|
284
|
+
box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.generateToken({
|
|
285
|
+
componentType: 'border',
|
|
286
|
+
state: 'hover',
|
|
287
|
+
defaultVariant: 'inverse'
|
|
288
|
+
}, props.theme)};
|
|
289
|
+
|
|
290
|
+
background-color: transparent;
|
|
291
|
+
div {
|
|
292
|
+
svg {
|
|
293
|
+
path {
|
|
294
|
+
fill: ${props => _styles.COLORS.generateToken({
|
|
295
|
+
componentType: 'text',
|
|
296
|
+
state: 'hover',
|
|
297
|
+
defaultVariant: 'inverse'
|
|
298
|
+
}, props.theme)};
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
&:active > ${TextButtonContentContainer},
|
|
304
|
+
&.active-state > ${TextButtonContentContainer} {
|
|
305
|
+
color: ${props => _styles.COLORS.generateToken({
|
|
306
|
+
componentType: 'text',
|
|
307
|
+
state: 'active',
|
|
308
|
+
defaultVariant: 'inverse'
|
|
309
|
+
}, props.theme)};
|
|
310
|
+
box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.generateToken({
|
|
311
|
+
componentType: 'border',
|
|
312
|
+
state: 'active',
|
|
313
|
+
defaultVariant: 'inverse'
|
|
314
|
+
}, props.theme)};
|
|
315
|
+
|
|
316
|
+
background-color: transparent;
|
|
317
|
+
div {
|
|
318
|
+
svg {
|
|
319
|
+
path {
|
|
320
|
+
fill: ${props => _styles.COLORS.generateToken({
|
|
321
|
+
componentType: 'text',
|
|
322
|
+
state: 'hover',
|
|
323
|
+
defaultVariant: 'inverse'
|
|
324
|
+
}, props.theme)};
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
&:disabled > ${TextButtonContentContainer},
|
|
331
|
+
&.disabled-state > ${TextButtonContentContainer} {
|
|
332
|
+
background-color: transparent;
|
|
333
|
+
color: ${props => _styles.COLORS.generateToken({
|
|
334
|
+
componentType: 'text',
|
|
335
|
+
state: 'disabled',
|
|
336
|
+
defaultVariant: 'inverse'
|
|
337
|
+
}, props.theme)};
|
|
338
|
+
box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.generateToken({
|
|
339
|
+
componentType: 'border',
|
|
340
|
+
state: 'disabled',
|
|
341
|
+
defaultVariant: 'inverse'
|
|
342
|
+
}, props.theme)};
|
|
343
|
+
}
|
|
344
|
+
`;
|
|
256
345
|
const TextButtonTertiaryStyled = exports.TextButtonTertiaryStyled = (0, _styledComponents.default)(TextButtonPrimaryStyled)`
|
|
257
346
|
${TextButtonContentContainer} {
|
|
258
347
|
color: ${props => _styles.COLORS.generateToken({
|
|
@@ -525,6 +614,9 @@ const TextButton = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
525
614
|
case 'secondaryDestructive':
|
|
526
615
|
TextButtonStyled = TextButtonSecondaryDestructiveStyled;
|
|
527
616
|
break;
|
|
617
|
+
case 'secondaryInverse':
|
|
618
|
+
TextButtonStyled = TextButtonInvertedSecondaryStyled;
|
|
619
|
+
break;
|
|
528
620
|
}
|
|
529
621
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(TextButtonStyled, _objectSpread(_objectSpread({}, renderProps), {}, {
|
|
530
622
|
$size: size,
|
|
@@ -544,7 +636,7 @@ const TextButton = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
544
636
|
}));
|
|
545
637
|
});
|
|
546
638
|
TextButton.propTypes = {
|
|
547
|
-
variant: _propTypes.default.oneOf(['primary', 'secondary', 'tertiary', 'positive', 'destructive', 'secondaryDestructive']),
|
|
639
|
+
variant: _propTypes.default.oneOf(['primary', 'secondary', 'tertiary', 'positive', 'destructive', 'secondaryDestructive', 'secondaryInverse']),
|
|
548
640
|
invertFocus: _propTypes.default.bool,
|
|
549
641
|
width: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.string]),
|
|
550
642
|
loading: _propTypes.default.bool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextButton.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","TextButtonContentContainer","exports","styled","div","TextButtonBaseStyled","button","TextButtonPrimaryStyled","props","$size","Size","Large","ComponentLStyling","ComponentTextStyle","Bold","COLORS","generateToken","componentType","isOnFill","defaultVariant","theme","Small","ComponentSStyling","ComponentMStyling","$flatEdge","$width","Medium","$iconOnly","state","$invertFocus","undefined","invertedFocusStyles","focusStyles","TextButtonSecondaryStyled","TextButtonTertiaryStyled","TextButtonPositiveStyled","getColor","TextButtonDestructiveStyled","TextButtonSecondaryDestructiveStyled","TextButton","forwardRef","_ref","ref","children","variant","type","size","invertFocus","width","testId","disabled","icon","iconPosition","_objectWithoutProperties2","loading","renderProps","useTheme","renderIcon","jsx","Fragment","className","renderContent","jsxs","LoadingIndicator","TextButtonStyled","onMouseDown","defaultOnMouseDownHandler","propTypes","_propTypes","oneOf","bool","oneOfType","string","node","_default"],"sources":["../../src/Button/TextButton.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 TextButtonContentContainer = styled.div`\r\n min-width: 64px;\r\n`;\r\n\r\nconst TextButtonBaseStyled = styled.button<{$iconOnly: boolean; $size: Size; $flatEdge: string | undefined; $width: string; $invertFocus: boolean | undefined; }>``;\r\n\r\nexport const TextButtonPrimaryStyled = styled(TextButtonBaseStyled)`\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 ${TextButtonContentContainer} {\r\n ${(props) =>\r\n props.$size === Size.Large\r\n ? ComponentLStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))\r\n : props.$size === Size.Small\r\n ? ComponentSStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))\r\n : ComponentMStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))};\r\n\r\n background-color: ${(props) => 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) => COLORS.generateToken({ componentType: 'icon', isOnFill: true, defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-fill', state: 'hover', defaultVariant: 'primary' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-fill', state: 'active', defaultVariant: 'primary' }, props.theme)};\r\n color: ${(props) => 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) ? invertedFocusStyles : focusStyles)}\r\n }\r\n &:disabled,\r\n &.disabled-state {\r\n cursor: not-allowed;\r\n }\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n pointer-events: none;\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 const TextButtonSecondaryStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => 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) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'active', defaultVariant: 'primary' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => 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) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'disabled' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\nexport const TextButtonTertiaryStyled = styled(TextButtonPrimaryStyled)`\r\n${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n background-color: transparent;\r\n\r\n div svg path {\r\n fill: ${(props) => 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-surface', state:'hover' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-surface', state: 'active' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 TextButtonPositiveStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.getColor('positive_500', props.theme)};\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('positive_700', props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('positive_800', props.theme)};\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 TextButtonDestructiveStyled = styled(TextButtonPrimaryStyled)`\r\n${TextButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 const TextButtonSecondaryDestructiveStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'critical' }, props.theme)};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', defaultVariant: 'critical' }, 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'disabled' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\n\r\nexport interface TextButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\r\n /** Look and feel variant of the component. Defaults to 'primary'. */\r\n variant?: 'primary' | 'secondary' | 'tertiary' | 'positive' | 'destructive' | 'secondaryDestructive';\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 /** 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 * TextButton component\r\n */\r\nconst TextButton = React.forwardRef<HTMLButtonElement, TextButtonProps>(\r\n ({ children = '', variant = 'primary', type = 'button', size = Size.Medium, 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 TextButtonStyled = TextButtonPrimaryStyled;\r\n switch (variant) {\r\n case 'secondary':\r\n TextButtonStyled = TextButtonSecondaryStyled;\r\n break;\r\n case 'tertiary':\r\n TextButtonStyled = TextButtonTertiaryStyled;\r\n break;\r\n case 'positive':\r\n TextButtonStyled = TextButtonPositiveStyled;\r\n break;\r\n case 'destructive':\r\n TextButtonStyled = TextButtonDestructiveStyled;\r\n break;\r\n case 'secondaryDestructive':\r\n TextButtonStyled = TextButtonSecondaryDestructiveStyled;\r\n break;\r\n }\r\n\r\n return (\r\n <TextButtonStyled\r\n {...renderProps}\r\n $size={size}\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 <TextButtonContentContainer>{renderContent()}</TextButtonContentContainer>\r\n </TextButtonStyled>\r\n );\r\n },\r\n);\r\n\r\nexport default TextButton;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"TextButton.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","TextButtonContentContainer","exports","styled","div","TextButtonBaseStyled","button","TextButtonPrimaryStyled","props","$size","Size","Large","ComponentLStyling","ComponentTextStyle","Bold","COLORS","generateToken","componentType","isOnFill","defaultVariant","theme","Small","ComponentSStyling","ComponentMStyling","$flatEdge","$width","Medium","$iconOnly","state","$invertFocus","undefined","invertedFocusStyles","focusStyles","TextButtonSecondaryStyled","TextButtonInvertedSecondaryStyled","TextButtonTertiaryStyled","TextButtonPositiveStyled","getColor","TextButtonDestructiveStyled","TextButtonSecondaryDestructiveStyled","TextButton","forwardRef","_ref","ref","children","variant","type","size","invertFocus","width","testId","disabled","icon","iconPosition","_objectWithoutProperties2","loading","renderProps","useTheme","renderIcon","jsx","Fragment","className","renderContent","jsxs","LoadingIndicator","TextButtonStyled","onMouseDown","defaultOnMouseDownHandler","propTypes","_propTypes","oneOf","bool","oneOfType","string","node","_default"],"sources":["../../src/Button/TextButton.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 TextButtonContentContainer = styled.div`\r\n min-width: 64px;\r\n`;\r\n\r\nconst TextButtonBaseStyled = styled.button<{$iconOnly: boolean; $size: Size; $flatEdge: string | undefined; $width: string; $invertFocus: boolean | undefined; }>``;\r\n\r\nexport const TextButtonPrimaryStyled = styled(TextButtonBaseStyled)`\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 ${TextButtonContentContainer} {\r\n ${(props) =>\r\n props.$size === Size.Large\r\n ? ComponentLStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))\r\n : props.$size === Size.Small\r\n ? ComponentSStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))\r\n : ComponentMStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))};\r\n\r\n background-color: ${(props) => 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) => COLORS.generateToken({ componentType: 'icon', isOnFill: true, defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-fill', state: 'hover', defaultVariant: 'primary' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-fill', state: 'active', defaultVariant: 'primary' }, props.theme)};\r\n color: ${(props) => 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) ? invertedFocusStyles : focusStyles)}\r\n }\r\n &:disabled,\r\n &.disabled-state {\r\n cursor: not-allowed;\r\n }\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n pointer-events: none;\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 const TextButtonSecondaryStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => 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) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'active', defaultVariant: 'primary' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => 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) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'disabled' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\n\r\nexport const TextButtonInvertedSecondaryStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'inverse' }, props.theme)};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'inverse' }, props.theme)};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', defaultVariant: 'inverse' }, 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'inverse' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'hover', defaultVariant: 'inverse' }, props.theme)};\r\n\r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'inverse' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'active', defaultVariant: 'inverse' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'active', defaultVariant: 'inverse' }, props.theme)};\r\n\r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'inverse' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'disabled', defaultVariant: 'inverse' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'disabled', defaultVariant: 'inverse' }, props.theme)};\r\n }\r\n`;\r\n\r\nexport const TextButtonTertiaryStyled = styled(TextButtonPrimaryStyled)`\r\n${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n background-color: transparent;\r\n\r\n div svg path {\r\n fill: ${(props) => 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-surface', state:'hover' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-surface', state: 'active' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 TextButtonPositiveStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.getColor('positive_500', props.theme)};\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('positive_700', props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('positive_800', props.theme)};\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 TextButtonDestructiveStyled = styled(TextButtonPrimaryStyled)`\r\n${TextButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 const TextButtonSecondaryDestructiveStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'critical' }, props.theme)};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', defaultVariant: 'critical' }, 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'disabled' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\n\r\nexport interface TextButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\r\n /** Look and feel variant of the component. Defaults to 'primary'. */\r\n variant?: 'primary' | 'secondary' | 'tertiary' | 'positive' | 'destructive' | 'secondaryDestructive' | 'secondaryInverse';\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 /** 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 * TextButton component\r\n */\r\nconst TextButton = React.forwardRef<HTMLButtonElement, TextButtonProps>(\r\n ({ children = '', variant = 'primary', type = 'button', size = Size.Medium, 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 TextButtonStyled = TextButtonPrimaryStyled;\r\n switch (variant) {\r\n case 'secondary':\r\n TextButtonStyled = TextButtonSecondaryStyled;\r\n break;\r\n case 'tertiary':\r\n TextButtonStyled = TextButtonTertiaryStyled;\r\n break;\r\n case 'positive':\r\n TextButtonStyled = TextButtonPositiveStyled;\r\n break;\r\n case 'destructive':\r\n TextButtonStyled = TextButtonDestructiveStyled;\r\n break;\r\n case 'secondaryDestructive':\r\n TextButtonStyled = TextButtonSecondaryDestructiveStyled;\r\n break;\r\n case 'secondaryInverse':\r\n TextButtonStyled = TextButtonInvertedSecondaryStyled;\r\n break;\r\n }\r\n\r\n return (\r\n <TextButtonStyled\r\n {...renderProps}\r\n $size={size}\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 <TextButtonContentContainer>{renderContent()}</TextButtonContentContainer>\r\n </TextButtonStyled>\r\n );\r\n },\r\n);\r\n\r\nexport default TextButton;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -15,6 +15,13 @@ export declare const TextButtonSecondaryStyled: import("styled-components/dist/t
|
|
|
15
15
|
$width: string;
|
|
16
16
|
$invertFocus: boolean | undefined;
|
|
17
17
|
}, never>, never>> & string;
|
|
18
|
+
export declare const TextButtonInvertedSecondaryStyled: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components").FastOmit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "$size" | "$width" | "$flatEdge" | "$invertFocus" | "$iconOnly"> & {
|
|
19
|
+
$iconOnly: boolean;
|
|
20
|
+
$size: Size;
|
|
21
|
+
$flatEdge: string | undefined;
|
|
22
|
+
$width: string;
|
|
23
|
+
$invertFocus: boolean | undefined;
|
|
24
|
+
}, never>, never>> & string;
|
|
18
25
|
export declare const TextButtonTertiaryStyled: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components").FastOmit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "$size" | "$width" | "$flatEdge" | "$invertFocus" | "$iconOnly"> & {
|
|
19
26
|
$iconOnly: boolean;
|
|
20
27
|
$size: Size;
|
|
@@ -45,7 +52,7 @@ export declare const TextButtonSecondaryDestructiveStyled: import("styled-compon
|
|
|
45
52
|
}, never>, never>> & string;
|
|
46
53
|
export interface TextButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
47
54
|
/** Look and feel variant of the component. Defaults to 'primary'. */
|
|
48
|
-
variant?: 'primary' | 'secondary' | 'tertiary' | 'positive' | 'destructive' | 'secondaryDestructive';
|
|
55
|
+
variant?: 'primary' | 'secondary' | 'tertiary' | 'positive' | 'destructive' | 'secondaryDestructive' | 'secondaryInverse';
|
|
49
56
|
/** Can be used in order to remove rounded corners on right or left edge of the button. Used by 'DualFunctionButton'. Defaults to 'undefined' */
|
|
50
57
|
flatEdge?: 'right' | 'left' | 'none' | undefined;
|
|
51
58
|
/** Size of the component. Small, Medium or Large. Defaults to 'medium' */
|
|
@@ -245,6 +245,95 @@ export const TextButtonSecondaryStyled = styled(TextButtonPrimaryStyled)`
|
|
|
245
245
|
}, props.theme)};
|
|
246
246
|
}
|
|
247
247
|
`;
|
|
248
|
+
export const TextButtonInvertedSecondaryStyled = styled(TextButtonPrimaryStyled)`
|
|
249
|
+
${TextButtonContentContainer} {
|
|
250
|
+
color: ${props => COLORS.generateToken({
|
|
251
|
+
componentType: 'text',
|
|
252
|
+
defaultVariant: 'inverse'
|
|
253
|
+
}, props.theme)};
|
|
254
|
+
background-color: transparent;
|
|
255
|
+
div svg path {
|
|
256
|
+
fill: ${props => COLORS.generateToken({
|
|
257
|
+
componentType: 'icon',
|
|
258
|
+
defaultVariant: 'inverse'
|
|
259
|
+
}, props.theme)};
|
|
260
|
+
}
|
|
261
|
+
box-shadow: inset 0 0 0 2px ${props => COLORS.generateToken({
|
|
262
|
+
componentType: 'border',
|
|
263
|
+
defaultVariant: 'inverse'
|
|
264
|
+
}, props.theme)};
|
|
265
|
+
|
|
266
|
+
padding: ${props => props.$size === Size.Large ? '12px 16px' : props.$size === Size.Small ? '4px 8px' : '6px 12px'};
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
&:hover > ${TextButtonContentContainer},
|
|
270
|
+
&.hover-state > ${TextButtonContentContainer} {
|
|
271
|
+
color: ${props => COLORS.generateToken({
|
|
272
|
+
componentType: 'text',
|
|
273
|
+
state: 'hover',
|
|
274
|
+
defaultVariant: 'inverse'
|
|
275
|
+
}, props.theme)};
|
|
276
|
+
box-shadow: inset 0 0 0 2px ${props => COLORS.generateToken({
|
|
277
|
+
componentType: 'border',
|
|
278
|
+
state: 'hover',
|
|
279
|
+
defaultVariant: 'inverse'
|
|
280
|
+
}, props.theme)};
|
|
281
|
+
|
|
282
|
+
background-color: transparent;
|
|
283
|
+
div {
|
|
284
|
+
svg {
|
|
285
|
+
path {
|
|
286
|
+
fill: ${props => COLORS.generateToken({
|
|
287
|
+
componentType: 'text',
|
|
288
|
+
state: 'hover',
|
|
289
|
+
defaultVariant: 'inverse'
|
|
290
|
+
}, props.theme)};
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
&:active > ${TextButtonContentContainer},
|
|
296
|
+
&.active-state > ${TextButtonContentContainer} {
|
|
297
|
+
color: ${props => COLORS.generateToken({
|
|
298
|
+
componentType: 'text',
|
|
299
|
+
state: 'active',
|
|
300
|
+
defaultVariant: 'inverse'
|
|
301
|
+
}, props.theme)};
|
|
302
|
+
box-shadow: inset 0 0 0 2px ${props => COLORS.generateToken({
|
|
303
|
+
componentType: 'border',
|
|
304
|
+
state: 'active',
|
|
305
|
+
defaultVariant: 'inverse'
|
|
306
|
+
}, props.theme)};
|
|
307
|
+
|
|
308
|
+
background-color: transparent;
|
|
309
|
+
div {
|
|
310
|
+
svg {
|
|
311
|
+
path {
|
|
312
|
+
fill: ${props => COLORS.generateToken({
|
|
313
|
+
componentType: 'text',
|
|
314
|
+
state: 'hover',
|
|
315
|
+
defaultVariant: 'inverse'
|
|
316
|
+
}, props.theme)};
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
&:disabled > ${TextButtonContentContainer},
|
|
323
|
+
&.disabled-state > ${TextButtonContentContainer} {
|
|
324
|
+
background-color: transparent;
|
|
325
|
+
color: ${props => COLORS.generateToken({
|
|
326
|
+
componentType: 'text',
|
|
327
|
+
state: 'disabled',
|
|
328
|
+
defaultVariant: 'inverse'
|
|
329
|
+
}, props.theme)};
|
|
330
|
+
box-shadow: inset 0 0 0 2px ${props => COLORS.generateToken({
|
|
331
|
+
componentType: 'border',
|
|
332
|
+
state: 'disabled',
|
|
333
|
+
defaultVariant: 'inverse'
|
|
334
|
+
}, props.theme)};
|
|
335
|
+
}
|
|
336
|
+
`;
|
|
248
337
|
export const TextButtonTertiaryStyled = styled(TextButtonPrimaryStyled)`
|
|
249
338
|
${TextButtonContentContainer} {
|
|
250
339
|
color: ${props => COLORS.generateToken({
|
|
@@ -517,6 +606,9 @@ const TextButton = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
517
606
|
case 'secondaryDestructive':
|
|
518
607
|
TextButtonStyled = TextButtonSecondaryDestructiveStyled;
|
|
519
608
|
break;
|
|
609
|
+
case 'secondaryInverse':
|
|
610
|
+
TextButtonStyled = TextButtonInvertedSecondaryStyled;
|
|
611
|
+
break;
|
|
520
612
|
}
|
|
521
613
|
return /*#__PURE__*/_jsx(TextButtonStyled, _objectSpread(_objectSpread({}, renderProps), {}, {
|
|
522
614
|
$size: size,
|
|
@@ -536,7 +628,7 @@ const TextButton = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
536
628
|
}));
|
|
537
629
|
});
|
|
538
630
|
TextButton.propTypes = {
|
|
539
|
-
variant: _pt.oneOf(['primary', 'secondary', 'tertiary', 'positive', 'destructive', 'secondaryDestructive']),
|
|
631
|
+
variant: _pt.oneOf(['primary', 'secondary', 'tertiary', 'positive', 'destructive', 'secondaryDestructive', 'secondaryInverse']),
|
|
540
632
|
invertFocus: _pt.bool,
|
|
541
633
|
width: _pt.oneOfType([_pt.oneOf(['auto']), _pt.string]),
|
|
542
634
|
loading: _pt.bool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextButton.js","names":["React","styled","useTheme","LoadingIndicator","ComponentLStyling","ComponentMStyling","ComponentSStyling","ComponentTextStyle","COLORS","focusStyles","invertedFocusStyles","Size","defaultOnMouseDownHandler","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","getBorderRadius","flatEdge","radius","TextButtonContentContainer","div","TextButtonBaseStyled","button","TextButtonPrimaryStyled","props","$size","Large","Bold","generateToken","componentType","isOnFill","defaultVariant","theme","Small","$flatEdge","$width","Medium","$iconOnly","state","$invertFocus","undefined","TextButtonSecondaryStyled","TextButtonTertiaryStyled","TextButtonPositiveStyled","getColor","TextButtonDestructiveStyled","TextButtonSecondaryDestructiveStyled","TextButton","forwardRef","_ref","ref","children","variant","type","size","invertFocus","width","testId","disabled","icon","iconPosition","_objectWithoutProperties","_excluded","loading","renderProps","_excluded2","renderIcon","className","renderContent","TextButtonStyled","_objectSpread","onMouseDown","propTypes","_pt","oneOf","bool","oneOfType","string","node"],"sources":["../../src/Button/TextButton.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 TextButtonContentContainer = styled.div`\r\n min-width: 64px;\r\n`;\r\n\r\nconst TextButtonBaseStyled = styled.button<{$iconOnly: boolean; $size: Size; $flatEdge: string | undefined; $width: string; $invertFocus: boolean | undefined; }>``;\r\n\r\nexport const TextButtonPrimaryStyled = styled(TextButtonBaseStyled)`\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 ${TextButtonContentContainer} {\r\n ${(props) =>\r\n props.$size === Size.Large\r\n ? ComponentLStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))\r\n : props.$size === Size.Small\r\n ? ComponentSStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))\r\n : ComponentMStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))};\r\n\r\n background-color: ${(props) => 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) => COLORS.generateToken({ componentType: 'icon', isOnFill: true, defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-fill', state: 'hover', defaultVariant: 'primary' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-fill', state: 'active', defaultVariant: 'primary' }, props.theme)};\r\n color: ${(props) => 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) ? invertedFocusStyles : focusStyles)}\r\n }\r\n &:disabled,\r\n &.disabled-state {\r\n cursor: not-allowed;\r\n }\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n pointer-events: none;\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 const TextButtonSecondaryStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => 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) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'active', defaultVariant: 'primary' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => 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) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'disabled' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\nexport const TextButtonTertiaryStyled = styled(TextButtonPrimaryStyled)`\r\n${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n background-color: transparent;\r\n\r\n div svg path {\r\n fill: ${(props) => 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-surface', state:'hover' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-surface', state: 'active' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 TextButtonPositiveStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.getColor('positive_500', props.theme)};\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('positive_700', props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('positive_800', props.theme)};\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 TextButtonDestructiveStyled = styled(TextButtonPrimaryStyled)`\r\n${TextButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 const TextButtonSecondaryDestructiveStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'critical' }, props.theme)};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', defaultVariant: 'critical' }, 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'disabled' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\n\r\nexport interface TextButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\r\n /** Look and feel variant of the component. Defaults to 'primary'. */\r\n variant?: 'primary' | 'secondary' | 'tertiary' | 'positive' | 'destructive' | 'secondaryDestructive';\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 /** 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 * TextButton component\r\n */\r\nconst TextButton = React.forwardRef<HTMLButtonElement, TextButtonProps>(\r\n ({ children = '', variant = 'primary', type = 'button', size = Size.Medium, 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 TextButtonStyled = TextButtonPrimaryStyled;\r\n switch (variant) {\r\n case 'secondary':\r\n TextButtonStyled = TextButtonSecondaryStyled;\r\n break;\r\n case 'tertiary':\r\n TextButtonStyled = TextButtonTertiaryStyled;\r\n break;\r\n case 'positive':\r\n TextButtonStyled = TextButtonPositiveStyled;\r\n break;\r\n case 'destructive':\r\n TextButtonStyled = TextButtonDestructiveStyled;\r\n break;\r\n case 'secondaryDestructive':\r\n TextButtonStyled = TextButtonSecondaryDestructiveStyled;\r\n break;\r\n }\r\n\r\n return (\r\n <TextButtonStyled\r\n {...renderProps}\r\n $size={size}\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 <TextButtonContentContainer>{renderContent()}</TextButtonContentContainer>\r\n </TextButtonStyled>\r\n );\r\n },\r\n);\r\n\r\nexport default TextButton;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"TextButton.js","names":["React","styled","useTheme","LoadingIndicator","ComponentLStyling","ComponentMStyling","ComponentSStyling","ComponentTextStyle","COLORS","focusStyles","invertedFocusStyles","Size","defaultOnMouseDownHandler","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","getBorderRadius","flatEdge","radius","TextButtonContentContainer","div","TextButtonBaseStyled","button","TextButtonPrimaryStyled","props","$size","Large","Bold","generateToken","componentType","isOnFill","defaultVariant","theme","Small","$flatEdge","$width","Medium","$iconOnly","state","$invertFocus","undefined","TextButtonSecondaryStyled","TextButtonInvertedSecondaryStyled","TextButtonTertiaryStyled","TextButtonPositiveStyled","getColor","TextButtonDestructiveStyled","TextButtonSecondaryDestructiveStyled","TextButton","forwardRef","_ref","ref","children","variant","type","size","invertFocus","width","testId","disabled","icon","iconPosition","_objectWithoutProperties","_excluded","loading","renderProps","_excluded2","renderIcon","className","renderContent","TextButtonStyled","_objectSpread","onMouseDown","propTypes","_pt","oneOf","bool","oneOfType","string","node"],"sources":["../../src/Button/TextButton.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 TextButtonContentContainer = styled.div`\r\n min-width: 64px;\r\n`;\r\n\r\nconst TextButtonBaseStyled = styled.button<{$iconOnly: boolean; $size: Size; $flatEdge: string | undefined; $width: string; $invertFocus: boolean | undefined; }>``;\r\n\r\nexport const TextButtonPrimaryStyled = styled(TextButtonBaseStyled)`\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 ${TextButtonContentContainer} {\r\n ${(props) =>\r\n props.$size === Size.Large\r\n ? ComponentLStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))\r\n : props.$size === Size.Small\r\n ? ComponentSStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))\r\n : ComponentMStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme))};\r\n\r\n background-color: ${(props) => 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) => COLORS.generateToken({ componentType: 'icon', isOnFill: true, defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-fill', state: 'hover', defaultVariant: 'primary' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-fill', state: 'active', defaultVariant: 'primary' }, props.theme)};\r\n color: ${(props) => 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) ? invertedFocusStyles : focusStyles)}\r\n }\r\n &:disabled,\r\n &.disabled-state {\r\n cursor: not-allowed;\r\n }\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n pointer-events: none;\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 const TextButtonSecondaryStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => 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) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'active', defaultVariant: 'primary' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => 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) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'disabled' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\n\r\nexport const TextButtonInvertedSecondaryStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'inverse' }, props.theme)};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'inverse' }, props.theme)};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', defaultVariant: 'inverse' }, 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'inverse' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'hover', defaultVariant: 'inverse' }, props.theme)};\r\n\r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'inverse' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'active', defaultVariant: 'inverse' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'active', defaultVariant: 'inverse' }, props.theme)};\r\n\r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'inverse' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'disabled', defaultVariant: 'inverse' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'disabled', defaultVariant: 'inverse' }, props.theme)};\r\n }\r\n`;\r\n\r\nexport const TextButtonTertiaryStyled = styled(TextButtonPrimaryStyled)`\r\n${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n background-color: transparent;\r\n\r\n div svg path {\r\n fill: ${(props) => 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-surface', state:'hover' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${(props) => COLORS.generateToken({ componentType: 'bg-surface', state: 'active' }, props.theme)};\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 TextButtonPositiveStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.getColor('positive_500', props.theme)};\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('positive_700', props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.getColor('positive_800', props.theme)};\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 TextButtonDestructiveStyled = styled(TextButtonPrimaryStyled)`\r\n${TextButtonContentContainer} {\r\n color: white;\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n &:hover > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\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 const TextButtonSecondaryDestructiveStyled = styled(TextButtonPrimaryStyled)`\r\n ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', defaultVariant: 'critical' }, props.theme)};\r\n background-color: transparent;\r\n div svg path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'icon', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', defaultVariant: 'critical' }, 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 > ${TextButtonContentContainer},\r\n &.hover-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n &:active > ${TextButtonContentContainer},\r\n &.active-state > ${TextButtonContentContainer} {\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'active', defaultVariant: 'critical' }, props.theme)};\r\n \r\n background-color: transparent;\r\n div {\r\n svg {\r\n path {\r\n fill: ${(props) => COLORS.generateToken({ componentType: 'text', state:'hover', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &:disabled > ${TextButtonContentContainer},\r\n &.disabled-state > ${TextButtonContentContainer} {\r\n background-color: transparent;\r\n color: ${(props) => COLORS.generateToken({ componentType: 'text', state:'disabled' }, props.theme)};\r\n box-shadow: inset 0 0 0 2px ${(props) => COLORS.generateToken({ componentType: 'border', state:'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\n\r\nexport interface TextButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\r\n /** Look and feel variant of the component. Defaults to 'primary'. */\r\n variant?: 'primary' | 'secondary' | 'tertiary' | 'positive' | 'destructive' | 'secondaryDestructive' | 'secondaryInverse';\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 /** 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 * TextButton component\r\n */\r\nconst TextButton = React.forwardRef<HTMLButtonElement, TextButtonProps>(\r\n ({ children = '', variant = 'primary', type = 'button', size = Size.Medium, 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 TextButtonStyled = TextButtonPrimaryStyled;\r\n switch (variant) {\r\n case 'secondary':\r\n TextButtonStyled = TextButtonSecondaryStyled;\r\n break;\r\n case 'tertiary':\r\n TextButtonStyled = TextButtonTertiaryStyled;\r\n break;\r\n case 'positive':\r\n TextButtonStyled = TextButtonPositiveStyled;\r\n break;\r\n case 'destructive':\r\n TextButtonStyled = TextButtonDestructiveStyled;\r\n break;\r\n case 'secondaryDestructive':\r\n TextButtonStyled = TextButtonSecondaryDestructiveStyled;\r\n break;\r\n case 'secondaryInverse':\r\n TextButtonStyled = TextButtonInvertedSecondaryStyled;\r\n break;\r\n }\r\n\r\n return (\r\n <TextButtonStyled\r\n {...renderProps}\r\n $size={size}\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 <TextButtonContentContainer>{renderContent()}</TextButtonContentContainer>\r\n </TextButtonStyled>\r\n );\r\n },\r\n);\r\n\r\nexport default TextButton;\r\n"],"mappings":"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","ignoreList":[]}
|
package/dist/Toasters/Toast.cjs
CHANGED
|
@@ -207,6 +207,14 @@ const ToastTextContainer = exports.ToastTextContainer = _styledComponents.defaul
|
|
|
207
207
|
width: 240px;
|
|
208
208
|
display: flex;
|
|
209
209
|
padding: 16px 0;
|
|
210
|
+
overflow-wrap: break-word;
|
|
211
|
+
word-wrap: break-word;
|
|
212
|
+
-ms-word-break: break-all;
|
|
213
|
+
word-break: break-word;
|
|
214
|
+
-ms-hyphens: auto;
|
|
215
|
+
-moz-hyphens: auto;
|
|
216
|
+
-webkit-hyphens: auto;
|
|
217
|
+
hyphens: auto;
|
|
210
218
|
`;
|
|
211
219
|
const ToastIconContainer = exports.ToastIconContainer = _styledComponents.default.span`
|
|
212
220
|
margin-right: -8px;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toast.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_types","_styles","_Button","_HyperLink","_icons","_jsxRuntime","_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","LoaderAnimationKeyframes","keyframes","Loader","styled","div","props","$duration","ToastColor","BLACK","COLORS","getColor","theme","WHITE","BLUE","generateToken","componentType","defaultVariant","GREEN","ORANGE","RED","ToastContainer","exports","BOXSHADOWS","BOXSHADOW_L2","animation","$keyframes","$bezier","$transform","$withClose","$withLoader","ComponentSStyling","ComponentTextStyle","Regular","HyperLinkInvertedStyling","HyperLinkDefaultStyling","ToastActionButtons","ToastCloseButton","isOnFill","ToastTextContainer","span","ToastIconContainer","DEFAULT_OPTIONS","color","autoClose","delay","showCloseButton","position","ToastPosition","TOPLEFT","enterFrom","ToastEntryDirection","TOP","Toast","_ref","content","remove","options","testId","Error","styledTheme","useTheme","removeRef","useRef","current","elementRef","shouldRemove","setShouldRemove","useState","dimensions","setDimensions","width","height","opts","useEffect","id","setTimeout","clearTimeout","undefined","clientHeight","clientWidth","animations","direction","fromY","fromHeight","toY","toHeight","fromX","fromWidth","toX","toWidth","prop","duration","bezier","focus","jsxs","ref","className","tabIndex","children","icon","jsx","action","map","TextButton","size","Size","Small","variant","type","ToastActionType","SECONDARY","invertFocus","onClick","handler","label","IconButton","shape","useTransparentBackground","event","SystemIcons","Close","propTypes","_propTypes","any","isRequired","bool","number","arrayOf","string","func","node","_default","enter","BOTTOM","LEFT","RIGHT","leave"],"sources":["../../src/Toasters/Toast.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { keyframes, useTheme } from 'styled-components';\r\nimport { ToastActionType, ToastColor, ToastEntryDirection, ToastPosition } from '../types';\r\nimport { BOXSHADOWS, COLORS} from '../styles';\r\nimport { Size } from '../types'\r\nimport { TextButton, IconButton } from '../Button';\r\nimport { ComponentSStyling, ComponentTextStyle } from '../styles';\r\nimport {HyperLinkDefaultStyling, HyperLinkInvertedStyling} from '../HyperLink';\r\nimport { SystemIcons } from '../icons';\r\n\r\nconst LoaderAnimationKeyframes = keyframes`\r\n 0% {\r\n background-position: right;\r\n }\r\n 100% {\r\n background-position: left;\r\n }\r\n`;\r\n\r\nconst Loader = styled.div<{ $duration: number }>`\r\n position: absolute;\r\n bottom: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 4px;\r\n border-bottom-left-radius: 8px;\r\n border-bottom-right-radius: 8px;\r\n\r\n animation: ${LoaderAnimationKeyframes} ${(props) => props.$duration}ms cubic-bezier(0.18, 0.39, 0.35, 1);\r\n\r\n &.${ToastColor[ToastColor.BLACK]} {\r\n background: linear-gradient(to right, ${props => COLORS.getColor('neutral_200', props.theme)} 50%, ${props => COLORS.getColor('neutral_800', props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]} {\r\n background: linear-gradient(to right, ${props => COLORS.getColor('neutral_400', props.theme)} 50%, ${props => COLORS.getColor('white', props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLUE]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'accent1'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'accent1'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.GREEN]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'positive'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'positive'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.ORANGE]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'warning'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'warning'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.RED]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'critical'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'critical'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n`;\r\n\r\nexport const ToastContainer = styled.div<{ animation: { $duration: string; $bezier: string; $transform: string; $keyframes: any }; $withLoader: boolean; $withClose: boolean }>`\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L2};\r\n border-radius: 4px;\r\n\r\n animation: ${(props) => props.animation.$keyframes} ${(props) => props.animation.$duration} ${(props) => props.animation.$bezier};\r\n transform: ${(props) => props.animation.$transform};\r\n\r\n transition: all 300ms cubic-bezier(0.64, 0.04, 0.35, 1);\r\n\r\n padding: 0 ${(props) => (props.$withClose ? '0' : '16px')} ${(props) => (props.$withLoader ? '4px' : '0')} 16px;\r\n\r\n margin-bottom: 8px;\r\n display: flex;\r\n align-items: center;\r\n gap: 16px;\r\n justify-content: left;\r\n\r\n position: relative;\r\n\r\n width: max-content;\r\n min-height: 48px;\r\n box-sizing: border-box;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType: 'bg-surface', defaultVariant: 'default'}, props.theme))}\r\n\r\n & a {\r\n display: inline;\r\n ${HyperLinkInvertedStyling}\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLACK]} {\r\n background-color: ${props => COLORS.getColor('neutral_800', props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]} {\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n color: ${props => COLORS.getColor('black', props.theme)};\r\n\r\n & a {\r\n ${HyperLinkDefaultStyling}\r\n }\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLUE]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'accent1' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.GREEN]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'positive' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.ORANGE]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'warning' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.RED]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n`;\r\n\r\nexport const ToastActionButtons = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n gap: 8px;\r\n align-items: center;\r\n\r\n & .action {\r\n height: unset;\r\n }\r\n`;\r\n\r\nexport const ToastCloseButton = styled.div`\r\n & > button {\r\n margin-left: 16px;\r\n\r\n & svg {\r\n padding: 0;\r\n }\r\n }\r\n\r\n button svg path{\r\n fill: ${props => COLORS.generateToken({ componentType: 'icon', isOnFill: true, defaultVariant: 'accent1' }, props.theme)} !important;\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]}, &.${ToastColor[ToastColor.ORANGE]} {\r\n button svg path {\r\n fill: ${props => COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, props.theme)} !important;\r\n }\r\n }\r\n`;\r\n\r\nexport const ToastTextContainer = styled.span`\r\n font-feature-settings: 'liga' off;\r\n width: 240px;\r\n display: flex;\r\n padding: 16px 0;\r\n`;\r\n\r\nexport const ToastIconContainer = styled.span`\r\n margin-right: -8px;\r\n`;\r\n\r\nexport type ToastOptions = {\r\n /** Optional. Color of the toast. Defaults to 'BLACK' */\r\n color?: ToastColor;\r\n /** Optional. If set Toast will automatically close after delay. Defaults to 'true' */\r\n autoClose?: boolean;\r\n /** Optional. Delay after which toast will disappear in milliseconds. Defaults to '5000' */\r\n delay?: number;\r\n /** Optional. If set then Close button will be shown on the right side of the Toast. Defaults to 'false' */\r\n showCloseButton?: boolean;\r\n\r\n /** Optional. Custom action to be available in the Toast, will be shown on the right side of the Toast. */\r\n action?: {\r\n label: string;\r\n handler: () => void;\r\n type?: ToastActionType;\r\n }[];\r\n /** Required. Position on the screen at which Toast will be shown */\r\n position: ToastPosition;\r\n /** Optional. From which side of the screen appearance animation will start. Defaults to 'TOP' */\r\n enterFrom?: ToastEntryDirection;\r\n /** Optional. Icon that will be shown on the left side of the Toast */\r\n icon?: React.ReactNode;\r\n};\r\n\r\ntype Props = {\r\n remove?: any;\r\n content: any;\r\n options?: ToastOptions;\r\n testId?: string;\r\n};\r\n\r\nconst DEFAULT_OPTIONS: ToastOptions = {\r\n color: ToastColor.BLACK,\r\n autoClose: true,\r\n delay: 5000,\r\n showCloseButton: false,\r\n position: ToastPosition.TOPLEFT,\r\n enterFrom: ToastEntryDirection.TOP,\r\n};\r\n\r\nconst Toast = ({ content, remove, options = DEFAULT_OPTIONS, testId }: Props) => {\r\n\r\n \r\n\r\n if(!remove)\r\n throw new Error('remove function is required when rendering Toast. Make sure that you are using useToast hook and ToastProvider for rendering Toasts');\r\n\r\n const styledTheme = useTheme();\r\n\r\n const removeRef = React.useRef(null);\r\n removeRef.current = remove;\r\n\r\n const elementRef = React.useRef<any>(null);\r\n\r\n const [shouldRemove, setShouldRemove] = React.useState(false);\r\n const [dimensions, setDimensions] = React.useState<{ width: number; height: number }>({ width: 0, height: 0 });\r\n\r\n const opts = { ...DEFAULT_OPTIONS, ...options };\r\n\r\n React.useEffect(() => {\r\n if (opts?.autoClose) {\r\n // @ts-ignore\r\n const id = setTimeout(() => setShouldRemove(true), opts.delay);\r\n return () => clearTimeout(id);\r\n }\r\n return undefined;\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (shouldRemove) {\r\n // @ts-ignore\r\n const id = setTimeout(() => removeRef.current(), 200);\r\n return () => clearTimeout(id);\r\n }\r\n }, [shouldRemove]);\r\n\r\n React.useEffect(() => {\r\n setDimensions({ height: elementRef.current?.clientHeight, width: elementRef.current?.clientWidth });\r\n }, []);\r\n\r\n const animation = animations[shouldRemove ? 'leave' : 'enter'];\r\n const direction = animation[opts.enterFrom ?? ToastEntryDirection.TOP];\r\n\r\n const fromY = dimensions.height * direction.fromHeight;\r\n const toY = dimensions.height * direction.toHeight;\r\n const fromX = dimensions.width * direction.fromWidth;\r\n const toX = dimensions.width * direction.toWidth;\r\n\r\n let prop = {\r\n $duration: animation.duration,\r\n $bezier: animation.bezier,\r\n $transform: `translateY(${toY}) translateX(${toX})`,\r\n $keyframes: keyframes`\r\n 0% {\r\n transform: translateY(${fromY}px) translateX(${fromX}px);\r\n }\r\n 100% {\r\n transform: translateY(${toY}px) translateX(${toX}px);\r\n }`,\r\n };\r\n\r\n if (!dimensions.height) {\r\n prop = {\r\n ...prop,\r\n ...{\r\n $transform: 'translateY(-1000vh) translateX(-1000vw)',\r\n $keyframes: keyframes``,\r\n },\r\n };\r\n }\r\n\r\n const theme = ToastColor[opts.color ?? ToastColor.BLACK];\r\n\r\n if (!shouldRemove){\r\n setTimeout(() => elementRef?.current?.focus());\r\n }\r\n\r\n return (\r\n <ToastContainer data-testid={testId}\r\n animation={prop}\r\n ref={elementRef}\r\n $withLoader={!!opts.autoClose}\r\n className={theme}\r\n $withClose={!!opts.showCloseButton}\r\n tabIndex={-1}>\r\n {opts.icon && <ToastIconContainer>{opts.icon}</ToastIconContainer>}\r\n <ToastTextContainer className={'description'}>{content}</ToastTextContainer>\r\n {opts.action && (\r\n <ToastActionButtons>\r\n {opts.action.map((action, i) => (\r\n <TextButton\r\n size={Size.Small}\r\n variant={action.type === ToastActionType.SECONDARY ? 'secondary' : 'primary'}\r\n invertFocus={opts.color === ToastColor.BLACK}\r\n key={i}\r\n onClick={() => {\r\n setShouldRemove(true);\r\n action.handler();\r\n }}\r\n className={'action'}>\r\n {action.label}\r\n </TextButton>\r\n ))}\r\n </ToastActionButtons>\r\n )}\r\n {opts.showCloseButton && (\r\n <ToastCloseButton className={`close-button ${theme}`}>\r\n <IconButton variant={'secondary'}\r\n shape=\"circular\"\r\n useTransparentBackground={true}\r\n invertFocus={opts.color === ToastColor.BLACK}\r\n action={(event) => setShouldRemove(true)}>\r\n <SystemIcons.Close size=\"24px\" color={COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, styledTheme)} />\r\n </IconButton>\r\n </ToastCloseButton>\r\n )}\r\n {!!opts.autoClose && <Loader className={`loader ${theme}`} $duration={opts.delay ?? 0} />}\r\n </ToastContainer>\r\n );\r\n};\r\n\r\nexport default Toast;\r\n\r\nconst animations = {\r\n enter: {\r\n bezier: 'cubic-bezier(0.22, 0.61, 0.35, 1)',\r\n duration: '300ms',\r\n [ToastEntryDirection.TOP]: {\r\n fromHeight: -1,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.BOTTOM]: {\r\n fromHeight: 1,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.LEFT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: -1,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.RIGHT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 1,\r\n toWidth: 0,\r\n },\r\n },\r\n leave: {\r\n bezier: 'cubic-bezier(0.5, 0.05, 0.67, 0.19)',\r\n duration: '205ms',\r\n [ToastEntryDirection.TOP]: {\r\n fromHeight: 0,\r\n toHeight: -1,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.BOTTOM]: {\r\n fromHeight: 0,\r\n toHeight: 1,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.LEFT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: -1,\r\n },\r\n [ToastEntryDirection.RIGHT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 1,\r\n },\r\n },\r\n};\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Toast.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_types","_styles","_Button","_HyperLink","_icons","_jsxRuntime","_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","LoaderAnimationKeyframes","keyframes","Loader","styled","div","props","$duration","ToastColor","BLACK","COLORS","getColor","theme","WHITE","BLUE","generateToken","componentType","defaultVariant","GREEN","ORANGE","RED","ToastContainer","exports","BOXSHADOWS","BOXSHADOW_L2","animation","$keyframes","$bezier","$transform","$withClose","$withLoader","ComponentSStyling","ComponentTextStyle","Regular","HyperLinkInvertedStyling","HyperLinkDefaultStyling","ToastActionButtons","ToastCloseButton","isOnFill","ToastTextContainer","span","ToastIconContainer","DEFAULT_OPTIONS","color","autoClose","delay","showCloseButton","position","ToastPosition","TOPLEFT","enterFrom","ToastEntryDirection","TOP","Toast","_ref","content","remove","options","testId","Error","styledTheme","useTheme","removeRef","useRef","current","elementRef","shouldRemove","setShouldRemove","useState","dimensions","setDimensions","width","height","opts","useEffect","id","setTimeout","clearTimeout","undefined","clientHeight","clientWidth","animations","direction","fromY","fromHeight","toY","toHeight","fromX","fromWidth","toX","toWidth","prop","duration","bezier","focus","jsxs","ref","className","tabIndex","children","icon","jsx","action","map","TextButton","size","Size","Small","variant","type","ToastActionType","SECONDARY","invertFocus","onClick","handler","label","IconButton","shape","useTransparentBackground","event","SystemIcons","Close","propTypes","_propTypes","any","isRequired","bool","number","arrayOf","string","func","node","_default","enter","BOTTOM","LEFT","RIGHT","leave"],"sources":["../../src/Toasters/Toast.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { keyframes, useTheme } from 'styled-components';\r\nimport { ToastActionType, ToastColor, ToastEntryDirection, ToastPosition } from '../types';\r\nimport { BOXSHADOWS, COLORS} from '../styles';\r\nimport { Size } from '../types'\r\nimport { TextButton, IconButton } from '../Button';\r\nimport { ComponentSStyling, ComponentTextStyle } from '../styles';\r\nimport {HyperLinkDefaultStyling, HyperLinkInvertedStyling} from '../HyperLink';\r\nimport { SystemIcons } from '../icons';\r\n\r\nconst LoaderAnimationKeyframes = keyframes`\r\n 0% {\r\n background-position: right;\r\n }\r\n 100% {\r\n background-position: left;\r\n }\r\n`;\r\n\r\nconst Loader = styled.div<{ $duration: number }>`\r\n position: absolute;\r\n bottom: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 4px;\r\n border-bottom-left-radius: 8px;\r\n border-bottom-right-radius: 8px;\r\n\r\n animation: ${LoaderAnimationKeyframes} ${(props) => props.$duration}ms cubic-bezier(0.18, 0.39, 0.35, 1);\r\n\r\n &.${ToastColor[ToastColor.BLACK]} {\r\n background: linear-gradient(to right, ${props => COLORS.getColor('neutral_200', props.theme)} 50%, ${props => COLORS.getColor('neutral_800', props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]} {\r\n background: linear-gradient(to right, ${props => COLORS.getColor('neutral_400', props.theme)} 50%, ${props => COLORS.getColor('white', props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLUE]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'accent1'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'accent1'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.GREEN]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'positive'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'positive'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.ORANGE]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'warning'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'warning'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.RED]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'critical'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'critical'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n`;\r\n\r\nexport const ToastContainer = styled.div<{ animation: { $duration: string; $bezier: string; $transform: string; $keyframes: any }; $withLoader: boolean; $withClose: boolean }>`\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L2};\r\n border-radius: 4px;\r\n\r\n animation: ${(props) => props.animation.$keyframes} ${(props) => props.animation.$duration} ${(props) => props.animation.$bezier};\r\n transform: ${(props) => props.animation.$transform};\r\n\r\n transition: all 300ms cubic-bezier(0.64, 0.04, 0.35, 1);\r\n\r\n padding: 0 ${(props) => (props.$withClose ? '0' : '16px')} ${(props) => (props.$withLoader ? '4px' : '0')} 16px;\r\n\r\n margin-bottom: 8px;\r\n display: flex;\r\n align-items: center;\r\n gap: 16px;\r\n justify-content: left;\r\n\r\n position: relative;\r\n\r\n width: max-content;\r\n min-height: 48px;\r\n box-sizing: border-box;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType: 'bg-surface', defaultVariant: 'default'}, props.theme))}\r\n\r\n & a {\r\n display: inline;\r\n ${HyperLinkInvertedStyling}\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLACK]} {\r\n background-color: ${props => COLORS.getColor('neutral_800', props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]} {\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n color: ${props => COLORS.getColor('black', props.theme)};\r\n\r\n & a {\r\n ${HyperLinkDefaultStyling}\r\n }\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLUE]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'accent1' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.GREEN]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'positive' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.ORANGE]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'warning' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.RED]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n`;\r\n\r\nexport const ToastActionButtons = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n gap: 8px;\r\n align-items: center;\r\n\r\n & .action {\r\n height: unset;\r\n }\r\n`;\r\n\r\nexport const ToastCloseButton = styled.div`\r\n & > button {\r\n margin-left: 16px;\r\n\r\n & svg {\r\n padding: 0;\r\n }\r\n }\r\n\r\n button svg path{\r\n fill: ${props => COLORS.generateToken({ componentType: 'icon', isOnFill: true, defaultVariant: 'accent1' }, props.theme)} !important;\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]}, &.${ToastColor[ToastColor.ORANGE]} {\r\n button svg path {\r\n fill: ${props => COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, props.theme)} !important;\r\n }\r\n }\r\n`;\r\n\r\nexport const ToastTextContainer = styled.span`\r\n font-feature-settings: 'liga' off;\r\n width: 240px;\r\n display: flex;\r\n padding: 16px 0;\r\n overflow-wrap: break-word;\r\n word-wrap: break-word;\r\n -ms-word-break: break-all;\r\n word-break: break-word;\r\n -ms-hyphens: auto;\r\n -moz-hyphens: auto;\r\n -webkit-hyphens: auto;\r\n hyphens: auto;\r\n`;\r\n\r\nexport const ToastIconContainer = styled.span`\r\n margin-right: -8px;\r\n`;\r\n\r\nexport type ToastOptions = {\r\n /** Optional. Color of the toast. Defaults to 'BLACK' */\r\n color?: ToastColor;\r\n /** Optional. If set Toast will automatically close after delay. Defaults to 'true' */\r\n autoClose?: boolean;\r\n /** Optional. Delay after which toast will disappear in milliseconds. Defaults to '5000' */\r\n delay?: number;\r\n /** Optional. If set then Close button will be shown on the right side of the Toast. Defaults to 'false' */\r\n showCloseButton?: boolean;\r\n\r\n /** Optional. Custom action to be available in the Toast, will be shown on the right side of the Toast. */\r\n action?: {\r\n label: string;\r\n handler: () => void;\r\n type?: ToastActionType;\r\n }[];\r\n /** Required. Position on the screen at which Toast will be shown */\r\n position: ToastPosition;\r\n /** Optional. From which side of the screen appearance animation will start. Defaults to 'TOP' */\r\n enterFrom?: ToastEntryDirection;\r\n /** Optional. Icon that will be shown on the left side of the Toast */\r\n icon?: React.ReactNode;\r\n};\r\n\r\ntype Props = {\r\n remove?: any;\r\n content: any;\r\n options?: ToastOptions;\r\n testId?: string;\r\n};\r\n\r\nconst DEFAULT_OPTIONS: ToastOptions = {\r\n color: ToastColor.BLACK,\r\n autoClose: true,\r\n delay: 5000,\r\n showCloseButton: false,\r\n position: ToastPosition.TOPLEFT,\r\n enterFrom: ToastEntryDirection.TOP,\r\n};\r\n\r\nconst Toast = ({ content, remove, options = DEFAULT_OPTIONS, testId }: Props) => {\r\n\r\n \r\n\r\n if(!remove)\r\n throw new Error('remove function is required when rendering Toast. Make sure that you are using useToast hook and ToastProvider for rendering Toasts');\r\n\r\n const styledTheme = useTheme();\r\n\r\n const removeRef = React.useRef(null);\r\n removeRef.current = remove;\r\n\r\n const elementRef = React.useRef<any>(null);\r\n\r\n const [shouldRemove, setShouldRemove] = React.useState(false);\r\n const [dimensions, setDimensions] = React.useState<{ width: number; height: number }>({ width: 0, height: 0 });\r\n\r\n const opts = { ...DEFAULT_OPTIONS, ...options };\r\n\r\n React.useEffect(() => {\r\n if (opts?.autoClose) {\r\n // @ts-ignore\r\n const id = setTimeout(() => setShouldRemove(true), opts.delay);\r\n return () => clearTimeout(id);\r\n }\r\n return undefined;\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (shouldRemove) {\r\n // @ts-ignore\r\n const id = setTimeout(() => removeRef.current(), 200);\r\n return () => clearTimeout(id);\r\n }\r\n }, [shouldRemove]);\r\n\r\n React.useEffect(() => {\r\n setDimensions({ height: elementRef.current?.clientHeight, width: elementRef.current?.clientWidth });\r\n }, []);\r\n\r\n const animation = animations[shouldRemove ? 'leave' : 'enter'];\r\n const direction = animation[opts.enterFrom ?? ToastEntryDirection.TOP];\r\n\r\n const fromY = dimensions.height * direction.fromHeight;\r\n const toY = dimensions.height * direction.toHeight;\r\n const fromX = dimensions.width * direction.fromWidth;\r\n const toX = dimensions.width * direction.toWidth;\r\n\r\n let prop = {\r\n $duration: animation.duration,\r\n $bezier: animation.bezier,\r\n $transform: `translateY(${toY}) translateX(${toX})`,\r\n $keyframes: keyframes`\r\n 0% {\r\n transform: translateY(${fromY}px) translateX(${fromX}px);\r\n }\r\n 100% {\r\n transform: translateY(${toY}px) translateX(${toX}px);\r\n }`,\r\n };\r\n\r\n if (!dimensions.height) {\r\n prop = {\r\n ...prop,\r\n ...{\r\n $transform: 'translateY(-1000vh) translateX(-1000vw)',\r\n $keyframes: keyframes``,\r\n },\r\n };\r\n }\r\n\r\n const theme = ToastColor[opts.color ?? ToastColor.BLACK];\r\n\r\n if (!shouldRemove){\r\n setTimeout(() => elementRef?.current?.focus());\r\n }\r\n\r\n return (\r\n <ToastContainer data-testid={testId}\r\n animation={prop}\r\n ref={elementRef}\r\n $withLoader={!!opts.autoClose}\r\n className={theme}\r\n $withClose={!!opts.showCloseButton}\r\n tabIndex={-1}>\r\n {opts.icon && <ToastIconContainer>{opts.icon}</ToastIconContainer>}\r\n <ToastTextContainer className={'description'}>{content}</ToastTextContainer>\r\n {opts.action && (\r\n <ToastActionButtons>\r\n {opts.action.map((action, i) => (\r\n <TextButton\r\n size={Size.Small}\r\n variant={action.type === ToastActionType.SECONDARY ? 'secondary' : 'primary'}\r\n invertFocus={opts.color === ToastColor.BLACK}\r\n key={i}\r\n onClick={() => {\r\n setShouldRemove(true);\r\n action.handler();\r\n }}\r\n className={'action'}>\r\n {action.label}\r\n </TextButton>\r\n ))}\r\n </ToastActionButtons>\r\n )}\r\n {opts.showCloseButton && (\r\n <ToastCloseButton className={`close-button ${theme}`}>\r\n <IconButton variant={'secondary'}\r\n shape=\"circular\"\r\n useTransparentBackground={true}\r\n invertFocus={opts.color === ToastColor.BLACK}\r\n action={(event) => setShouldRemove(true)}>\r\n <SystemIcons.Close size=\"24px\" color={COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, styledTheme)} />\r\n </IconButton>\r\n </ToastCloseButton>\r\n )}\r\n {!!opts.autoClose && <Loader className={`loader ${theme}`} $duration={opts.delay ?? 0} />}\r\n </ToastContainer>\r\n );\r\n};\r\n\r\nexport default Toast;\r\n\r\nconst animations = {\r\n enter: {\r\n bezier: 'cubic-bezier(0.22, 0.61, 0.35, 1)',\r\n duration: '300ms',\r\n [ToastEntryDirection.TOP]: {\r\n fromHeight: -1,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.BOTTOM]: {\r\n fromHeight: 1,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.LEFT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: -1,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.RIGHT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 1,\r\n toWidth: 0,\r\n },\r\n },\r\n leave: {\r\n bezier: 'cubic-bezier(0.5, 0.05, 0.67, 0.19)',\r\n duration: '205ms',\r\n [ToastEntryDirection.TOP]: {\r\n fromHeight: 0,\r\n toHeight: -1,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.BOTTOM]: {\r\n fromHeight: 0,\r\n toHeight: 1,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.LEFT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: -1,\r\n },\r\n [ToastEntryDirection.RIGHT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 1,\r\n },\r\n },\r\n};\r\n"],"mappings":"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","ignoreList":[]}
|
package/dist/Toasters/Toast.js
CHANGED
|
@@ -200,6 +200,14 @@ export const ToastTextContainer = styled.span`
|
|
|
200
200
|
width: 240px;
|
|
201
201
|
display: flex;
|
|
202
202
|
padding: 16px 0;
|
|
203
|
+
overflow-wrap: break-word;
|
|
204
|
+
word-wrap: break-word;
|
|
205
|
+
-ms-word-break: break-all;
|
|
206
|
+
word-break: break-word;
|
|
207
|
+
-ms-hyphens: auto;
|
|
208
|
+
-moz-hyphens: auto;
|
|
209
|
+
-webkit-hyphens: auto;
|
|
210
|
+
hyphens: auto;
|
|
203
211
|
`;
|
|
204
212
|
export const ToastIconContainer = styled.span`
|
|
205
213
|
margin-right: -8px;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toast.js","names":["React","styled","keyframes","useTheme","ToastActionType","ToastColor","ToastEntryDirection","ToastPosition","BOXSHADOWS","COLORS","Size","TextButton","IconButton","ComponentSStyling","ComponentTextStyle","HyperLinkDefaultStyling","HyperLinkInvertedStyling","SystemIcons","jsx","_jsx","jsxs","_jsxs","LoaderAnimationKeyframes","Loader","div","props","$duration","BLACK","getColor","theme","WHITE","BLUE","generateToken","componentType","defaultVariant","GREEN","ORANGE","RED","ToastContainer","BOXSHADOW_L2","animation","$keyframes","$bezier","$transform","$withClose","$withLoader","Regular","ToastActionButtons","ToastCloseButton","isOnFill","ToastTextContainer","span","ToastIconContainer","DEFAULT_OPTIONS","color","autoClose","delay","showCloseButton","position","TOPLEFT","enterFrom","TOP","Toast","_ref","content","remove","options","testId","Error","styledTheme","removeRef","useRef","current","elementRef","shouldRemove","setShouldRemove","useState","dimensions","setDimensions","width","height","opts","_objectSpread","useEffect","id","setTimeout","clearTimeout","undefined","clientHeight","clientWidth","animations","direction","fromY","fromHeight","toY","toHeight","fromX","fromWidth","toX","toWidth","prop","duration","bezier","focus","ref","className","tabIndex","children","icon","action","map","i","size","Small","variant","type","SECONDARY","invertFocus","onClick","handler","label","shape","useTransparentBackground","event","Close","propTypes","_pt","any","isRequired","bool","number","arrayOf","string","func","node","enter","BOTTOM","LEFT","RIGHT","leave"],"sources":["../../src/Toasters/Toast.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { keyframes, useTheme } from 'styled-components';\r\nimport { ToastActionType, ToastColor, ToastEntryDirection, ToastPosition } from '../types';\r\nimport { BOXSHADOWS, COLORS} from '../styles';\r\nimport { Size } from '../types'\r\nimport { TextButton, IconButton } from '../Button';\r\nimport { ComponentSStyling, ComponentTextStyle } from '../styles';\r\nimport {HyperLinkDefaultStyling, HyperLinkInvertedStyling} from '../HyperLink';\r\nimport { SystemIcons } from '../icons';\r\n\r\nconst LoaderAnimationKeyframes = keyframes`\r\n 0% {\r\n background-position: right;\r\n }\r\n 100% {\r\n background-position: left;\r\n }\r\n`;\r\n\r\nconst Loader = styled.div<{ $duration: number }>`\r\n position: absolute;\r\n bottom: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 4px;\r\n border-bottom-left-radius: 8px;\r\n border-bottom-right-radius: 8px;\r\n\r\n animation: ${LoaderAnimationKeyframes} ${(props) => props.$duration}ms cubic-bezier(0.18, 0.39, 0.35, 1);\r\n\r\n &.${ToastColor[ToastColor.BLACK]} {\r\n background: linear-gradient(to right, ${props => COLORS.getColor('neutral_200', props.theme)} 50%, ${props => COLORS.getColor('neutral_800', props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]} {\r\n background: linear-gradient(to right, ${props => COLORS.getColor('neutral_400', props.theme)} 50%, ${props => COLORS.getColor('white', props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLUE]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'accent1'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'accent1'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.GREEN]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'positive'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'positive'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.ORANGE]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'warning'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'warning'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.RED]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'critical'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'critical'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n`;\r\n\r\nexport const ToastContainer = styled.div<{ animation: { $duration: string; $bezier: string; $transform: string; $keyframes: any }; $withLoader: boolean; $withClose: boolean }>`\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L2};\r\n border-radius: 4px;\r\n\r\n animation: ${(props) => props.animation.$keyframes} ${(props) => props.animation.$duration} ${(props) => props.animation.$bezier};\r\n transform: ${(props) => props.animation.$transform};\r\n\r\n transition: all 300ms cubic-bezier(0.64, 0.04, 0.35, 1);\r\n\r\n padding: 0 ${(props) => (props.$withClose ? '0' : '16px')} ${(props) => (props.$withLoader ? '4px' : '0')} 16px;\r\n\r\n margin-bottom: 8px;\r\n display: flex;\r\n align-items: center;\r\n gap: 16px;\r\n justify-content: left;\r\n\r\n position: relative;\r\n\r\n width: max-content;\r\n min-height: 48px;\r\n box-sizing: border-box;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType: 'bg-surface', defaultVariant: 'default'}, props.theme))}\r\n\r\n & a {\r\n display: inline;\r\n ${HyperLinkInvertedStyling}\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLACK]} {\r\n background-color: ${props => COLORS.getColor('neutral_800', props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]} {\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n color: ${props => COLORS.getColor('black', props.theme)};\r\n\r\n & a {\r\n ${HyperLinkDefaultStyling}\r\n }\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLUE]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'accent1' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.GREEN]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'positive' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.ORANGE]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'warning' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.RED]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n`;\r\n\r\nexport const ToastActionButtons = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n gap: 8px;\r\n align-items: center;\r\n\r\n & .action {\r\n height: unset;\r\n }\r\n`;\r\n\r\nexport const ToastCloseButton = styled.div`\r\n & > button {\r\n margin-left: 16px;\r\n\r\n & svg {\r\n padding: 0;\r\n }\r\n }\r\n\r\n button svg path{\r\n fill: ${props => COLORS.generateToken({ componentType: 'icon', isOnFill: true, defaultVariant: 'accent1' }, props.theme)} !important;\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]}, &.${ToastColor[ToastColor.ORANGE]} {\r\n button svg path {\r\n fill: ${props => COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, props.theme)} !important;\r\n }\r\n }\r\n`;\r\n\r\nexport const ToastTextContainer = styled.span`\r\n font-feature-settings: 'liga' off;\r\n width: 240px;\r\n display: flex;\r\n padding: 16px 0;\r\n`;\r\n\r\nexport const ToastIconContainer = styled.span`\r\n margin-right: -8px;\r\n`;\r\n\r\nexport type ToastOptions = {\r\n /** Optional. Color of the toast. Defaults to 'BLACK' */\r\n color?: ToastColor;\r\n /** Optional. If set Toast will automatically close after delay. Defaults to 'true' */\r\n autoClose?: boolean;\r\n /** Optional. Delay after which toast will disappear in milliseconds. Defaults to '5000' */\r\n delay?: number;\r\n /** Optional. If set then Close button will be shown on the right side of the Toast. Defaults to 'false' */\r\n showCloseButton?: boolean;\r\n\r\n /** Optional. Custom action to be available in the Toast, will be shown on the right side of the Toast. */\r\n action?: {\r\n label: string;\r\n handler: () => void;\r\n type?: ToastActionType;\r\n }[];\r\n /** Required. Position on the screen at which Toast will be shown */\r\n position: ToastPosition;\r\n /** Optional. From which side of the screen appearance animation will start. Defaults to 'TOP' */\r\n enterFrom?: ToastEntryDirection;\r\n /** Optional. Icon that will be shown on the left side of the Toast */\r\n icon?: React.ReactNode;\r\n};\r\n\r\ntype Props = {\r\n remove?: any;\r\n content: any;\r\n options?: ToastOptions;\r\n testId?: string;\r\n};\r\n\r\nconst DEFAULT_OPTIONS: ToastOptions = {\r\n color: ToastColor.BLACK,\r\n autoClose: true,\r\n delay: 5000,\r\n showCloseButton: false,\r\n position: ToastPosition.TOPLEFT,\r\n enterFrom: ToastEntryDirection.TOP,\r\n};\r\n\r\nconst Toast = ({ content, remove, options = DEFAULT_OPTIONS, testId }: Props) => {\r\n\r\n \r\n\r\n if(!remove)\r\n throw new Error('remove function is required when rendering Toast. Make sure that you are using useToast hook and ToastProvider for rendering Toasts');\r\n\r\n const styledTheme = useTheme();\r\n\r\n const removeRef = React.useRef(null);\r\n removeRef.current = remove;\r\n\r\n const elementRef = React.useRef<any>(null);\r\n\r\n const [shouldRemove, setShouldRemove] = React.useState(false);\r\n const [dimensions, setDimensions] = React.useState<{ width: number; height: number }>({ width: 0, height: 0 });\r\n\r\n const opts = { ...DEFAULT_OPTIONS, ...options };\r\n\r\n React.useEffect(() => {\r\n if (opts?.autoClose) {\r\n // @ts-ignore\r\n const id = setTimeout(() => setShouldRemove(true), opts.delay);\r\n return () => clearTimeout(id);\r\n }\r\n return undefined;\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (shouldRemove) {\r\n // @ts-ignore\r\n const id = setTimeout(() => removeRef.current(), 200);\r\n return () => clearTimeout(id);\r\n }\r\n }, [shouldRemove]);\r\n\r\n React.useEffect(() => {\r\n setDimensions({ height: elementRef.current?.clientHeight, width: elementRef.current?.clientWidth });\r\n }, []);\r\n\r\n const animation = animations[shouldRemove ? 'leave' : 'enter'];\r\n const direction = animation[opts.enterFrom ?? ToastEntryDirection.TOP];\r\n\r\n const fromY = dimensions.height * direction.fromHeight;\r\n const toY = dimensions.height * direction.toHeight;\r\n const fromX = dimensions.width * direction.fromWidth;\r\n const toX = dimensions.width * direction.toWidth;\r\n\r\n let prop = {\r\n $duration: animation.duration,\r\n $bezier: animation.bezier,\r\n $transform: `translateY(${toY}) translateX(${toX})`,\r\n $keyframes: keyframes`\r\n 0% {\r\n transform: translateY(${fromY}px) translateX(${fromX}px);\r\n }\r\n 100% {\r\n transform: translateY(${toY}px) translateX(${toX}px);\r\n }`,\r\n };\r\n\r\n if (!dimensions.height) {\r\n prop = {\r\n ...prop,\r\n ...{\r\n $transform: 'translateY(-1000vh) translateX(-1000vw)',\r\n $keyframes: keyframes``,\r\n },\r\n };\r\n }\r\n\r\n const theme = ToastColor[opts.color ?? ToastColor.BLACK];\r\n\r\n if (!shouldRemove){\r\n setTimeout(() => elementRef?.current?.focus());\r\n }\r\n\r\n return (\r\n <ToastContainer data-testid={testId}\r\n animation={prop}\r\n ref={elementRef}\r\n $withLoader={!!opts.autoClose}\r\n className={theme}\r\n $withClose={!!opts.showCloseButton}\r\n tabIndex={-1}>\r\n {opts.icon && <ToastIconContainer>{opts.icon}</ToastIconContainer>}\r\n <ToastTextContainer className={'description'}>{content}</ToastTextContainer>\r\n {opts.action && (\r\n <ToastActionButtons>\r\n {opts.action.map((action, i) => (\r\n <TextButton\r\n size={Size.Small}\r\n variant={action.type === ToastActionType.SECONDARY ? 'secondary' : 'primary'}\r\n invertFocus={opts.color === ToastColor.BLACK}\r\n key={i}\r\n onClick={() => {\r\n setShouldRemove(true);\r\n action.handler();\r\n }}\r\n className={'action'}>\r\n {action.label}\r\n </TextButton>\r\n ))}\r\n </ToastActionButtons>\r\n )}\r\n {opts.showCloseButton && (\r\n <ToastCloseButton className={`close-button ${theme}`}>\r\n <IconButton variant={'secondary'}\r\n shape=\"circular\"\r\n useTransparentBackground={true}\r\n invertFocus={opts.color === ToastColor.BLACK}\r\n action={(event) => setShouldRemove(true)}>\r\n <SystemIcons.Close size=\"24px\" color={COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, styledTheme)} />\r\n </IconButton>\r\n </ToastCloseButton>\r\n )}\r\n {!!opts.autoClose && <Loader className={`loader ${theme}`} $duration={opts.delay ?? 0} />}\r\n </ToastContainer>\r\n );\r\n};\r\n\r\nexport default Toast;\r\n\r\nconst animations = {\r\n enter: {\r\n bezier: 'cubic-bezier(0.22, 0.61, 0.35, 1)',\r\n duration: '300ms',\r\n [ToastEntryDirection.TOP]: {\r\n fromHeight: -1,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.BOTTOM]: {\r\n fromHeight: 1,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.LEFT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: -1,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.RIGHT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 1,\r\n toWidth: 0,\r\n },\r\n },\r\n leave: {\r\n bezier: 'cubic-bezier(0.5, 0.05, 0.67, 0.19)',\r\n duration: '205ms',\r\n [ToastEntryDirection.TOP]: {\r\n fromHeight: 0,\r\n toHeight: -1,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.BOTTOM]: {\r\n fromHeight: 0,\r\n toHeight: 1,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.LEFT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: -1,\r\n },\r\n [ToastEntryDirection.RIGHT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 1,\r\n },\r\n },\r\n};\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Toast.js","names":["React","styled","keyframes","useTheme","ToastActionType","ToastColor","ToastEntryDirection","ToastPosition","BOXSHADOWS","COLORS","Size","TextButton","IconButton","ComponentSStyling","ComponentTextStyle","HyperLinkDefaultStyling","HyperLinkInvertedStyling","SystemIcons","jsx","_jsx","jsxs","_jsxs","LoaderAnimationKeyframes","Loader","div","props","$duration","BLACK","getColor","theme","WHITE","BLUE","generateToken","componentType","defaultVariant","GREEN","ORANGE","RED","ToastContainer","BOXSHADOW_L2","animation","$keyframes","$bezier","$transform","$withClose","$withLoader","Regular","ToastActionButtons","ToastCloseButton","isOnFill","ToastTextContainer","span","ToastIconContainer","DEFAULT_OPTIONS","color","autoClose","delay","showCloseButton","position","TOPLEFT","enterFrom","TOP","Toast","_ref","content","remove","options","testId","Error","styledTheme","removeRef","useRef","current","elementRef","shouldRemove","setShouldRemove","useState","dimensions","setDimensions","width","height","opts","_objectSpread","useEffect","id","setTimeout","clearTimeout","undefined","clientHeight","clientWidth","animations","direction","fromY","fromHeight","toY","toHeight","fromX","fromWidth","toX","toWidth","prop","duration","bezier","focus","ref","className","tabIndex","children","icon","action","map","i","size","Small","variant","type","SECONDARY","invertFocus","onClick","handler","label","shape","useTransparentBackground","event","Close","propTypes","_pt","any","isRequired","bool","number","arrayOf","string","func","node","enter","BOTTOM","LEFT","RIGHT","leave"],"sources":["../../src/Toasters/Toast.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { keyframes, useTheme } from 'styled-components';\r\nimport { ToastActionType, ToastColor, ToastEntryDirection, ToastPosition } from '../types';\r\nimport { BOXSHADOWS, COLORS} from '../styles';\r\nimport { Size } from '../types'\r\nimport { TextButton, IconButton } from '../Button';\r\nimport { ComponentSStyling, ComponentTextStyle } from '../styles';\r\nimport {HyperLinkDefaultStyling, HyperLinkInvertedStyling} from '../HyperLink';\r\nimport { SystemIcons } from '../icons';\r\n\r\nconst LoaderAnimationKeyframes = keyframes`\r\n 0% {\r\n background-position: right;\r\n }\r\n 100% {\r\n background-position: left;\r\n }\r\n`;\r\n\r\nconst Loader = styled.div<{ $duration: number }>`\r\n position: absolute;\r\n bottom: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 4px;\r\n border-bottom-left-radius: 8px;\r\n border-bottom-right-radius: 8px;\r\n\r\n animation: ${LoaderAnimationKeyframes} ${(props) => props.$duration}ms cubic-bezier(0.18, 0.39, 0.35, 1);\r\n\r\n &.${ToastColor[ToastColor.BLACK]} {\r\n background: linear-gradient(to right, ${props => COLORS.getColor('neutral_200', props.theme)} 50%, ${props => COLORS.getColor('neutral_800', props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]} {\r\n background: linear-gradient(to right, ${props => COLORS.getColor('neutral_400', props.theme)} 50%, ${props => COLORS.getColor('white', props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLUE]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'accent1'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'accent1'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.GREEN]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'positive'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'positive'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.ORANGE]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'warning'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'warning'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n\r\n &.${ToastColor[ToastColor.RED]} {\r\n background: linear-gradient(to right, ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'critical'}, props.theme)} 50%, ${props => COLORS.generateToken({componentType:'bg-fill', defaultVariant:'critical'}, props.theme)} 50%) left;\r\n background-size: 200% 100%;\r\n }\r\n`;\r\n\r\nexport const ToastContainer = styled.div<{ animation: { $duration: string; $bezier: string; $transform: string; $keyframes: any }; $withLoader: boolean; $withClose: boolean }>`\r\n box-shadow: ${BOXSHADOWS.BOXSHADOW_L2};\r\n border-radius: 4px;\r\n\r\n animation: ${(props) => props.animation.$keyframes} ${(props) => props.animation.$duration} ${(props) => props.animation.$bezier};\r\n transform: ${(props) => props.animation.$transform};\r\n\r\n transition: all 300ms cubic-bezier(0.64, 0.04, 0.35, 1);\r\n\r\n padding: 0 ${(props) => (props.$withClose ? '0' : '16px')} ${(props) => (props.$withLoader ? '4px' : '0')} 16px;\r\n\r\n margin-bottom: 8px;\r\n display: flex;\r\n align-items: center;\r\n gap: 16px;\r\n justify-content: left;\r\n\r\n position: relative;\r\n\r\n width: max-content;\r\n min-height: 48px;\r\n box-sizing: border-box;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType: 'bg-surface', defaultVariant: 'default'}, props.theme))}\r\n\r\n & a {\r\n display: inline;\r\n ${HyperLinkInvertedStyling}\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLACK]} {\r\n background-color: ${props => COLORS.getColor('neutral_800', props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]} {\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n color: ${props => COLORS.getColor('black', props.theme)};\r\n\r\n & a {\r\n ${HyperLinkDefaultStyling}\r\n }\r\n }\r\n\r\n &.${ToastColor[ToastColor.BLUE]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'accent1' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.GREEN]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'positive' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.ORANGE]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'warning' }, props.theme)};\r\n }\r\n\r\n &.${ToastColor[ToastColor.RED]} {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'critical' }, props.theme)};\r\n }\r\n`;\r\n\r\nexport const ToastActionButtons = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n gap: 8px;\r\n align-items: center;\r\n\r\n & .action {\r\n height: unset;\r\n }\r\n`;\r\n\r\nexport const ToastCloseButton = styled.div`\r\n & > button {\r\n margin-left: 16px;\r\n\r\n & svg {\r\n padding: 0;\r\n }\r\n }\r\n\r\n button svg path{\r\n fill: ${props => COLORS.generateToken({ componentType: 'icon', isOnFill: true, defaultVariant: 'accent1' }, props.theme)} !important;\r\n }\r\n\r\n &.${ToastColor[ToastColor.WHITE]}, &.${ToastColor[ToastColor.ORANGE]} {\r\n button svg path {\r\n fill: ${props => COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, props.theme)} !important;\r\n }\r\n }\r\n`;\r\n\r\nexport const ToastTextContainer = styled.span`\r\n font-feature-settings: 'liga' off;\r\n width: 240px;\r\n display: flex;\r\n padding: 16px 0;\r\n overflow-wrap: break-word;\r\n word-wrap: break-word;\r\n -ms-word-break: break-all;\r\n word-break: break-word;\r\n -ms-hyphens: auto;\r\n -moz-hyphens: auto;\r\n -webkit-hyphens: auto;\r\n hyphens: auto;\r\n`;\r\n\r\nexport const ToastIconContainer = styled.span`\r\n margin-right: -8px;\r\n`;\r\n\r\nexport type ToastOptions = {\r\n /** Optional. Color of the toast. Defaults to 'BLACK' */\r\n color?: ToastColor;\r\n /** Optional. If set Toast will automatically close after delay. Defaults to 'true' */\r\n autoClose?: boolean;\r\n /** Optional. Delay after which toast will disappear in milliseconds. Defaults to '5000' */\r\n delay?: number;\r\n /** Optional. If set then Close button will be shown on the right side of the Toast. Defaults to 'false' */\r\n showCloseButton?: boolean;\r\n\r\n /** Optional. Custom action to be available in the Toast, will be shown on the right side of the Toast. */\r\n action?: {\r\n label: string;\r\n handler: () => void;\r\n type?: ToastActionType;\r\n }[];\r\n /** Required. Position on the screen at which Toast will be shown */\r\n position: ToastPosition;\r\n /** Optional. From which side of the screen appearance animation will start. Defaults to 'TOP' */\r\n enterFrom?: ToastEntryDirection;\r\n /** Optional. Icon that will be shown on the left side of the Toast */\r\n icon?: React.ReactNode;\r\n};\r\n\r\ntype Props = {\r\n remove?: any;\r\n content: any;\r\n options?: ToastOptions;\r\n testId?: string;\r\n};\r\n\r\nconst DEFAULT_OPTIONS: ToastOptions = {\r\n color: ToastColor.BLACK,\r\n autoClose: true,\r\n delay: 5000,\r\n showCloseButton: false,\r\n position: ToastPosition.TOPLEFT,\r\n enterFrom: ToastEntryDirection.TOP,\r\n};\r\n\r\nconst Toast = ({ content, remove, options = DEFAULT_OPTIONS, testId }: Props) => {\r\n\r\n \r\n\r\n if(!remove)\r\n throw new Error('remove function is required when rendering Toast. Make sure that you are using useToast hook and ToastProvider for rendering Toasts');\r\n\r\n const styledTheme = useTheme();\r\n\r\n const removeRef = React.useRef(null);\r\n removeRef.current = remove;\r\n\r\n const elementRef = React.useRef<any>(null);\r\n\r\n const [shouldRemove, setShouldRemove] = React.useState(false);\r\n const [dimensions, setDimensions] = React.useState<{ width: number; height: number }>({ width: 0, height: 0 });\r\n\r\n const opts = { ...DEFAULT_OPTIONS, ...options };\r\n\r\n React.useEffect(() => {\r\n if (opts?.autoClose) {\r\n // @ts-ignore\r\n const id = setTimeout(() => setShouldRemove(true), opts.delay);\r\n return () => clearTimeout(id);\r\n }\r\n return undefined;\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (shouldRemove) {\r\n // @ts-ignore\r\n const id = setTimeout(() => removeRef.current(), 200);\r\n return () => clearTimeout(id);\r\n }\r\n }, [shouldRemove]);\r\n\r\n React.useEffect(() => {\r\n setDimensions({ height: elementRef.current?.clientHeight, width: elementRef.current?.clientWidth });\r\n }, []);\r\n\r\n const animation = animations[shouldRemove ? 'leave' : 'enter'];\r\n const direction = animation[opts.enterFrom ?? ToastEntryDirection.TOP];\r\n\r\n const fromY = dimensions.height * direction.fromHeight;\r\n const toY = dimensions.height * direction.toHeight;\r\n const fromX = dimensions.width * direction.fromWidth;\r\n const toX = dimensions.width * direction.toWidth;\r\n\r\n let prop = {\r\n $duration: animation.duration,\r\n $bezier: animation.bezier,\r\n $transform: `translateY(${toY}) translateX(${toX})`,\r\n $keyframes: keyframes`\r\n 0% {\r\n transform: translateY(${fromY}px) translateX(${fromX}px);\r\n }\r\n 100% {\r\n transform: translateY(${toY}px) translateX(${toX}px);\r\n }`,\r\n };\r\n\r\n if (!dimensions.height) {\r\n prop = {\r\n ...prop,\r\n ...{\r\n $transform: 'translateY(-1000vh) translateX(-1000vw)',\r\n $keyframes: keyframes``,\r\n },\r\n };\r\n }\r\n\r\n const theme = ToastColor[opts.color ?? ToastColor.BLACK];\r\n\r\n if (!shouldRemove){\r\n setTimeout(() => elementRef?.current?.focus());\r\n }\r\n\r\n return (\r\n <ToastContainer data-testid={testId}\r\n animation={prop}\r\n ref={elementRef}\r\n $withLoader={!!opts.autoClose}\r\n className={theme}\r\n $withClose={!!opts.showCloseButton}\r\n tabIndex={-1}>\r\n {opts.icon && <ToastIconContainer>{opts.icon}</ToastIconContainer>}\r\n <ToastTextContainer className={'description'}>{content}</ToastTextContainer>\r\n {opts.action && (\r\n <ToastActionButtons>\r\n {opts.action.map((action, i) => (\r\n <TextButton\r\n size={Size.Small}\r\n variant={action.type === ToastActionType.SECONDARY ? 'secondary' : 'primary'}\r\n invertFocus={opts.color === ToastColor.BLACK}\r\n key={i}\r\n onClick={() => {\r\n setShouldRemove(true);\r\n action.handler();\r\n }}\r\n className={'action'}>\r\n {action.label}\r\n </TextButton>\r\n ))}\r\n </ToastActionButtons>\r\n )}\r\n {opts.showCloseButton && (\r\n <ToastCloseButton className={`close-button ${theme}`}>\r\n <IconButton variant={'secondary'}\r\n shape=\"circular\"\r\n useTransparentBackground={true}\r\n invertFocus={opts.color === ToastColor.BLACK}\r\n action={(event) => setShouldRemove(true)}>\r\n <SystemIcons.Close size=\"24px\" color={COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, styledTheme)} />\r\n </IconButton>\r\n </ToastCloseButton>\r\n )}\r\n {!!opts.autoClose && <Loader className={`loader ${theme}`} $duration={opts.delay ?? 0} />}\r\n </ToastContainer>\r\n );\r\n};\r\n\r\nexport default Toast;\r\n\r\nconst animations = {\r\n enter: {\r\n bezier: 'cubic-bezier(0.22, 0.61, 0.35, 1)',\r\n duration: '300ms',\r\n [ToastEntryDirection.TOP]: {\r\n fromHeight: -1,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.BOTTOM]: {\r\n fromHeight: 1,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.LEFT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: -1,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.RIGHT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 1,\r\n toWidth: 0,\r\n },\r\n },\r\n leave: {\r\n bezier: 'cubic-bezier(0.5, 0.05, 0.67, 0.19)',\r\n duration: '205ms',\r\n [ToastEntryDirection.TOP]: {\r\n fromHeight: 0,\r\n toHeight: -1,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.BOTTOM]: {\r\n fromHeight: 0,\r\n toHeight: 1,\r\n fromWidth: 0,\r\n toWidth: 0,\r\n },\r\n [ToastEntryDirection.LEFT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: -1,\r\n },\r\n [ToastEntryDirection.RIGHT]: {\r\n fromHeight: 0,\r\n toHeight: 0,\r\n fromWidth: 0,\r\n toWidth: 1,\r\n },\r\n },\r\n};\r\n"],"mappings":"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","ignoreList":[]}
|