@foxford/ui 2.16.2 → 2.17.0-beta-cee51ed-20231220

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/components/Alert/Alert.js +1 -1
  2. package/components/Alert/Alert.js.map +1 -1
  3. package/components/Alert/style.js +1 -1
  4. package/components/Alert/style.js.map +1 -1
  5. package/components/Alert/utils.js.map +1 -1
  6. package/components/Amount/Amount.js.map +1 -1
  7. package/components/Anchor/Anchor.js +1 -1
  8. package/components/Anchor/Anchor.js.map +1 -1
  9. package/components/Anchor/constants.js +2 -0
  10. package/components/Anchor/constants.js.map +1 -0
  11. package/components/Anchor/style.js +1 -1
  12. package/components/Anchor/style.js.map +1 -1
  13. package/components/Arrow/Arrow.js +1 -1
  14. package/components/Arrow/Arrow.js.map +1 -1
  15. package/components/Arrow/style.js +1 -1
  16. package/components/Arrow/style.js.map +1 -1
  17. package/components/ArrowBadge/constants.js.map +1 -1
  18. package/components/Badge/constants.js.map +1 -1
  19. package/components/Button/Button.js +1 -1
  20. package/components/Button/Button.js.map +1 -1
  21. package/components/Button/constants.js.map +1 -1
  22. package/components/Button/style.js +1 -1
  23. package/components/Button/style.js.map +1 -1
  24. package/components/Checkbox/Checkbox.js +1 -1
  25. package/components/Checkbox/Checkbox.js.map +1 -1
  26. package/components/Checkbox/style.js +1 -1
  27. package/components/Checkbox/style.js.map +1 -1
  28. package/components/ContextMenu.Multilevel/ContextMenu.Multilevel.js.map +1 -1
  29. package/components/Icon/Icon.js +1 -1
  30. package/components/Icon/Icon.js.map +1 -1
  31. package/components/Switcher/Switcher.js +1 -1
  32. package/components/Switcher/Switcher.js.map +1 -1
  33. package/components/Switcher/style.js +1 -1
  34. package/components/Switcher/style.js.map +1 -1
  35. package/components/Tab/constants.js.map +1 -1
  36. package/components/Tab/style.js.map +1 -1
  37. package/components/Text/constants.js.map +1 -1
  38. package/components/Text/style.js +1 -1
  39. package/components/Text/style.js.map +1 -1
  40. package/components/Text.Heading/Text.Heading.js +1 -1
  41. package/components/Text.Heading/Text.Heading.js.map +1 -1
  42. package/components/Textarea/Textarea.js +1 -1
  43. package/components/Textarea/Textarea.js.map +1 -1
  44. package/components/Textarea/style.js +1 -1
  45. package/components/Textarea/style.js.map +1 -1
  46. package/dts/index.d.ts +383 -381
  47. package/hocs/withMergedProps.js.map +1 -1
  48. package/hooks/useClassname.js +1 -1
  49. package/hooks/useClassname.js.map +1 -1
  50. package/index.cjs.js +1 -1
  51. package/index.cjs.js.map +1 -1
  52. package/mixins/color.js.map +1 -1
  53. package/mixins/responsive-property.js.map +1 -1
  54. package/mixins/shared.js.map +1 -1
  55. package/mixins/size.js +1 -1
  56. package/mixins/size.js.map +1 -1
  57. package/package.json +2 -1
  58. package/shared/utils/style.js.map +1 -1
  59. package/theme/colors-dark.js.map +1 -1
  60. package/theme/colors-light.js.map +1 -1
  61. package/theme/colors.js.map +1 -1
  62. package/hooks/use-theme.js +0 -2
  63. package/hooks/use-theme.js.map +0 -1
  64. package/shared/utils/inject-theme.js +0 -2
  65. package/shared/utils/inject-theme.js.map +0 -1
@@ -1,2 +1,2 @@
1
- import o from'@babel/runtime/helpers/objectSpread2';import{forwardRef as e,useState as r}from'react';import{Close as t,WarningTriangleFill as i,CheckCircleFill as n,NotifFill as s,CloseCirlceFill as a}from'@foxford/icon-pack';import{useClassname as c}from'../../hooks/useClassname.js';import{useConfigPriority as l}from'../../hooks/use-config-priority.js';import{useFallbackTheme as m}from'../../hooks/use-theme.js';import{Anchor as p}from'../Anchor/Anchor.js';import{Button as h}from'../Button/Button.js';import{Icon as u}from'../Icon/Icon.js';import'../Icon/icons.js';import{Root as C,IconWrapper as d,Timer as f,ContentWrapper as k,Title as y,Content as w,Link as x,Actions as b,CancelTimer as g,CloseIcon as A}from'./style.js';import{countdownColor as T}from'./utils.js';import{jsxs as v,jsx as z}from'react/jsx-runtime';var j=o=>{var{isCompact:e,theme:r,type:t}=o;var c=e?16:24;switch(t){case'error':return z(a,{color:r.colors['alert-bg-error-500'],size:c});case'info':return z(s,{color:r.colors['content-brand-primary'],size:c});case'success':return z(n,{color:r.colors['alert-success'],size:c});case'warning':return z(i,{color:r.colors['alert-warning'],size:c});default:return null}};var I='Alert';var W=e(((e,i)=>{var n;var s=m();var{cancelTimerText:a="Отменить",primaryAction:I,primaryActionProps:W,secondaryAction:N,secondaryActionProps:P,children:F,className:B,clear:M,customIcon:E,image:L,isCompact:R,link:O,linkProps:S,noIcon:H,onClickCancelTimer:_,closeToast:q,size:D="s",style:G,textProps:J,textWrap:K,timer:Q,title:U,titleProps:V,type:X,width:Y=['fit-content','fit-content','fit-content','351px','304px','304px']}=l(null===(n=s.components)||void 0===n?void 0:n.Alert,e);var Z=c("Alert",B);var[$,oo]=r(!1);var eo=Boolean('l'===D||!!U||R&&(U||O||I||N));return v(C,{className:Z,clear:M,column:eo,isCompact:R,noIcon:H,onMouseEnter:Q&&(()=>{oo(!0)}),onMouseLeave:Q&&(()=>{oo(!1)}),ref:i,size:D,style:G,textWrap:K,type:X,width:Y,withAction:!!I||!!N,withCloseIcon:!!q,withImage:!!L,withLink:!!O,withTimer:!!Q,withTitle:!!U,children:[(!H||E)&&v(d,{column:eo,isCompact:R,withImage:!!L,children:[!H&&!Q&&!E&&!L&&j({isCompact:R,theme:s,type:X}),E&&z(u,{name:E,size:R?16:24}),L,Q&&z(f,{isCompact:R,paused:$,timer:Q,color:T({theme:s,type:X})})]}),v(k,{column:eo,isCompact:R,children:[U&&z(y,o(o({color:s.colors['content-onmain-primary'],isCompact:R,size:R?14:16,lineHeight:"m"},V),{},{children:U})),z(w,o(o({appearance:"body",color:s.colors['content-onmain-primary'],column:eo,isCompact:R,size:R?'xs':'s',textWrap:K},J),{},{children:F})),O&&z(x,{clear:M,column:eo,isCompact:R,withTitle:!!U,children:z(p,o(o({color:e.clear?s.colors['content-link']:s.colors['content-onmain-primary'],onClick:O.onClick,preset:"brand",pseudo:!0,size:R?'s':'m'},S),{},{children:O.content}))}),(I||N)&&v(b,{column:eo,isCompact:R,withTitle:!!U,children:[N&&z(h,o(o({black:!0,fontWeight:"normal",marginRight:eo?4:8,onClick:N.onClick,outline:!0,preset:"brand",size:"xs"},P),{},{children:N.content})),I&&z(h,o(o({black:!0,fontWeight:"normal",onClick:I.onClick,preset:"brand",size:"xs"},W),{},{children:I.content}))]})]}),_&&z(g,{black:!0,clear:!0,fontWeight:"normal",isCompact:R,onClick:_,preset:"brand",size:R?'xs':'m',children:a}),q&&(!R||!Q)&&z(A,{"aria-label":"close",onClick:q,type:"button",withTimer:!!Q,children:z(t,{color:s.colors['content-onmain-primary'],size:R?18:24})})]})}));W.displayName="Alert";export{W as Alert,I as COMPONENT_NAME};
1
+ import o from'@babel/runtime/helpers/objectSpread2';import{forwardRef as e,useState as r}from'react';import{useTheme as t}from'styled-components';import{Close as i,WarningTriangleFill as n,CheckCircleFill as s,NotifFill as a,CloseCirlceFill as c}from'@foxford/icon-pack';import{useClassname as l}from'../../hooks/useClassname.js';import{useConfigPriority as m}from'../../hooks/use-config-priority.js';import{Anchor as p}from'../Anchor/Anchor.js';import{Button as h}from'../Button/Button.js';import{Icon as u}from'../Icon/Icon.js';import'../Icon/icons.js';import{Root as C,IconWrapper as d,Timer as f,ContentWrapper as y,Title as k,Content as w,Link as x,Actions as g,CancelTimer as A,CloseIcon as T}from'./style.js';import{countdownColor as b}from'./utils.js';import{jsxs as v,jsx as z}from'react/jsx-runtime';var j=o=>{var{isCompact:e,theme:r,type:t}=o;var i=e?16:24;switch(t){case'error':return z(c,{color:r.colors['alert-bg-error-500'],size:i});case'info':return z(a,{color:r.colors['content-brand-primary'],size:i});case'success':return z(s,{color:r.colors['alert-success'],size:i});case'warning':return z(n,{color:r.colors['alert-warning'],size:i});default:return null}};var I='Alert';var W=e(((e,n)=>{var s;var a=t();var{cancelTimerText:c="Отменить",primaryAction:I,primaryActionProps:W,secondaryAction:N,secondaryActionProps:P,children:B,className:F,clear:M,customIcon:E,image:L,isCompact:R,link:O,linkProps:S,noIcon:H,onClickCancelTimer:_,closeToast:q,size:D="s",style:G,textProps:J,textWrap:K,timer:Q,title:U,titleProps:V,type:X,width:Y=['fit-content','fit-content','fit-content','351px','304px','304px']}=m(null===(s=a.components)||void 0===s?void 0:s.Alert,e);var Z=l("Alert",F);var[$,oo]=r(!1);var eo=Boolean('l'===D||!!U||R&&(U||O||I||N));return v(C,{className:Z,clear:M,column:eo,isCompact:R,noIcon:H,onMouseEnter:()=>{Q&&oo(!0)},onMouseLeave:()=>{Q&&oo(!1)},ref:n,size:D,style:G,textWrap:K,type:X,width:Y,withAction:!!I||!!N,withCloseIcon:!!q,withImage:!!L,withLink:!!O,withTimer:!!Q,withTitle:!!U,children:[(!H||E)&&v(d,{column:eo,isCompact:R,withImage:!!L,children:[!H&&!Q&&!E&&!L&&j({isCompact:R,theme:a,type:X}),E&&z(u,{name:E,size:R?16:24}),L,Q&&z(f,{isCompact:R,paused:$,timer:Q,color:b({theme:a,type:X})})]}),v(y,{column:eo,isCompact:R,children:[U&&z(k,o(o({color:a.colors['content-onmain-primary'],isCompact:R,size:R?14:16,lineHeight:"m"},V),{},{children:U})),z(w,o(o({appearance:"body",color:a.colors['content-onmain-primary'],column:eo,isCompact:R,size:R?'xs':'s',textWrap:K},J),{},{children:B})),O&&z(x,{clear:M,column:eo,isCompact:R,withTitle:!!U,children:z(p,o(o({color:e.clear?a.colors['content-link']:a.colors['content-onmain-primary'],onClick:O.onClick,preset:"default",pseudo:!0,size:R?'s':'m'},S),{},{children:O.content}))}),(I||N)&&v(g,{column:eo,isCompact:R,withTitle:!!U,children:[N&&z(h,o(o({black:!0,fontWeight:"normal",marginRight:eo?4:8,onClick:N.onClick,outline:!0,preset:"brand",size:"xs"},P),{},{children:N.content})),I&&z(h,o(o({black:!0,fontWeight:"normal",onClick:I.onClick,preset:"brand",size:"xs"},W),{},{children:I.content}))]})]}),_&&z(A,{black:!0,clear:!0,fontWeight:"normal",isCompact:R,onClick:_,preset:"brand",size:R?'xs':'m',children:c}),q&&(!R||!Q)&&z(T,{"aria-label":"close",onClick:q,type:"button",withTimer:!!Q,children:z(i,{color:a.colors['content-onmain-primary'],size:R?18:24})})]})}));W.displayName="Alert";export{W as Alert,I as COMPONENT_NAME};
2
2
  //# sourceMappingURL=Alert.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Alert.js","sources":["../../../../src/components/Alert/Alert.tsx"],"sourcesContent":["import { forwardRef, useState } from 'react'\nimport { CheckCircleFill, Close, CloseCirlceFill, NotifFill, WarningTriangleFill } from '@foxford/icon-pack'\nimport type { DefaultTheme } from 'styled-components'\n\nimport { useClassname } from 'hooks/useClassname'\nimport { useConfigPriority } from 'hooks/use-config-priority'\nimport { useFallbackTheme } from 'hooks/use-theme'\n\nimport { Anchor } from '../Anchor'\nimport { Button } from '../Button'\nimport { Icon } from '../Icon'\n\nimport * as Styled from './style'\n\nimport type { AlertProps } from './types'\nimport { countdownColor } from './utils'\n\nconst getDefaultIcon = ({\n isCompact,\n theme,\n type,\n}: Pick<AlertProps, 'isCompact' | 'type'> & { theme: DefaultTheme }) => {\n const size = isCompact ? 16 : 24\n\n switch (type) {\n case 'error':\n return <CloseCirlceFill color={theme.colors['alert-bg-error-500']} size={size} />\n case 'info':\n return <NotifFill color={theme.colors['content-brand-primary']} size={size} />\n case 'success':\n return <CheckCircleFill color={theme.colors['alert-success']} size={size} />\n case 'warning':\n return <WarningTriangleFill color={theme.colors['alert-warning']} size={size} />\n default:\n return null\n }\n}\n\nconst COMPONENT_NAME = 'Alert'\n\nconst Alert = forwardRef<HTMLDivElement, AlertProps>((props, ref) => {\n const theme = useFallbackTheme()\n\n const {\n cancelTimerText = 'Отменить',\n primaryAction,\n primaryActionProps,\n secondaryAction,\n secondaryActionProps,\n children,\n className,\n clear,\n customIcon,\n image,\n isCompact,\n link,\n linkProps,\n noIcon,\n onClickCancelTimer,\n closeToast,\n size = 's',\n style,\n textProps,\n textWrap,\n timer,\n title,\n titleProps,\n type,\n width = ['fit-content', 'fit-content', 'fit-content', '351px', '304px', '304px'],\n } = useConfigPriority<AlertProps>(theme.components?.Alert, props)\n const _className = useClassname(COMPONENT_NAME, className)\n const [timerOnPause, setTimerOnPause] = useState(false)\n\n const column = Boolean(size === 'l' || !!title || (isCompact && (title || link || primaryAction || secondaryAction)))\n\n const handleMouseEnter = () => {\n setTimerOnPause(true)\n }\n\n const handleMouseLeave = () => {\n setTimerOnPause(false)\n }\n\n return (\n <Styled.Root\n className={_className}\n clear={clear}\n column={column}\n isCompact={isCompact}\n noIcon={noIcon}\n onMouseEnter={timer && handleMouseEnter}\n onMouseLeave={timer && handleMouseLeave}\n ref={ref}\n size={size}\n style={style}\n textWrap={textWrap}\n type={type}\n width={width}\n withAction={!!primaryAction || !!secondaryAction}\n withCloseIcon={!!closeToast}\n withImage={!!image}\n withLink={!!link}\n withTimer={!!timer}\n withTitle={!!title}\n >\n {(!noIcon || customIcon) && (\n <Styled.IconWrapper column={column} isCompact={isCompact} withImage={!!image}>\n {!noIcon && !timer && !customIcon && !image && getDefaultIcon({ isCompact, theme, type })}\n {customIcon && <Icon name={customIcon} size={isCompact ? 16 : 24} />}\n {image}\n {timer && (\n <Styled.Timer\n isCompact={isCompact}\n paused={timerOnPause}\n timer={timer}\n color={countdownColor({ theme, type })}\n />\n )}\n </Styled.IconWrapper>\n )}\n\n <Styled.ContentWrapper column={column} isCompact={isCompact}>\n {title && (\n <Styled.Title\n color={theme.colors['content-onmain-primary']}\n isCompact={isCompact}\n size={isCompact ? 14 : 16}\n lineHeight='m'\n {...titleProps}\n >\n {title}\n </Styled.Title>\n )}\n\n <Styled.Content\n appearance='body'\n color={theme.colors['content-onmain-primary']}\n column={column}\n isCompact={isCompact}\n size={isCompact ? 'xs' : 's'}\n textWrap={textWrap}\n {...textProps}\n >\n {children}\n </Styled.Content>\n\n {link && (\n <Styled.Link clear={clear} column={column} isCompact={isCompact} withTitle={!!title}>\n <Anchor\n color={props.clear ? theme.colors['content-link'] : theme.colors['content-onmain-primary']}\n onClick={link.onClick}\n preset='brand'\n pseudo\n size={isCompact ? 's' : 'm'}\n {...linkProps}\n >\n {link.content}\n </Anchor>\n </Styled.Link>\n )}\n\n {(primaryAction || secondaryAction) && (\n <Styled.Actions column={column} isCompact={isCompact} withTitle={!!title}>\n {secondaryAction && (\n <Button\n black\n fontWeight='normal'\n marginRight={column ? 4 : 8}\n onClick={secondaryAction.onClick}\n outline\n preset='brand'\n size='xs'\n {...secondaryActionProps}\n >\n {secondaryAction.content}\n </Button>\n )}\n\n {primaryAction && (\n <Button\n black\n fontWeight='normal'\n onClick={primaryAction.onClick}\n preset='brand'\n size='xs'\n {...primaryActionProps}\n >\n {primaryAction.content}\n </Button>\n )}\n </Styled.Actions>\n )}\n </Styled.ContentWrapper>\n\n {onClickCancelTimer && (\n <Styled.CancelTimer\n black\n clear\n fontWeight='normal'\n isCompact={isCompact}\n onClick={onClickCancelTimer}\n preset='brand'\n size={isCompact ? 'xs' : 'm'}\n >\n {cancelTimerText}\n </Styled.CancelTimer>\n )}\n\n {closeToast && (isCompact ? !timer : true) && (\n <Styled.CloseIcon aria-label='close' onClick={closeToast} type='button' withTimer={!!timer}>\n <Close color={theme.colors['content-onmain-primary']} size={isCompact ? 18 : 24} />\n </Styled.CloseIcon>\n )}\n </Styled.Root>\n )\n})\n\nAlert.displayName = COMPONENT_NAME\n\nexport { Alert, COMPONENT_NAME }\n\nexport type { AlertProps }\n"],"names":["getDefaultIcon","_ref","isCompact","theme","type","size","_jsx","CloseCirlceFill","color","colors","NotifFill","CheckCircleFill","WarningTriangleFill","COMPONENT_NAME","Alert","forwardRef","props","ref","_theme$components","useFallbackTheme","cancelTimerText","primaryAction","primaryActionProps","secondaryAction","secondaryActionProps","children","className","clear","customIcon","image","link","linkProps","noIcon","onClickCancelTimer","closeToast","style","textProps","textWrap","timer","title","titleProps","width","useConfigPriority","components","_className","useClassname","timerOnPause","setTimerOnPause","useState","column","Boolean","_jsxs","Styled.Root","onMouseEnter","onMouseLeave","withAction","withCloseIcon","withImage","withLink","withTimer","withTitle","Styled.IconWrapper","Icon","name","Styled.Timer","paused","countdownColor","Styled.ContentWrapper","Styled.Title","_objectSpread","lineHeight","Styled.Content","appearance","Styled.Link","Anchor","onClick","preset","pseudo","content","Styled.Actions","Button","black","fontWeight","marginRight","outline","Styled.CancelTimer","Styled.CloseIcon","Close","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Alert.js","sources":["../../../../src/components/Alert/Alert.tsx"],"sourcesContent":["import { forwardRef, useState } from 'react'\nimport { useTheme } from 'styled-components'\nimport { CheckCircleFill, Close, CloseCirlceFill, NotifFill, WarningTriangleFill } from '@foxford/icon-pack'\nimport type { DefaultTheme } from 'styled-components'\n\nimport { useClassname } from 'hooks/useClassname'\nimport { useConfigPriority } from 'hooks/use-config-priority'\n\nimport { Anchor } from '../Anchor'\nimport { Button } from '../Button'\nimport { Icon } from '../Icon'\n\nimport * as Styled from './style'\n\nimport type { AlertProps } from './types'\nimport { countdownColor } from './utils'\n\nconst getDefaultIcon = ({\n isCompact,\n theme,\n type,\n}: Pick<AlertProps, 'isCompact' | 'type'> & { theme: DefaultTheme }) => {\n const size = isCompact ? 16 : 24\n\n switch (type) {\n case 'error':\n return <CloseCirlceFill color={theme.colors['alert-bg-error-500']} size={size} />\n case 'info':\n return <NotifFill color={theme.colors['content-brand-primary']} size={size} />\n case 'success':\n return <CheckCircleFill color={theme.colors['alert-success']} size={size} />\n case 'warning':\n return <WarningTriangleFill color={theme.colors['alert-warning']} size={size} />\n default:\n return null\n }\n}\n\nconst COMPONENT_NAME = 'Alert'\n\nconst Alert = forwardRef<HTMLDivElement, AlertProps>((props, ref) => {\n const theme = useTheme()\n\n const {\n cancelTimerText = 'Отменить',\n primaryAction,\n primaryActionProps,\n secondaryAction,\n secondaryActionProps,\n children,\n className,\n clear,\n customIcon,\n image,\n isCompact,\n link,\n linkProps,\n noIcon,\n onClickCancelTimer,\n closeToast,\n size = 's',\n style,\n textProps,\n textWrap,\n timer,\n title,\n titleProps,\n type,\n width = ['fit-content', 'fit-content', 'fit-content', '351px', '304px', '304px'],\n } = useConfigPriority<AlertProps>(theme.components?.Alert, props)\n const _className = useClassname(COMPONENT_NAME, className)\n const [timerOnPause, setTimerOnPause] = useState(false)\n\n const column = Boolean(size === 'l' || !!title || (isCompact && (title || link || primaryAction || secondaryAction)))\n\n const handleMouseEnter = () => {\n if (timer) {\n setTimerOnPause(true)\n }\n }\n\n const handleMouseLeave = () => {\n if (timer) {\n setTimerOnPause(false)\n }\n }\n\n return (\n <Styled.Root\n className={_className}\n clear={clear}\n column={column}\n isCompact={isCompact}\n noIcon={noIcon}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n ref={ref}\n size={size}\n style={style}\n textWrap={textWrap}\n type={type}\n width={width}\n withAction={!!primaryAction || !!secondaryAction}\n withCloseIcon={!!closeToast}\n withImage={!!image}\n withLink={!!link}\n withTimer={!!timer}\n withTitle={!!title}\n >\n {(!noIcon || customIcon) && (\n <Styled.IconWrapper column={column} isCompact={isCompact} withImage={!!image}>\n {!noIcon && !timer && !customIcon && !image && getDefaultIcon({ isCompact, theme, type })}\n {customIcon && <Icon name={customIcon} size={isCompact ? 16 : 24} />}\n {image}\n {timer && (\n <Styled.Timer\n isCompact={isCompact}\n paused={timerOnPause}\n timer={timer}\n color={countdownColor({ theme, type })}\n />\n )}\n </Styled.IconWrapper>\n )}\n\n <Styled.ContentWrapper column={column} isCompact={isCompact}>\n {title && (\n <Styled.Title\n color={theme.colors['content-onmain-primary']}\n isCompact={isCompact}\n size={isCompact ? 14 : 16}\n lineHeight='m'\n {...titleProps}\n >\n {title}\n </Styled.Title>\n )}\n\n <Styled.Content\n appearance='body'\n color={theme.colors['content-onmain-primary']}\n column={column}\n isCompact={isCompact}\n size={isCompact ? 'xs' : 's'}\n textWrap={textWrap}\n {...textProps}\n >\n {children}\n </Styled.Content>\n\n {link && (\n <Styled.Link clear={clear} column={column} isCompact={isCompact} withTitle={!!title}>\n <Anchor\n color={props.clear ? theme.colors['content-link'] : theme.colors['content-onmain-primary']}\n onClick={link.onClick}\n preset='default'\n pseudo\n size={isCompact ? 's' : 'm'}\n {...linkProps}\n >\n {link.content}\n </Anchor>\n </Styled.Link>\n )}\n\n {(primaryAction || secondaryAction) && (\n <Styled.Actions column={column} isCompact={isCompact} withTitle={!!title}>\n {secondaryAction && (\n <Button\n black\n fontWeight='normal'\n marginRight={column ? 4 : 8}\n onClick={secondaryAction.onClick}\n outline\n preset='brand'\n size='xs'\n {...secondaryActionProps}\n >\n {secondaryAction.content}\n </Button>\n )}\n\n {primaryAction && (\n <Button\n black\n fontWeight='normal'\n onClick={primaryAction.onClick}\n preset='brand'\n size='xs'\n {...primaryActionProps}\n >\n {primaryAction.content}\n </Button>\n )}\n </Styled.Actions>\n )}\n </Styled.ContentWrapper>\n\n {onClickCancelTimer && (\n <Styled.CancelTimer\n black\n clear\n fontWeight='normal'\n isCompact={isCompact}\n onClick={onClickCancelTimer}\n preset='brand'\n size={isCompact ? 'xs' : 'm'}\n >\n {cancelTimerText}\n </Styled.CancelTimer>\n )}\n\n {closeToast && (isCompact ? !timer : true) && (\n <Styled.CloseIcon aria-label='close' onClick={closeToast} type='button' withTimer={!!timer}>\n <Close color={theme.colors['content-onmain-primary']} size={isCompact ? 18 : 24} />\n </Styled.CloseIcon>\n )}\n </Styled.Root>\n )\n})\n\nAlert.displayName = COMPONENT_NAME\n\nexport { Alert, COMPONENT_NAME }\n\nexport type { AlertProps }\n"],"names":["getDefaultIcon","_ref","isCompact","theme","type","size","_jsx","CloseCirlceFill","color","colors","NotifFill","CheckCircleFill","WarningTriangleFill","COMPONENT_NAME","Alert","forwardRef","props","ref","_theme$components","useTheme","cancelTimerText","primaryAction","primaryActionProps","secondaryAction","secondaryActionProps","children","className","clear","customIcon","image","link","linkProps","noIcon","onClickCancelTimer","closeToast","style","textProps","textWrap","timer","title","titleProps","width","useConfigPriority","components","_className","useClassname","timerOnPause","setTimerOnPause","useState","column","Boolean","_jsxs","Styled.Root","onMouseEnter","onMouseLeave","withAction","withCloseIcon","withImage","withLink","withTimer","withTitle","Styled.IconWrapper","Icon","name","Styled.Timer","paused","countdownColor","Styled.ContentWrapper","Styled.Title","_objectSpread","lineHeight","Styled.Content","appearance","Styled.Link","Anchor","onClick","preset","pseudo","content","Styled.Actions","Button","black","fontWeight","marginRight","outline","Styled.CancelTimer","Styled.CloseIcon","Close","displayName"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import n from'styled-components';import{responsiveProperty as o}from'../../mixins/responsive-property.js';import{injectDefaultTheme as t}from'../../shared/utils/inject-theme.js';import{Button as i}from'../Button/Button.js';import{Text as c}from'../Text/Text.js';import{CountdownCircle as a}from'./CountdownCircle.js';var e=n=>{var{column:o,isCompact:t,withImage:i,withTimer:c}=n;return o?'16px':t?c?'5px':'12px':i?'8px':c?'2px':'12px'};var r=n=>{var{column:o,isCompact:t}=n;return t?'20px':o?'28px':'32px'};var p=n.div.withConfig({shouldForwardProp:n=>['children','className','onMouseEnter','onMouseLeave','style'].includes(n)}).attrs(t).withConfig({componentId:"fox-ui__sc-1v79u95-0"})([""," ",""],(n=>"\n display: flex;\n align-items: ".concat(n.column||(n.isCompact?!n.withTimer:n.textWrap)?'flex-start':'center',";\n justify-content: ").concat(n.withTimer?'space-between':'flex-start',";\n padding-top: ").concat(e(n),";\n padding-right: ").concat((n=>{var{isCompact:o,withCloseIcon:t,withTimer:i}=n;return t?o?'12px':'16px':i?'8px':'20px'})(n),";\n padding-bottom: ").concat(e(n),";\n padding-left: ").concat((n=>{var{isCompact:o,noIcon:t,size:i,withAction:c,withImage:a,withTitle:e}=n;return o?e||'l'===i?a||!t?'16px':'20px':a?'12px':c&&t?'20px':'16px':e||'l'===i?a||!t?'16px':'24px':a?'16px':'20px'})(n),";\n height: ").concat(n.isCompact||n.column||n.textWrap?'auto':'48px',";\n min-width: ").concat(n.isCompact?'304px':'auto',";\n max-width: ").concat(n.isCompact?'351px':'100%',";\n border-radius: ").concat(n.column?n.isCompact?'20px':'12px':'30px',";\n background-color: ").concat(((n,o,t)=>{if(o)return n.colors['bg-onmain-primary'];switch(t){case'error':return n.colors['alert-bg-error-200'];case'info':return n.colors['bg-brand-primary-200'];case'success':return n.colors['alert-bg-success-200'];case'warning':return n.colors['alert-bg-warning-200'];default:return n.colors['bg-oncolor-primary']}})(n.theme,!!n.clear,n.type),";\n box-shadow: ").concat(n.clear?'0 6px 20px 0 rgba(0, 0, 0, 0.1)':'none',";\n box-sizing: border-box;\n ")),o('width','width'));var s=n.div.withConfig({componentId:"fox-ui__sc-1v79u95-1"})([""," ",";"],(n=>"\n display: flex;\n margin-right: ".concat((n=>{var{column:o,isCompact:t,withImage:i}=n;return t?'8px':o?i?'8px':'12px':'8px'})(n),";\n ")),(n=>n.withImage?"\n img,\n svg {\n height: ".concat(r(n),";\n width: ").concat(r(n),";\n }\n "):null));var m=n.div.withConfig({componentId:"fox-ui__sc-1v79u95-2"})(["",""],(n=>"\n display: flex;\n margin-right: auto;\n flex-direction: ".concat(n.column?'column':'row',";\n align-items: ").concat(n.column?'flex-start':'center',";\n align-self: center;\n max-width: ").concat(n.column?'260px':'initial',";\n white-space: ").concat(n.column||n.isCompact?'normal':'nowrap',";\n overflow: hidden;\n ")));var l=n(c).withConfig({componentId:"fox-ui__sc-1v79u95-3"})(["",""],(n=>"\n display: inline-block;\n margin-top: ".concat(n.isCompact?'0':'2px',";\n margin-bottom: 8px;\n max-width: 100%;\n vertical-align: middle;\n white-space: nowrap;\n text-overflow: ellipsis;\n font-weight: 700;\n overflow: hidden;\n ")));var x=n(c).withConfig({componentId:"fox-ui__sc-1v79u95-4"})(["",""],(n=>"\n text-overflow: ".concat(n.column||n.isCompact?'clip':'ellipsis',";\n white-space: ").concat(n.column||n.isCompact||n.textWrap?'pre-wrap':'inherit',";\n overflow: hidden;\n ")));var u=n.div.withConfig({componentId:"fox-ui__sc-1v79u95-5"})(["",""],(n=>"\n display: flex;\n margin-top: ".concat(n.column?n.isCompact&&!n.withTitle?'4px':'12px':0,";\n margin-left: ").concat(n.column?0:'60px',";\n color: ").concat(n.clear?n.theme.colors['content-link']:n.theme.colors['content-onmain-primary'],";\n ")));var d=n.div.withConfig({componentId:"fox-ui__sc-1v79u95-6"})(["",""],(n=>"\n margin-top: ".concat((n=>{var{column:o,isCompact:t,withTitle:i}=n;return o?t?i?'16px':'8px':'16px':0})(n),";\n margin-left: ").concat(n.column?0:'60px',";\n\n && > button {\n margin-left: 0;\n }\n ")));var h=n.button.withConfig({componentId:"fox-ui__sc-1v79u95-7"})(["",""],(n=>"\n appearance: none;\n display: flex;\n margin-left: ".concat(n.withTimer?'0':'16px',";\n border-radius: 0;\n background: none;\n box-shadow: none;\n padding: 0;\n border: none;\n cursor: pointer;\n outline: none;\n\n &:focus-visible {\n outline: 1px solid ").concat(n.theme.colors.accent,";\n outline-offset: 2px;\n }\n ")));var g=n(i).withConfig({componentId:"fox-ui__sc-1v79u95-8"})(["",""],(n=>"\n margin-left: ".concat(n.isCompact?'28px':'60px',";\n padding-right: ").concat(n.isCompact?'16px':'28px',";\n padding-left: ").concat(n.isCompact?'16px':'28px',";\n ")));var f=n(a).withConfig({componentId:"fox-ui__sc-1v79u95-9"})(["",""],(n=>"\n line-height: ".concat(n.isCompact?'12px':'18px',";\n font-weight: ").concat(n.isCompact?'700':'400',";\n font-size: ").concat(n.isCompact?'11px':'14px',";\n color: ").concat(n.color,";\n\n svg {\n transform: rotateY(180deg);\n }\n ")));export{d as Actions,g as CancelTimer,h as CloseIcon,x as Content,m as ContentWrapper,s as IconWrapper,u as Link,p as Root,f as Timer,l as Title};
