@snowball-tech/fractal
Version:
Fractal's (Snowball's design system) React component library based on RadixUI and PandaCSS
3 lines • 9.16 kB
JavaScript
'use client';
import{b as g}from"./chunk-CMFNILWJ.js";import{b as f}from"./chunk-KHPUS472.js";import{a as d,c as s,d as m,e as r}from"./chunk-CW7YCI7I.js";import{ColorDecorativePurple50 as c,ColorTextDark as H,FontWeightMedian as b,TypographyBody1BoldFontFamily as B,TypographyBody1BoldFontSize as L,TypographyBody1BoldFontWeight as S,TypographyBody1BoldLineHeight as W,TypographyBody1FontFamily as z,TypographyBody1FontSize as D,TypographyBody1FontWeight as M,TypographyBody1LineHeight as w,TypographyBody1LinkFontFamily as C,TypographyBody1LinkFontSize as E,TypographyBody1LinkFontWeight as $,TypographyBody1LinkLineHeight as u,TypographyBody1LinkTextDecoration as N,TypographyBody1MedianFontFamily as P,TypographyBody1MedianFontSize as X,TypographyBody1MedianFontWeight as A,TypographyBody1MedianLineHeight as R,TypographyBody2BoldFontFamily as _,TypographyBody2BoldFontSize as I,TypographyBody2BoldFontWeight as V,TypographyBody2BoldLineHeight as O,TypographyBody2FontFamily as U,TypographyBody2FontSize as G,TypographyBody2FontWeight as j,TypographyBody2LineHeight as q,TypographyBody2LinkFontFamily as J,TypographyBody2LinkFontSize as K,TypographyBody2LinkFontWeight as Q,TypographyBody2LinkLineHeight as Y,TypographyBody2LinkTextDecoration as Z,TypographyBody2MedianFontFamily as v,TypographyBody2MedianFontSize as ii,TypographyBody2MedianFontWeight as ei,TypographyBody2MedianLineHeight as ai,TypographyCaptionBoldFontFamily as oi,TypographyCaptionBoldFontSize as ni,TypographyCaptionBoldFontWeight as ti,TypographyCaptionBoldLineHeight as yi,TypographyCaptionLinkFontFamily as pi,TypographyCaptionLinkFontSize as gi,TypographyCaptionLinkFontWeight as di,TypographyCaptionLinkLineHeight as hi,TypographyCaptionLinkTextDecoration as ri,TypographyCaptionMedianFontFamily as li,TypographyCaptionMedianFontSize as fi,TypographyCaptionMedianFontWeight as si,TypographyCaptionMedianLineHeight as mi,TypographyDisplay1FontFamily as Fi,TypographyDisplay1FontSizeMd as Ti,TypographyDisplay1FontSizeXxs as xi,TypographyDisplay1FontWeight as ki,TypographyDisplay1LineHeightMd as ci,TypographyDisplay1LineHeightXxs as Hi,TypographyDisplay2FontFamily as bi,TypographyDisplay2FontSizeMd as Bi,TypographyDisplay2FontSizeXxs as Li,TypographyDisplay2FontWeight as Si,TypographyDisplay2LineHeightMd as Wi,TypographyDisplay2LineHeightXxs as zi,TypographyDisplayWideFontFamily as Di,TypographyDisplayWideFontSizeMd as Mi,TypographyDisplayWideFontSizeXxs as wi,TypographyDisplayWideFontWeight as Ci,TypographyDisplayWideLineHeightMd as Ei,TypographyDisplayWideLineHeightXxs as $i,TypographyHeading1FontFamily as ui,TypographyHeading1FontSizeMd as Ni,TypographyHeading1FontSizeXxs as Pi,TypographyHeading1FontWeight as Xi,TypographyHeading1LineHeightMd as Ai,TypographyHeading1LineHeightXxs as Ri,TypographyHeading2FontFamily as _i,TypographyHeading2FontSizeMd as Ii,TypographyHeading2FontSizeXxs as Vi,TypographyHeading2FontWeight as Oi,TypographyHeading2LineHeight as Ui,TypographyHeading3FontFamily as Gi,TypographyHeading3FontSize as ji,TypographyHeading3FontWeight as qi,TypographyHeading3LineHeight as Ji,TypographyHeading3LinkFontFamily as Ki,TypographyHeading3LinkFontSize as Qi,TypographyHeading3LinkFontWeight as Yi,TypographyHeading3LinkLineHeight as Zi,TypographyHeading4FontFamily as vi,TypographyHeading4FontSize as ie,TypographyHeading4FontWeight as ee,TypographyHeading4LineHeight as ae,TypographyHeading4LinkFontFamily as oe,TypographyHeading4LinkFontSize as ne,TypographyHeading4LinkFontWeight as te,TypographyHeading4LinkLineHeight as ye}from"@snowball-tech/design-tokens/dist/web/typescript/design-tokens";import{createElement as pe,forwardRef as ge}from"react";import l from"lodash/fp/isEmpty";import de from"lodash/fp/omit";var he=new Set(["code","kbd","pre","samp"]),F=ge(({children:T,element:h,emailVariant:x,inlineStyle:y=!1,variant:p=s,xs:o=!1,...n},k)=>{let e=y&&x!==!1,a="";switch(p){case"body-1-bold":{a="tracking-normal text-body-1 font-body-1 font-weight-body-1-bold leading-body-1";break}case"body-1-link":{a="tracking-normal text-body-1 font-body-1 font-weight-body-1-link leading-body-1 underline";break}case"body-1-median":{a="tracking-normal text-body-1 font-body-1 font-weight-body-1-median leading-body-1";break}case"body-2":{a="tracking-normal text-body-2 font-body-2 font-weight-body-2 leading-body-2";break}case"body-2-bold":{a="tracking-normal text-body-2 font-body-2 font-weight-body-2-bold leading-body-2";break}case"body-2-link":{a="tracking-normal text-body-2 font-body-2 font-weight-body-2-link leading-body-2 underline";break}case"body-2-median":{a="tracking-normal text-body-2 font-body-2 font-weight-body-2-median leading-body-2";break}case"caption-bold":{a="tracking-normal text-caption font-caption font-weight-caption-bold leading-caption";break}case"caption-link":{a="tracking-normal text-caption font-caption font-weight-caption-link leading-caption underline";break}case"caption-median":{a="tracking-normal text-caption font-caption font-weight-caption-median leading-caption";break}case"display-1":{a=`tracking-normal xxs:text-display-1-xxs${o?"":" md:text-display-1-md md:leading-display-1-md"} font-display-1 font-weight-display-1 xxs:leading-display-1-xxs`;break}case"display-2":{a=`tracking-normal xxs:text-display-2-xxs${o?"":" md:text-display-2-md md:leading-display-2-md"} font-display-2 font-weight-display-2 xxs:leading-display-2-xxs`;break}case"display-wide":{a=`tracking-normal xxs:text-display-wide-xxs${o?"":" md:text-display-wide-md md:leading-display-wide-md"} font-display-wide font-weight-display-wide xxs:leading-display-wide-xxs`;break}case"heading-1":{a=`tracking-normal xxs:text-heading-1-xxs${o?"":" md:text-heading-1-md md:leading-heading-1-md"} font-heading-1 font-weight-heading-1 xxs:leading-heading-1-xxs`;break}case"heading-2":{a=`tracking-normal xxs:text-heading-2-xxs${o?"":" md:text-heading-2-md md:leading-heading-2-md"} font-heading-2 font-weight-heading-2 leading-heading-2`;break}case"heading-3":{a="tracking-normal text-heading-3 font-heading-3 font-weight-heading-3 leading-heading-3";break}case"heading-3-link":{a="tracking-normal text-heading-3 font-heading-3 font-weight-heading-3 leading-heading-3 underline";break}case"heading-4":{a="tracking-normal text-heading-4 font-heading-4 font-weight-heading-4 leading-heading-4";break}case"heading-4-link":{a="tracking-normal text-heading-4 font-heading-4 font-weight-heading-4 leading-heading-4 underline";break}default:{a="tracking-normal text-body-1 font-body-1 font-weight-body-1 leading-body-1";break}}let i={letterSpacing:0};if(y)switch(p){case"body-1-bold":{i.fontFamily=B,i.fontSize=e?"18px":L,i.lineHeight=e?"27px":W,i.fontWeight=S;break}case"body-1-link":{i.fontFamily=C,i.fontSize=e?"18px":E,i.lineHeight=e?"27px":u,i.fontWeight=$,i.textDecoration=N;break}case"body-1-median":{i.fontFamily=P,i.fontSize=e?"18px":X,i.lineHeight=e?"27px":R,i.fontWeight=A;break}case"body-2":{i.fontFamily=U,i.fontSize=e?"16px":G,i.lineHeight=e?"24px":q,i.fontWeight=j;break}case"body-2-bold":{i.fontFamily=_,i.fontSize=e?"16px":I,i.lineHeight=e?"24px":O,i.fontWeight=V;break}case"body-2-link":{i.fontFamily=J,i.fontSize=e?"16px":K,i.lineHeight=e?"24px":Y,i.fontWeight=Q,i.textDecoration=Z;break}case"body-2-median":{i.fontFamily=v,i.fontSize=e?"16px":ii,i.lineHeight=e?"24px":ai,i.fontWeight=ei;break}case"caption-bold":{i.fontFamily=oi,i.fontSize=e?"14px":ni,i.lineHeight=e?"20px":yi,i.fontWeight=ti;break}case"caption-link":{i.fontFamily=pi,i.fontSize=e?"14px":gi,i.lineHeight=e?"20px":hi,i.fontWeight=di,i.textDecoration=ri;break}case"caption-median":{i.fontFamily=li,i.fontSize=e?"14px":fi,i.lineHeight=e?"20px":mi,i.fontWeight=si;break}case"display-1":{i.fontFamily=Fi,i.fontSize=o?xi:Ti,i.lineHeight=o?Hi:ci,i.fontWeight=ki;break}case"display-2":{i.fontFamily=bi,i.fontSize=o?Li:Bi,i.lineHeight=o?zi:Wi,i.fontWeight=Si;break}case"display-wide":{i.fontFamily=Di,i.fontSize=o?wi:Mi,i.lineHeight=o?$i:Ei,i.fontWeight=Ci;break}case"heading-1":{i.fontFamily=ui,i.fontSize=e?"32px":o?Pi:Ni,i.lineHeight=e?"40px":o?Ri:Ai,i.fontWeight=Xi;break}case"heading-2":{i.fontFamily=_i,i.fontSize=e?"24px":o?Vi:Ii,i.lineHeight=e?"32px":Ui,i.fontWeight=Oi;break}case"heading-3":{i.fontFamily=Gi,i.fontSize=e?"22px":ji,i.lineHeight=e?"24px":Ji,i.fontWeight=qi;break}case"heading-3-link":{i.fontFamily=Ki,i.fontSize=e?"22px":Qi,i.lineHeight=e?"24px":Zi,i.fontWeight=Yi;break}case"heading-4":{i.fontFamily=vi,i.fontSize=e?"20px":ie,i.lineHeight=e?"22px":ae,i.fontWeight=ee;break}case"heading-4-link":{i.fontFamily=oe,i.fontSize=e?"20px":ne,i.lineHeight=e?"22px":ye,i.fontWeight=te;break}default:{i.fontFamily=z,i.fontSize=e?"18px":D,i.lineHeight=e?"27px":w,i.fontWeight=M;break}}let t=h||m[p]||r;return!l(n.href)&&l(h)&&(t="a"),h==="a"&&l(n.href)&&(t=r),pe(t,{className:f(`${g}-${d}`,`${g}-${d}__${t}`,`${g}-${d}--${p}`,!y&&a,!y&&n.className),style:y?{boxSizing:"border-box",color:H,margin:0,...i,fontFamily:he.has(t)?"monospace, monospace":i.fontFamily,...t==="code"?{color:c,fontWeight:b}:{},...n.style}:n.style,...de(["className","style"],n),ref:k},T)});F.displayName="Typography";var ke=F;export{F as a,ke as b};
//# sourceMappingURL=chunk-UC7BXZ7T.js.map