1
+ import n from'styled-components';import{responsiveProperty as o}from'../../mixins/responsive-property.js';import{Button as t}from'../Button/Button.js';import{Text as i}from'../Text/Text.js';import{CountdownCircle as c}from'./CountdownCircle.js';var a=n=>{var{column:o,isCompact:t,withImage:i,withTimer:c}=n;return o?'16px':t?c?'5px':'12px':i?'8px':c?'2px':'12px'};var e=n=>{var{column:o,isCompact:t}=n;return t?'20px':o?'28px':'32px'};var r=n.div.withConfig({shouldForwardProp:n=>['children','className','onMouseEnter','onMouseLeave','style'].includes(n)}).withConfig({componentId:"fox-ui__sc-1v79u95-0"})([""," ",""],(n=>"\n display: flex;\n align-items: ".concat(n.column||(n.isCompact?!n.withTimer:n.textWrap)?'flex-start':'center',";\n justify-content: ").concat(n.withTimer?'space-between':'flex-start',";\n padding-top: ").concat(a(n),";\n padding-right: ").concat((n=>{var{isCompact:o,withCloseIcon:t,withTimer:i}=n;return t?o?'12px':'16px':i?'8px':'20px'})(n),";\n padding-bottom: ").concat(a(n),";\n padding-left: ").concat((n=>{var{isCompact:o,noIcon:t,size:i,withAction:c,withImage:a,withTitle:e}=n;return o?e||'l'===i?a||!t?'16px':'20px':a?'12px':c&&t?'20px':'16px':e||'l'===i?a||!t?'16px':'24px':a?'16px':'20px'})(n),";\n height: ").concat(n.isCompact||n.column||n.textWrap?'auto':'48px',";\n min-width: ").concat(n.isCompact?'304px':'auto',";\n max-width: ").concat(n.isCompact?'351px':'100%',";\n border-radius: ").concat(n.column?n.isCompact?'20px':'12px':'30px',";\n background-color: ").concat(((n,o,t)=>{if(o)return n.colors['bg-onmain-primary'];switch(t){case'error':return n.colors['alert-bg-error-200'];case'info':return n.colors['bg-brand-primary-200'];case'success':return n.colors['alert-bg-success-200'];case'warning':return n.colors['alert-bg-warning-200'];default:return n.colors['bg-oncolor-primary']}})(n.theme,!!n.clear,n.type),";\n box-shadow: ").concat(n.clear?'0 6px 20px 0 rgba(0, 0, 0, 0.1)':'none',";\n box-sizing: border-box;\n ")),o('width','width'));var p=n.div.withConfig({componentId:"fox-ui__sc-1v79u95-1"})([""," ",";"],(n=>"\n display: flex;\n margin-right: ".concat((n=>{var{column:o,isCompact:t,withImage:i}=n;return t?'8px':o?i?'8px':'12px':'8px'})(n),";\n ")),(n=>n.withImage?"\n img,\n svg {\n height: ".concat(e(n),";\n width: ").concat(e(n),";\n }\n "):null));var s=n.div.withConfig({componentId:"fox-ui__sc-1v79u95-2"})(["",""],(n=>"\n display: flex;\n margin-right: auto;\n flex-direction: ".concat(n.column?'column':'row',";\n align-items: ").concat(n.column?'flex-start':'center',";\n align-self: center;\n max-width: ").concat(n.column?'260px':'initial',";\n white-space: ").concat(n.column||n.isCompact?'normal':'nowrap',";\n overflow: hidden;\n ")));var l=n(i).withConfig({componentId:"fox-ui__sc-1v79u95-3"})(["",""],(n=>"\n display: inline-block;\n margin-top: ".concat(n.isCompact?'0':'2px',";\n margin-bottom: 8px;\n max-width: 100%;\n vertical-align: middle;\n white-space: nowrap;\n text-overflow: ellipsis;\n font-weight: 700;\n overflow: hidden;\n ")));var m=n(i).withConfig({componentId:"fox-ui__sc-1v79u95-4"})(["",""],(n=>"\n text-overflow: ".concat(n.column||n.isCompact?'clip':'ellipsis',";\n white-space: ").concat(n.column||n.isCompact||n.textWrap?'pre-wrap':'inherit',";\n overflow: hidden;\n ")));var x=n.div.withConfig({componentId:"fox-ui__sc-1v79u95-5"})(["",""],(n=>"\n display: flex;\n margin-top: ".concat(n.column?n.isCompact&&!n.withTitle?'4px':'12px':0,";\n margin-left: ").concat(n.column?0:'60px',";\n color: ").concat(n.clear?n.theme.colors['content-link']:n.theme.colors['content-onmain-primary'],";\n ")));var u=n.div.withConfig({componentId:"fox-ui__sc-1v79u95-6"})(["",""],(n=>"\n margin-top: ".concat((n=>{var{column:o,isCompact:t,withTitle:i}=n;return o?t?i?'16px':'8px':'16px':0})(n),";\n margin-left: ").concat(n.column?0:'60px',";\n\n && > button {\n margin-left: 0;\n }\n ")));var d=n.button.withConfig({componentId:"fox-ui__sc-1v79u95-7"})(["",""],(n=>"\n appearance: none;\n display: flex;\n margin-left: ".concat(n.withTimer?'0':'16px',";\n border-radius: 0;\n background: none;\n box-shadow: none;\n padding: 0;\n border: none;\n cursor: pointer;\n outline: none;\n\n &:focus-visible {\n outline: 1px solid ").concat(n.theme.colors.accent,";\n outline-offset: 2px;\n }\n ")));var g=n(t).withConfig({componentId:"fox-ui__sc-1v79u95-8"})(["",""],(n=>"\n margin-left: ".concat(n.isCompact?'28px':'60px',";\n padding-right: ").concat(n.isCompact?'16px':'28px',";\n padding-left: ").concat(n.isCompact?'16px':'28px',";\n ")));var h=n(c).withConfig({componentId:"fox-ui__sc-1v79u95-9"})(["",""],(n=>"\n line-height: ".concat(n.isCompact?'12px':'18px',";\n font-weight: ").concat(n.isCompact?'700':'400',";\n font-size: ").concat(n.isCompact?'11px':'14px',";\n color: ").concat(n.color,";\n\n svg {\n transform: rotateY(180deg);\n }\n ")));export{u as Actions,g as CancelTimer,d as CloseIcon,m as Content,s as ContentWrapper,p as IconWrapper,x as Link,r as Root,h as Timer,l as Title};
2
2
  //# sourceMappingURL=style.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"style.js","sources":["../../../../src/components/Alert/style.ts"],"sourcesContent":["import styled from 'styled-components'\nimport type { DefaultTheme } from 'styled-components'\n\nimport { responsiveProperty } from 'mixins/responsive-property'\nimport { injectDefaultTheme } from 'shared/utils/inject-theme'\n\nimport { Button } from '../Button'\nimport { Text } from '../Text'\n\nimport { CountdownCircle } from './CountdownCircle'\n\nimport type {\n ActionsProps,\n AlertType,\n CancelTimerProps,\n CloseIconProps,\n ContentProps,\n ContentWrapperProps,\n CountdownCircleProps,\n IconWrapperProps,\n LinkProps,\n RootAlertProps,\n TitleProps,\n} from './types'\n\nconst bgColor = (theme: DefaultTheme, clear: boolean, type?: AlertType) => {\n if (clear) {\n return theme.colors['bg-onmain-primary']\n }\n\n switch (type) {\n case 'error':\n return theme.colors['alert-bg-error-200']\n case 'info':\n return theme.colors['bg-brand-primary-200']\n case 'success':\n return theme.colors['alert-bg-success-200']\n case 'warning':\n return theme.colors['alert-bg-warning-200']\n default:\n return theme.colors['bg-oncolor-primary']\n }\n}\n\nconst getPaddingY = ({\n column,\n isCompact,\n withImage,\n withTimer,\n}: Pick<RootAlertProps, 'column' | 'isCompact' | 'withImage' | 'withTimer'>) => {\n if (column) return '16px'\n\n if (isCompact) {\n return withTimer ? '5px' : '12px'\n }\n\n return withImage ? '8px' : withTimer ? '2px' : '12px'\n}\n\nconst paddingLeft = ({\n isCompact,\n noIcon,\n size,\n withAction,\n withImage,\n withTitle,\n}: Pick<RootAlertProps, 'isCompact' | 'noIcon' | 'size' | 'withAction' | 'withImage' | 'withTitle'>) => {\n if (isCompact) {\n if (withTitle || size === 'l') {\n return withImage || !noIcon ? '16px' : '20px'\n }\n\n return withImage ? '12px' : withAction && noIcon ? '20px' : '16px'\n }\n\n if (withTitle || size === 'l') {\n return withImage || !noIcon ? '16px' : '24px'\n }\n\n return withImage ? '16px' : '20px'\n}\n\nconst paddingRight = ({\n isCompact,\n withCloseIcon,\n withTimer,\n}: Pick<RootAlertProps, 'isCompact' | 'withCloseIcon' | 'withTimer'>) => {\n if (withCloseIcon) {\n return isCompact ? '12px' : '16px'\n }\n\n return withTimer ? '8px' : '20px'\n}\n\nconst getMarginRightIconWrapper = ({\n column,\n isCompact,\n withImage,\n}: {\n column: boolean\n isCompact?: boolean\n withImage: boolean\n}) => {\n if (isCompact) return '8px'\n\n return column ? (withImage ? '8px' : '12px') : '8px'\n}\n\nconst getImageSize = ({ column, isCompact }: { column: boolean; isCompact?: boolean }) => {\n if (isCompact) return '20px'\n\n return column ? '28px' : '32px'\n}\n\nconst getActionsMarginTop = ({\n column,\n isCompact,\n withTitle,\n}: {\n column: boolean\n isCompact?: boolean\n withTitle: boolean\n}) => {\n if (column) {\n return isCompact ? (withTitle ? '16px' : '8px') : '16px'\n }\n\n return 0\n}\n\nexport const Root = styled.div\n .withConfig<RootAlertProps>({\n shouldForwardProp: (prop) => ['children', 'className', 'onMouseEnter', 'onMouseLeave', 'style'].includes(prop),\n })\n .attrs(injectDefaultTheme)`\n ${(props) => `\n display: flex;\n align-items: ${props.column || (props.isCompact ? !props.withTimer : props.textWrap) ? 'flex-start' : 'center'};\n justify-content: ${props.withTimer ? 'space-between' : 'flex-start'};\n padding-top: ${getPaddingY(props)};\n padding-right: ${paddingRight(props)};\n padding-bottom: ${getPaddingY(props)};\n padding-left: ${paddingLeft(props)};\n height: ${props.isCompact || props.column || props.textWrap ? 'auto' : '48px'};\n min-width: ${props.isCompact ? '304px' : 'auto'};\n max-width: ${props.isCompact ? '351px' : '100%'};\n border-radius: ${props.column ? (props.isCompact ? '20px' : '12px') : '30px'};\n background-color: ${bgColor(props.theme, !!props.clear, props.type)};\n box-shadow: ${props.clear ? '0 6px 20px 0 rgba(0, 0, 0, 0.1)' : 'none'};\n box-sizing: border-box;\n `}\n ${responsiveProperty('width', 'width')}\n`\n\nexport const IconWrapper = styled.div<IconWrapperProps>`\n ${(props) => `\n display: flex;\n margin-right: ${getMarginRightIconWrapper(props)};\n `}\n\n ${(props) =>\n props.withImage\n ? `\n img,\n svg {\n height: ${getImageSize(props)};\n width: ${getImageSize(props)};\n }\n `\n : null};\n`\n\nexport const ContentWrapper = styled.div<ContentWrapperProps>`\n ${(props) => `\n display: flex;\n margin-right: auto;\n flex-direction: ${props.column ? 'column' : 'row'};\n align-items: ${props.column ? 'flex-start' : 'center'};\n align-self: center;\n max-width: ${props.column ? '260px' : 'initial'};\n white-space: ${props.column || props.isCompact ? 'normal' : 'nowrap'};\n overflow: hidden;\n `}\n`\n\nexport const Title = styled(Text)<TitleProps>`\n ${(props) => `\n display: inline-block;\n margin-top: ${props.isCompact ? '0' : '2px'};\n margin-bottom: 8px;\n max-width: 100%;\n vertical-align: middle;\n white-space: nowrap;\n text-overflow: ellipsis;\n font-weight: 700;\n overflow: hidden;\n `}\n`\n\nexport const Content = styled(Text)<ContentProps>`\n ${(props) => `\n text-overflow: ${props.column || props.isCompact ? 'clip' : 'ellipsis'};\n white-space: ${props.column || props.isCompact || props.textWrap ? 'pre-wrap' : 'inherit'};\n overflow: hidden;\n `}\n`\n\nexport const Link = styled.div<LinkProps>`\n ${(props) => `\n display: flex;\n margin-top: ${props.column ? (props.isCompact && !props.withTitle ? '4px' : '12px') : 0};\n margin-left: ${props.column ? 0 : '60px'};\n color: ${props.clear ? props.theme.colors['content-link'] : props.theme.colors['content-onmain-primary']};\n `}\n`\n\nexport const Actions = styled.div<ActionsProps>`\n ${(props) => `\n margin-top: ${getActionsMarginTop(props)};\n margin-left: ${props.column ? 0 : '60px'};\n\n && > button {\n margin-left: 0;\n }\n `}\n`\n\nexport const CloseIcon = styled.button<CloseIconProps>`\n ${(props) => `\n appearance: none;\n display: flex;\n margin-left: ${props.withTimer ? '0' : '16px'};\n border-radius: 0;\n background: none;\n box-shadow: none;\n padding: 0;\n border: none;\n cursor: pointer;\n outline: none;\n\n &:focus-visible {\n outline: 1px solid ${props.theme.colors.accent};\n outline-offset: 2px;\n }\n `}\n`\n\nexport const CancelTimer = styled(Button)<CancelTimerProps>`\n ${(props) => `\n margin-left: ${props.isCompact ? '28px' : '60px'};\n padding-right: ${props.isCompact ? '16px' : '28px'};\n padding-left: ${props.isCompact ? '16px' : '28px'};\n `}\n`\n\nexport const Timer = styled(CountdownCircle)<CountdownCircleProps>`\n ${(props) => `\n line-height: ${props.isCompact ? '12px' : '18px'};\n font-weight: ${props.isCompact ? '700' : '400'};\n font-size: ${props.isCompact ? '11px' : '14px'};\n color: ${props.color};\n\n svg {\n transform: rotateY(180deg);\n }\n `}\n`\n"],"names":["getPaddingY","_ref","column","isCompact","withImage","withTimer","getImageSize","_ref5","Root","styled","div","withConfig","shouldForwardProp","prop","includes","attrs","injectDefaultTheme","componentId","props","concat","textWrap","paddingRight","_ref3","withCloseIcon","paddingLeft","_ref2","noIcon","size","withAction","withTitle","theme","clear","type","colors","responsiveProperty","IconWrapper","getMarginRightIconWrapper","_ref4","ContentWrapper","Title","Text","Content","Link","Actions","_ref6","CloseIcon","button","accent","CancelTimer","Button","Timer","CountdownCircle","color"],"mappings":"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"}
1
+ {"version":3,"file":"style.js","sources":["../../../../src/components/Alert/style.ts"],"sourcesContent":["import styled from 'styled-components'\nimport type { DefaultTheme } from 'styled-components'\n\nimport { responsiveProperty } from 'mixins/responsive-property'\n\nimport { Button } from '../Button'\nimport { Text } from '../Text'\n\nimport { CountdownCircle } from './CountdownCircle'\n\nimport type {\n ActionsProps,\n AlertType,\n CancelTimerProps,\n CloseIconProps,\n ContentProps,\n ContentWrapperProps,\n CountdownCircleProps,\n IconWrapperProps,\n LinkProps,\n RootAlertProps,\n TitleProps,\n} from './types'\n\nconst bgColor = (theme: DefaultTheme, clear: boolean, type?: AlertType) => {\n if (clear) {\n return theme.colors['bg-onmain-primary']\n }\n\n switch (type) {\n case 'error':\n return theme.colors['alert-bg-error-200']\n case 'info':\n return theme.colors['bg-brand-primary-200']\n case 'success':\n return theme.colors['alert-bg-success-200']\n case 'warning':\n return theme.colors['alert-bg-warning-200']\n default:\n return theme.colors['bg-oncolor-primary']\n }\n}\n\nconst getPaddingY = ({\n column,\n isCompact,\n withImage,\n withTimer,\n}: Pick<RootAlertProps, 'column' | 'isCompact' | 'withImage' | 'withTimer'>) => {\n if (column) return '16px'\n\n if (isCompact) {\n return withTimer ? '5px' : '12px'\n }\n\n return withImage ? '8px' : withTimer ? '2px' : '12px'\n}\n\nconst paddingLeft = ({\n isCompact,\n noIcon,\n size,\n withAction,\n withImage,\n withTitle,\n}: Pick<RootAlertProps, 'isCompact' | 'noIcon' | 'size' | 'withAction' | 'withImage' | 'withTitle'>) => {\n if (isCompact) {\n if (withTitle || size === 'l') {\n return withImage || !noIcon ? '16px' : '20px'\n }\n\n return withImage ? '12px' : withAction && noIcon ? '20px' : '16px'\n }\n\n if (withTitle || size === 'l') {\n return withImage || !noIcon ? '16px' : '24px'\n }\n\n return withImage ? '16px' : '20px'\n}\n\nconst paddingRight = ({\n isCompact,\n withCloseIcon,\n withTimer,\n}: Pick<RootAlertProps, 'isCompact' | 'withCloseIcon' | 'withTimer'>) => {\n if (withCloseIcon) {\n return isCompact ? '12px' : '16px'\n }\n\n return withTimer ? '8px' : '20px'\n}\n\nconst getMarginRightIconWrapper = ({\n column,\n isCompact,\n withImage,\n}: {\n column: boolean\n isCompact?: boolean\n withImage: boolean\n}) => {\n if (isCompact) return '8px'\n\n return column ? (withImage ? '8px' : '12px') : '8px'\n}\n\nconst getImageSize = ({ column, isCompact }: { column: boolean; isCompact?: boolean }) => {\n if (isCompact) return '20px'\n\n return column ? '28px' : '32px'\n}\n\nconst getActionsMarginTop = ({\n column,\n isCompact,\n withTitle,\n}: {\n column: boolean\n isCompact?: boolean\n withTitle: boolean\n}) => {\n if (column) {\n return isCompact ? (withTitle ? '16px' : '8px') : '16px'\n }\n\n return 0\n}\n\nexport const Root = styled.div.withConfig<RootAlertProps>({\n shouldForwardProp: (prop) => ['children', 'className', 'onMouseEnter', 'onMouseLeave', 'style'].includes(prop),\n})`\n ${(props) => `\n display: flex;\n align-items: ${props.column || (props.isCompact ? !props.withTimer : props.textWrap) ? 'flex-start' : 'center'};\n justify-content: ${props.withTimer ? 'space-between' : 'flex-start'};\n padding-top: ${getPaddingY(props)};\n padding-right: ${paddingRight(props)};\n padding-bottom: ${getPaddingY(props)};\n padding-left: ${paddingLeft(props)};\n height: ${props.isCompact || props.column || props.textWrap ? 'auto' : '48px'};\n min-width: ${props.isCompact ? '304px' : 'auto'};\n max-width: ${props.isCompact ? '351px' : '100%'};\n border-radius: ${props.column ? (props.isCompact ? '20px' : '12px') : '30px'};\n background-color: ${bgColor(props.theme, !!props.clear, props.type)};\n box-shadow: ${props.clear ? '0 6px 20px 0 rgba(0, 0, 0, 0.1)' : 'none'};\n box-sizing: border-box;\n `}\n ${responsiveProperty('width', 'width')}\n`\n\nexport const IconWrapper = styled.div<IconWrapperProps>`\n ${(props) => `\n display: flex;\n margin-right: ${getMarginRightIconWrapper(props)};\n `}\n\n ${(props) =>\n props.withImage\n ? `\n img,\n svg {\n height: ${getImageSize(props)};\n width: ${getImageSize(props)};\n }\n `\n : null};\n`\n\nexport const ContentWrapper = styled.div<ContentWrapperProps>`\n ${(props) => `\n display: flex;\n margin-right: auto;\n flex-direction: ${props.column ? 'column' : 'row'};\n align-items: ${props.column ? 'flex-start' : 'center'};\n align-self: center;\n max-width: ${props.column ? '260px' : 'initial'};\n white-space: ${props.column || props.isCompact ? 'normal' : 'nowrap'};\n overflow: hidden;\n `}\n`\n\nexport const Title = styled(Text)<TitleProps>`\n ${(props) => `\n display: inline-block;\n margin-top: ${props.isCompact ? '0' : '2px'};\n margin-bottom: 8px;\n max-width: 100%;\n vertical-align: middle;\n white-space: nowrap;\n text-overflow: ellipsis;\n font-weight: 700;\n overflow: hidden;\n `}\n`\n\nexport const Content = styled(Text)<ContentProps>`\n ${(props) => `\n text-overflow: ${props.column || props.isCompact ? 'clip' : 'ellipsis'};\n white-space: ${props.column || props.isCompact || props.textWrap ? 'pre-wrap' : 'inherit'};\n overflow: hidden;\n `}\n`\n\nexport const Link = styled.div<LinkProps>`\n ${(props) => `\n display: flex;\n margin-top: ${props.column ? (props.isCompact && !props.withTitle ? '4px' : '12px') : 0};\n margin-left: ${props.column ? 0 : '60px'};\n color: ${props.clear ? props.theme.colors['content-link'] : props.theme.colors['content-onmain-primary']};\n `}\n`\n\nexport const Actions = styled.div<ActionsProps>`\n ${(props) => `\n margin-top: ${getActionsMarginTop(props)};\n margin-left: ${props.column ? 0 : '60px'};\n\n && > button {\n margin-left: 0;\n }\n `}\n`\n\nexport const CloseIcon = styled.button<CloseIconProps>`\n ${(props) => `\n appearance: none;\n display: flex;\n margin-left: ${props.withTimer ? '0' : '16px'};\n border-radius: 0;\n background: none;\n box-shadow: none;\n padding: 0;\n border: none;\n cursor: pointer;\n outline: none;\n\n &:focus-visible {\n outline: 1px solid ${props.theme.colors.accent};\n outline-offset: 2px;\n }\n `}\n`\n\nexport const CancelTimer = styled(Button)<CancelTimerProps>`\n ${(props) => `\n margin-left: ${props.isCompact ? '28px' : '60px'};\n padding-right: ${props.isCompact ? '16px' : '28px'};\n padding-left: ${props.isCompact ? '16px' : '28px'};\n `}\n`\n\nexport const Timer = styled(CountdownCircle)<CountdownCircleProps>`\n ${(props) => `\n line-height: ${props.isCompact ? '12px' : '18px'};\n font-weight: ${props.isCompact ? '700' : '400'};\n font-size: ${props.isCompact ? '11px' : '14px'};\n color: ${props.color};\n\n svg {\n transform: rotateY(180deg);\n }\n `}\n`\n"],"names":["getPaddingY","_ref","column","isCompact","withImage","withTimer","getImageSize","_ref5","Root","styled","div","withConfig","shouldForwardProp","prop","includes","componentId","props","concat","textWrap","paddingRight","_ref3","withCloseIcon","paddingLeft","_ref2","noIcon","size","withAction","withTitle","theme","clear","type","colors","responsiveProperty","IconWrapper","getMarginRightIconWrapper","_ref4","ContentWrapper","Title","Text","Content","Link","Actions","_ref6","CloseIcon","button","accent","CancelTimer","Button","Timer","CountdownCircle","color"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../src/components/Alert/utils.ts"],"sourcesContent":["import type { DefaultTheme } from 'styled-components'\n\nimport type { CSSColor } from 'shared/interfaces'\n\nimport type { AlertProps } from './types'\n\nexport const countdownColor = ({ theme, type }: Pick<AlertProps, 'type'> & { theme: DefaultTheme }): CSSColor => {\n switch (type) {\n case 'error':\n return theme.colors['alert-bg-error-500']\n case 'info':\n return theme.colors['content-brand-primary']\n case 'success':\n return theme.colors['alert-success']\n case 'warning':\n return theme.colors['alert-warning']\n default:\n return theme.colors['content-brand-primary']\n }\n}\n"],"names":["countdownColor","_ref","theme","type","colors"],"mappings":"AAMO,IAAMA,EAAiBC,IAAmF,IAAlFC,MAAEA,EAAFC,KAASA,GAAyEF,EAC/G,OAAQE,GACN,IAAK,QACH,OAAOD,EAAME,OAAO,sBACtB,IAAK,OAML,QACE,OAAOF,EAAME,OAAO,yBALtB,IAAK,UACH,OAAOF,EAAME,OAAO,iBACtB,IAAK,UACH,OAAOF,EAAME,OAAO"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../src/components/Alert/utils.ts"],"sourcesContent":["import type { DefaultTheme } from 'styled-components'\n\nimport type { CSSColor } from 'shared/types'\n\nimport type { AlertProps } from './types'\n\nexport const countdownColor = ({ theme, type }: Pick<AlertProps, 'type'> & { theme: DefaultTheme }): CSSColor => {\n switch (type) {\n case 'error':\n return theme.colors['alert-bg-error-500']\n case 'info':\n return theme.colors['content-brand-primary']\n case 'success':\n return theme.colors['alert-success']\n case 'warning':\n return theme.colors['alert-warning']\n default:\n return theme.colors['content-brand-primary']\n }\n}\n"],"names":["countdownColor","_ref","theme","type","colors"],"mappings":"AAMO,IAAMA,EAAiBC,IAAmF,IAAlFC,MAAEA,EAAFC,KAASA,GAAyEF,EAC/G,OAAQE,GACN,IAAK,QACH,OAAOD,EAAME,OAAO,sBACtB,IAAK,OAML,QACE,OAAOF,EAAME,OAAO,yBALtB,IAAK,UACH,OAAOF,EAAME,OAAO,iBACtB,IAAK,UACH,OAAOF,EAAME,OAAO"}
@@ -1 +1 @@
1
- {"version":3,"file":"Amount.js","sources":["../../../../src/components/Amount/Amount.tsx"],"sourcesContent":["import { PureComponent } from 'react'\nimport cx from 'clsx'\nimport type { ColorProperty } from 'mixins/color'\nimport type { DisplayProperty } from 'mixins/display'\nimport type { BaseProps, ResponsiveSizeProps } from 'shared/interfaces'\nimport { Text } from '../Text'\nimport { CurrencyCodes, CURRENCY_MAP } from './data'\nimport * as Styled from './style'\n\nexport interface AmountProps extends ResponsiveSizeProps, BaseProps, ColorProperty, DisplayProperty {\n /**\n * Value for amount\n */\n value?: number\n /**\n * Digits after point\n */\n digitsAfterPoint?: number\n /**\n * Show zero minor part\n */\n showZeroMinorPart?: boolean\n /**\n * Separator of major and minor part of amount\n */\n separator?: string\n /**\n * International code of currency.\n */\n currency?: keyof typeof CurrencyCodes | string\n /**\n * Use Header component for display amount\n */\n isHeader?: boolean\n /**\n * Amount is not valid and will be crossed out with ```text-decoration: line-through```\n */\n crossedOut?: boolean\n /**\n * If need only currency symbol\n */\n onlyCurrency?: boolean\n}\n\nconst AMOUNT_MAJOR_PART_SIZE = 3\nconst ZERO_MINOR_PART_REGEXP = /^0+$/\nconst MINUS_SIGN_HTML_CODE = '\\u2212'\n\nfunction createSplitter(partSize: number): (_s: string) => string[] {\n const parts = (str: string): string[] => {\n const { length } = str\n\n if (length <= partSize) {\n return [str]\n }\n\n const from = length - partSize\n const to = length\n\n return [str.slice(from, to)].concat(parts(str.slice(0, from)))\n }\n\n return parts\n}\n\nfunction formatAmount(\n value: AmountProps['value'] = 0,\n digitsAfterPoint: AmountProps['digitsAfterPoint'],\n currencyCode: AmountProps['currency']\n) {\n const isNegative = value < 0\n\n const valueAbs = Math.abs(value)\n const valueAbsStr = valueAbs.toFixed(digitsAfterPoint)\n\n const numberParts = valueAbsStr.split('.')\n const majorPart = numberParts[0]\n const minorPart = numberParts[1]\n\n const amountSplitter = createSplitter(AMOUNT_MAJOR_PART_SIZE)\n\n const majorPartFormatted = amountSplitter(majorPart).reverse().join(' ')\n\n const formattedValueStr = majorPartFormatted + (minorPart ? `,${minorPart}` : '')\n\n return {\n majorPart: majorPartFormatted,\n minorPart,\n value: formattedValueStr,\n isNegative,\n currencySymbol: currencyCode ? Amount.getCurrencySymbol(currencyCode) : '',\n }\n}\n\n/**\n * Расширен:\n * - [`BaseProps`](#/Миксины)\n * - [`Color`](#/Миксины)\n * - [`ResponsiveNamedProperty<'size'>`](#/Миксины)\n */\nexport class Amount extends PureComponent<AmountProps> {\n static displayName = 'Amount'\n static defaultProps = {\n isHeader: false,\n showZeroMinorPart: false,\n crossedOut: false,\n digitsAfterPoint: 2,\n separator: ',',\n onlyCurrency: false,\n }\n\n static getCurrencySymbol(currencyCode: keyof typeof CurrencyCodes | string) {\n return CURRENCY_MAP[currencyCode] || currencyCode\n }\n\n renderMinorPart(minorPart: string) {\n const { showZeroMinorPart, separator } = this.props\n\n let needMinorPart = false\n\n if (minorPart) {\n needMinorPart = true\n\n if (!showZeroMinorPart && ZERO_MINOR_PART_REGEXP.test(minorPart)) {\n needMinorPart = false\n }\n }\n\n if (needMinorPart) {\n return (\n <span className='minor-container'>\n <span className='separator'>{separator}</span>\n <span className='minor'>{minorPart}</span>\n </span>\n )\n }\n\n return null\n }\n\n renderCurrencySymbol = (currencySymbol: string) => (\n <span style={{ position: 'relative' }}>\n {this.props.currency === 'RUR' ? (\n <span\n style={{\n position: 'absolute',\n width: 0,\n opacity: 0,\n visibility: 'hidden',\n }}\n >\n руб.\n </span>\n ) : null}\n <span>{` ${currencySymbol}`}</span>\n </span>\n )\n\n render() {\n const { value, digitsAfterPoint, currency, isHeader, className, style, crossedOut, onlyCurrency, ...rest } =\n this.props\n\n const { majorPart, minorPart, isNegative, currencySymbol } = formatAmount(value, digitsAfterPoint, currency)\n\n const classNames = cx('amount', className)\n\n const amountInner = (\n <Styled.Root className={classNames} style={style} crossedOut={crossedOut}>\n {!onlyCurrency ? (\n <>\n <span className='major'>\n {isNegative && MINUS_SIGN_HTML_CODE}\n {majorPart}\n </span>\n {this.renderMinorPart(minorPart)}\n </>\n ) : null}\n {currency && this.renderCurrencySymbol(currencySymbol)}\n </Styled.Root>\n )\n\n const Element = isHeader ? Text.Heading : Text\n\n return (\n <Element {...rest} as='span'>\n {amountInner}\n </Element>\n )\n }\n}\n"],"names":["ZERO_MINOR_PART_REGEXP","createSplitter","partSize","parts","str","length","from","slice","concat","Amount","PureComponent","constructor","super","arguments","this","renderCurrencySymbol","currencySymbol","_jsxs","style","position","children","props","currency","_jsx","width","opacity","visibility","static","currencyCode","CURRENCY_MAP","renderMinorPart","minorPart","showZeroMinorPart","separator","needMinorPart","test","className","render","_this$props","value","digitsAfterPoint","isHeader","crossedOut","onlyCurrency","rest","_objectWithoutProperties","_excluded","majorPart","isNegative","r","e","t","undefined","numberParts","Math","abs","toFixed","split","majorPartFormatted","reverse","join","formattedValueStr","getCurrencySymbol","classNames","cx","amountInner","Styled.Root","_Fragment","Text","Heading","_objectSpread","as","displayName","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"Amount.js","sources":["../../../../src/components/Amount/Amount.tsx"],"sourcesContent":["import { PureComponent } from 'react'\nimport cx from 'clsx'\nimport { Text } from 'components/Text'\nimport type { TextProps } from 'components/Text'\nimport { CurrencyCodes, CURRENCY_MAP } from './data'\nimport * as Styled from './style'\n\nexport interface AmountProps extends TextProps {\n /**\n * Value for amount\n */\n value?: number\n /**\n * Digits after point\n */\n digitsAfterPoint?: number\n /**\n * Show zero minor part\n */\n showZeroMinorPart?: boolean\n /**\n * Separator of major and minor part of amount\n */\n separator?: string\n /**\n * International code of currency.\n */\n currency?: keyof typeof CurrencyCodes | string\n /**\n * Use Header component for display amount\n */\n isHeader?: boolean\n /**\n * Amount is not valid and will be crossed out with ```text-decoration: line-through```\n */\n crossedOut?: boolean\n /**\n * If need only currency symbol\n */\n onlyCurrency?: boolean\n}\n\nconst AMOUNT_MAJOR_PART_SIZE = 3\nconst ZERO_MINOR_PART_REGEXP = /^0+$/\nconst MINUS_SIGN_HTML_CODE = '\\u2212'\n\nfunction createSplitter(partSize: number): (_s: string) => string[] {\n const parts = (str: string): string[] => {\n const { length } = str\n\n if (length <= partSize) {\n return [str]\n }\n\n const from = length - partSize\n const to = length\n\n return [str.slice(from, to)].concat(parts(str.slice(0, from)))\n }\n\n return parts\n}\n\nfunction formatAmount(\n value: AmountProps['value'] = 0,\n digitsAfterPoint: AmountProps['digitsAfterPoint'],\n currencyCode: AmountProps['currency']\n) {\n const isNegative = value < 0\n\n const valueAbs = Math.abs(value)\n const valueAbsStr = valueAbs.toFixed(digitsAfterPoint)\n\n const numberParts = valueAbsStr.split('.')\n const majorPart = numberParts[0]\n const minorPart = numberParts[1]\n\n const amountSplitter = createSplitter(AMOUNT_MAJOR_PART_SIZE)\n\n const majorPartFormatted = amountSplitter(majorPart).reverse().join(' ')\n\n const formattedValueStr = majorPartFormatted + (minorPart ? `,${minorPart}` : '')\n\n return {\n majorPart: majorPartFormatted,\n minorPart,\n value: formattedValueStr,\n isNegative,\n currencySymbol: currencyCode ? Amount.getCurrencySymbol(currencyCode) : '',\n }\n}\n\n/**\n * Расширен:\n * - [`BaseProps`](#/Миксины)\n * - [`Color`](#/Миксины)\n * - [`ResponsiveNamedProperty<'size'>`](#/Миксины)\n */\nexport class Amount extends PureComponent<AmountProps> {\n static displayName = 'Amount'\n static defaultProps = {\n isHeader: false,\n showZeroMinorPart: false,\n crossedOut: false,\n digitsAfterPoint: 2,\n separator: ',',\n onlyCurrency: false,\n }\n\n static getCurrencySymbol(currencyCode: keyof typeof CurrencyCodes | string) {\n return CURRENCY_MAP[currencyCode] || currencyCode\n }\n\n renderMinorPart(minorPart: string) {\n const { showZeroMinorPart, separator } = this.props\n\n let needMinorPart = false\n\n if (minorPart) {\n needMinorPart = true\n\n if (!showZeroMinorPart && ZERO_MINOR_PART_REGEXP.test(minorPart)) {\n needMinorPart = false\n }\n }\n\n if (needMinorPart) {\n return (\n <span className='minor-container'>\n <span className='separator'>{separator}</span>\n <span className='minor'>{minorPart}</span>\n </span>\n )\n }\n\n return null\n }\n\n renderCurrencySymbol = (currencySymbol: string) => (\n <span style={{ position: 'relative' }}>\n {this.props.currency === 'RUR' ? (\n <span\n style={{\n position: 'absolute',\n width: 0,\n opacity: 0,\n visibility: 'hidden',\n }}\n >\n руб.\n </span>\n ) : null}\n <span>{` ${currencySymbol}`}</span>\n </span>\n )\n\n render() {\n const { value, digitsAfterPoint, currency, isHeader, className, style, crossedOut, onlyCurrency, ...rest } =\n this.props\n\n const { majorPart, minorPart, isNegative, currencySymbol } = formatAmount(value, digitsAfterPoint, currency)\n\n const classNames = cx('amount', className)\n\n const amountInner = (\n <Styled.Root className={classNames} style={style} crossedOut={crossedOut}>\n {!onlyCurrency ? (\n <>\n <span className='major'>\n {isNegative && MINUS_SIGN_HTML_CODE}\n {majorPart}\n </span>\n {this.renderMinorPart(minorPart)}\n </>\n ) : null}\n {currency && this.renderCurrencySymbol(currencySymbol)}\n </Styled.Root>\n )\n\n const Element = isHeader ? Text.Heading : Text\n\n return (\n <Element {...rest} as='span'>\n {amountInner}\n </Element>\n )\n }\n}\n"],"names":["ZERO_MINOR_PART_REGEXP","createSplitter","partSize","parts","str","length","from","slice","concat","Amount","PureComponent","constructor","super","arguments","this","renderCurrencySymbol","currencySymbol","_jsxs","style","position","children","props","currency","_jsx","width","opacity","visibility","static","currencyCode","CURRENCY_MAP","renderMinorPart","minorPart","showZeroMinorPart","separator","needMinorPart","test","className","render","_this$props","value","digitsAfterPoint","isHeader","crossedOut","onlyCurrency","rest","_objectWithoutProperties","_excluded","majorPart","isNegative","r","e","t","undefined","numberParts","Math","abs","toFixed","split","majorPartFormatted","reverse","join","formattedValueStr","getCurrencySymbol","classNames","cx","amountInner","Styled.Root","_Fragment","Text","Heading","_objectSpread","as","displayName","defaultProps"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import e from'@babel/runtime/helpers/objectSpread2';import s from'@babel/runtime/helpers/objectWithoutProperties';import{Link as r}from'react-router-dom';import{useTheme as i}from'styled-components';import{useMemo as l}from'react';import{useClassname as a}from'../../hooks/useClassname.js';import{Root as o}from'./style.js';import{jsx as n}from'react/jsx-runtime';var t=["as","to","href","wrapper","className","style","children","content","pseudo","underline","color","display","size","sizeXS","sizeS","sizeM","sizeL","sizeXL","autoRel","tabIndex"];function d(p){var u,z,m;var{as:c,to:y,href:h,wrapper:v,className:f,style:b,children:L,content:S,pseudo:X,underline:w,color:x,display:M,size:N,sizeXS:I,sizeS:j,sizeM:k,sizeL:g,sizeXL:C,autoRel:D=!0,tabIndex:K=0}=p,R=s(p,t);var A=a(d.displayName,f);var B=i();var P;var T=l((()=>{var e,s;return D&&null!==(e=B.utils)&&void 0!==e&&e.relBuilder?B.utils.relBuilder(null!==(s=p.href)&&void 0!==s?s:p.to,p.target):p.rel}),[D,p.rel,p.href,p.to,p.target]);P='div'!==c||M?M:'block';var _={};S&&(_=e(e({},_),{},{dangerouslySetInnerHTML:{__html:S}}));var E=e=>{var s;'Enter'===e.key&&(null==R||null===(s=R.onClick)||void 0===s||s.call(R))};return n(o,c?e(e(e({as:c,pseudo:X,wrapper:v,underline:w,href:h,className:A,style:b,color:x,size:N,display:P,sizeXS:I,sizeS:j,sizeM:k,sizeL:g,sizeXL:C,tabIndex:K,onKeyDown:E},R),_),{},{rel:'a'===c?null!==(u=p.rel)&&void 0!==u?u:T:void 0,children:L}):X?e(e(e({as:"div",pseudo:X,wrapper:v,underline:w,href:h,className:A,color:x,style:b,size:N,display:P,sizeXS:I,sizeS:j,sizeM:k,sizeL:g,sizeXL:C,tabIndex:K,onKeyDown:E},R),_),{},{children:L}):y?e(e(e({as:r,to:y,pseudo:X,wrapper:v,underline:w,className:A,color:x,size:N,style:b,display:P,sizeXS:I,sizeS:j,sizeM:k,sizeL:g,sizeXL:C,tabIndex:K,onKeyDown:E},R),_),{},{rel:null!==(z=p.rel)&&void 0!==z?z:T,children:L}):e(e(e({as:"a",href:h,pseudo:X,wrapper:v,underline:w,className:A,color:x,size:N,style:b,display:P,sizeXS:I,sizeS:j,sizeM:k,sizeL:g,sizeXL:C,tabIndex:K},_),R),{},{rel:null!==(m=p.rel)&&void 0!==m?m:T,children:L}))}d.displayName='Anchor',d.defaultProps={display:'inline-block'};export{d as Anchor};
1
+ import r from'@babel/runtime/helpers/objectSpread2';import e from'@babel/runtime/helpers/objectWithoutProperties';import{forwardRef as o}from'react';import{Link as s}from'react-router-dom';import{useTheme as a}from'styled-components';import{withMergedProps as i}from'../../hocs/withMergedProps.js';import{useClassname as t}from'../../hooks/useClassname.js';import{Text as n}from'../Text/Text.js';import{Icon as m}from'../Icon/Icon.js';import'../Icon/icons.js';import{SIZES as c}from'./constants.js';import{Root as l}from'./style.js';import{jsx as p,jsxs as d,Fragment as h}from'react/jsx-runtime';var v=["size","autoRel","textProps","iconProps","icon","children","content"];var u='Anchor';var f=i(o(((o,i)=>{var c,u,f;var{size:j="inherit",autoRel:P=!0,textProps:b={},iconProps:x={},icon:g,children:y,content:A}=o,T=e(o,v);var I=A?{dangerouslySetInnerHTML:{__html:A}}:{};var N=a();var z=t("Anchor",T.className);var M=null===(c=N.utils)||void 0===c?void 0:c.relBuilder;var R=null!==(u=T.href)&&void 0!==u?u:T.to;var S=null!==(f=T.rel)&&void 0!==f?f:P&&M&&'string'==typeof R?M(R,T.target):void 0;var[w,C]=Array.isArray(g)?g:[g];var E={as:'span',size:'inherit',color:'inherit',underline:T.underline,marginLeft:w?'0.25em':void 0,marginRight:C?'0.25em':void 0};var L={as:'span',color:'inherit'};var _;return T.to&&(_=s),T.pseudo&&(_='div'),T.disabled&&(_='span'),T.as&&(_=T.as),p(l,r(r(r({},I),T),{},{ref:i,as:_,className:z,size:j,rel:S,"data-disabled":T.disabled,children:'function'==typeof y?y({baseTextProps:E,textProps:b,iconBaseProps:L,iconProps:x,icon:g}):'brand'===o.preset?d(h,{children:[w&&p(m,r(r({icon:w},L),x)),p(n,r(r(r({},E),b),{},{children:y})),C&&p(m,r(r({icon:C},L),x))]}):y}))})),{displayName:"Anchor",sizes:c});export{f as Anchor,u as COMPONENT_NAME};
2
2
  //# sourceMappingURL=Anchor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Anchor.js","sources":["../../../../src/components/Anchor/Anchor.tsx"],"sourcesContent":["import { Link } from 'react-router-dom'\nimport { useTheme } from 'styled-components'\nimport { KeyboardEvent, useMemo } from 'react'\nimport { ResponsiveNamedProperty } from 'mixins/responsive-property'\nimport { ColorProperty } from 'mixins/color'\nimport { DisplayProperty } from 'mixins/display'\nimport { BaseProps } from 'shared/interfaces'\nimport { useClassname } from 'hooks/useClassname'\nimport * as Styled from './style'\n\nexport interface AnchorProps extends BaseProps, ColorProperty, ResponsiveNamedProperty<'size'>, DisplayProperty {\n /**\n * Custom CSS class name\n */\n as?: 'div' | 'span' | 'a' | typeof Link\n /**\n * React router link to\n */\n to?: string\n /**\n * Link href\n */\n href?: string\n /**\n * Is display inline\n * */\n wrapper?: boolean\n /**\n * Pseudo link has dashed bottom border\n * */\n pseudo?: boolean\n /**\n * If link should be underlined\n * */\n underline?: boolean\n /**\n * Primary content\n */\n /**\n * Children react node\n */\n children?: React.ReactNode\n /**\n * Primary content\n */\n content?: string\n /**\n * Onclick handler\n */\n onClick?: () => void\n tabIndex?: number\n target?: string\n rel?: string\n /**\n * Auto-generate rel. You must specify domain inside theme\n */\n autoRel?: boolean\n}\n\nAnchor.displayName = 'Anchor'\nAnchor.defaultProps = {\n display: 'inline-block',\n}\n\n/**\n * Расширен:\n * - [`BaseProps`](#/Миксины)\n * - [`Color`](#/Миксины)\n * - [`ResponsiveNamedProperty<'size'>`](#/Миксины)\n * - [`Display`](#/Миксины)\n */\nexport function Anchor(props: typeof Anchor.defaultProps & AnchorProps) {\n const {\n as,\n to,\n href,\n wrapper,\n className,\n style,\n children,\n content,\n pseudo,\n underline,\n color,\n display,\n size,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n autoRel = true,\n tabIndex = 0,\n ...rest\n } = props\n\n const _className = useClassname(Anchor.displayName, className)\n const theme = useTheme()\n\n let _display: DisplayProperty['display']\n const _rel = useMemo(() => {\n return autoRel && theme.utils?.relBuilder ? theme.utils.relBuilder(props.href ?? props.to, props.target) : props.rel\n }, [autoRel, props.rel, props.href, props.to, props.target])\n\n if (as === 'div' && !display) _display = 'block'\n else _display = display\n\n let contentProps = {}\n\n if (content) {\n contentProps = {\n ...contentProps,\n dangerouslySetInnerHTML: { __html: content },\n }\n }\n\n const onKeyDown = (event: KeyboardEvent<HTMLAnchorElement | HTMLDivElement | HTMLSpanElement>): void => {\n if (event.key === 'Enter') {\n rest?.onClick?.()\n }\n }\n\n if (as)\n return (\n <Styled.Root\n as={as}\n pseudo={pseudo}\n wrapper={wrapper}\n underline={underline}\n href={href}\n className={_className}\n style={style}\n color={color}\n size={size}\n display={_display}\n sizeXS={sizeXS}\n sizeS={sizeS}\n sizeM={sizeM}\n sizeL={sizeL}\n sizeXL={sizeXL}\n tabIndex={tabIndex}\n onKeyDown={onKeyDown}\n {...rest}\n {...contentProps}\n rel={as === 'a' ? props.rel ?? _rel : undefined}\n >\n {children}\n </Styled.Root>\n )\n\n if (pseudo)\n return (\n <Styled.Root\n as='div'\n pseudo={pseudo}\n wrapper={wrapper}\n underline={underline}\n href={href}\n className={_className}\n color={color}\n style={style}\n size={size}\n display={_display}\n sizeXS={sizeXS}\n sizeS={sizeS}\n sizeM={sizeM}\n sizeL={sizeL}\n sizeXL={sizeXL}\n tabIndex={tabIndex}\n onKeyDown={onKeyDown}\n {...rest}\n {...contentProps}\n >\n {children}\n </Styled.Root>\n )\n else if (to)\n return (\n <Styled.Root\n as={Link}\n to={to}\n pseudo={pseudo}\n wrapper={wrapper}\n underline={underline}\n className={_className}\n color={color}\n size={size}\n style={style}\n display={_display}\n sizeXS={sizeXS}\n sizeS={sizeS}\n sizeM={sizeM}\n sizeL={sizeL}\n sizeXL={sizeXL}\n tabIndex={tabIndex}\n onKeyDown={onKeyDown}\n {...rest}\n {...contentProps}\n rel={props.rel ?? _rel}\n >\n {children}\n </Styled.Root>\n )\n else\n return (\n <Styled.Root\n as='a'\n href={href}\n pseudo={pseudo}\n wrapper={wrapper}\n underline={underline}\n className={_className}\n color={color}\n size={size}\n style={style}\n display={_display}\n sizeXS={sizeXS}\n sizeS={sizeS}\n sizeM={sizeM}\n sizeL={sizeL}\n sizeXL={sizeXL}\n tabIndex={tabIndex}\n {...contentProps}\n {...rest}\n rel={props.rel ?? _rel}\n >\n {children}\n </Styled.Root>\n )\n}\n"],"names":["Anchor","props","_props$rel","_props$rel2","_props$rel3","as","to","href","wrapper","className","style","children","content","pseudo","underline","color","display","size","sizeXS","sizeS","sizeM","sizeL","sizeXL","autoRel","tabIndex","rest","_excluded","_className","useClassname","displayName","theme","useTheme","_display","_rel","useMemo","_theme$utils","_props$href","utils","relBuilder","target","rel","contentProps","dangerouslySetInnerHTML","__html","onKeyDown","event","_rest$onClick","key","onClick","call","_jsx","Styled.Root","_objectSpread","Link","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"Anchor.js","sources":["../../../../src/components/Anchor/Anchor.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport { Link } from 'react-router-dom'\nimport { useTheme } from 'styled-components'\nimport { withMergedProps } from 'hocs/withMergedProps'\nimport { useClassname } from 'hooks/useClassname'\nimport { Text } from 'components/Text'\nimport { Icon } from 'components/Icon'\nimport type { TextProps } from 'components/Text'\nimport type { IconProps } from 'components/Icon'\nimport { SIZES } from './constants'\nimport * as Styled from './style'\nimport type { AnchorProps } from './types'\n\nconst COMPONENT_NAME = 'Anchor'\n\n/**\n *\n * Component interface extends:\n * - [`ResponsiveSizeProps`](#/Interfaces)\n * - [`ResponsiveMarginProps`](#/Interfaces)\n * - [`ColorPaletteProps<keyof AnchorPalette>`](#/Interfaces)\n * - [`TypographyProps`](#/Interfaces)\n * - [`BaseProps`](#/Interfaces)\n * - [`React.ComponentPropsWithRef<'a'>`](#/Interfaces)\n */\nconst Anchor: React.ForwardRefExoticComponent<AnchorProps> = withMergedProps<AnchorProps, HTMLAnchorElement>(\n forwardRef((props, ref) => {\n const {\n size = 'inherit',\n autoRel = true,\n textProps = {},\n iconProps = {},\n icon,\n children,\n content,\n ...restProps\n } = props\n\n const contentProps = content ? { dangerouslySetInnerHTML: { __html: content } } : {}\n\n const theme = useTheme()\n\n const className = useClassname(COMPONENT_NAME, restProps.className)\n const relBuilder = theme.utils?.relBuilder\n const href = restProps.href ?? restProps.to\n\n const rel =\n restProps.rel ??\n (autoRel && relBuilder && typeof href === 'string' ? relBuilder(href, restProps.target) : undefined)\n\n const [before, after] = Array.isArray(icon) ? icon : [icon]\n\n const baseTextProps: TextProps = {\n as: 'span',\n size: 'inherit',\n color: 'inherit',\n underline: restProps.underline,\n marginLeft: before ? '0.25em' : undefined,\n marginRight: after ? '0.25em' : undefined,\n }\n\n const iconBaseProps: IconProps = { as: 'span', color: 'inherit' }\n\n let rootNode\n if (restProps.to) rootNode = Link\n if (restProps.pseudo) rootNode = 'div'\n if (restProps.disabled) rootNode = 'span'\n if (restProps.as) rootNode = restProps.as\n\n return (\n <Styled.Root\n {...contentProps}\n {...restProps}\n ref={ref}\n as={rootNode}\n className={className}\n size={size}\n rel={rel}\n data-disabled={restProps.disabled}\n >\n {typeof children === 'function' ? (\n children({ baseTextProps, textProps, iconBaseProps, iconProps, icon })\n ) : props.preset === 'brand' ? (\n <>\n {before && <Icon icon={before} {...iconBaseProps} {...iconProps} />}\n <Text {...baseTextProps} {...textProps}>\n {children}\n </Text>\n {after && <Icon icon={after} {...iconBaseProps} {...iconProps} />}\n </>\n ) : (\n children\n )}\n </Styled.Root>\n )\n }),\n {\n displayName: COMPONENT_NAME,\n sizes: SIZES,\n }\n)\n\nexport { Anchor, COMPONENT_NAME }\n"],"names":["COMPONENT_NAME","Anchor","withMergedProps","forwardRef","props","ref","_theme$utils","_restProps$href","_restProps$rel","size","autoRel","textProps","iconProps","icon","children","content","restProps","_excluded","contentProps","dangerouslySetInnerHTML","__html","theme","useTheme","className","useClassname","relBuilder","utils","href","to","rel","target","before","after","Array","isArray","baseTextProps","as","color","underline","marginLeft","undefined","marginRight","iconBaseProps","rootNode","Link","pseudo","disabled","_jsx","Styled.Root","preset","_jsxs","_Fragment","Icon","_objectSpread","Text","displayName","sizes","SIZES"],"mappings":"kqBAaMA,IAAAA,EAAiB,SAYjBC,IAAAA,EAAuDC,EAC3DC,GAAW,CAACC,EAAOC,KAAQ,IAAAC,EAAAC,EAAAC,EACzB,IAAMC,KACJA,EAAO,UADHC,QAEJA,KAFIC,UAGJA,EAAY,GAHRC,UAIJA,EAAY,GAJRC,KAKJA,EALIC,SAMJA,EANIC,QAOJA,GAEEX,EADCY,IACDZ,EATJa,GAWA,IAAMC,EAAeH,EAAU,CAAEI,wBAAyB,CAAEC,OAAQL,IAAc,GAElF,IAAMM,EAAQC,IAEd,IAAMC,EAAYC,EA7BC,SA6B4BR,EAAUO,WACzD,IAAME,EAAU,QAAGJ,EAAAA,EAAMK,aAAAA,IAATpB,OAAA,EAAGA,EAAamB,WAChC,IAAME,EAAyBX,UAAlBA,EAAUW,YAAAA,IAAQX,EAAAA,EAAAA,EAAUY,GAEzC,IAAMC,UACJb,EAAAA,EAAUa,WAAAA,QACTnB,GAAWe,GAA8B,iBAATE,EAAoBF,EAAWE,EAAMX,EAAUc,aAAAA,EAElF,IAAOC,EAAQC,GAASC,MAAMC,QAAQrB,GAAQA,EAAO,CAACA,GAEtD,IAAMsB,EAA2B,CAC/BC,GAAI,OACJ3B,KAAM,UACN4B,MAAO,UACPC,UAAWtB,EAAUsB,UACrBC,WAAYR,EAAS,cAAWS,EAChCC,YAAaT,EAAQ,cAAWQ,GAGlC,IAAME,EAA2B,CAAEN,GAAI,OAAQC,MAAO,WAEtD,IAAIM,EAMJ,OALI3B,EAAUY,KAAIe,EAAWC,GACzB5B,EAAU6B,SAAQF,EAAW,OAC7B3B,EAAU8B,WAAUH,EAAW,QAC/B3B,EAAUoB,KAAIO,EAAW3B,EAAUoB,IAGrCW,EAACC,EACK9B,EAAAA,EAAAA,EAAAA,GAAAA,GACAF,GAFN,GAAA,CAGEX,IAAKA,EACL+B,GAAIO,EACJpB,UAAWA,EACXd,KAAMA,EACNoB,IAAKA,EACL,gBAAeb,EAAU8B,SAR3BhC,SAUuB,mBAAbA,EACNA,EAAS,CAAEqB,cAAAA,EAAexB,UAAAA,EAAW+B,cAAAA,EAAe9B,UAAAA,EAAWC,KAAAA,IAC5C,UAAjBT,EAAM6C,OACRC,EAAAC,EAAA,CAAArC,SACGiB,CAAAA,GAAUgB,EAACK,EAADC,EAAAA,EAAA,CAAMxC,KAAMkB,GAAYW,GAAmB9B,IACtDmC,EAACO,EAADD,EAAAA,EAAAA,EAAA,GAAUlB,GAAmBxB,GAA7B,GAAA,CAAAG,SACGA,KAEFkB,GAASe,EAACK,EAADC,EAAAA,EAAA,CAAMxC,KAAMmB,GAAWU,GAAmB9B,OAGtDE,QAKR,CACEyC,YApFmB,SAqFnBC,MAAOC"}
@@ -0,0 +1,2 @@
1
+ var x={xxxl:{fontSize:24},xxl:{fontSize:22},xl:{fontSize:20},l:{fontSize:18},m:{fontSize:16},s:{fontSize:14},xs:{fontSize:12},xxs:{fontSize:10},xxxs:{fontSize:8}};export{x as SIZES};
2
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../../../../src/components/Anchor/constants.ts"],"sourcesContent":["import type { Sizes } from 'shared/types'\n\nexport const SIZES: Sizes = {\n xxxl: {\n fontSize: 24,\n },\n xxl: {\n fontSize: 22,\n },\n xl: {\n fontSize: 20,\n },\n l: {\n fontSize: 18,\n },\n m: {\n fontSize: 16,\n },\n s: {\n fontSize: 14,\n },\n xs: {\n fontSize: 12,\n },\n xxs: {\n fontSize: 10,\n },\n xxxs: {\n fontSize: 8,\n },\n}\n"],"names":["SIZES","xxxl","fontSize","xxl","xl","l","m","s","xs","xxs","xxxs"],"mappings":"AAEO,IAAMA,EAAe,CAC1BC,KAAM,CACJC,SAAU,IAEZC,IAAK,CACHD,SAAU,IAEZE,GAAI,CACFF,SAAU,IAEZG,EAAG,CACDH,SAAU,IAEZI,EAAG,CACDJ,SAAU,IAEZK,EAAG,CACDL,SAAU,IAEZM,GAAI,CACFN,SAAU,IAEZO,IAAK,CACHP,SAAU,IAEZQ,KAAM,CACJR,SAAU"}
@@ -1,2 +1,2 @@
1
- import o,{css as r}from'styled-components';import{color as e}from'../../mixins/color.js';import{property as i,responsiveNamedProperty as s}from'../../mixins/responsive-property.js';import{display as n}from'../../mixins/display.js';var l=r(["display:block;color:inherit;transition:none;&:hover{color:inherit;cursor:pointer;}"]);var t=r(["text-decoration:underline;"]);var p=r(["display:inline-block;color:",";border-bottom:1px dashed currentColor;"],(o=>o.theme.colors.accent));var c=o.div.withConfig({shouldForwardProp:o=>!['wrapper','underline','pseudo','display','color'].includes(o)&&!o.includes('size')}).withConfig({componentId:"fox-ui__sc-1n89po4-0"})(["color:",";text-decoration:none;transition:0.2s;&:hover{cursor:pointer;color:",";}"," "," "," "," "," "," ",""],(o=>o.theme.colors.accent),(o=>o.theme.colors.primary),(o=>o.underline?t:null),(o=>o.pseudo?p:null),(o=>o.display?n(o.display):null),(o=>o.color?e(o.color):null),(o=>o.size?i(o.size,'font-size'):null),(o=>o.wrapper?l:null),(o=>{var{sizeXS:r,sizeS:e,sizeM:i,sizeL:n,sizeXL:l}=o;return s({sizes:{sizeXS:r,sizeS:e,sizeM:i,sizeL:n,sizeXL:l},cssProperty:'font-size'})}));export{c as Root};
1
+ import o from'@babel/runtime/helpers/objectSpread2';import n,{css as r}from'styled-components';import e from'tinycolor2';import{createShouldForwardProp as t}from'../../shared/utils/style.js';import{getColor as i}from'../../mixins/color.js';import{focus as l}from'../../mixins/focus.js';import{responsiveSize as c}from'../../mixins/size.js';import{responsiveMargin as a}from'../../mixins/margin.js';import{display as s}from'../../mixins/display.js';var d=t((o=>!['display','underline','onColored','verticalAlign','pseudo','wrapper'].includes(o)));var p=o=>"\n color: ".concat(o.color,";\n &:hover {\n color: ").concat(o.colorHover,";\n }\n &:active {\n color: ").concat(o.color,";\n }\n &[data-disabled=\"true\"] {\n color: ").concat(o.colorDisabled,";\n }\n");var m={default:r(["",""],(n=>p(o({color:n.wrapper?'inherit':n.theme.colors.accent,colorHover:n.wrapper?'inherit':n.theme.colors.primary,colorDisabled:n.theme.colors['content-disabled']},n.palette)))),primary:r(["",""],(n=>p(o({color:n.theme.colors['content-link'],colorHover:e(n.theme.colors['content-link']).lighten(10).toString(),colorDisabled:n.theme.colors['content-disabled']},n.palette)))),onColored:r(["",""],(n=>p(o({color:n.theme.colors['content-oncolor-primary'],colorHover:e(n.theme.colors['content-oncolor-primary']).darken(10).toString(),colorDisabled:n.theme.colors['content-oncolor-disabled']},n.palette))))};var u=n.a.withConfig({shouldForwardProp:d}).withConfig({componentId:"fox-ui__sc-1n89po4-0"})([""," "," "," "," "," "," ",""],(o=>{var n;return"\n box-sizing: border-box;\n isolation: isolate;\n transition-property: color;\n transition-duration: 150ms;\n transition-timing-function: ease-in;\n cursor: ".concat(null!==(n=o.cursor)&&void 0!==n?n:'pointer',";\n vertical-align: ").concat(o.verticalAlign?"".concat('string'==typeof o.verticalAlign?o.verticalAlign:'text-bottom'):'baseline',";\n ").concat('brand'===o.preset?"\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n text-decoration: none;\n ":"\n display: ".concat(o.wrapper?'block':'inline-block',";\n text-decoration-line: ").concat(!0===o.underline?'underline':'none',";\n border-bottom: ").concat(o.pseudo||'string'==typeof o.underline?"1px ".concat('string'==typeof o.underline?o.underline:'dashed'):'none',";\n "),"\n \n ")}),(o=>o.onColored?m.onColored:'brand'===o.preset?m.primary:m.default),l,c,a,(o=>o.display&&s(o.display)),(o=>o.color&&"color: ".concat(i(o.color,o),";")));export{u as Root};
2
2
  //# sourceMappingURL=style.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"style.js","sources":["../../../../src/components/Anchor/style.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { color } from 'mixins/color'\nimport { responsiveNamedProperty, property } from 'mixins/responsive-property'\nimport { display } from 'mixins/display'\nimport { AnchorProps } from './Anchor'\n\nconst wrapper = css`\n display: block;\n color: inherit;\n transition: none;\n &:hover {\n color: inherit;\n cursor: pointer;\n }\n`\n\nconst underline = css`\n text-decoration: underline;\n`\n\nconst pseudo = css`\n display: inline-block;\n color: ${(props) => props.theme.colors.accent};\n border-bottom: 1px dashed currentColor;\n`\n\nexport const Root = styled.div.withConfig<AnchorProps>({\n shouldForwardProp: (prop) =>\n !['wrapper', 'underline', 'pseudo', 'display', 'color'].includes(prop) && !prop.includes('size'),\n})`\n color: ${(props) => props.theme.colors.accent};\n text-decoration: none;\n transition: 0.2s;\n &:hover {\n cursor: pointer;\n color: ${(props) => props.theme.colors.primary};\n }\n ${(props) => (props.underline ? underline : null)}\n ${(props) => (props.pseudo ? pseudo : null)}\n ${(props) => (props.display ? display(props.display) : null)}\n ${(props) => (props.color ? color(props.color) : null)}\n ${(props) => (props.size ? property(props.size, 'font-size') : null)}\n ${(props) => (props.wrapper ? wrapper : null)}\n ${({ sizeXS, sizeS, sizeM, sizeL, sizeXL }) =>\n responsiveNamedProperty({ sizes: { sizeXS, sizeS, sizeM, sizeL, sizeXL }, cssProperty: 'font-size' })}\n`\n"],"names":["wrapper","css","underline","pseudo","props","theme","colors","accent","Root","styled","div","withConfig","shouldForwardProp","prop","includes","componentId","primary","display","color","size","property","_ref","sizeXS","sizeS","sizeM","sizeL","sizeXL","responsiveNamedProperty","sizes","cssProperty"],"mappings":"uOAMA,IAAMA,EAAUC,EAAhB,CAAA,uFAUA,IAAMC,EAAYD,EAAlB,CAAA,+BAIA,IAAME,EAASF,EAAH,CAAA,8BAAA,4CAEAG,GAAUA,EAAMC,MAAMC,OAAOC,SAIlC,IAAMC,EAAOC,EAAOC,IAAIC,WAAwB,CACrDC,kBAAoBC,IACjB,CAAC,UAAW,YAAa,SAAU,UAAW,SAASC,SAASD,KAAUA,EAAKC,SAAS,UAF5EH,WAAA,CAAAI,YAAA,wBAAGN,CAIRL,CAAAA,SAAAA,sEAAAA,KAAAA,IAAAA,IAAAA,IAAAA,IAAAA,IAAAA,IAAAA,KAAAA,GAAUA,EAAMC,MAAMC,OAAOC,SAK3BH,GAAUA,EAAMC,MAAMC,OAAOU,UAEtCZ,GAAWA,EAAMF,UAAYA,EAAY,OACzCE,GAAWA,EAAMD,OAASA,EAAS,OACnCC,GAAWA,EAAMa,QAAUA,EAAQb,EAAMa,SAAW,OACpDb,GAAWA,EAAMc,MAAQA,EAAMd,EAAMc,OAAS,OAC9Cd,GAAWA,EAAMe,KAAOC,EAAShB,EAAMe,KAAM,aAAe,OAC5Df,GAAWA,EAAMJ,QAAUA,EAAU,OACtCqB,IAAA,IAACC,OAAEA,EAAFC,MAAUA,EAAVC,MAAiBA,EAAjBC,MAAwBA,EAAxBC,OAA+BA,GAAhCL,EAAA,OACAM,EAAwB,CAAEC,MAAO,CAAEN,OAAAA,EAAQC,MAAAA,EAAOC,MAAAA,EAAOC,MAAAA,EAAOC,OAAAA,GAAUG,YAAa"}
1
+ {"version":3,"file":"style.js","sources":["../../../../src/components/Anchor/style.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport tinycolor from 'tinycolor2'\nimport type { ThemedStyledProps, DefaultTheme } from 'styled-components'\nimport { createShouldForwardProp } from 'shared/utils/style'\nimport { getColor } from 'mixins/color'\nimport { focus } from 'mixins/focus'\nimport { responsiveSize } from 'mixins/size'\nimport { responsiveMargin } from 'mixins/margin'\nimport { display } from 'mixins/display'\nimport type { CSSColor } from 'shared/types'\nimport type { StyledAnchorProps, AnchorPalette } from './types'\n\nconst shouldForwardAnchorProp = createShouldForwardProp(\n (propKey) => !['display', 'underline', 'onColored', 'verticalAlign', 'pseudo', 'wrapper'].includes(propKey)\n)\n\nconst template = (palette: AnchorPalette) => `\n color: ${palette.color};\n &:hover {\n color: ${palette.colorHover};\n }\n &:active {\n color: ${palette.color};\n }\n &[data-disabled=\"true\"] {\n color: ${palette.colorDisabled};\n }\n`\n\nconst COLOR_SCHEMA = {\n default: css<StyledAnchorProps>`\n ${(props) =>\n template({\n color: props.wrapper ? 'inherit' : props.theme.colors.accent,\n colorHover: props.wrapper ? 'inherit' : props.theme.colors.primary,\n colorDisabled: props.theme.colors['content-disabled'],\n ...props.palette,\n })}\n `,\n primary: css<StyledAnchorProps>`\n ${(props) =>\n template({\n color: props.theme.colors['content-link'],\n colorHover: tinycolor(props.theme.colors['content-link']).lighten(10).toString() as CSSColor,\n colorDisabled: props.theme.colors['content-disabled'],\n ...props.palette,\n })}\n `,\n onColored: css<StyledAnchorProps>`\n ${(props) =>\n template({\n color: props.theme.colors['content-oncolor-primary'],\n colorHover: tinycolor(props.theme.colors['content-oncolor-primary']).darken(10).toString() as CSSColor,\n colorDisabled: props.theme.colors['content-oncolor-disabled'],\n ...props.palette,\n })}\n `,\n}\n\nconst anchorStyles = (props: ThemedStyledProps<StyledAnchorProps, DefaultTheme>) => {\n if (props.onColored) return COLOR_SCHEMA.onColored\n return props.preset === 'brand' ? COLOR_SCHEMA.primary : COLOR_SCHEMA.default\n}\n\nexport const Root = styled.a.withConfig<StyledAnchorProps>({\n shouldForwardProp: shouldForwardAnchorProp,\n})`\n ${(props) => `\n box-sizing: border-box;\n isolation: isolate;\n transition-property: color;\n transition-duration: 150ms;\n transition-timing-function: ease-in;\n cursor: ${props.cursor ?? 'pointer'};\n vertical-align: ${\n props.verticalAlign\n ? `${typeof props.verticalAlign === 'string' ? props.verticalAlign : 'text-bottom'}`\n : 'baseline'\n };\n ${\n props.preset === 'brand'\n ? `\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n text-decoration: none;\n `\n : `\n display: ${props.wrapper ? 'block' : 'inline-block'};\n text-decoration-line: ${props.underline === true ? 'underline' : 'none'};\n border-bottom: ${\n props.pseudo || typeof props.underline === 'string'\n ? `1px ${typeof props.underline === 'string' ? props.underline : 'dashed'}`\n : 'none'\n };\n `\n }\n \n `}\n\n ${anchorStyles}\n ${focus}\n ${responsiveSize}\n ${responsiveMargin}\n \n ${(props) => props.display && display(props.display)}\n ${(props) => props.color && `color: ${getColor(props.color, props)};`}\n`\n"],"names":["shouldForwardAnchorProp","createShouldForwardProp","propKey","includes","template","palette","color","colorHover","concat","colorDisabled","COLOR_SCHEMA","default","css","props","_objectSpread","wrapper","theme","colors","accent","primary","tinycolor","lighten","toString","onColored","darken","Root","styled","a","withConfig","shouldForwardProp","componentId","_props$cursor","cursor","verticalAlign","preset","underline","pseudo","focus","responsiveSize","responsiveMargin","display","getColor"],"mappings":"gcAYA,IAAMA,EAA0BC,GAC7BC,IAAa,CAAC,UAAW,YAAa,YAAa,gBAAiB,SAAU,WAAWC,SAASD,KAGrG,IAAME,EAAYC,wBACPA,EAAQC,MAEND,+BAAAA,OAAAA,EAAQE,WAHJ,qCAAAC,OAMJH,EAAQC,mEAGRD,EAAQI,cATrB,YAaA,IAAMC,EAAe,CACnBC,QAASC,EACJC,CAAAA,GAAAA,KAAAA,GACDT,EAAQU,EAAA,CACNR,MAAOO,EAAME,QAAU,UAAYF,EAAMG,MAAMC,OAAOC,OACtDX,WAAYM,EAAME,QAAU,UAAYF,EAAMG,MAAMC,OAAOE,QAC3DV,cAAeI,EAAMG,MAAMC,OAAO,qBAC/BJ,EAAMR,YAGfc,QAASP,EACJC,CAAAA,GAAAA,KAAAA,GACDT,EAAQU,EAAA,CACNR,MAAOO,EAAMG,MAAMC,OAAO,gBAC1BV,WAAYa,EAAUP,EAAMG,MAAMC,OAAO,iBAAiBI,QAAQ,IAAIC,WACtEb,cAAeI,EAAMG,MAAMC,OAAO,qBAC/BJ,EAAMR,YAGfkB,UAAWX,EACNC,CAAAA,GAAAA,KAAAA,GACDT,EAAQU,EAAA,CACNR,MAAOO,EAAMG,MAAMC,OAAO,2BAC1BV,WAAYa,EAAUP,EAAMG,MAAMC,OAAO,4BAA4BO,OAAO,IAAIF,WAChFb,cAAeI,EAAMG,MAAMC,OAAO,6BAC/BJ,EAAMR,aAUV,IAAMoB,EAAOC,EAAOC,EAAEC,WAA8B,CACzDC,kBAAmB7B,IADJ4B,WAAA,CAAAE,YAAA,wBAAGJ,CAAH,CAAA,GAAA,IAAA,IAAA,IAAA,IAAA,IAAA,IAAA,KAGZb,IAAD,IAAAkB,EAAA,MAAA,+LAAAvB,OAAA,QAAAuB,EAMYlB,EAAMmB,cAAAA,IANlBD,EAAAA,EAM4B,UAExBlB,6BAAAA,OAAAA,EAAMoB,wBACgC,iBAAxBpB,EAAMoB,cAA6BpB,EAAMoB,cAAgB,eACnE,+BAGa,UAAjBpB,EAAMqB,OASWrB,uMAAAA,4BAAAA,OAAAA,EAAME,QAAU,QAAU,eAT3C,2CAAAP,QAAAA,IAU8BK,EAAMsB,UAAqB,YAAc,kDAE/DtB,EAAMuB,QAAqC,iBAApBvB,EAAMsB,UAClB,OAAA3B,OAA2B,iBAApBK,EAAMsB,UAAyBtB,EAAMsB,UAAY,UAC/D,OA3BhB,mBAAA,eARkBtB,GAChBA,EAAMU,UAAkBb,EAAaa,UACjB,UAAjBV,EAAMqB,OAAqBxB,EAAaS,QAAUT,EAAaC,SAyCpE0B,EACAC,EACAC,GAEC1B,GAAUA,EAAM2B,SAAWA,EAAQ3B,EAAM2B,WACzC3B,GAAUA,EAAMP,OAAN,UAAAE,OAAyBiC,EAAS5B,EAAMP,MAAOO"}
@@ -1,2 +1,2 @@
1
- import r from'@babel/runtime/helpers/objectSpread2';import e from'@babel/runtime/helpers/objectWithoutProperties';import{forwardRef as o}from'react';import{useFallbackTheme as s}from'../../hooks/use-theme.js';import{useConfigPriority as t}from'../../hooks/use-config-priority.js';import a from'./images/arrow.module.svg.js';import i from'./images/chevron.module.svg.js';import{getArrowRotation as m}from'./utils.js';import{Root as p}from'./style.js';import{jsx as n}from'react/jsx-runtime';var l=["size","onClick"];var f='Arrow';var u=o(((o,f)=>{var u;var d=s();var v=t(null===(u=d.components)||void 0===u?void 0:u.Arrow,o),{size:c="l",onClick:b}=v,h=e(v,l);var j='brand'===d.preset;'string'==typeof h.preset&&(j='brand'===h.preset);var g=h.square?'8px':'50%';var y=j?a:i;var w=m(h);return n(p,r(r({},h),{},{ref:f,type:"button",size:c,borderRadius:g,brandPresetUsed:j,onClick:r=>{r.preventDefault(),h.disabled||'function'!=typeof b||b(r)},children:n("span",{children:n(y,{style:w})})}))}));u.displayName="Arrow";export{u as Arrow,f as COMPONENT_NAME};
1
+ import r from'@babel/runtime/helpers/objectSpread2';import e from'@babel/runtime/helpers/objectWithoutProperties';import{forwardRef as o}from'react';import{useTheme as t}from'styled-components';import{useConfigPriority as s}from'../../hooks/use-config-priority.js';import i from'./images/arrow.module.svg.js';import a from'./images/chevron.module.svg.js';import{getArrowRotation as m}from'./utils.js';import{Root as p}from'./style.js';import{jsx as n}from'react/jsx-runtime';var l=["size","onClick"];var f='Arrow';var d=o(((o,f)=>{var d;var u=t();var v=s(null===(d=u.components)||void 0===d?void 0:d.Arrow,o),{size:c="l",onClick:b}=v,j=e(v,l);var y='brand'===u.preset;'string'==typeof j.preset&&(y='brand'===j.preset);var g=j.square?'8px':'50%';var h=y?i:a;var w=m(j);return n(p,r(r({},j),{},{ref:f,type:"button",size:c,borderRadius:g,brandPresetUsed:y,onClick:r=>{r.preventDefault(),j.disabled||'function'!=typeof b||b(r)},children:n("span",{children:n(h,{style:w})})}))}));d.displayName="Arrow";export{d as Arrow,f as COMPONENT_NAME};
2
2
  //# sourceMappingURL=Arrow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Arrow.js","sources":["../../../../src/components/Arrow/Arrow.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport { useFallbackTheme } from 'hooks/use-theme'\nimport { useConfigPriority } from 'hooks/use-config-priority'\nimport ArrowSvg from './images/arrow.module.svg'\nimport ChevronSvg from './images/chevron.module.svg'\nimport type { ArrowProps } from './types'\nimport { getArrowRotation } from './utils'\n\nimport * as Styled from './style'\n\nconst COMPONENT_NAME = 'Arrow'\n\n/**\n * Button with arrow icon\n */\nconst Arrow = forwardRef<HTMLButtonElement, ArrowProps>((props, ref) => {\n const theme = useFallbackTheme()\n\n const { size = 'l', onClick, ...configProps } = useConfigPriority<ArrowProps>(theme.components?.Arrow, props)\n\n let brandPresetUsed = theme.preset === 'brand'\n if (typeof configProps.preset === 'string') brandPresetUsed = configProps.preset === 'brand'\n\n const borderRadius = configProps.square ? '8px' : '50%'\n const Icon = brandPresetUsed ? ArrowSvg : ChevronSvg\n const iconStyles = getArrowRotation(configProps)\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n event.preventDefault()\n\n if (!configProps.disabled && typeof onClick === 'function') {\n onClick(event)\n }\n }\n\n return (\n <Styled.Root\n {...configProps}\n ref={ref}\n type='button'\n size={size}\n borderRadius={borderRadius}\n brandPresetUsed={brandPresetUsed}\n onClick={handleClick}\n >\n <span>{<Icon style={iconStyles} />}</span>\n </Styled.Root>\n )\n})\n\nArrow.displayName = COMPONENT_NAME\n\nexport { Arrow, COMPONENT_NAME }\n\nexport type { ArrowProps }\n"],"names":["COMPONENT_NAME","Arrow","forwardRef","props","ref","_theme$components","theme","useFallbackTheme","useConfigPriority","components","size","onClick","_useConfigPriority","configProps","_objectWithoutProperties","_excluded","brandPresetUsed","preset","borderRadius","square","Icon","ArrowSvg","ChevronSvg","iconStyles","getArrowRotation","_jsx","Styled.Root","type","event","preventDefault","disabled","children","style","displayName"],"mappings":"mgBAUMA,IAAAA,EAAiB,QAKjBC,IAAAA,EAAQC,GAA0C,CAACC,EAAOC,KAAQ,IAAAC,EACtE,IAAMC,EAAQC,IAEd,IAAgDC,EAAAA,UAA8BF,EAAAA,EAAMG,kBAAAA,aAANJ,EAAkBJ,MAAOE,IAAjGO,KAAEA,EAAO,IAATC,QAAcA,GAApBC,EAAgCC,EAAhCC,EAAAF,EAAAG,GAEA,IAAIC,EAAmC,UAAjBV,EAAMW,OACM,iBAAvBJ,EAAYI,SAAqBD,EAAyC,UAAvBH,EAAYI,QAE1E,IAAMC,EAAeL,EAAYM,OAAS,MAAQ,MAClD,IAAMC,EAAOJ,EAAkBK,EAAWC,EAC1C,IAAMC,EAAaC,EAAiBX,GAUpC,OACEY,EAACC,SACKb,GADN,GAAA,CAEET,IAAKA,EACLuB,KAAK,SACLjB,KAAMA,EACNQ,aAAcA,EACdF,gBAAiBA,EACjBL,QAhBiBiB,IACnBA,EAAMC,iBAEDhB,EAAYiB,UAA+B,mBAAZnB,GAClCA,EAAQiB,IAKVG,SASEN,EAAA,OAAA,CAAAM,SAAON,EAACL,EAAD,CAAMY,MAAOT,YAK1BtB,EAAMgC,YAxCiB"}
1
+ {"version":3,"file":"Arrow.js","sources":["../../../../src/components/Arrow/Arrow.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport { useTheme } from 'styled-components'\nimport { useConfigPriority } from 'hooks/use-config-priority'\nimport ArrowSvg from './images/arrow.module.svg'\nimport ChevronSvg from './images/chevron.module.svg'\nimport type { ArrowProps } from './types'\nimport { getArrowRotation } from './utils'\n\nimport * as Styled from './style'\n\nconst COMPONENT_NAME = 'Arrow'\n\n/**\n * Button with arrow icon\n */\nconst Arrow = forwardRef<HTMLButtonElement, ArrowProps>((props, ref) => {\n const theme = useTheme()\n\n const { size = 'l', onClick, ...configProps } = useConfigPriority<ArrowProps>(theme.components?.Arrow, props)\n\n let brandPresetUsed = theme.preset === 'brand'\n if (typeof configProps.preset === 'string') brandPresetUsed = configProps.preset === 'brand'\n\n const borderRadius = configProps.square ? '8px' : '50%'\n const Icon = brandPresetUsed ? ArrowSvg : ChevronSvg\n const iconStyles = getArrowRotation(configProps)\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n event.preventDefault()\n\n if (!configProps.disabled && typeof onClick === 'function') {\n onClick(event)\n }\n }\n\n return (\n <Styled.Root\n {...configProps}\n ref={ref}\n type='button'\n size={size}\n borderRadius={borderRadius}\n brandPresetUsed={brandPresetUsed}\n onClick={handleClick}\n >\n <span>{<Icon style={iconStyles} />}</span>\n </Styled.Root>\n )\n})\n\nArrow.displayName = COMPONENT_NAME\n\nexport { Arrow, COMPONENT_NAME }\n\nexport type { ArrowProps }\n"],"names":["COMPONENT_NAME","Arrow","forwardRef","props","ref","_theme$components","theme","useTheme","useConfigPriority","components","size","onClick","_useConfigPriority","configProps","_objectWithoutProperties","_excluded","brandPresetUsed","preset","borderRadius","square","Icon","ArrowSvg","ChevronSvg","iconStyles","getArrowRotation","_jsx","Styled.Root","type","event","preventDefault","disabled","children","style","displayName"],"mappings":"ofAUMA,IAAAA,EAAiB,QAKjBC,IAAAA,EAAQC,GAA0C,CAACC,EAAOC,KAAQ,IAAAC,EACtE,IAAMC,EAAQC,IAEd,IAAgDC,EAAAA,UAA8BF,EAAAA,EAAMG,kBAAAA,aAANJ,EAAkBJ,MAAOE,IAAjGO,KAAEA,EAAO,IAATC,QAAcA,GAApBC,EAAgCC,EAAhCC,EAAAF,EAAAG,GAEA,IAAIC,EAAmC,UAAjBV,EAAMW,OACM,iBAAvBJ,EAAYI,SAAqBD,EAAyC,UAAvBH,EAAYI,QAE1E,IAAMC,EAAeL,EAAYM,OAAS,MAAQ,MAClD,IAAMC,EAAOJ,EAAkBK,EAAWC,EAC1C,IAAMC,EAAaC,EAAiBX,GAUpC,OACEY,EAACC,SACKb,GADN,GAAA,CAEET,IAAKA,EACLuB,KAAK,SACLjB,KAAMA,EACNQ,aAAcA,EACdF,gBAAiBA,EACjBL,QAhBiBiB,IACnBA,EAAMC,iBAEDhB,EAAYiB,UAA+B,mBAAZnB,GAClCA,EAAQiB,IAKVG,SASEN,EAAA,OAAA,CAAAM,SAAON,EAACL,EAAD,CAAMY,MAAOT,YAK1BtB,EAAMgC,YAxCiB"}
@@ -1,2 +1,2 @@
1
- import o,{css as n}from'styled-components';import{responsiveProperty as r}from'../../mixins/responsive-property.js';import{injectDefaultTheme as c}from'../../shared/utils/inject-theme.js';import{TRANSIENT_PROPS as e}from'./constants.js';var t={l:48,m:44,xs:40};var a={l:40,m:28,xs:20};var l="\n content: '';\n position: absolute;\n inset: 0;\n border-radius: inherit;\n";var s="\n cursor: not-allowed;\n -webkit-filter: grayscale(100%);\n -moz-filter: grayscale(100%);\n -ms-filter: grayscale(100%);\n -o-filter: grayscale(100%);\n filter: grayscale(100%);\n";var i={filled:{default:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: ".concat(r?n.colors['bg-disabled-large']:n.colors['bg-onmain-tertiary'],";\n color: ").concat(r?n.colors['content-disabled']:n.colors['content-onmain-primary'],";\n &::before {\n ").concat(l,"\n opacity: 0;\n background-color: ").concat(n.colors['bg-oncolor-hover'],";\n \n }\n &::after {\n ").concat(l,"\n opacity: 0;\n box-shadow: inset 0 4px ").concat(n.colors['bg-oncolor-hover'],";\n }\n ").concat(r?'cursor: default;':"\n &:hover::before {\n opacity: 1;\n }\n &:active::before {\n opacity: 0;\n }\n &:active::after {\n opacity: 1;\n }\n &:active {\n background-color: ".concat(n.colors['bg-brand-primary-basic-active'],";\n color: ").concat(n.colors['content-oncolor-primary'],";\n }\n "),"\n ")})),onColored:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: ".concat(n.colors['bg-oncolor-primary'],";\n color: ").concat(r?n.colors['content-disabled']:n.colors['content-oncolor-constant'],";\n &::before {\n ").concat(l,"\n opacity: 0;\n background-color: ").concat(n.colors['bg-oncolor-hover'],";\n }\n &::after {\n ").concat(l,"\n opacity: 0;\n box-shadow: inset 0 4px ").concat(n.colors['bg-oncolor-hover'],";\n }\n ").concat(r?'cursor: default;':"\n &:hover::before {\n opacity: 1;\n }\n &:active::after {\n opacity: 1;\n }\n ","\n ")}))},outline:{default:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: transparent; \n color: ".concat(r?n.colors['border-disabled']:n.colors['content-onmain-primary'],";\n &::before {\n ").concat(l,"\n opacity: 1;\n box-shadow: inset 0 0 0 1px ").concat(r?n.colors['border-disabled']:n.colors['border-onmain-contrast'],";\n }\n &::after {\n ").concat(l,"\n opacity: 0;\n box-shadow: inset 0 4px ").concat(n.colors['bg-oncolor-hover'],";\n }\n ").concat(r?'cursor: default;':"\n &:hover::before {\n opacity: 0;\n }\n &:hover {\n background-color: ".concat(n.colors['bg-onmain-tertiary'],";\n }\n &:active::after {\n opacity: 1;\n }\n &:active {\n background-color: ").concat(n.colors['bg-brand-primary-basic-active'],";\n color: ").concat(n.colors['content-oncolor-primary'],";\n }\n "),"\n ")})),onColored:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: transparent; \n color: ".concat(r?n.colors['border-oncolor-disabled']:n.colors['content-oncolor-primary'],";\n &::before {\n ").concat(l,"\n opacity: 1;\n box-shadow: inset 0 0 0 1px ").concat(r?n.colors['border-oncolor-disabled']:n.colors['border-oncolor-default'],";\n }\n &::after {\n ").concat(l,"\n opacity: 0;\n box-shadow: inset 0 4px ").concat(n.colors['bg-oncolor-hover'],";\n }\n ").concat(r?'cursor: default;':"\n &:hover::before {\n opacity: 0;\n }\n &:hover {\n background-color: ".concat(n.colors['bg-oncolor-primary'],";\n color: ").concat(n.colors['content-oncolor-constant'],";\n }\n &:active::after {\n opacity: 1;\n }\n "),"\n ")}))}};var d={filled:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: ".concat(n.colors.white,";\n box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);\n & svg {\n fill: ").concat(n.colors.accent,";\n }\n &:hover {\n background-color: ").concat(n.colors.accent,";\n box-shadow: none;\n svg {\n fill: ").concat(n.colors.white,";\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 rgba(5, 108, 188, 0.5);\n }\n ").concat(r?s:'',"\n ")})),outline:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: transparent;\n box-shadow: inset 0 0 0 2px ".concat(n.colors.alto,";\n & svg {\n fill: ").concat(n.colors.alto,";\n }\n &:hover {\n background-color: ").concat(n.colors.accent,";\n box-shadow: none;\n svg {\n fill: ").concat(n.colors.white,";\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 rgba(5, 108, 188, 0.5);\n }\n ").concat(r?s:'',"\n ")})),inverse:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: transparent;\n box-shadow: inset 0 0 0 2px ".concat(n.colors.white,";\n & svg {\n fill: ").concat(n.colors.white,";\n }\n &:hover {\n background-color: ").concat(n.colors.white,";\n box-shadow: none;\n svg {\n fill: ").concat(n.colors.accent,";\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 #eaecf3;\n }\n ").concat(r?s:'',"\n ")}))};var b=(o,n)=>{var c=o.brandPresetUsed?t:a;return['l','m','xs'].includes(o.size)?"".concat(n,": ").concat(c[o.size],"px;"):r('size',n)};var p=o.button.withConfig({shouldForwardProp:o=>!e.includes(o)}).attrs(c).withConfig({componentId:"fox-ui__sc-1xgj0m4-0"})([""," "," "," "," ",""],"\n &,\n & > span {\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n position: relative;\n flex-shrink: 0;\n padding: 0;\n border: 0;\n line-height: 1;\n cursor: pointer;\n overflow: hidden;\n transition-property: background-color, box-shadow;\n &::before, \n &::after {\n transition-property: opacity;\n }\n &,\n &::before,\n &::after {\n transition-duration: 200ms;\n }\n",(o=>o.brandPresetUsed?o.outline&&o.onColored?i.outline.onColored:o.outline&&!o.onColored?i.outline.default:!o.outline&&o.onColored?i.filled.onColored:i.filled.default:o.inverse?d.inverse:o.outline?d.outline:d.filled),(o=>b(o,'height')),(o=>b(o,'width')),(o=>"border-radius: ".concat(o.borderRadius,";")));export{p as Root};
1
+ import o,{css as n}from'styled-components';import{responsiveProperty as r}from'../../mixins/responsive-property.js';import{TRANSIENT_PROPS as c}from'./constants.js';var e={l:48,m:44,xs:40};var a={l:40,m:28,xs:20};var t="\n content: '';\n position: absolute;\n inset: 0;\n border-radius: inherit;\n";var l="\n cursor: not-allowed;\n -webkit-filter: grayscale(100%);\n -moz-filter: grayscale(100%);\n -ms-filter: grayscale(100%);\n -o-filter: grayscale(100%);\n filter: grayscale(100%);\n";var i={filled:{default:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: ".concat(r?n.colors['bg-disabled-large']:n.colors['bg-onmain-tertiary'],";\n color: ").concat(r?n.colors['content-disabled']:n.colors['content-onmain-primary'],";\n &::before {\n ").concat(t,"\n opacity: 0;\n background-color: ").concat(n.colors['bg-oncolor-hover'],";\n \n }\n &::after {\n ").concat(t,"\n opacity: 0;\n box-shadow: inset 0 4px ").concat(n.colors['bg-oncolor-hover'],";\n }\n ").concat(r?'cursor: default;':"\n &:hover::before {\n opacity: 1;\n }\n &:active::before {\n opacity: 0;\n }\n &:active::after {\n opacity: 1;\n }\n &:active {\n background-color: ".concat(n.colors['bg-brand-primary-basic-active'],";\n color: ").concat(n.colors['content-oncolor-primary'],";\n }\n "),"\n ")})),onColored:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: ".concat(n.colors['bg-oncolor-primary'],";\n color: ").concat(r?n.colors['content-disabled']:n.colors['content-oncolor-constant'],";\n &::before {\n ").concat(t,"\n opacity: 0;\n background-color: ").concat(n.colors['bg-oncolor-hover'],";\n }\n &::after {\n ").concat(t,"\n opacity: 0;\n box-shadow: inset 0 4px ").concat(n.colors['bg-oncolor-hover'],";\n }\n ").concat(r?'cursor: default;':"\n &:hover::before {\n opacity: 1;\n }\n &:active::after {\n opacity: 1;\n }\n ","\n ")}))},outline:{default:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: transparent; \n color: ".concat(r?n.colors['border-disabled']:n.colors['content-onmain-primary'],";\n &::before {\n ").concat(t,"\n opacity: 1;\n box-shadow: inset 0 0 0 1px ").concat(r?n.colors['border-disabled']:n.colors['border-onmain-contrast'],";\n }\n &::after {\n ").concat(t,"\n opacity: 0;\n box-shadow: inset 0 4px ").concat(n.colors['bg-oncolor-hover'],";\n }\n ").concat(r?'cursor: default;':"\n &:hover::before {\n opacity: 0;\n }\n &:hover {\n background-color: ".concat(n.colors['bg-onmain-tertiary'],";\n }\n &:active::after {\n opacity: 1;\n }\n &:active {\n background-color: ").concat(n.colors['bg-brand-primary-basic-active'],";\n color: ").concat(n.colors['content-oncolor-primary'],";\n }\n "),"\n ")})),onColored:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: transparent; \n color: ".concat(r?n.colors['border-oncolor-disabled']:n.colors['content-oncolor-primary'],";\n &::before {\n ").concat(t,"\n opacity: 1;\n box-shadow: inset 0 0 0 1px ").concat(r?n.colors['border-oncolor-disabled']:n.colors['border-oncolor-default'],";\n }\n &::after {\n ").concat(t,"\n opacity: 0;\n box-shadow: inset 0 4px ").concat(n.colors['bg-oncolor-hover'],";\n }\n ").concat(r?'cursor: default;':"\n &:hover::before {\n opacity: 0;\n }\n &:hover {\n background-color: ".concat(n.colors['bg-oncolor-primary'],";\n color: ").concat(n.colors['content-oncolor-constant'],";\n }\n &:active::after {\n opacity: 1;\n }\n "),"\n ")}))}};var s={filled:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: ".concat(n.colors.white,";\n box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);\n & svg {\n fill: ").concat(n.colors.accent,";\n }\n &:hover {\n background-color: ").concat(n.colors.accent,";\n box-shadow: none;\n svg {\n fill: ").concat(n.colors.white,";\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 rgba(5, 108, 188, 0.5);\n }\n ").concat(r?l:'',"\n ")})),outline:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: transparent;\n box-shadow: inset 0 0 0 2px ".concat(n.colors.alto,";\n & svg {\n fill: ").concat(n.colors.alto,";\n }\n &:hover {\n background-color: ").concat(n.colors.accent,";\n box-shadow: none;\n svg {\n fill: ").concat(n.colors.white,";\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 rgba(5, 108, 188, 0.5);\n }\n ").concat(r?l:'',"\n ")})),inverse:n(["",""],(o=>{var{theme:n,disabled:r}=o;return"\n background-color: transparent;\n box-shadow: inset 0 0 0 2px ".concat(n.colors.white,";\n & svg {\n fill: ").concat(n.colors.white,";\n }\n &:hover {\n background-color: ").concat(n.colors.white,";\n box-shadow: none;\n svg {\n fill: ").concat(n.colors.accent,";\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 #eaecf3;\n }\n ").concat(r?l:'',"\n ")}))};var d=(o,n)=>{var c=o.brandPresetUsed?e:a;return['l','m','xs'].includes(o.size)?"".concat(n,": ").concat(c[o.size],"px;"):r('size',n)};var b=o.button.withConfig({shouldForwardProp:o=>!c.includes(o)}).withConfig({componentId:"fox-ui__sc-1xgj0m4-0"})([""," "," "," "," ",""],"\n &,\n & > span {\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n position: relative;\n flex-shrink: 0;\n padding: 0;\n border: 0;\n line-height: 1;\n cursor: pointer;\n overflow: hidden;\n transition-property: background-color, box-shadow;\n &::before, \n &::after {\n transition-property: opacity;\n }\n &,\n &::before,\n &::after {\n transition-duration: 200ms;\n }\n",(o=>o.brandPresetUsed?o.outline&&o.onColored?i.outline.onColored:o.outline&&!o.onColored?i.outline.default:!o.outline&&o.onColored?i.filled.onColored:i.filled.default:o.inverse?s.inverse:o.outline?s.outline:s.filled),(o=>d(o,'height')),(o=>d(o,'width')),(o=>"border-radius: ".concat(o.borderRadius,";")));export{b as Root};
2
2
  //# sourceMappingURL=style.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"style.js","sources":["../../../../src/components/Arrow/style.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport type { DefaultTheme, ThemedStyledProps } from 'styled-components'\nimport { responsiveProperty } from 'mixins/responsive-property'\nimport { injectDefaultTheme } from 'shared/utils/inject-theme'\nimport { TRANSIENT_PROPS } from './constants'\nimport type { StyledArrowProps, ArrowStaticSize, ArrowTransientProp } from './types'\n\nconst SIZES: Record<ArrowStaticSize, number> = { l: 48, m: 44, xs: 40 }\n\nconst DEFAULT_SIZES: Record<ArrowStaticSize, number> = { l: 40, m: 28, xs: 20 }\n\nconst baseStyles = `\n &,\n & > span {\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n position: relative;\n flex-shrink: 0;\n padding: 0;\n border: 0;\n line-height: 1;\n cursor: pointer;\n overflow: hidden;\n transition-property: background-color, box-shadow;\n &::before, \n &::after {\n transition-property: opacity;\n }\n &,\n &::before,\n &::after {\n transition-duration: 200ms;\n }\n`\n\nconst pseudoBaseStyles = `\n content: '';\n position: absolute;\n inset: 0;\n border-radius: inherit;\n`\n\nconst defaultDisabledStyles = `\n cursor: not-allowed;\n -webkit-filter: grayscale(100%);\n -moz-filter: grayscale(100%);\n -ms-filter: grayscale(100%);\n -o-filter: grayscale(100%);\n filter: grayscale(100%);\n`\n\nconst PRESET = {\n filled: {\n default: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: ${disabled ? theme.colors['bg-disabled-large'] : theme.colors['bg-onmain-tertiary']};\n color: ${disabled ? theme.colors['content-disabled'] : theme.colors['content-onmain-primary']};\n &::before {\n ${pseudoBaseStyles}\n opacity: 0;\n background-color: ${theme.colors['bg-oncolor-hover']};\n \n }\n &::after {\n ${pseudoBaseStyles}\n opacity: 0;\n box-shadow: inset 0 4px ${theme.colors['bg-oncolor-hover']};\n }\n ${\n disabled\n ? 'cursor: default;'\n : `\n &:hover::before {\n opacity: 1;\n }\n &:active::before {\n opacity: 0;\n }\n &:active::after {\n opacity: 1;\n }\n &:active {\n background-color: ${theme.colors['bg-brand-primary-basic-active']};\n color: ${theme.colors['content-oncolor-primary']};\n }\n `\n }\n `}\n `,\n onColored: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: ${theme.colors['bg-oncolor-primary']};\n color: ${disabled ? theme.colors['content-disabled'] : theme.colors['content-oncolor-constant']};\n &::before {\n ${pseudoBaseStyles}\n opacity: 0;\n background-color: ${theme.colors['bg-oncolor-hover']};\n }\n &::after {\n ${pseudoBaseStyles}\n opacity: 0;\n box-shadow: inset 0 4px ${theme.colors['bg-oncolor-hover']};\n }\n ${\n disabled\n ? 'cursor: default;'\n : `\n &:hover::before {\n opacity: 1;\n }\n &:active::after {\n opacity: 1;\n }\n `\n }\n `}\n `,\n },\n outline: {\n default: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: transparent; \n color: ${disabled ? theme.colors['border-disabled'] : theme.colors['content-onmain-primary']};\n &::before {\n ${pseudoBaseStyles}\n opacity: 1;\n box-shadow: inset 0 0 0 1px ${\n disabled ? theme.colors['border-disabled'] : theme.colors['border-onmain-contrast']\n };\n }\n &::after {\n ${pseudoBaseStyles}\n opacity: 0;\n box-shadow: inset 0 4px ${theme.colors['bg-oncolor-hover']};\n }\n ${\n disabled\n ? 'cursor: default;'\n : `\n &:hover::before {\n opacity: 0;\n }\n &:hover {\n background-color: ${theme.colors['bg-onmain-tertiary']};\n }\n &:active::after {\n opacity: 1;\n }\n &:active {\n background-color: ${theme.colors['bg-brand-primary-basic-active']};\n color: ${theme.colors['content-oncolor-primary']};\n }\n `\n }\n `}\n `,\n onColored: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: transparent; \n color: ${disabled ? theme.colors['border-oncolor-disabled'] : theme.colors['content-oncolor-primary']};\n &::before {\n ${pseudoBaseStyles}\n opacity: 1;\n box-shadow: inset 0 0 0 1px ${\n disabled ? theme.colors['border-oncolor-disabled'] : theme.colors['border-oncolor-default']\n };\n }\n &::after {\n ${pseudoBaseStyles}\n opacity: 0;\n box-shadow: inset 0 4px ${theme.colors['bg-oncolor-hover']};\n }\n ${\n disabled\n ? 'cursor: default;'\n : `\n &:hover::before {\n opacity: 0;\n }\n &:hover {\n background-color: ${theme.colors['bg-oncolor-primary']};\n color: ${theme.colors['content-oncolor-constant']};\n }\n &:active::after {\n opacity: 1;\n }\n `\n }\n `}\n `,\n },\n}\n\nconst PRESET_DEFAULT = {\n filled: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: ${theme.colors.white};\n box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);\n & svg {\n fill: ${theme.colors.accent};\n }\n &:hover {\n background-color: ${theme.colors.accent};\n box-shadow: none;\n svg {\n fill: ${theme.colors.white};\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 rgba(5, 108, 188, 0.5);\n }\n ${disabled ? defaultDisabledStyles : ''}\n `}\n `,\n outline: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: transparent;\n box-shadow: inset 0 0 0 2px ${theme.colors.alto};\n & svg {\n fill: ${theme.colors.alto};\n }\n &:hover {\n background-color: ${theme.colors.accent};\n box-shadow: none;\n svg {\n fill: ${theme.colors.white};\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 rgba(5, 108, 188, 0.5);\n }\n ${disabled ? defaultDisabledStyles : ''}\n `}\n `,\n inverse: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: transparent;\n box-shadow: inset 0 0 0 2px ${theme.colors.white};\n & svg {\n fill: ${theme.colors.white};\n }\n &:hover {\n background-color: ${theme.colors.white};\n box-shadow: none;\n svg {\n fill: ${theme.colors.accent};\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 #eaecf3;\n }\n ${disabled ? defaultDisabledStyles : ''}\n `}\n `,\n}\n\nconst extractSize = (props: ThemedStyledProps<StyledArrowProps, DefaultTheme>, cssProperty: 'height' | 'width') => {\n const config = props.brandPresetUsed ? SIZES : DEFAULT_SIZES\n\n return ['l', 'm', 'xs'].includes(<ArrowStaticSize>props.size)\n ? `${cssProperty}: ${config[<ArrowStaticSize>props.size]}px;`\n : responsiveProperty('size', cssProperty)\n}\n\nconst extractStyles = (props: ThemedStyledProps<StyledArrowProps, DefaultTheme>) => {\n if (props.brandPresetUsed) {\n if (props.outline && props.onColored) return PRESET.outline.onColored\n if (props.outline && !props.onColored) return PRESET.outline.default\n if (!props.outline && props.onColored) return PRESET.filled.onColored\n\n return PRESET.filled.default\n }\n\n if (props.inverse) return PRESET_DEFAULT.inverse\n if (props.outline) return PRESET_DEFAULT.outline\n\n return PRESET_DEFAULT.filled\n}\n\nexport const Root = styled.button\n .withConfig({\n shouldForwardProp: (prop) => {\n return !TRANSIENT_PROPS.includes(<ArrowTransientProp>prop)\n },\n })\n .attrs(injectDefaultTheme)<StyledArrowProps>`\n ${baseStyles}\n ${extractStyles}\n ${(props) => extractSize(props, 'height')}\n ${(props) => extractSize(props, 'width')}\n ${(props) => `border-radius: ${props.borderRadius};`}\n`\n"],"names":["SIZES","l","m","xs","DEFAULT_SIZES","pseudoBaseStyles","defaultDisabledStyles","PRESET","filled","default","css","_ref","theme","disabled","concat","colors","onColored","_ref2","outline","_ref3","_ref4","PRESET_DEFAULT","_ref5","white","accent","_ref6","alto","inverse","_ref7","extractSize","props","cssProperty","config","brandPresetUsed","includes","size","responsiveProperty","Root","styled","button","withConfig","shouldForwardProp","prop","TRANSIENT_PROPS","attrs","injectDefaultTheme","componentId","borderRadius"],"mappings":"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"}
1
+ {"version":3,"file":"style.js","sources":["../../../../src/components/Arrow/style.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport type { DefaultTheme, ThemedStyledProps } from 'styled-components'\nimport { responsiveProperty } from 'mixins/responsive-property'\nimport { TRANSIENT_PROPS } from './constants'\nimport type { StyledArrowProps, ArrowStaticSize, ArrowTransientProp } from './types'\n\nconst SIZES: Record<ArrowStaticSize, number> = { l: 48, m: 44, xs: 40 }\n\nconst DEFAULT_SIZES: Record<ArrowStaticSize, number> = { l: 40, m: 28, xs: 20 }\n\nconst baseStyles = `\n &,\n & > span {\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n position: relative;\n flex-shrink: 0;\n padding: 0;\n border: 0;\n line-height: 1;\n cursor: pointer;\n overflow: hidden;\n transition-property: background-color, box-shadow;\n &::before, \n &::after {\n transition-property: opacity;\n }\n &,\n &::before,\n &::after {\n transition-duration: 200ms;\n }\n`\n\nconst pseudoBaseStyles = `\n content: '';\n position: absolute;\n inset: 0;\n border-radius: inherit;\n`\n\nconst defaultDisabledStyles = `\n cursor: not-allowed;\n -webkit-filter: grayscale(100%);\n -moz-filter: grayscale(100%);\n -ms-filter: grayscale(100%);\n -o-filter: grayscale(100%);\n filter: grayscale(100%);\n`\n\nconst PRESET = {\n filled: {\n default: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: ${disabled ? theme.colors['bg-disabled-large'] : theme.colors['bg-onmain-tertiary']};\n color: ${disabled ? theme.colors['content-disabled'] : theme.colors['content-onmain-primary']};\n &::before {\n ${pseudoBaseStyles}\n opacity: 0;\n background-color: ${theme.colors['bg-oncolor-hover']};\n \n }\n &::after {\n ${pseudoBaseStyles}\n opacity: 0;\n box-shadow: inset 0 4px ${theme.colors['bg-oncolor-hover']};\n }\n ${\n disabled\n ? 'cursor: default;'\n : `\n &:hover::before {\n opacity: 1;\n }\n &:active::before {\n opacity: 0;\n }\n &:active::after {\n opacity: 1;\n }\n &:active {\n background-color: ${theme.colors['bg-brand-primary-basic-active']};\n color: ${theme.colors['content-oncolor-primary']};\n }\n `\n }\n `}\n `,\n onColored: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: ${theme.colors['bg-oncolor-primary']};\n color: ${disabled ? theme.colors['content-disabled'] : theme.colors['content-oncolor-constant']};\n &::before {\n ${pseudoBaseStyles}\n opacity: 0;\n background-color: ${theme.colors['bg-oncolor-hover']};\n }\n &::after {\n ${pseudoBaseStyles}\n opacity: 0;\n box-shadow: inset 0 4px ${theme.colors['bg-oncolor-hover']};\n }\n ${\n disabled\n ? 'cursor: default;'\n : `\n &:hover::before {\n opacity: 1;\n }\n &:active::after {\n opacity: 1;\n }\n `\n }\n `}\n `,\n },\n outline: {\n default: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: transparent; \n color: ${disabled ? theme.colors['border-disabled'] : theme.colors['content-onmain-primary']};\n &::before {\n ${pseudoBaseStyles}\n opacity: 1;\n box-shadow: inset 0 0 0 1px ${\n disabled ? theme.colors['border-disabled'] : theme.colors['border-onmain-contrast']\n };\n }\n &::after {\n ${pseudoBaseStyles}\n opacity: 0;\n box-shadow: inset 0 4px ${theme.colors['bg-oncolor-hover']};\n }\n ${\n disabled\n ? 'cursor: default;'\n : `\n &:hover::before {\n opacity: 0;\n }\n &:hover {\n background-color: ${theme.colors['bg-onmain-tertiary']};\n }\n &:active::after {\n opacity: 1;\n }\n &:active {\n background-color: ${theme.colors['bg-brand-primary-basic-active']};\n color: ${theme.colors['content-oncolor-primary']};\n }\n `\n }\n `}\n `,\n onColored: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: transparent; \n color: ${disabled ? theme.colors['border-oncolor-disabled'] : theme.colors['content-oncolor-primary']};\n &::before {\n ${pseudoBaseStyles}\n opacity: 1;\n box-shadow: inset 0 0 0 1px ${\n disabled ? theme.colors['border-oncolor-disabled'] : theme.colors['border-oncolor-default']\n };\n }\n &::after {\n ${pseudoBaseStyles}\n opacity: 0;\n box-shadow: inset 0 4px ${theme.colors['bg-oncolor-hover']};\n }\n ${\n disabled\n ? 'cursor: default;'\n : `\n &:hover::before {\n opacity: 0;\n }\n &:hover {\n background-color: ${theme.colors['bg-oncolor-primary']};\n color: ${theme.colors['content-oncolor-constant']};\n }\n &:active::after {\n opacity: 1;\n }\n `\n }\n `}\n `,\n },\n}\n\nconst PRESET_DEFAULT = {\n filled: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: ${theme.colors.white};\n box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);\n & svg {\n fill: ${theme.colors.accent};\n }\n &:hover {\n background-color: ${theme.colors.accent};\n box-shadow: none;\n svg {\n fill: ${theme.colors.white};\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 rgba(5, 108, 188, 0.5);\n }\n ${disabled ? defaultDisabledStyles : ''}\n `}\n `,\n outline: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: transparent;\n box-shadow: inset 0 0 0 2px ${theme.colors.alto};\n & svg {\n fill: ${theme.colors.alto};\n }\n &:hover {\n background-color: ${theme.colors.accent};\n box-shadow: none;\n svg {\n fill: ${theme.colors.white};\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 rgba(5, 108, 188, 0.5);\n }\n ${disabled ? defaultDisabledStyles : ''}\n `}\n `,\n inverse: css<StyledArrowProps>`\n ${({ theme, disabled }) => `\n background-color: transparent;\n box-shadow: inset 0 0 0 2px ${theme.colors.white};\n & svg {\n fill: ${theme.colors.white};\n }\n &:hover {\n background-color: ${theme.colors.white};\n box-shadow: none;\n svg {\n fill: ${theme.colors.accent};\n }\n }\n &:active {\n box-shadow: inset 0 4px 0 #eaecf3;\n }\n ${disabled ? defaultDisabledStyles : ''}\n `}\n `,\n}\n\nconst extractSize = (props: ThemedStyledProps<StyledArrowProps, DefaultTheme>, cssProperty: 'height' | 'width') => {\n const config = props.brandPresetUsed ? SIZES : DEFAULT_SIZES\n\n return ['l', 'm', 'xs'].includes(<ArrowStaticSize>props.size)\n ? `${cssProperty}: ${config[<ArrowStaticSize>props.size]}px;`\n : responsiveProperty('size', cssProperty)\n}\n\nconst extractStyles = (props: ThemedStyledProps<StyledArrowProps, DefaultTheme>) => {\n if (props.brandPresetUsed) {\n if (props.outline && props.onColored) return PRESET.outline.onColored\n if (props.outline && !props.onColored) return PRESET.outline.default\n if (!props.outline && props.onColored) return PRESET.filled.onColored\n\n return PRESET.filled.default\n }\n\n if (props.inverse) return PRESET_DEFAULT.inverse\n if (props.outline) return PRESET_DEFAULT.outline\n\n return PRESET_DEFAULT.filled\n}\n\nexport const Root = styled.button.withConfig<StyledArrowProps>({\n shouldForwardProp: (prop) => {\n return !TRANSIENT_PROPS.includes(<ArrowTransientProp>prop)\n },\n})`\n ${baseStyles}\n ${extractStyles}\n ${(props) => extractSize(props, 'height')}\n ${(props) => extractSize(props, 'width')}\n ${(props) => `border-radius: ${props.borderRadius};`}\n`\n"],"names":["SIZES","l","m","xs","DEFAULT_SIZES","pseudoBaseStyles","defaultDisabledStyles","PRESET","filled","default","css","_ref","theme","disabled","concat","colors","onColored","_ref2","outline","_ref3","_ref4","PRESET_DEFAULT","_ref5","white","accent","_ref6","alto","inverse","_ref7","extractSize","props","cssProperty","config","brandPresetUsed","includes","size","responsiveProperty","Root","styled","button","withConfig","shouldForwardProp","prop","TRANSIENT_PROPS","componentId","borderRadius"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../../src/components/ArrowBadge/constants.ts"],"sourcesContent":["import type { Sizes } from 'shared/interfaces'\n\nexport const SIZES: Sizes = {\n xxxl: {\n height: 64,\n fontSize: 36,\n },\n xxl: {\n height: 60,\n fontSize: 34,\n },\n xl: {\n height: 54,\n fontSize: 32,\n },\n l: {\n height: 48,\n fontSize: 28,\n },\n m: {\n height: 40,\n fontSize: 22,\n },\n s: {\n height: 32,\n fontSize: 16,\n },\n xs: {\n height: 24,\n fontSize: 14,\n },\n xxs: {\n height: 20,\n fontSize: 10,\n },\n xxxs: {\n height: 16,\n fontSize: 10,\n },\n}\n"],"names":["SIZES","xxxl","height","fontSize","xxl","xl","l","m","s","xs","xxs","xxxs"],"mappings":"AAEO,IAAMA,EAAe,CAC1BC,KAAM,CACJC,OAAQ,GACRC,SAAU,IAEZC,IAAK,CACHF,OAAQ,GACRC,SAAU,IAEZE,GAAI,CACFH,OAAQ,GACRC,SAAU,IAEZG,EAAG,CACDJ,OAAQ,GACRC,SAAU,IAEZI,EAAG,CACDL,OAAQ,GACRC,SAAU,IAEZK,EAAG,CACDN,OAAQ,GACRC,SAAU,IAEZM,GAAI,CACFP,OAAQ,GACRC,SAAU,IAEZO,IAAK,CACHR,OAAQ,GACRC,SAAU,IAEZQ,KAAM,CACJT,OAAQ,GACRC,SAAU"}
1
+ {"version":3,"file":"constants.js","sources":["../../../../src/components/ArrowBadge/constants.ts"],"sourcesContent":["import type { Sizes } from 'shared/types'\n\nexport const SIZES: Sizes = {\n xxxl: {\n height: 64,\n fontSize: 36,\n },\n xxl: {\n height: 60,\n fontSize: 34,\n },\n xl: {\n height: 54,\n fontSize: 32,\n },\n l: {\n height: 48,\n fontSize: 28,\n },\n m: {\n height: 40,\n fontSize: 22,\n },\n s: {\n height: 32,\n fontSize: 16,\n },\n xs: {\n height: 24,\n fontSize: 14,\n },\n xxs: {\n height: 20,\n fontSize: 10,\n },\n xxxs: {\n height: 16,\n fontSize: 10,\n },\n}\n"],"names":["SIZES","xxxl","height","fontSize","xxl","xl","l","m","s","xs","xxs","xxxs"],"mappings":"AAEO,IAAMA,EAAe,CAC1BC,KAAM,CACJC,OAAQ,GACRC,SAAU,IAEZC,IAAK,CACHF,OAAQ,GACRC,SAAU,IAEZE,GAAI,CACFH,OAAQ,GACRC,SAAU,IAEZG,EAAG,CACDJ,OAAQ,GACRC,SAAU,IAEZI,EAAG,CACDL,OAAQ,GACRC,SAAU,IAEZK,EAAG,CACDN,OAAQ,GACRC,SAAU,IAEZM,GAAI,CACFP,OAAQ,GACRC,SAAU,IAEZO,IAAK,CACHR,OAAQ,GACRC,SAAU,IAEZQ,KAAM,CACJT,OAAQ,GACRC,SAAU"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../../src/components/Badge/constants.ts"],"sourcesContent":["import type { Sizes } from 'shared/interfaces'\n\nexport const SIZES: Sizes = {\n xxxl: {\n height: 34,\n fontSize: 22,\n paddingRight: 10,\n paddingLeft: 10,\n },\n xxl: {\n height: 32,\n fontSize: 20,\n paddingRight: 10,\n paddingLeft: 10,\n },\n xl: {\n height: 30,\n fontSize: 18,\n paddingRight: 10,\n paddingLeft: 10,\n },\n l: {\n height: 28,\n fontSize: 16,\n paddingRight: 8,\n paddingLeft: 8,\n },\n m: {\n height: 26,\n fontSize: 14,\n paddingRight: 8,\n paddingLeft: 8,\n },\n s: {\n height: 24,\n fontSize: 12,\n paddingRight: 8,\n paddingLeft: 8,\n },\n xs: {\n height: 22,\n fontSize: 10,\n paddingRight: 6,\n paddingLeft: 6,\n },\n xxs: {\n height: 20,\n fontSize: 10,\n paddingRight: 6,\n paddingLeft: 6,\n },\n xxxs: {\n height: 18,\n fontSize: 10,\n paddingRight: 6,\n paddingLeft: 6,\n },\n}\n\nexport const SIZES_ROUND: Sizes = {\n xxxl: {\n height: 34,\n width: 34,\n fontSize: 22,\n },\n xxl: {\n height: 32,\n width: 32,\n fontSize: 20,\n },\n xl: {\n height: 30,\n width: 30,\n fontSize: 18,\n },\n l: {\n height: 28,\n width: 28,\n fontSize: 16,\n },\n m: {\n height: 26,\n width: 26,\n fontSize: 14,\n },\n s: {\n height: 24,\n width: 24,\n fontSize: 12,\n },\n xs: {\n height: 22,\n width: 22,\n fontSize: 10,\n },\n xxs: {\n height: 20,\n width: 20,\n fontSize: 10,\n },\n xxxs: {\n height: 18,\n width: 18,\n fontSize: 10,\n },\n}\n"],"names":["SIZES","xxxl","height","fontSize","paddingRight","paddingLeft","xxl","xl","l","m","s","xs","xxs","xxxs","SIZES_ROUND","width"],"mappings":"AAEO,IAAMA,EAAe,CAC1BC,KAAM,CACJC,OAAQ,GACRC,SAAU,GACVC,aAAc,GACdC,YAAa,IAEfC,IAAK,CACHJ,OAAQ,GACRC,SAAU,GACVC,aAAc,GACdC,YAAa,IAEfE,GAAI,CACFL,OAAQ,GACRC,SAAU,GACVC,aAAc,GACdC,YAAa,IAEfG,EAAG,CACDN,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,GAEfI,EAAG,CACDP,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,GAEfK,EAAG,CACDR,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,GAEfM,GAAI,CACFT,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,GAEfO,IAAK,CACHV,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,GAEfQ,KAAM,CACJX,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,IAIV,IAAMS,EAAqB,CAChCb,KAAM,CACJC,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZG,IAAK,CACHJ,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZI,GAAI,CACFL,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZK,EAAG,CACDN,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZM,EAAG,CACDP,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZO,EAAG,CACDR,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZQ,GAAI,CACFT,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZS,IAAK,CACHV,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZU,KAAM,CACJX,OAAQ,GACRa,MAAO,GACPZ,SAAU"}
1
+ {"version":3,"file":"constants.js","sources":["../../../../src/components/Badge/constants.ts"],"sourcesContent":["import type { Sizes } from 'shared/types'\n\nexport const SIZES: Sizes = {\n xxxl: {\n height: 34,\n fontSize: 22,\n paddingRight: 10,\n paddingLeft: 10,\n },\n xxl: {\n height: 32,\n fontSize: 20,\n paddingRight: 10,\n paddingLeft: 10,\n },\n xl: {\n height: 30,\n fontSize: 18,\n paddingRight: 10,\n paddingLeft: 10,\n },\n l: {\n height: 28,\n fontSize: 16,\n paddingRight: 8,\n paddingLeft: 8,\n },\n m: {\n height: 26,\n fontSize: 14,\n paddingRight: 8,\n paddingLeft: 8,\n },\n s: {\n height: 24,\n fontSize: 12,\n paddingRight: 8,\n paddingLeft: 8,\n },\n xs: {\n height: 22,\n fontSize: 10,\n paddingRight: 6,\n paddingLeft: 6,\n },\n xxs: {\n height: 20,\n fontSize: 10,\n paddingRight: 6,\n paddingLeft: 6,\n },\n xxxs: {\n height: 18,\n fontSize: 10,\n paddingRight: 6,\n paddingLeft: 6,\n },\n}\n\nexport const SIZES_ROUND: Sizes = {\n xxxl: {\n height: 34,\n width: 34,\n fontSize: 22,\n },\n xxl: {\n height: 32,\n width: 32,\n fontSize: 20,\n },\n xl: {\n height: 30,\n width: 30,\n fontSize: 18,\n },\n l: {\n height: 28,\n width: 28,\n fontSize: 16,\n },\n m: {\n height: 26,\n width: 26,\n fontSize: 14,\n },\n s: {\n height: 24,\n width: 24,\n fontSize: 12,\n },\n xs: {\n height: 22,\n width: 22,\n fontSize: 10,\n },\n xxs: {\n height: 20,\n width: 20,\n fontSize: 10,\n },\n xxxs: {\n height: 18,\n width: 18,\n fontSize: 10,\n },\n}\n"],"names":["SIZES","xxxl","height","fontSize","paddingRight","paddingLeft","xxl","xl","l","m","s","xs","xxs","xxxs","SIZES_ROUND","width"],"mappings":"AAEO,IAAMA,EAAe,CAC1BC,KAAM,CACJC,OAAQ,GACRC,SAAU,GACVC,aAAc,GACdC,YAAa,IAEfC,IAAK,CACHJ,OAAQ,GACRC,SAAU,GACVC,aAAc,GACdC,YAAa,IAEfE,GAAI,CACFL,OAAQ,GACRC,SAAU,GACVC,aAAc,GACdC,YAAa,IAEfG,EAAG,CACDN,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,GAEfI,EAAG,CACDP,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,GAEfK,EAAG,CACDR,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,GAEfM,GAAI,CACFT,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,GAEfO,IAAK,CACHV,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,GAEfQ,KAAM,CACJX,OAAQ,GACRC,SAAU,GACVC,aAAc,EACdC,YAAa,IAIV,IAAMS,EAAqB,CAChCb,KAAM,CACJC,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZG,IAAK,CACHJ,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZI,GAAI,CACFL,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZK,EAAG,CACDN,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZM,EAAG,CACDP,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZO,EAAG,CACDR,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZQ,GAAI,CACFT,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZS,IAAK,CACHV,OAAQ,GACRa,MAAO,GACPZ,SAAU,IAEZU,KAAM,CACJX,OAAQ,GACRa,MAAO,GACPZ,SAAU"}