@yahoo/uds 3.11.1 → 3.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cli/bin/uds-darwin-arm64-baseline +0 -0
- package/cli/bin/uds-linux-arm64 +0 -0
- package/cli/bin/uds-linux-x64-baseline +0 -0
- package/dist/Input-3VlNho5u.d.ts +42 -0
- package/dist/Input-DyendGfP.d.cts +42 -0
- package/dist/Pressable-Cg5k06jR.d.ts +44 -0
- package/dist/Pressable-DwRN0F9I.d.cts +44 -0
- package/dist/VStack-CKzXuoDu.d.cts +112 -0
- package/dist/VStack-DTzXc5Gu.d.ts +112 -0
- package/dist/{chunk-R5VO4HNN.js → chunk-3AGA62FV.js} +2 -2
- package/dist/{chunk-3OMTBWQH.cjs → chunk-4MMZH6H4.cjs} +1 -1
- package/dist/chunk-7CV7WF6H.cjs +2 -0
- package/dist/chunk-BJCZ62IT.js +1 -0
- package/dist/chunk-FIK5E5XF.cjs +1 -0
- package/dist/chunk-FIY4G5A4.cjs +1 -0
- package/dist/chunk-IVLA3HPE.js +1 -0
- package/dist/chunk-KS3DH3LU.js +2 -0
- package/dist/chunk-L2LMAKRB.js +2 -0
- package/dist/chunk-OJT5LTIJ.cjs +2 -0
- package/dist/chunk-PUOU55IC.cjs +2 -0
- package/dist/chunk-RYT7E6ME.js +3 -0
- package/dist/chunk-SYYG6CQE.js +2 -0
- package/dist/chunk-UONN6ZKS.cjs +1 -0
- package/dist/chunk-WNGG5RTE.cjs +3 -0
- package/dist/chunk-XGNMO7EU.js +3 -0
- package/dist/client/Menu.cjs +1 -1
- package/dist/client/Menu.js +2 -2
- package/dist/client/index.cjs +1 -1
- package/dist/client/index.js +1 -1
- package/dist/index-6XSLBu2d.d.cts +243 -0
- package/dist/index-BVQM-l4R.d.ts +243 -0
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/metafile-cjs.json +1 -1
- package/dist/metafile-esm.json +1 -1
- package/dist/tailwind/plugin.cjs +1 -1
- package/dist/tailwind/plugin.d.cts +3 -3
- package/dist/tailwind/plugin.d.ts +3 -3
- package/dist/tailwind/plugin.js +2 -2
- package/dist/tailwind/utils.cjs +1 -1
- package/dist/tailwind/utils.js +1 -1
- package/dist/tokens/automation/configs.cjs +1 -1
- package/dist/tokens/automation/configs.js +1 -1
- package/dist/tokens/automation/properties.cjs +1 -1
- package/dist/tokens/automation/properties.js +1 -1
- package/dist/tokens/index.cjs +1 -1
- package/dist/tokens/index.d.cts +3395 -3395
- package/dist/tokens/index.d.ts +3395 -3395
- package/dist/tokens/index.js +1 -1
- package/dist/types-DHi8fUQQ.d.cts +10450 -0
- package/dist/types-DHi8fUQQ.d.ts +10450 -0
- package/package.json +2 -1
- package/cli/FlattenButtonVariant.mock.tsx +0 -17
- package/dist/chunk-37HUQ2LJ.js +0 -2
- package/dist/chunk-SQ6WOQUJ.cjs +0 -2
package/dist/client/index.cjs
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
"use client";
|
2
|
-
"use strict";var e=require("../chunk-ZPZAKENT.cjs"),t=require("../chunk-3OMTBWQH.cjs"),a=require("../chunk-3N4JOIUF.cjs"),n=require("../chunk-SQ6WOQUJ.cjs"),i=require("../chunk-OU46NWOC.cjs"),o=require("react"),s=require("react/jsx-runtime"),r=require("@yahoo/uds/fixtures"),l=require("motion/react"),c=require("lodash-es"),d=require("@yahoo/uds/client/Menu"),u={first:e=>e[0]||"",last:e=>e[e.length-1]||"",firstAndLast:e=>1===e.length?e[0]:`${e[0]}${e[e.length-1]}`,firstTwo:e=>e.slice(0,2).join(""),firstThree:e=>e.slice(0,3).join(""),firstOfEach:e=>e.join("")},p=(e,t="firstAndLast")=>{if(!e)return"";const a=e.trim().split(/\s+/).map((e=>e[0].toUpperCase()));return"function"==typeof t?t(e):u[t](a)},h=(e="md")=>a.getStyles({avatarSizeRoot:e,flexShrink:"0",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",overflow:"visible",className:"truncate"}),m=e=>e?{height:e,width:e}:{},x="primary",f="md",g={primary:t.e2,secondary:t.t},b=({size:e=f,variant:t=x,customSize:n,icon:i,className:r})=>{const l=o.useMemo((()=>m(n)),[n]),c=o.useMemo((()=>a.cx(h(e),a.getStyles({avatarIconVariantRoot:t,overflow:"hidden"}),r)),[r,e,t]),d=o.useMemo((()=>a.getStyles({width:"full",height:"full",flexShrink:"0",overflow:"hidden",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center"})),[]),u=o.useMemo((()=>({...l,boxSizing:"content-box"})),[l]),p=o.useMemo((()=>i??g[t??"primary"]),[i,t]),b=o.useMemo((()=>a.getStyles({avatarSizeIcon:e})),[e]);return s.jsx(a.Box,{className:c,style:l,children:s.jsx(a.Box,{className:d,style:u,children:s.jsx(a.Icon,{name:p,variant:"fill",color:"current",className:b,"data-testid":"avatar-icon"})})})};/*! © 2025 Yahoo, Inc. UDS v0.0.0-development */b.displayName="AvatarIcon";var y=({size:e=f,variant:t=x,name:n,initials:i,customSize:r,abbreviationStrategy:l,className:c})=>{const d=o.useMemo((()=>a.cx(h(e),a.getStyles({avatarTextVariantRoot:t,overflow:"hidden"}),"truncate",c)),[c,e,t]),u=o.useMemo((()=>a.getStyles({width:"full",height:"full",flexShrink:"0",overflow:"hidden",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",className:"truncate"})),[]),g=o.useMemo((()=>m(r)),[r]),b=o.useMemo((()=>({...g,boxSizing:"content-box"})),[g]);return s.jsx(a.Box,{className:d,style:g,children:s.jsx(a.Text,{color:"inherit",variant:"inherit",className:u,style:b,"data-testid":"avatar-text",children:i||p(n,l)})})};y.displayName="AvatarText";var v=({size:t=f,variant:n=x,src:i,srcSet:r,customSize:l,alt:c,imageProps:d,abbreviationStrategy:u,fallback:p,className:g})=>{const[v,S]=o.useState("loading");o.useEffect((()=>{let e=!0;if(i||r){const t=new Image;t.onload=()=>{e&&S("loaded")},t.onerror=()=>{e&&S("error")},i&&(t.src=i),r&&(t.srcset=r)}else S("error");return()=>{e=!1}}),[i,r]);const C=o.useMemo((()=>a.cx(h(t),a.getStyles({avatarImageVariantRoot:n,overflow:"hidden"}),g)),[g,t,n]),I=o.useMemo((()=>a.getStyles({width:"full",height:"full",flexShrink:"0",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",contentFit:"cover"})),[]),N=o.useMemo((()=>m(l)),[l]),j=o.useMemo((()=>({...N,boxSizing:"content-box"})),[N]);if("loaded"===v)return s.jsx(a.Box,{className:C,style:N,children:s.jsx(e.Image,{src:i,srcSet:r,alt:c,className:I,style:j,...d})});const k={size:t,customSize:l,variant:n};return p||c?s.jsx(y,{name:c,initials:p,abbreviationStrategy:u,...k}):s.jsx(b,{...k})};v.displayName="AvatarImage";var S=e=>s.jsx(v,{...e});S.displayName="Avatar";var C=o.forwardRef((function({variant:e="primary",size:t="md",minWidth:n,maxWidth:i=200,startIcon:r,endIcon:l,backgroundColor:c,color:d,iconColor:u,borderColor:p,children:h,className:m,...x},f){const g=a.getStyles({badgeSizeRoot:t,badgeVariantRoot:e,className:a.cx(["uds-badge","uds-badge-variant","uds-badge-size",m])}),b=a.getStyles({badgeVariantIcon:e,badgeSizeIcon:t,className:a.cx(["uds-badge-iconSize","uds-badge-iconColor"])}),y=o.useMemo((()=>({...n?{minWidth:`${n}px`}:{},..."full"===i?{}:{maxWidth:`${i}px`},...c?{backgroundColor:c}:{},...p?{borderColor:p}:{},...d?{color:d}:{}})),[c,p,d,i,n]),v=o.useMemo((()=>({variant:"fill",style:{...u?{color:u}:{}}})),[u]);return s.jsxs(a.HStack,{ref:f,gap:"2",display:"inline-flex",alignItems:"center",className:g,style:y,...x,children:[r&&s.jsx(a.IconSlot,{icon:r,iconProps:v,"data-testid":"start-icon",className:b}),s.jsx("span",{className:"flex-1 truncate whitespace-nowrap text-center",children:h}),l&&s.jsx(a.IconSlot,{icon:l,iconProps:v,"data-testid":"end-icon",className:b})]})}));C.displayName="Badge";var I={scale:.7,opacity:0},N={scale:[.7,.7,1],opacity:[0,0,1],transition:{times:[0,.5,1]}},j={icon:N,hide:I,loading:I},k={loading:N,hide:I,icon:I},w=`var(${i.BUTTON_CSS_VAR_MAP.columnGap})`,V=`var(${i.BUTTON_CSS_VAR_MAP.iconSize})`,M={rest:{scale:`var(${i.BUTTON_CSS_VAR_MAP.effects.scale.rest})`},hover:{scale:`var(${i.BUTTON_CSS_VAR_MAP.effects.scale.hover})`},pressed:{scale:`var(${i.BUTTON_CSS_VAR_MAP.effects.scale.pressed})`},withoutIcon:{columnGap:"0px"},withIcon:{columnGap:w}},R={hide:{width:"0px",opacity:0,display:"none"},loading:{width:V,display:"flex",opacity:1},icon:{width:V,display:"flex",opacity:1}},z=o.forwardRef((function({variant:e,size:i,startIcon:c,endIcon:d,iconVariant:u,loading:p,disableEffects:h,children:m,asChild:x,type:f="button",className:g,width:b,...y},v){const S=o.useRef(null);o.useImperativeHandle(v,(()=>S.current));const C=o.useMemo((()=>a.createSlot()),[]),I=o.useMemo((()=>l.m.create(C)),[C]),N=d?"icon":"hide",w=(({startIcon:e,endIcon:t,loading:a})=>e||t||a?"withIcon":"withoutIcon")({startIcon:c,endIcon:d,loading:p}),V=(({loading:e,startIcon:t})=>e?"loading":t?"icon":"hide")({loading:p,startIcon:c}),{palette:z,variant:T}=o.useMemo((()=>n.parseDeprecatedButtonPaletteVariant({flatVariant:e})),[e]),P=o.useMemo((()=>({button:a.getStyles({width:b,buttonSize:i,buttonVariant:T,buttonPalette:z,className:a.cx("uds-button","uds-ring","uds-hit-target",p&&"uds-button-loading",h&&"uds-button-without-effects","withIcon"===w&&"uds-button-with-gap",g)}),content:"uds-button-content truncate",iconContainer:"uds-button-icon-container flex overflow-clip",loading:"uds-button-icon start-content animate-spin",start:"uds-button-icon start-content",end:"uds-button-icon end-content"})),[b,i,T,z,g,p,h,w]),B=l.useReducedMotion()?"smooth":"subtle",A=o.useMemo((()=>s.jsx(l.m.span,{className:P.iconContainer,initial:!1,variants:R,animate:V,children:s.jsxs(l.AnimatePresence,{initial:!1,mode:"popLayout",children:[p&&s.jsx(l.m.span,{variants:k,initial:"hide",animate:"loading",exit:"hide",children:s.jsx(a.Icon,{size:r.buttonIconSvgSize,name:t.o2,variant:u,color:"current",className:P.loading})},"loading"),c&&!p&&s.jsx(l.m.span,{variants:j,initial:"hide",animate:"icon",exit:"hide",children:s.jsx(a.IconSlot,{className:P.start,icon:c,iconProps:{size:r.buttonIconSvgSize,variant:u,color:"current"}})})]})})),[P.iconContainer,P.loading,P.start,V,p,u,c]),E=o.useMemo((()=>s.jsx(l.m.span,{className:P.iconContainer,initial:!1,variants:R,animate:N,children:s.jsx(l.AnimatePresence,{initial:!1,mode:"popLayout",children:d&&s.jsx(l.m.span,{variants:j,initial:"hide",animate:"icon",exit:"hide",children:s.jsx(a.IconSlot,{className:P.end,icon:d,iconProps:{size:r.buttonIconSvgSize,variant:u,color:"current"}})})})})),[P.iconContainer,P.end,d,N,u]),O=o.useMemo((()=>h?{...M,rest:{},hover:{},pressed:{}}:M),[h]);return x&&o.isValidElement(m)?s.jsx(t.SpringMotionConfig,{layoutSpeed:"3",layoutVariant:B,children:s.jsx(I,{type:f,className:P.button,initial:["hide",w],animate:w,variants:O,whileHover:"hover",whileTap:"pressed",...y,children:o.cloneElement(m,m.props,s.jsxs(s.Fragment,{children:[A,s.jsx("span",{className:P.content,children:m.props.children}),E]}))})}):s.jsx(t.SpringMotionConfig,{layoutSpeed:"3",layoutVariant:B,children:s.jsxs(l.m.button,{ref:S,type:f,className:P.button,initial:["hide",w],animate:w,variants:O,whileHover:"hover",whileTap:"pressed",...y,children:[A,s.jsx("span",{className:P.content,children:m}),E]})})})),T={primary:"alert",secondary:"alert-secondary"},P=e=>"indeterminate"===e,B=e=>P(e)?t.o:t.e,A=l.m.create(a.Box),E={layoutVariant:"smooth",layoutSpeed:"3"},O={layoutVariant:"veryBouncy",layoutSpeed:"4"},L=o.forwardRef((function({id:n,checked:i,defaultChecked:r,onChange:c,label:d,labelPosition:u="start",variant:p="primary",size:h="md",reduceMotion:m,disabled:x,required:f,hasError:g,className:b,layerClassNames:y,...v},S){const C=o.useId(),I=n??`uds-input-${C}`,N=o.useRef(null),j=void 0!==i,[k,w]=o.useState(j?i:r),[V,M]=o.useState(!1),[R,z]=o.useState(!1),L=o.useMemo((()=>g?T[p]:p),[g,p]),q=!x&&V,H=!x&&R,$=o.useMemo((()=>H?.9:q?1.1:1),[H,q]),F=o.useMemo((()=>k?H?"opacity-55":"opacity-100":"opacity-0"),[k,H]),W=o.useMemo((()=>({scale:$})),[$]),_=o.useMemo((()=>R?O:E),[R]),D=o.useCallback((e=>{c?.(e),j||w(e.target.checked)}),[j,c]),U=o.useCallback((()=>{M(!0)}),[]),G=o.useCallback((()=>{M(!1)}),[]),Q=o.useCallback((()=>{z(!0)}),[]),X=o.useCallback((()=>{z(!1)}),[]),J=e=>{N.current&&(N.current.indeterminate=P(e))},Z=m?"always":"user",K=l.useReducedMotion()||m?"duration-0":"duration-120";o.useEffect((()=>{j&&w(i)}),[i,j]),o.useEffect((()=>{J(k)}),[k]);const Y=P(k)?"indeterminate":k?"checked":"unchecked",ee={root:a.getStyles({checkboxSizeRoot:h,checkboxVariantRoot:L,checkboxVariantValueRoot:Y,display:"flex",flexDirection:"start"===u?"row":"row-reverse",alignItems:"center",className:a.cx({"cursor-pointer":!x,"cursor-default":x,"opacity-50":x},b,y?.root)}),checkbox:a.getStyles({checkboxSizeCheckbox:h,checkboxVariantCheckbox:L,checkboxVariantValueCheckbox:Y,className:a.cx("border","rounded-[4px]","uds-ring","uds-ring-within",K,"transition-[background-color,border-color,box-shadow]",y?.checkbox)}),check:a.getStyles({checkboxVariantCheckboxIcon:L,checkboxVariantValueCheckboxIcon:Y,className:a.cx("pointer-events-none",F,K,"transition-opacity")}),htmlCheckbox:a.cx("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:a.cx("start"===u?"text-start":"text-end",y?.label)},te=d?l.m.label:l.m.div;return s.jsx(t.SpringMotionConfig,{reducedMotion:Z,..._,children:s.jsxs(te,{className:ee.root,"data-testid":"container",onHoverStart:U,onHoverEnd:G,onTapStart:Q,onTap:X,onTapCancel:X,tabIndex:-1,children:[s.jsxs(A,{position:"relative",className:ee.checkbox,alignItems:"center",justifyContent:"center",flex:"none",animate:W,children:[s.jsx("input",{type:"checkbox",...v,ref:e=>{N.current=e,J(k),"function"==typeof S?S(e):null!==S&&(S.current=e)},id:I,disabled:x,required:f,"aria-invalid":g,checked:j?!P(k)&&k:void 0,defaultChecked:j?void 0:r,onChange:D,className:ee.htmlCheckbox}),s.jsx(a.Icon,{name:B(k),size:"sm",className:ee.check})]}),d&&s.jsx(e.FormLabel,{as:"div",variant:"inherit",color:"inherit",required:f,label:d,className:ee.label})]})})}));L.displayName="Checkbox";var q="primary",H=o.forwardRef((function({size:e="md",minWidth:t,maxWidth:n=200,startIcon:i,endIcon:r,as:c="div",reduceMotion:d,disabled:u=!1,className:p,layerClassNames:h,children:m,...x},f){const g=l.useReducedMotion()||d?"duration-0":"duration-120",b=o.useMemo((()=>({root:a.getStyles({chipSizeRoot:e,className:a.cx({"pointer-events-none":u,"cursor-default":u,"opacity-50":u},"focus-visible:-outline-offset-2","uds-ring",g,"transition-[background-color,outline-color,box-shadow]",h?.root,p)}),icon:a.getStyles({chipSizeIcon:e,className:h?.icon})})),[p,g,u,h?.icon,h?.root,e]);return s.jsx(a.HStack,{asChild:!0,ref:f,display:"inline-flex",alignItems:"center",style:{maxWidth:`${n}px`,...t?{minWidth:`${t}px`}:{}},className:b.root,...x,children:s.jsxs(c,{disabled:u,children:[i&&s.jsx(a.IconSlot,{icon:i,iconProps:{variant:"fill",className:b.icon},"data-testid":"start-icon"}),s.jsx(a.Text,{as:"span",className:"truncate whitespace-nowrap",flex:"1",textAlign:"center",color:"current",variant:"inherit",children:m}),r&&s.jsx(a.IconSlot,{icon:r,iconProps:{variant:"fill",className:b.icon},"data-testid":"end-icon"})]})})}));H.displayName="ChipBase";var $=o.forwardRef((function({variant:e=q,...t},n){const i=o.useMemo((()=>({root:a.getStyles({chipLinkVariantRoot:e}),icon:a.getStyles({chipLinkVariantIcon:e})})),[e]);return s.jsx(H,{as:"button",ref:n,variant:e,layerClassNames:i,...t})}));$.displayName="ChipButton";var F=o.forwardRef((function({dismissButtonAriaLabel:e,onDismiss:n,dismissIcon:i,variant:r=q,disabled:l,...c},d){const u=o.useMemo((()=>({root:a.getStyles({chipDismissibleVariantRoot:r}),icon:a.getStyles({chipDismissibleVariantIcon:r})})),[r]),p=o.useCallback((e=>{e.stopPropagation(),n?.()}),[n]),h={icon:a.cx("uds-chip-dismissible-button","uds-hit-target")};return s.jsx(H,{ref:d,variant:r,disabled:l,tabIndex:-1,endIcon:n=>s.jsx(t.Pressable,{"aria-label":e,className:h.icon,onClick:p,disabled:l,children:s.jsx(a.IconSlot,{icon:i??t.a,iconProps:n,"data-testid":"dismiss-icon"})}),layerClassNames:u,...c})}));F.displayName="ChipDismissible";var W=o.forwardRef((function({variant:e=q,href:t,disabled:n,...i},r){const l=o.useMemo((()=>({root:a.getStyles({chipLinkVariantRoot:e}),icon:a.getStyles({chipLinkVariantIcon:e})})),[e]);return s.jsx(H,{as:"a",ref:r,variant:e,disabled:n,layerClassNames:l,...{...i,href:n?void 0:t}})}));W.displayName="ChipLink";var _=o.forwardRef((function({isToggled:e=!1,onToggle:t,onClick:n,variant:i=q,...r},l){const c=o.useMemo((()=>({root:a.getStyles({chipToggleVariantRoot:i,chipToggleVariantActiveRoot:e?"on":"off"}),icon:a.getStyles({chipToggleVariantIcon:i})})),[e,i]),d=o.useCallback((a=>{t?.(!e),n?.(a)}),[e,n,t]);return s.jsx(H,{ref:l,as:"button",variant:i,onClick:d,"aria-pressed":e,layerClassNames:c,...r})}));_.displayName="ChipToggle";var D=o.forwardRef((function({onClick:e,href:t,linkProps:a,onDismiss:n,onToggle:i,isToggled:o,...r},l){return n?s.jsx(F,{ref:l,onDismiss:n,...r}):i?s.jsx(_,{ref:l,onToggle:i,isToggled:o,...r}):t?s.jsx(W,{ref:l,href:t,...r,...a}):s.jsx($,{ref:l,onClick:e,...r})}));D.displayName="Chip";var U=o.forwardRef((function({variant:e,size:i,iconVariant:c,loading:d,disableEffects:u,name:p,type:h="button",htmlName:m,className:x,children:f,...g},b){const y=o.useRef(null);o.useImperativeHandle(b,(()=>y.current));const{palette:v,variant:S}=n.parseDeprecatedButtonPaletteVariant({flatVariant:e}),C=o.useMemo((()=>({button:a.getStyles({buttonVariant:S,buttonPalette:v,iconButtonSize:i,className:a.cx("uds-icon-button","uds-button","uds-ring","uds-hit-target",d&&"uds-button-loading",u&&"uds-button-without-effects",x)}),loading:"uds-button-icon start-content animate-spin",icon:"uds-button-icon start-content"})),[v,S,x,u,i,d]),I=l.useReducedMotion(),N=o.useMemo((()=>I?"smooth":"subtle"),[I]),w=o.useMemo((()=>{const{rest:e,hover:t,pressed:a}=M;return u?{rest:{},hover:{},pressed:{}}:{rest:e,hover:t,pressed:a}}),[u]);return s.jsx(t.SpringMotionConfig,{layoutSpeed:"3",layoutVariant:N,reducedMotion:u?"always":"user",children:s.jsx(l.m.button,{ref:y,type:h,className:C.button,initial:"icon",variants:w,whileHover:"hover",whileTap:"pressed",name:m,...g,children:s.jsxs(l.AnimatePresence,{initial:!1,mode:"popLayout",children:[d&&s.jsx(l.m.span,{variants:k,initial:"loading",animate:"loading",exit:"hide",children:s.jsx(a.Icon,{size:r.buttonIconSvgSize,name:t.o2,variant:c,color:"current",className:C.loading})},"loading"),p&&!d&&s.jsx(l.m.span,{variants:j,initial:"icon",animate:"icon",exit:"hide",children:f||s.jsx(a.Icon,{size:r.buttonIconSvgSize,name:p,variant:c,color:"current",className:C.icon})},p.name)]})})})})),G=({children:e,reduceMotion:a,layoutVariant:n})=>{const i=o.useRef(null),[r,c]=o.useState("auto");return o.useEffect((()=>{if(i.current){const e=new ResizeObserver((e=>{c(e[0].contentRect.height)}));return e.observe(i.current),()=>{e.disconnect()}}}),[]),s.jsx(t.SpringMotionConfig,{reducedMotion:a,layoutSpeed:"4",layoutVariant:n,children:s.jsx(l.m.div,{className:"overflow-hidden",style:{height:r,opacity:0},animate:{height:r,opacity:1},children:s.jsx("div",{ref:i,children:e})})})},Q=o.memo((function({helpText:t,helperTextIcon:n,spacingStart:i,spacingTop:o,size:r,isFilled:l,...d}){return t?s.jsx(a.Box,{spacingTop:o,spacingStart:i,...d,children:s.jsx(e.InputHelpTextMemo,{startIcon:n,size:r,isFilled:l,children:c.isFunction(t)?t():t})}):null})),X=o.memo((function({icon:e,className:t}){return e?s.jsx(a.IconSlot,{icon:e,iconProps:{variant:"outline"},className:t}):null})),J=o.memo((function({icon:e,className:t}){if(!e)return null;return s.jsx(a.IconSlot,{icon:e,iconProps:{variant:"outline"},"data-testid":"end-icon",className:t})})),Z=o.forwardRef((function({id:e,label:t,type:n="text",size:i="md",startIcon:r,endIcon:d,helpText:u,helperTextIcon:p,hasError:h,width:m="full",defaultValue:x,required:f,readOnly:g,disabled:b,reduceMotion:y,onChange:v,className:S,...C},I){const N=o.useId(),j=e??`uds-input-${N}`,k=`uds-input-${j}-help-text`,w=o.useRef(null);o.useImperativeHandle(I,(()=>w.current));const[V,M]=o.useState(x??""),R=o.useCallback((e=>{M(e.target.value),v?.(e)}),[v]),z=l.useReducedMotion()?"smooth":"bouncy",T=y?"always":"user",P=!g&&!b,B={root:a.getStyles({inputSizeRoot:i,inputVariantRoot:"default",inputVariantValueRoot:V?"filled":"empty",className:a.cx([S,b?"opacity-50":""])}),inputWrapper:a.cx(a.getStyles({inputSizeInputWrapper:i,inputVariantInputWrapper:"default",inputVariantValueInputWrapper:V?"filled":"empty"}),"min-w-[200px]"),input:a.getStyles({inputSizeInput:i,inputVariantInput:"default",inputVariantValueInput:V?"filled":"empty",inputVariantInputPlaceholder:"default",inputVariantValueInputPlaceholder:V?"filled":"empty",className:a.cx("grow","uds-hit-target","bg-clip-text","focus:outline-none",P?"cursor-text":"cursor-not-allowed")}),label:a.cx(a.getStyles({inputSizeLabel:i,inputVariantLabel:"default",inputVariantValueLabel:V?"filled":"empty"})),labelRequired:a.getStyles({inputVariantLabelRequired:"default",inputVariantValueLabelRequired:V?"filled":"empty"}),startIcon:a.getStyles({inputSizeStartIcon:i,inputVariantStartIcon:"default",inputVariantValueStartIcon:V?"filled":"empty"}),endIcon:a.getStyles({inputSizeEndIcon:i,inputVariantEndIcon:"default",inputVariantValueEndIcon:V?"filled":"empty"})};return s.jsxs(a.VStack,{width:m,className:B.root,children:[t&&s.jsxs(a.Box,{spacingBottom:"2",columnGap:"0.5",alignItems:"flex-end",className:B.label,children:[s.jsx("label",{htmlFor:j,children:c.isFunction(t)?t():t}),f&&s.jsx("span",{className:B.labelRequired,children:"*"})]}),s.jsxs(a.Box,{position:"relative",alignItems:"center",className:B.inputWrapper,children:[s.jsx(X,{icon:r,className:B.startIcon}),s.jsx("input",{ref:w,id:j,type:n,value:V,required:f,readOnly:g,disabled:b,"aria-describedby":k,"aria-invalid":h,onChange:R,className:B.input,...C}),d&&s.jsx(a.HStack,{alignItems:"center",gap:"1",children:s.jsx(J,{icon:d,className:B.endIcon})})]}),s.jsx(G,{reduceMotion:T,layoutVariant:z,children:s.jsx(Q,{id:k,helpText:u,spacingTop:"2",size:i,isFilled:!!V,helperTextIcon:p})})]})}));Z.displayName="Input";var K=class e{name;value;activeCount=0;#e=new Set;constructor(e){this.name=e}onChange(e){return this.#e.add(e),()=>{this.#e.delete(e)}}setValue(e){this.value=e,this.#e.forEach((t=>t(e)))}static findOrCreate(t,a){let n=t.get(a);return n||(n=new e(a),t.set(a,n)),n}},Y=o.createContext(new Map),ee=e=>{const t=o.useId();return e??`uds-radio-group-${t}`},te={primary:"alert",secondary:"alert-secondary"},ae=l.m.create(a.Box),ne={layoutVariant:"smooth",layoutSpeed:"3"},ie={layoutVariant:"veryBouncy",layoutSpeed:"4"},oe=o.forwardRef((function({id:n,name:i,label:r,labelPosition:c="start",variant:d="primary",size:u="md",reduceMotion:p,value:h="",checked:m,defaultChecked:x,disabled:f,hasError:g,onChange:b,onFocus:y,onBlur:v,className:S,layerClassNames:C,...I},N){const j=o.useId(),k=n??`uds-radio-${j}`,w=o.useRef(null),{name:V,isControlled:M,checked:R,setGroupValue:z}=(({name:e,value:t,checked:a,defaultChecked:n})=>{const i=o.useContext(Y),s=i instanceof K,r=void 0!==a||s,l=ee(e),c=o.useMemo((()=>s?i:K.findOrCreate(i,l)),[i,s,l]),[d,u]=o.useState(c.value),p=c.name??l,h=o.useCallback((e=>{c.setValue(e),r||u(e)}),[r,c]);return o.useEffect((()=>c.onChange(u)),[c]),o.useEffect((()=>{!0===a&&h(t)}),[a,t,h]),o.useEffect((()=>{if(s)return;const e=K.findOrCreate(i,p);return e.activeCount+=1,i.set(p,e),()=>{const e=i.get(p);e&&(e.activeCount-=1,0===e.activeCount&&i.delete(p))}}),[i,s,p]),{name:p,isControlled:r,checked:r&&!s?a:void 0!==d?t===d:n??!1,setGroupValue:h}})({name:i,value:h,checked:m,defaultChecked:x}),[T,P]=o.useState(!1),[B,A]=o.useState(!1),E=o.useMemo((()=>g?te[d]:d),[g,d]),O=o.useMemo((()=>!f&&T),[f,T]),L=o.useMemo((()=>!f&&!R&&B),[R,f,B]),q=o.useMemo((()=>L?.9:O?1.1:1),[O,L]),H=o.useMemo((()=>R?L?"opacity-55":"opacity-100":"opacity-0"),[R,L]),$=o.useMemo((()=>!f&&(L&&!R||O&&R)),[R,f,O,L]),F=o.useMemo((()=>({scale:q})),[q]),W=o.useMemo((()=>B?ie:ne),[B]),_=o.useCallback((e=>{z(e.target.value),b?.(e)}),[b,z]),D=o.useCallback((e=>{y?.(e)}),[y]),U=o.useCallback((e=>{v?.(e)}),[v]),G=o.useCallback((()=>{P(!0)}),[]),Q=o.useCallback((()=>{P(!1)}),[]),X=o.useCallback((()=>{A(!0)}),[]),J=o.useCallback((()=>{A(!1)}),[]),Z=p?"always":"user",oe=l.useReducedMotion()||p?"duration-0":"duration-120",se={root:a.getStyles({radioSizeRoot:u,radioVariantValueRoot:R?"checked":"unchecked",radioVariantRoot:E,display:"flex",flexDirection:"start"===c?"row":"row-reverse",alignItems:"center",className:a.cx([{"cursor-pointer":!f,"cursor-default":f,"opacity-50":f},S,C?.root])}),radio:a.getStyles({radioSizeRadio:u,radioVariantRadio:E,radioVariantValueRadio:R?"checked":"unchecked",className:a.cx(["border","uds-ring","uds-ring-within",oe,"transition-[background-color,border-color]","transition-shadow",C?.radio])}),radioCircle:a.getStyles({radioVariantRadioCircle:E,radioVariantValueRadioCircle:R?"checked":"unchecked",className:a.cx(["pointer-events-none","w-[8px]","h-[8px]",H,oe,"transition-opacity"])}),htmlRadio:a.cx("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:a.cx("start"===c?"text-start":"text-end",C?.label)},re=r?l.m.label:l.m.div;return s.jsx(t.SpringMotionConfig,{reducedMotion:Z,...W,children:s.jsxs(re,{className:se.root,"data-testid":"container",onHoverStart:G,onHoverEnd:Q,onTapStart:X,onTap:J,onTapCancel:J,tabIndex:-1,children:[s.jsxs(ae,{position:"relative",borderRadius:"full",alignItems:"center",justifyContent:"center",flex:"none",className:se.radio,animate:F,insetShadow:$?"lg-invert":"none",children:[s.jsx("input",{type:"radio",...I,ref:e=>{w.current=e,"function"==typeof N?N(e):null!==N&&(N.current=e)},onFocus:D,onBlur:U,id:k,name:V,value:h,disabled:f,"aria-invalid":g,onChange:_,...M?{checked:R}:{defaultChecked:x},className:se.htmlRadio}),s.jsx(a.Box,{borderRadius:"full",className:se.radioCircle})]}),r&&s.jsx(e.FormLabel,{as:"div",variant:"inherit",color:"inherit",label:r,className:se.label})]})})}));oe.displayName="Radio";var se=a.createSlot(),re=class extends K{onChangeCb;isControlled;constructor(e,t){super(e),this.isControlled=t}setValue(e,t=!1){this.isControlled&&!t?this.onChangeCb?.(e):super.setValue(e)}},le=o.forwardRef((function({asChild:e,name:t,value:a,defaultValue:n,onChange:i,...r},l){const c=void 0!==a,d=ee(t),u=o.useMemo((()=>{const e=new re(d,c);return e.value=c?a:n,e}),[n,c,d,a]);o.useEffect((()=>{u.onChangeCb=i}),[i,u]),o.useEffect((()=>{c&&u.setValue(a,!0)}),[c,u,a]),o.useEffect((()=>u.onChange((e=>i?.(e)))),[i,u]);const p=e?se:"div";return s.jsx(Y.Provider,{value:u,children:s.jsx(p,{role:"radiogroup",ref:l,...r})})}));le.displayName="RadioGroupProvider";var ce={md:{isOnX:20},sm:{isOnX:12}},de=l.m.create(a.Box),ue={layoutVariant:"bouncy",layoutSpeed:"4"},pe=o.forwardRef((function({id:n,isOn:i,defaultIsOn:r,onChange:c,label:d,labelPosition:u="start",size:p="md",onIcon:h,offIcon:m,reduceMotion:x,disabled:f,required:g,onFocus:b,onBlur:y,className:v,layerClassNames:S,...C},I){const N=o.useId(),j=n??`uds-input-${N}`,k=o.useRef(null),w=void 0!==i,[V,M]=o.useState(w?i:r),[R,z]=o.useState(!1),T=o.useMemo((()=>!f&&R),[f,R]),{isOnX:P}=ce[p],B=o.useMemo((()=>({initial:{scale:1,x:V?P:0},animate:{scale:T?1.05:1,x:V?P:0}})),[T,V,P]),A=o.useCallback((e=>{c?.(e),w||M(e.target.checked)}),[w,c]),E=o.useCallback((e=>{b?.(e)}),[b]),O=o.useCallback((e=>{y?.(e)}),[y]),L=o.useCallback((()=>{z(!0)}),[]),q=o.useCallback((()=>{z(!1)}),[]),H=x?"always":"user",$=l.useReducedMotion()||x?"duration-0":"duration-120";o.useEffect((()=>{w&&M(i)}),[i,w]);const F={root:a.getStyles({switchSizeRoot:p,switchVariantRoot:"default",switchVariantActiveRoot:V?"on":"off",display:"flex",flexDirection:"start"===u?"row":"row-reverse",alignItems:"center",className:a.cx("group",{"cursor-pointer":!f,"cursor-default":f,"opacity-50":f},S?.root,v)}),switch:a.getStyles({switchVariantSwitch:"default",switchSizeSwitch:p,switchVariantActiveSwitch:V?"on":"off",borderRadius:"full",position:"relative",alignItems:"center",className:a.cx("uds-ring","uds-ring-within",$,"transition-[background-color,box-shadow]",S?.switch)}),handle:a.getStyles({switchSizeHandle:p,className:a.cx("relative","pointer-events-none","rounded-full","overflow-hidden",S?.handle)}),handleCircle:a.getStyles({switchVariantActiveHandle:V?"on":"off",switchVariantHandle:"default",className:a.cx("absolute","top-0","left-0","right-0","bottom-0","opacity-95 group-hover:opacity-100",$,"transition-[background-color,box-shadow,opacity]")}),handleIcon:a.getStyles({switchSizeHandleIcon:p,switchVariantHandleIcon:"default",switchVariantActiveHandleIcon:V?"on":"off",className:a.cx("absolute","opacity-0","top-1/2","left-1/2","transform","translate-x-[-50%]","translate-y-[-50%]",$,"transition-opacity")}),htmlCheckbox:a.cx("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:a.cx("start"===u?"text-start":"text-end",S?.label)},W=d?l.m.label:l.m.div;return s.jsx(t.SpringMotionConfig,{reducedMotion:H,...ue,children:s.jsxs(W,{className:F.root,"data-testid":"container",onHoverStart:L,onHoverEnd:q,tabIndex:-1,children:[s.jsxs(de,{className:F.switch,children:[s.jsx("input",{type:"checkbox",...C,ref:e=>{k.current=e,"function"==typeof I?I(e):null!==I&&(I.current=e)},onFocus:E,onBlur:O,id:j,disabled:f,required:g,checked:w?V:void 0,defaultChecked:w?void 0:r,onChange:A,className:F.htmlCheckbox,style:{}}),s.jsxs(de,{className:F.handle,...B,children:[s.jsx(a.Box,{className:F.handleCircle}),h&&s.jsx(a.IconSlot,{icon:h,iconProps:{variant:"fill",size:"sm"},"data-testid":"on-icon",className:a.cx(F.handleIcon,V?"opacity-100":"opacity-0")}),m&&s.jsx(a.IconSlot,{icon:m,iconProps:{variant:"fill",size:"sm"},"data-testid":"off-icon",className:a.cx(F.handleIcon,V?"opacity-0":"opacity-100")})]})]}),d&&s.jsx(e.FormLabel,{as:"div",variant:"inherit",color:"inherit",required:g,label:d,className:F.label})]})})}));pe.displayName="Switch",Object.defineProperty(exports,"Pressable",{enumerable:!0,get:function(){return t.Pressable}}),Object.defineProperty(exports,"SpringMotionConfig",{enumerable:!0,get:function(){return t.SpringMotionConfig}}),Object.defineProperty(exports,"Menu",{enumerable:!0,get:function(){return d.Menu}}),exports.Avatar=S,exports.AvatarIcon=b,exports.AvatarImage=v,exports.AvatarText=y,exports.Badge=C,exports.Button=z,exports.Checkbox=L,exports.Chip=D,exports.ChipButton=$,exports.ChipDismissible=F,exports.ChipLink=W,exports.ChipToggle=_,exports.IconButton=U,exports.Input=Z,exports.Radio=oe,exports.RadioGroupProvider=le,exports.Switch=pe;
|
2
|
+
"use strict";var e=require("../chunk-ZPZAKENT.cjs"),t=require("../chunk-4MMZH6H4.cjs"),a=require("../chunk-3N4JOIUF.cjs"),n=require("../chunk-PUOU55IC.cjs"),i=require("../chunk-OU46NWOC.cjs"),o=require("react"),s=require("react/jsx-runtime"),r=require("@yahoo/uds/fixtures"),l=require("motion/react"),c=require("lodash-es"),d=require("@yahoo/uds/client/Menu"),u={first:e=>e[0]||"",last:e=>e[e.length-1]||"",firstAndLast:e=>1===e.length?e[0]:`${e[0]}${e[e.length-1]}`,firstTwo:e=>e.slice(0,2).join(""),firstThree:e=>e.slice(0,3).join(""),firstOfEach:e=>e.join("")},p=(e,t="firstAndLast")=>{if(!e)return"";const a=e.trim().split(/\s+/).map((e=>e[0].toUpperCase()));return"function"==typeof t?t(e):u[t](a)},h=(e="md")=>a.getStyles({avatarSizeRoot:e,flexShrink:"0",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",overflow:"visible",className:"truncate"}),m=e=>e?{height:e,width:e}:{},x="primary",f="md",g={primary:t.e2,secondary:t.t},b=({size:e=f,variant:t=x,customSize:n,icon:i,className:r})=>{const l=o.useMemo((()=>m(n)),[n]),c=o.useMemo((()=>a.cx(h(e),a.getStyles({avatarIconVariantRoot:t,overflow:"hidden"}),r)),[r,e,t]),d=o.useMemo((()=>a.getStyles({width:"full",height:"full",flexShrink:"0",overflow:"hidden",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center"})),[]),u=o.useMemo((()=>({...l,boxSizing:"content-box"})),[l]),p=o.useMemo((()=>i??g[t??"primary"]),[i,t]),b=o.useMemo((()=>a.getStyles({avatarSizeIcon:e})),[e]);return s.jsx(a.Box,{className:c,style:l,children:s.jsx(a.Box,{className:d,style:u,children:s.jsx(a.Icon,{name:p,variant:"fill",color:"current",className:b,"data-testid":"avatar-icon"})})})};/*! © 2025 Yahoo, Inc. UDS v0.0.0-development */b.displayName="AvatarIcon";var y=({size:e=f,variant:t=x,name:n,initials:i,customSize:r,abbreviationStrategy:l,className:c})=>{const d=o.useMemo((()=>a.cx(h(e),a.getStyles({avatarTextVariantRoot:t,overflow:"hidden"}),"truncate",c)),[c,e,t]),u=o.useMemo((()=>a.getStyles({width:"full",height:"full",flexShrink:"0",overflow:"hidden",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",className:"truncate"})),[]),g=o.useMemo((()=>m(r)),[r]),b=o.useMemo((()=>({...g,boxSizing:"content-box"})),[g]);return s.jsx(a.Box,{className:d,style:g,children:s.jsx(a.Text,{color:"inherit",variant:"inherit",className:u,style:b,"data-testid":"avatar-text",children:i||p(n,l)})})};y.displayName="AvatarText";var v=({size:t=f,variant:n=x,src:i,srcSet:r,customSize:l,alt:c,imageProps:d,abbreviationStrategy:u,fallback:p,className:g})=>{const[v,S]=o.useState("loading");o.useEffect((()=>{let e=!0;if(i||r){const t=new Image;t.onload=()=>{e&&S("loaded")},t.onerror=()=>{e&&S("error")},i&&(t.src=i),r&&(t.srcset=r)}else S("error");return()=>{e=!1}}),[i,r]);const C=o.useMemo((()=>a.cx(h(t),a.getStyles({avatarImageVariantRoot:n,overflow:"hidden"}),g)),[g,t,n]),I=o.useMemo((()=>a.getStyles({width:"full",height:"full",flexShrink:"0",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",contentFit:"cover"})),[]),N=o.useMemo((()=>m(l)),[l]),j=o.useMemo((()=>({...N,boxSizing:"content-box"})),[N]);if("loaded"===v)return s.jsx(a.Box,{className:C,style:N,children:s.jsx(e.Image,{src:i,srcSet:r,alt:c,className:I,style:j,...d})});const k={size:t,customSize:l,variant:n};return p||c?s.jsx(y,{name:c,initials:p,abbreviationStrategy:u,...k}):s.jsx(b,{...k})};v.displayName="AvatarImage";var S=e=>s.jsx(v,{...e});S.displayName="Avatar";var C=o.forwardRef((function({variant:e="primary",size:t="md",minWidth:n,maxWidth:i=200,startIcon:r,endIcon:l,backgroundColor:c,color:d,iconColor:u,borderColor:p,children:h,className:m,...x},f){const g=a.getStyles({badgeSizeRoot:t,badgeVariantRoot:e,className:a.cx(["uds-badge","uds-badge-variant","uds-badge-size",m])}),b=a.getStyles({badgeVariantIcon:e,badgeSizeIcon:t,className:a.cx(["uds-badge-iconSize","uds-badge-iconColor"])}),y=o.useMemo((()=>({...n?{minWidth:`${n}px`}:{},..."full"===i?{}:{maxWidth:`${i}px`},...c?{backgroundColor:c}:{},...p?{borderColor:p}:{},...d?{color:d}:{}})),[c,p,d,i,n]),v=o.useMemo((()=>({variant:"fill",style:{...u?{color:u}:{}}})),[u]);return s.jsxs(a.HStack,{ref:f,gap:"2",display:"inline-flex",alignItems:"center",className:g,style:y,...x,children:[r&&s.jsx(a.IconSlot,{icon:r,iconProps:v,"data-testid":"start-icon",className:b}),s.jsx("span",{className:"flex-1 truncate whitespace-nowrap text-center",children:h}),l&&s.jsx(a.IconSlot,{icon:l,iconProps:v,"data-testid":"end-icon",className:b})]})}));C.displayName="Badge";var I={scale:.7,opacity:0},N={scale:[.7,.7,1],opacity:[0,0,1],transition:{times:[0,.5,1]}},j={icon:N,hide:I,loading:I},k={loading:N,hide:I,icon:I},w=`var(${i.BUTTON_CSS_VAR_MAP.columnGap})`,V=`var(${i.BUTTON_CSS_VAR_MAP.iconSize})`,M={rest:{scale:`var(${i.BUTTON_CSS_VAR_MAP.effects.scale.rest})`},hover:{scale:`var(${i.BUTTON_CSS_VAR_MAP.effects.scale.hover})`},pressed:{scale:`var(${i.BUTTON_CSS_VAR_MAP.effects.scale.pressed})`},withoutIcon:{columnGap:"0px"},withIcon:{columnGap:w}},R={hide:{width:"0px",opacity:0,display:"none"},loading:{width:V,display:"flex",opacity:1},icon:{width:V,display:"flex",opacity:1}},z=o.forwardRef((function({variant:e,size:i,startIcon:c,endIcon:d,iconVariant:u,loading:p,disableEffects:h,children:m,asChild:x,type:f="button",className:g,width:b,...y},v){const S=o.useRef(null);o.useImperativeHandle(v,(()=>S.current));const C=o.useMemo((()=>a.createSlot()),[]),I=o.useMemo((()=>l.m.create(C)),[C]),N=d?"icon":"hide",w=(({startIcon:e,endIcon:t,loading:a})=>e||t||a?"withIcon":"withoutIcon")({startIcon:c,endIcon:d,loading:p}),V=(({loading:e,startIcon:t})=>e?"loading":t?"icon":"hide")({loading:p,startIcon:c}),{palette:z,variant:T}=o.useMemo((()=>n.parseDeprecatedButtonPaletteVariant({flatVariant:e})),[e]),P=o.useMemo((()=>({button:a.getStyles({width:b,buttonSize:i,buttonVariant:T,buttonPalette:z,className:a.cx("uds-button","uds-ring","uds-hit-target",p&&"uds-button-loading",h&&"uds-button-without-effects","withIcon"===w&&"uds-button-with-gap",g)}),content:"uds-button-content truncate",iconContainer:"uds-button-icon-container flex overflow-clip",loading:"uds-button-icon start-content animate-spin",start:"uds-button-icon start-content",end:"uds-button-icon end-content"})),[b,i,T,z,g,p,h,w]),A=l.useReducedMotion()?"smooth":"subtle",B=o.useMemo((()=>s.jsx(l.m.span,{className:P.iconContainer,initial:!1,variants:R,animate:V,children:s.jsxs(l.AnimatePresence,{initial:!1,mode:"popLayout",children:[p&&s.jsx(l.m.span,{variants:k,initial:"hide",animate:"loading",exit:"hide",children:s.jsx(a.Icon,{size:r.buttonIconSvgSize,name:t.o2,variant:u,color:"current",className:P.loading})},"loading"),c&&!p&&s.jsx(l.m.span,{variants:j,initial:"hide",animate:"icon",exit:"hide",children:s.jsx(a.IconSlot,{className:P.start,icon:c,iconProps:{size:r.buttonIconSvgSize,variant:u,color:"current"}})})]})})),[P.iconContainer,P.loading,P.start,V,p,u,c]),E=o.useMemo((()=>s.jsx(l.m.span,{className:P.iconContainer,initial:!1,variants:R,animate:N,children:s.jsx(l.AnimatePresence,{initial:!1,mode:"popLayout",children:d&&s.jsx(l.m.span,{variants:j,initial:"hide",animate:"icon",exit:"hide",children:s.jsx(a.IconSlot,{className:P.end,icon:d,iconProps:{size:r.buttonIconSvgSize,variant:u,color:"current"}})})})})),[P.iconContainer,P.end,d,N,u]),H=o.useMemo((()=>h?{...M,rest:{},hover:{},pressed:{}}:M),[h]);return x&&o.isValidElement(m)?s.jsx(t.SpringMotionConfig,{layoutSpeed:"3",layoutVariant:A,children:s.jsx(I,{type:f,className:P.button,initial:["hide",w],animate:w,variants:H,whileHover:"hover",whileTap:"pressed",...y,children:o.cloneElement(m,m.props,s.jsxs(s.Fragment,{children:[B,s.jsx("span",{className:P.content,children:m.props.children}),E]}))})}):s.jsx(t.SpringMotionConfig,{layoutSpeed:"3",layoutVariant:A,children:s.jsxs(l.m.button,{ref:S,type:f,className:P.button,initial:["hide",w],animate:w,variants:H,whileHover:"hover",whileTap:"pressed",...y,children:[B,s.jsx("span",{className:P.content,children:m}),E]})})})),T={primary:"alert",secondary:"alert-secondary"},P=e=>"indeterminate"===e,A=e=>P(e)?t.o:t.e,B=l.m.create(a.Box),E={layoutVariant:"smooth",layoutSpeed:"3"},H={layoutVariant:"veryBouncy",layoutSpeed:"4"},L=o.forwardRef((function({id:n,checked:i,defaultChecked:r,onChange:c,label:d,labelPosition:u="start",variant:p="primary",size:h="md",reduceMotion:m,disabled:x,required:f,hasError:g,className:b,layerClassNames:y,...v},S){const C=o.useId(),I=n??`uds-input-${C}`,N=o.useRef(null),j=void 0!==i,[k,w]=o.useState(j?i:r),[V,M]=o.useState(!1),[R,z]=o.useState(!1),L=o.useMemo((()=>g?T[p]:p),[g,p]),O=!x&&V,q=!x&&R,$=o.useMemo((()=>q?.9:O?1.1:1),[q,O]),F=o.useMemo((()=>k?q?"opacity-55":"opacity-100":"opacity-0"),[k,q]),_=o.useMemo((()=>({scale:$})),[$]),W=o.useMemo((()=>R?H:E),[R]),D=o.useCallback((e=>{c?.(e),j||w(e.target.checked)}),[j,c]),U=o.useCallback((()=>{M(!0)}),[]),G=o.useCallback((()=>{M(!1)}),[]),X=o.useCallback((()=>{z(!0)}),[]),Z=o.useCallback((()=>{z(!1)}),[]),J=e=>{N.current&&(N.current.indeterminate=P(e))},K=m?"always":"user",Q=l.useReducedMotion()||m?"duration-0":"duration-120";o.useEffect((()=>{j&&w(i)}),[i,j]),o.useEffect((()=>{J(k)}),[k]);const Y=P(k)?"indeterminate":k?"checked":"unchecked",ee={root:a.getStyles({checkboxSizeRoot:h,checkboxVariantRoot:L,checkboxVariantValueRoot:Y,display:"flex",flexDirection:"start"===u?"row":"row-reverse",alignItems:"center",className:a.cx({"cursor-pointer":!x,"cursor-default":x,"opacity-50":x},b,y?.root)}),checkbox:a.getStyles({checkboxSizeCheckbox:h,checkboxVariantCheckbox:L,checkboxVariantValueCheckbox:Y,className:a.cx("border","rounded-[4px]","uds-ring","uds-ring-within",Q,"transition-[background-color,border-color,box-shadow]",y?.checkbox)}),check:a.getStyles({checkboxVariantCheckboxIcon:L,checkboxVariantValueCheckboxIcon:Y,className:a.cx("pointer-events-none",F,Q,"transition-opacity")}),htmlCheckbox:a.cx("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:a.cx("start"===u?"text-start":"text-end",y?.label)},te=d?l.m.label:l.m.div;return s.jsx(t.SpringMotionConfig,{reducedMotion:K,...W,children:s.jsxs(te,{className:ee.root,"data-testid":"container",onHoverStart:U,onHoverEnd:G,onTapStart:X,onTap:Z,onTapCancel:Z,tabIndex:-1,children:[s.jsxs(B,{position:"relative",className:ee.checkbox,alignItems:"center",justifyContent:"center",flex:"none",animate:_,children:[s.jsx("input",{type:"checkbox",...v,ref:e=>{N.current=e,J(k),"function"==typeof S?S(e):null!==S&&(S.current=e)},id:I,disabled:x,required:f,"aria-invalid":g,checked:j?!P(k)&&k:void 0,defaultChecked:j?void 0:r,onChange:D,className:ee.htmlCheckbox}),s.jsx(a.Icon,{name:A(k),size:"sm",className:ee.check})]}),d&&s.jsx(e.FormLabel,{as:"div",variant:"inherit",color:"inherit",required:f,label:d,className:ee.label})]})})}));L.displayName="Checkbox";var O="primary",q=o.forwardRef((function({size:e="md",minWidth:t,maxWidth:n=200,startIcon:i,endIcon:r,as:c="div",reduceMotion:d,disabled:u=!1,className:p,layerClassNames:h,children:m,...x},f){const g=l.useReducedMotion()||d?"duration-0":"duration-120",b=o.useMemo((()=>({root:a.getStyles({chipSizeRoot:e,className:a.cx({"pointer-events-none":u,"cursor-default":u,"opacity-50":u},"focus-visible:-outline-offset-2","uds-ring",g,"transition-[background-color,outline-color,box-shadow]",h?.root,p)}),icon:a.getStyles({chipSizeIcon:e,className:h?.icon})})),[p,g,u,h?.icon,h?.root,e]);return s.jsx(a.HStack,{asChild:!0,ref:f,display:"inline-flex",alignItems:"center",style:{maxWidth:`${n}px`,...t?{minWidth:`${t}px`}:{}},className:b.root,...x,children:s.jsxs(c,{disabled:u,children:[i&&s.jsx(a.IconSlot,{icon:i,iconProps:{variant:"fill",className:b.icon},"data-testid":"start-icon"}),s.jsx(a.Text,{as:"span",className:"truncate whitespace-nowrap",flex:"1",textAlign:"center",color:"current",variant:"inherit",children:m}),r&&s.jsx(a.IconSlot,{icon:r,iconProps:{variant:"fill",className:b.icon},"data-testid":"end-icon"})]})})}));q.displayName="ChipBase";var $=o.forwardRef((function({variant:e=O,...t},n){const i=o.useMemo((()=>({root:a.getStyles({chipLinkVariantRoot:e}),icon:a.getStyles({chipLinkVariantIcon:e})})),[e]);return s.jsx(q,{as:"button",ref:n,variant:e,layerClassNames:i,...t})}));$.displayName="ChipButton";var F=o.forwardRef((function({dismissButtonAriaLabel:e,onDismiss:n,dismissIcon:i,variant:r=O,disabled:l,...c},d){const u=o.useMemo((()=>({root:a.getStyles({chipDismissibleVariantRoot:r}),icon:a.getStyles({chipDismissibleVariantIcon:r})})),[r]),p=o.useCallback((e=>{e.stopPropagation(),n?.()}),[n]),h={icon:a.cx("uds-chip-dismissible-button","uds-hit-target")};return s.jsx(q,{ref:d,variant:r,disabled:l,tabIndex:-1,endIcon:n=>s.jsx(t.Pressable,{"aria-label":e,className:h.icon,onClick:p,disabled:l,children:s.jsx(a.IconSlot,{icon:i??t.a,iconProps:n,"data-testid":"dismiss-icon"})}),layerClassNames:u,...c})}));F.displayName="ChipDismissible";var _=o.forwardRef((function({variant:e=O,href:t,disabled:n,...i},r){const l=o.useMemo((()=>({root:a.getStyles({chipLinkVariantRoot:e}),icon:a.getStyles({chipLinkVariantIcon:e})})),[e]);return s.jsx(q,{as:"a",ref:r,variant:e,disabled:n,layerClassNames:l,...{...i,href:n?void 0:t}})}));_.displayName="ChipLink";var W=o.forwardRef((function({isToggled:e=!1,onToggle:t,onClick:n,variant:i=O,...r},l){const c=o.useMemo((()=>({root:a.getStyles({chipToggleVariantRoot:i,chipToggleVariantActiveRoot:e?"on":"off"}),icon:a.getStyles({chipToggleVariantIcon:i})})),[e,i]),d=o.useCallback((a=>{t?.(!e),n?.(a)}),[e,n,t]);return s.jsx(q,{ref:l,as:"button",variant:i,onClick:d,"aria-pressed":e,layerClassNames:c,...r})}));W.displayName="ChipToggle";var D=o.forwardRef((function({onClick:e,href:t,linkProps:a,onDismiss:n,onToggle:i,isToggled:o,...r},l){return n?s.jsx(F,{ref:l,onDismiss:n,...r}):i?s.jsx(W,{ref:l,onToggle:i,isToggled:o,...r}):t?s.jsx(_,{ref:l,href:t,...r,...a}):s.jsx($,{ref:l,onClick:e,...r})}));D.displayName="Chip";var U=o.forwardRef((function({variant:e,size:i,iconVariant:c,loading:d,disableEffects:u,name:p,type:h="button",htmlName:m,className:x,children:f,...g},b){const y=o.useRef(null);o.useImperativeHandle(b,(()=>y.current));const{palette:v,variant:S}=n.parseDeprecatedButtonPaletteVariant({flatVariant:e}),C=o.useMemo((()=>({button:a.getStyles({buttonVariant:S,buttonPalette:v,iconButtonSize:i,className:a.cx("uds-icon-button","uds-button","uds-ring","uds-hit-target",d&&"uds-button-loading",u&&"uds-button-without-effects",x)}),loading:"uds-button-icon start-content animate-spin",icon:"uds-button-icon start-content"})),[v,S,x,u,i,d]),I=l.useReducedMotion(),N=o.useMemo((()=>I?"smooth":"subtle"),[I]),w=o.useMemo((()=>{const{rest:e,hover:t,pressed:a}=M;return u?{rest:{},hover:{},pressed:{}}:{rest:e,hover:t,pressed:a}}),[u]);return s.jsx(t.SpringMotionConfig,{layoutSpeed:"3",layoutVariant:N,reducedMotion:u?"always":"user",children:s.jsx(l.m.button,{ref:y,type:h,className:C.button,initial:"icon",variants:w,whileHover:"hover",whileTap:"pressed",name:m,...g,children:s.jsxs(l.AnimatePresence,{initial:!1,mode:"popLayout",children:[d&&s.jsx(l.m.span,{variants:k,initial:"loading",animate:"loading",exit:"hide",children:s.jsx(a.Icon,{size:r.buttonIconSvgSize,name:t.o2,variant:c,color:"current",className:C.loading})},"loading"),p&&!d&&s.jsx(l.m.span,{variants:j,initial:"icon",animate:"icon",exit:"hide",children:f||s.jsx(a.Icon,{size:r.buttonIconSvgSize,name:p,variant:c,color:"current",className:C.icon})},p.name)]})})})})),G=({children:e,reduceMotion:a,layoutVariant:n})=>{const i=o.useRef(null),[r,c]=o.useState("auto");return o.useEffect((()=>{if(i.current){const e=new ResizeObserver((e=>{c(e[0].contentRect.height)}));return e.observe(i.current),()=>{e.disconnect()}}}),[]),s.jsx(t.SpringMotionConfig,{reducedMotion:a,layoutSpeed:"4",layoutVariant:n,children:s.jsx(l.m.div,{className:"overflow-hidden",style:{height:r,opacity:0},animate:{height:r,opacity:1},children:s.jsx("div",{ref:i,children:e})})})},X=o.memo((function({helpText:t,helperTextIcon:n,spacingStart:i,spacingTop:o,size:r,isFilled:l,...d}){return t?s.jsx(a.Box,{spacingTop:o,spacingStart:i,...d,children:s.jsx(e.InputHelpTextMemo,{startIcon:n,size:r,isFilled:l,children:c.isFunction(t)?t():t})}):null})),Z=o.memo((function({icon:e,className:t}){return e?s.jsx(a.IconSlot,{icon:e,iconProps:{variant:"outline"},className:t}):null})),J=o.memo((function({icon:e,className:t}){if(!e)return null;return s.jsx(a.IconSlot,{icon:e,iconProps:{variant:"outline"},"data-testid":"end-icon",className:t})})),K=o.forwardRef((function({id:e,label:t,type:n="text",size:i="md",startIcon:r,endIcon:d,helpText:u,helperTextIcon:p,hasError:h,width:m="full",defaultValue:x,required:f,readOnly:g,disabled:b,reduceMotion:y,onChange:v,className:S,...C},I){const N=o.useId(),j=e??`uds-input-${N}`,k=`uds-input-${j}-help-text`,w=o.useRef(null);o.useImperativeHandle(I,(()=>w.current));const[V,M]=o.useState(x??""),R=o.useCallback((e=>{M(e.target.value),v?.(e)}),[v]),z=l.useReducedMotion()?"smooth":"bouncy",T=y?"always":"user",P=!g&&!b,A={root:a.getStyles({inputSizeRoot:i,inputVariantRoot:"default",inputVariantValueRoot:V?"filled":"empty",className:a.cx([S,b?"opacity-50":""])}),inputWrapper:a.cx(a.getStyles({inputSizeInputWrapper:i,inputVariantInputWrapper:"default",inputVariantValueInputWrapper:V?"filled":"empty"}),"min-w-[200px]"),input:a.getStyles({inputSizeInput:i,inputVariantInput:"default",inputVariantValueInput:V?"filled":"empty",inputVariantInputPlaceholder:"default",inputVariantValueInputPlaceholder:V?"filled":"empty",className:a.cx("grow","uds-hit-target","bg-clip-text","focus:outline-none",P?"cursor-text":"cursor-not-allowed")}),label:a.cx(a.getStyles({inputSizeLabel:i,inputVariantLabel:"default",inputVariantValueLabel:V?"filled":"empty"})),labelRequired:a.getStyles({inputVariantLabelRequired:"default",inputVariantValueLabelRequired:V?"filled":"empty"}),startIcon:a.getStyles({inputSizeStartIcon:i,inputVariantStartIcon:"default",inputVariantValueStartIcon:V?"filled":"empty"}),endIcon:a.getStyles({inputSizeEndIcon:i,inputVariantEndIcon:"default",inputVariantValueEndIcon:V?"filled":"empty"})};return s.jsxs(a.VStack,{width:m,className:A.root,children:[t&&s.jsxs(a.Box,{spacingBottom:"2",columnGap:"0.5",alignItems:"flex-end",className:A.label,children:[s.jsx("label",{htmlFor:j,children:c.isFunction(t)?t():t}),f&&s.jsx("span",{className:A.labelRequired,children:"*"})]}),s.jsxs(a.Box,{position:"relative",alignItems:"center",className:A.inputWrapper,children:[s.jsx(Z,{icon:r,className:A.startIcon}),s.jsx("input",{ref:w,id:j,type:n,value:V,required:f,readOnly:g,disabled:b,"aria-describedby":k,"aria-invalid":h,onChange:R,className:A.input,...C}),d&&s.jsx(a.HStack,{alignItems:"center",gap:"1",children:s.jsx(J,{icon:d,className:A.endIcon})})]}),s.jsx(G,{reduceMotion:T,layoutVariant:z,children:s.jsx(X,{id:k,helpText:u,spacingTop:"2",size:i,isFilled:!!V,helperTextIcon:p})})]})}));K.displayName="Input";var Q=class e{name;value;activeCount=0;#e=new Set;constructor(e){this.name=e}onChange(e){return this.#e.add(e),()=>{this.#e.delete(e)}}setValue(e){this.value=e,this.#e.forEach((t=>t(e)))}static findOrCreate(t,a){let n=t.get(a);return n||(n=new e(a),t.set(a,n)),n}},Y=o.createContext(new Map),ee=e=>{const t=o.useId();return e??`uds-radio-group-${t}`},te={primary:"alert",secondary:"alert-secondary"},ae=l.m.create(a.Box),ne={layoutVariant:"smooth",layoutSpeed:"3"},ie={layoutVariant:"veryBouncy",layoutSpeed:"4"},oe=o.forwardRef((function({id:n,name:i,label:r,labelPosition:c="start",variant:d="primary",size:u="md",reduceMotion:p,value:h="",checked:m,defaultChecked:x,disabled:f,hasError:g,onChange:b,onFocus:y,onBlur:v,className:S,layerClassNames:C,...I},N){const j=o.useId(),k=n??`uds-radio-${j}`,w=o.useRef(null),{name:V,isControlled:M,checked:R,setGroupValue:z}=(({name:e,value:t,checked:a,defaultChecked:n})=>{const i=o.useContext(Y),s=i instanceof Q,r=void 0!==a||s,l=ee(e),c=o.useMemo((()=>s?i:Q.findOrCreate(i,l)),[i,s,l]),[d,u]=o.useState(c.value),p=c.name??l,h=o.useCallback((e=>{c.setValue(e),r||u(e)}),[r,c]);return o.useEffect((()=>c.onChange(u)),[c]),o.useEffect((()=>{!0===a&&h(t)}),[a,t,h]),o.useEffect((()=>{if(s)return;const e=Q.findOrCreate(i,p);return e.activeCount+=1,i.set(p,e),()=>{const e=i.get(p);e&&(e.activeCount-=1,0===e.activeCount&&i.delete(p))}}),[i,s,p]),{name:p,isControlled:r,checked:r&&!s?a:void 0!==d?t===d:n??!1,setGroupValue:h}})({name:i,value:h,checked:m,defaultChecked:x}),[T,P]=o.useState(!1),[A,B]=o.useState(!1),E=o.useMemo((()=>g?te[d]:d),[g,d]),H=o.useMemo((()=>!f&&T),[f,T]),L=o.useMemo((()=>!f&&!R&&A),[R,f,A]),O=o.useMemo((()=>L?.9:H?1.1:1),[H,L]),q=o.useMemo((()=>R?L?"opacity-55":"opacity-100":"opacity-0"),[R,L]),$=o.useMemo((()=>!f&&(L&&!R||H&&R)),[R,f,H,L]),F=o.useMemo((()=>({scale:O})),[O]),_=o.useMemo((()=>A?ie:ne),[A]),W=o.useCallback((e=>{z(e.target.value),b?.(e)}),[b,z]),D=o.useCallback((e=>{y?.(e)}),[y]),U=o.useCallback((e=>{v?.(e)}),[v]),G=o.useCallback((()=>{P(!0)}),[]),X=o.useCallback((()=>{P(!1)}),[]),Z=o.useCallback((()=>{B(!0)}),[]),J=o.useCallback((()=>{B(!1)}),[]),K=p?"always":"user",oe=l.useReducedMotion()||p?"duration-0":"duration-120",se={root:a.getStyles({radioSizeRoot:u,radioVariantValueRoot:R?"checked":"unchecked",radioVariantRoot:E,display:"flex",flexDirection:"start"===c?"row":"row-reverse",alignItems:"center",className:a.cx([{"cursor-pointer":!f,"cursor-default":f,"opacity-50":f},S,C?.root])}),radio:a.getStyles({radioSizeRadio:u,radioVariantRadio:E,radioVariantValueRadio:R?"checked":"unchecked",className:a.cx(["border","uds-ring","uds-ring-within",oe,"transition-[background-color,border-color]","transition-shadow",C?.radio])}),radioCircle:a.getStyles({radioVariantRadioCircle:E,radioVariantValueRadioCircle:R?"checked":"unchecked",className:a.cx(["pointer-events-none","w-[8px]","h-[8px]",q,oe,"transition-opacity"])}),htmlRadio:a.cx("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:a.cx("start"===c?"text-start":"text-end",C?.label)},re=r?l.m.label:l.m.div;return s.jsx(t.SpringMotionConfig,{reducedMotion:K,..._,children:s.jsxs(re,{className:se.root,"data-testid":"container",onHoverStart:G,onHoverEnd:X,onTapStart:Z,onTap:J,onTapCancel:J,tabIndex:-1,children:[s.jsxs(ae,{position:"relative",borderRadius:"full",alignItems:"center",justifyContent:"center",flex:"none",className:se.radio,animate:F,insetShadow:$?"lg-invert":"none",children:[s.jsx("input",{type:"radio",...I,ref:e=>{w.current=e,"function"==typeof N?N(e):null!==N&&(N.current=e)},onFocus:D,onBlur:U,id:k,name:V,value:h,disabled:f,"aria-invalid":g,onChange:W,...M?{checked:R}:{defaultChecked:x},className:se.htmlRadio}),s.jsx(a.Box,{borderRadius:"full",className:se.radioCircle})]}),r&&s.jsx(e.FormLabel,{as:"div",variant:"inherit",color:"inherit",label:r,className:se.label})]})})}));oe.displayName="Radio";var se=a.createSlot(),re=class extends Q{onChangeCb;isControlled;constructor(e,t){super(e),this.isControlled=t}setValue(e,t=!1){this.isControlled&&!t?this.onChangeCb?.(e):super.setValue(e)}},le=o.forwardRef((function({asChild:e,name:t,value:a,defaultValue:n,onChange:i,...r},l){const c=void 0!==a,d=ee(t),u=o.useMemo((()=>{const e=new re(d,c);return e.value=c?a:n,e}),[n,c,d,a]);o.useEffect((()=>{u.onChangeCb=i}),[i,u]),o.useEffect((()=>{c&&u.setValue(a,!0)}),[c,u,a]),o.useEffect((()=>u.onChange((e=>i?.(e)))),[i,u]);const p=e?se:"div";return s.jsx(Y.Provider,{value:u,children:s.jsx(p,{role:"radiogroup",ref:l,...r})})}));le.displayName="RadioGroupProvider";var ce={md:{isOnX:20},sm:{isOnX:12}},de=l.m.create(a.Box),ue={layoutVariant:"bouncy",layoutSpeed:"4"},pe=o.forwardRef((function({id:n,isOn:i,defaultIsOn:r,onChange:c,label:d,labelPosition:u="start",size:p="md",onIcon:h,offIcon:m,reduceMotion:x,disabled:f,required:g,onFocus:b,onBlur:y,className:v,layerClassNames:S,...C},I){const N=o.useId(),j=n??`uds-input-${N}`,k=o.useRef(null),w=void 0!==i,[V,M]=o.useState(w?i:r),[R,z]=o.useState(!1),T=o.useMemo((()=>!f&&R),[f,R]),{isOnX:P}=ce[p],A=o.useMemo((()=>({initial:{scale:1,x:V?P:0},animate:{scale:T?1.05:1,x:V?P:0}})),[T,V,P]),B=o.useCallback((e=>{c?.(e),w||M(e.target.checked)}),[w,c]),E=o.useCallback((e=>{b?.(e)}),[b]),H=o.useCallback((e=>{y?.(e)}),[y]),L=o.useCallback((()=>{z(!0)}),[]),O=o.useCallback((()=>{z(!1)}),[]),q=x?"always":"user",$=l.useReducedMotion()||x?"duration-0":"duration-120";o.useEffect((()=>{w&&M(i)}),[i,w]);const F={root:a.getStyles({switchSizeRoot:p,switchVariantRoot:"default",switchVariantActiveRoot:V?"on":"off",display:"flex",flexDirection:"start"===u?"row":"row-reverse",alignItems:"center",className:a.cx("group",{"cursor-pointer":!f,"cursor-default":f,"opacity-50":f},S?.root,v)}),switch:a.getStyles({switchVariantSwitch:"default",switchSizeSwitch:p,switchVariantActiveSwitch:V?"on":"off",borderRadius:"full",position:"relative",alignItems:"center",className:a.cx("uds-ring","uds-ring-within",$,"transition-[background-color,box-shadow]",S?.switch)}),handle:a.getStyles({switchSizeHandle:p,className:a.cx("relative","pointer-events-none","rounded-full","overflow-hidden",S?.handle)}),handleCircle:a.getStyles({switchVariantActiveHandle:V?"on":"off",switchVariantHandle:"default",className:a.cx("absolute","top-0","left-0","right-0","bottom-0","opacity-95 group-hover:opacity-100",$,"transition-[background-color,box-shadow,opacity]")}),handleIcon:a.getStyles({switchSizeHandleIcon:p,switchVariantHandleIcon:"default",switchVariantActiveHandleIcon:V?"on":"off",className:a.cx("absolute","opacity-0","top-1/2","left-1/2","transform","translate-x-[-50%]","translate-y-[-50%]",$,"transition-opacity")}),htmlCheckbox:a.cx("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:a.cx("start"===u?"text-start":"text-end",S?.label)},_=d?l.m.label:l.m.div;return s.jsx(t.SpringMotionConfig,{reducedMotion:q,...ue,children:s.jsxs(_,{className:F.root,"data-testid":"container",onHoverStart:L,onHoverEnd:O,tabIndex:-1,children:[s.jsxs(de,{className:F.switch,children:[s.jsx("input",{type:"checkbox",...C,ref:e=>{k.current=e,"function"==typeof I?I(e):null!==I&&(I.current=e)},onFocus:E,onBlur:H,id:j,disabled:f,required:g,checked:w?V:void 0,defaultChecked:w?void 0:r,onChange:B,className:F.htmlCheckbox,style:{}}),s.jsxs(de,{className:F.handle,...A,children:[s.jsx(a.Box,{className:F.handleCircle}),h&&s.jsx(a.IconSlot,{icon:h,iconProps:{variant:"fill",size:"sm"},"data-testid":"on-icon",className:a.cx(F.handleIcon,V?"opacity-100":"opacity-0")}),m&&s.jsx(a.IconSlot,{icon:m,iconProps:{variant:"fill",size:"sm"},"data-testid":"off-icon",className:a.cx(F.handleIcon,V?"opacity-0":"opacity-100")})]})]}),d&&s.jsx(e.FormLabel,{as:"div",variant:"inherit",color:"inherit",required:g,label:d,className:F.label})]})})}));pe.displayName="Switch",Object.defineProperty(exports,"Pressable",{enumerable:!0,get:function(){return t.Pressable}}),Object.defineProperty(exports,"SpringMotionConfig",{enumerable:!0,get:function(){return t.SpringMotionConfig}}),Object.defineProperty(exports,"Menu",{enumerable:!0,get:function(){return d.Menu}}),exports.Avatar=S,exports.AvatarIcon=b,exports.AvatarImage=v,exports.AvatarText=y,exports.Badge=C,exports.Button=z,exports.Checkbox=L,exports.Chip=D,exports.ChipButton=$,exports.ChipDismissible=F,exports.ChipLink=_,exports.ChipToggle=W,exports.IconButton=U,exports.Input=K,exports.Radio=oe,exports.RadioGroupProvider=le,exports.Switch=pe;
|
package/dist/client/index.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
"use client";
|
2
|
-
import{FormLabel as e,InputHelpTextMemo as a,Image as t}from"../chunk-MABGUDH4.js";import{o2 as n,SpringMotionConfig as i,Pressable as o,a as r,o as s,e as l,t as c,e2 as d}from"../chunk-R5VO4HNN.js";export{Pressable,SpringMotionConfig}from"../chunk-R5VO4HNN.js";import{getStyles as u,cx as h,HStack as p,IconSlot as m,createSlot as f,Icon as v,Box as b,Text as y,VStack as g}from"../chunk-UZXPZDSS.js";import{parseDeprecatedButtonPaletteVariant as x}from"../chunk-37HUQ2LJ.js";import{BUTTON_CSS_VAR_MAP as N}from"../chunk-WLUJBM5E.js";import{forwardRef as C,useMemo as V,useRef as w,useImperativeHandle as I,isValidElement as k,cloneElement as S,useId as z,useState as R,useCallback as T,useEffect as P,memo as L,createContext as H,useContext as A}from"react";import{jsxs as M,jsx as $,Fragment as j}from"react/jsx-runtime";import{buttonIconSvgSize as B}from"@yahoo/uds/fixtures";import{m as E,useReducedMotion as O,AnimatePresence as W}from"motion/react";import{isFunction as q}from"lodash-es";export{Menu}from"@yahoo/uds/client/Menu";/*! © 2025 Yahoo, Inc. UDS v0.0.0-development */var D={first:e=>e[0]||"",last:e=>e[e.length-1]||"",firstAndLast:e=>1===e.length?e[0]:`${e[0]}${e[e.length-1]}`,firstTwo:e=>e.slice(0,2).join(""),firstThree:e=>e.slice(0,3).join(""),firstOfEach:e=>e.join("")},F=(e,a="firstAndLast")=>{if(!e)return"";const t=e.trim().split(/\s+/).map((e=>e[0].toUpperCase()));return"function"==typeof a?a(e):D[a](t)},G=(e="md")=>u({avatarSizeRoot:e,flexShrink:"0",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",overflow:"visible",className:"truncate"}),U=e=>e?{height:e,width:e}:{},X="primary",J="md",Z={primary:d,secondary:c},Q=({size:e=J,variant:a=X,customSize:t,icon:n,className:i})=>{const o=V((()=>U(t)),[t]),r=V((()=>h(G(e),u({avatarIconVariantRoot:a,overflow:"hidden"}),i)),[i,e,a]),s=V((()=>u({width:"full",height:"full",flexShrink:"0",overflow:"hidden",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center"})),[]),l=V((()=>({...o,boxSizing:"content-box"})),[o]),c=V((()=>n??Z[a??"primary"]),[n,a]),d=V((()=>u({avatarSizeIcon:e})),[e]);return $(b,{className:r,style:o,children:$(b,{className:s,style:l,children:$(v,{name:c,variant:"fill",color:"current",className:d,"data-testid":"avatar-icon"})})})};Q.displayName="AvatarIcon";var K=({size:e=J,variant:a=X,name:t,initials:n,customSize:i,abbreviationStrategy:o,className:r})=>{const s=V((()=>h(G(e),u({avatarTextVariantRoot:a,overflow:"hidden"}),"truncate",r)),[r,e,a]),l=V((()=>u({width:"full",height:"full",flexShrink:"0",overflow:"hidden",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",className:"truncate"})),[]),c=V((()=>U(i)),[i]),d=V((()=>({...c,boxSizing:"content-box"})),[c]);return $(b,{className:s,style:c,children:$(y,{color:"inherit",variant:"inherit",className:l,style:d,"data-testid":"avatar-text",children:n||F(t,o)})})};K.displayName="AvatarText";var Y=({size:e=J,variant:a=X,src:n,srcSet:i,customSize:o,alt:r,imageProps:s,abbreviationStrategy:l,fallback:c,className:d})=>{const[p,m]=R("loading");P((()=>{let e=!0;if(n||i){const a=new Image;a.onload=()=>{e&&m("loaded")},a.onerror=()=>{e&&m("error")},n&&(a.src=n),i&&(a.srcset=i)}else m("error");return()=>{e=!1}}),[n,i]);const f=V((()=>h(G(e),u({avatarImageVariantRoot:a,overflow:"hidden"}),d)),[d,e,a]),v=V((()=>u({width:"full",height:"full",flexShrink:"0",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",contentFit:"cover"})),[]),y=V((()=>U(o)),[o]),g=V((()=>({...y,boxSizing:"content-box"})),[y]);if("loaded"===p)return $(b,{className:f,style:y,children:$(t,{src:n,srcSet:i,alt:r,className:v,style:g,...s})});const x={size:e,customSize:o,variant:a};return c||r?$(K,{name:r,initials:c,abbreviationStrategy:l,...x}):$(Q,{...x})};Y.displayName="AvatarImage";var _=e=>$(Y,{...e});_.displayName="Avatar";var ee=C((function({variant:e="primary",size:a="md",minWidth:t,maxWidth:n=200,startIcon:i,endIcon:o,backgroundColor:r,color:s,iconColor:l,borderColor:c,children:d,className:f,...v},b){const y=u({badgeSizeRoot:a,badgeVariantRoot:e,className:h(["uds-badge","uds-badge-variant","uds-badge-size",f])}),g=u({badgeVariantIcon:e,badgeSizeIcon:a,className:h(["uds-badge-iconSize","uds-badge-iconColor"])}),x=V((()=>({...t?{minWidth:`${t}px`}:{},..."full"===n?{}:{maxWidth:`${n}px`},...r?{backgroundColor:r}:{},...c?{borderColor:c}:{},...s?{color:s}:{}})),[r,c,s,n,t]),N=V((()=>({variant:"fill",style:{...l?{color:l}:{}}})),[l]);return M(p,{ref:b,gap:"2",display:"inline-flex",alignItems:"center",className:y,style:x,...v,children:[i&&$(m,{icon:i,iconProps:N,"data-testid":"start-icon",className:g}),$("span",{className:"flex-1 truncate whitespace-nowrap text-center",children:d}),o&&$(m,{icon:o,iconProps:N,"data-testid":"end-icon",className:g})]})}));ee.displayName="Badge";var ae={scale:.7,opacity:0},te={scale:[.7,.7,1],opacity:[0,0,1],transition:{times:[0,.5,1]}},ne={icon:te,hide:ae,loading:ae},ie={loading:te,hide:ae,icon:ae},oe=`var(${N.columnGap})`,re=`var(${N.iconSize})`,se={rest:{scale:`var(${N.effects.scale.rest})`},hover:{scale:`var(${N.effects.scale.hover})`},pressed:{scale:`var(${N.effects.scale.pressed})`},withoutIcon:{columnGap:"0px"},withIcon:{columnGap:oe}},le={hide:{width:"0px",opacity:0,display:"none"},loading:{width:re,display:"flex",opacity:1},icon:{width:re,display:"flex",opacity:1}},ce=C((function({variant:e,size:a,startIcon:t,endIcon:o,iconVariant:r,loading:s,disableEffects:l,children:c,asChild:d,type:p="button",className:b,width:y,...g},N){const C=w(null);I(N,(()=>C.current));const z=V((()=>f()),[]),R=V((()=>E.create(z)),[z]),T=o?"icon":"hide",P=(({startIcon:e,endIcon:a,loading:t})=>e||a||t?"withIcon":"withoutIcon")({startIcon:t,endIcon:o,loading:s}),L=(({loading:e,startIcon:a})=>e?"loading":a?"icon":"hide")({loading:s,startIcon:t}),{palette:H,variant:A}=V((()=>x({flatVariant:e})),[e]),q=V((()=>({button:u({width:y,buttonSize:a,buttonVariant:A,buttonPalette:H,className:h("uds-button","uds-ring","uds-hit-target",s&&"uds-button-loading",l&&"uds-button-without-effects","withIcon"===P&&"uds-button-with-gap",b)}),content:"uds-button-content truncate",iconContainer:"uds-button-icon-container flex overflow-clip",loading:"uds-button-icon start-content animate-spin",start:"uds-button-icon start-content",end:"uds-button-icon end-content"})),[y,a,A,H,b,s,l,P]),D=O()?"smooth":"subtle",F=V((()=>$(E.span,{className:q.iconContainer,initial:!1,variants:le,animate:L,children:M(W,{initial:!1,mode:"popLayout",children:[s&&$(E.span,{variants:ie,initial:"hide",animate:"loading",exit:"hide",children:$(v,{size:B,name:n,variant:r,color:"current",className:q.loading})},"loading"),t&&!s&&$(E.span,{variants:ne,initial:"hide",animate:"icon",exit:"hide",children:$(m,{className:q.start,icon:t,iconProps:{size:B,variant:r,color:"current"}})})]})})),[q.iconContainer,q.loading,q.start,L,s,r,t]),G=V((()=>$(E.span,{className:q.iconContainer,initial:!1,variants:le,animate:T,children:$(W,{initial:!1,mode:"popLayout",children:o&&$(E.span,{variants:ne,initial:"hide",animate:"icon",exit:"hide",children:$(m,{className:q.end,icon:o,iconProps:{size:B,variant:r,color:"current"}})})})})),[q.iconContainer,q.end,o,T,r]),U=V((()=>l?{...se,rest:{},hover:{},pressed:{}}:se),[l]);return d&&k(c)?$(i,{layoutSpeed:"3",layoutVariant:D,children:$(R,{type:p,className:q.button,initial:["hide",P],animate:P,variants:U,whileHover:"hover",whileTap:"pressed",...g,children:S(c,c.props,M(j,{children:[F,$("span",{className:q.content,children:c.props.children}),G]}))})}):$(i,{layoutSpeed:"3",layoutVariant:D,children:M(E.button,{ref:C,type:p,className:q.button,initial:["hide",P],animate:P,variants:U,whileHover:"hover",whileTap:"pressed",...g,children:[F,$("span",{className:q.content,children:c}),G]})})})),de={primary:"alert",secondary:"alert-secondary"},ue=e=>"indeterminate"===e,he=e=>ue(e)?s:l,pe=E.create(b),me={layoutVariant:"smooth",layoutSpeed:"3"},fe={layoutVariant:"veryBouncy",layoutSpeed:"4"},ve=C((function({id:a,checked:t,defaultChecked:n,onChange:o,label:r,labelPosition:s="start",variant:l="primary",size:c="md",reduceMotion:d,disabled:p,required:m,hasError:f,className:b,layerClassNames:y,...g},x){const N=z(),C=a??`uds-input-${N}`,I=w(null),k=void 0!==t,[S,L]=R(k?t:n),[H,A]=R(!1),[j,B]=R(!1),W=V((()=>f?de[l]:l),[f,l]),q=!p&&H,D=!p&&j,F=V((()=>D?.9:q?1.1:1),[D,q]),G=V((()=>S?D?"opacity-55":"opacity-100":"opacity-0"),[S,D]),U=V((()=>({scale:F})),[F]),X=V((()=>j?fe:me),[j]),J=T((e=>{o?.(e),k||L(e.target.checked)}),[k,o]),Z=T((()=>{A(!0)}),[]),Q=T((()=>{A(!1)}),[]),K=T((()=>{B(!0)}),[]),Y=T((()=>{B(!1)}),[]),_=e=>{I.current&&(I.current.indeterminate=ue(e))},ee=d?"always":"user",ae=O()||d?"duration-0":"duration-120";P((()=>{k&&L(t)}),[t,k]),P((()=>{_(S)}),[S]);const te=ue(S)?"indeterminate":S?"checked":"unchecked",ne={root:u({checkboxSizeRoot:c,checkboxVariantRoot:W,checkboxVariantValueRoot:te,display:"flex",flexDirection:"start"===s?"row":"row-reverse",alignItems:"center",className:h({"cursor-pointer":!p,"cursor-default":p,"opacity-50":p},b,y?.root)}),checkbox:u({checkboxSizeCheckbox:c,checkboxVariantCheckbox:W,checkboxVariantValueCheckbox:te,className:h("border","rounded-[4px]","uds-ring","uds-ring-within",ae,"transition-[background-color,border-color,box-shadow]",y?.checkbox)}),check:u({checkboxVariantCheckboxIcon:W,checkboxVariantValueCheckboxIcon:te,className:h("pointer-events-none",G,ae,"transition-opacity")}),htmlCheckbox:h("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:h("start"===s?"text-start":"text-end",y?.label)},ie=r?E.label:E.div;return $(i,{reducedMotion:ee,...X,children:M(ie,{className:ne.root,"data-testid":"container",onHoverStart:Z,onHoverEnd:Q,onTapStart:K,onTap:Y,onTapCancel:Y,tabIndex:-1,children:[M(pe,{position:"relative",className:ne.checkbox,alignItems:"center",justifyContent:"center",flex:"none",animate:U,children:[$("input",{type:"checkbox",...g,ref:e=>{I.current=e,_(S),"function"==typeof x?x(e):null!==x&&(x.current=e)},id:C,disabled:p,required:m,"aria-invalid":f,checked:k?!ue(S)&&S:void 0,defaultChecked:k?void 0:n,onChange:J,className:ne.htmlCheckbox}),$(v,{name:he(S),size:"sm",className:ne.check})]}),r&&$(e,{as:"div",variant:"inherit",color:"inherit",required:m,label:r,className:ne.label})]})})}));ve.displayName="Checkbox";var be="primary",ye=C((function({size:e="md",minWidth:a,maxWidth:t=200,startIcon:n,endIcon:i,as:o="div",reduceMotion:r,disabled:s=!1,className:l,layerClassNames:c,children:d,...f},v){const b=O()||r?"duration-0":"duration-120",g=V((()=>({root:u({chipSizeRoot:e,className:h({"pointer-events-none":s,"cursor-default":s,"opacity-50":s},"focus-visible:-outline-offset-2","uds-ring",b,"transition-[background-color,outline-color,box-shadow]",c?.root,l)}),icon:u({chipSizeIcon:e,className:c?.icon})})),[l,b,s,c?.icon,c?.root,e]);return $(p,{asChild:!0,ref:v,display:"inline-flex",alignItems:"center",style:{maxWidth:`${t}px`,...a?{minWidth:`${a}px`}:{}},className:g.root,...f,children:M(o,{disabled:s,children:[n&&$(m,{icon:n,iconProps:{variant:"fill",className:g.icon},"data-testid":"start-icon"}),$(y,{as:"span",className:"truncate whitespace-nowrap",flex:"1",textAlign:"center",color:"current",variant:"inherit",children:d}),i&&$(m,{icon:i,iconProps:{variant:"fill",className:g.icon},"data-testid":"end-icon"})]})})}));ye.displayName="ChipBase";var ge=C((function({variant:e=be,...a},t){const n=V((()=>({root:u({chipLinkVariantRoot:e}),icon:u({chipLinkVariantIcon:e})})),[e]);return $(ye,{as:"button",ref:t,variant:e,layerClassNames:n,...a})}));ge.displayName="ChipButton";var xe=C((function({dismissButtonAriaLabel:e,onDismiss:a,dismissIcon:t,variant:n=be,disabled:i,...s},l){const c=V((()=>({root:u({chipDismissibleVariantRoot:n}),icon:u({chipDismissibleVariantIcon:n})})),[n]),d=T((e=>{e.stopPropagation(),a?.()}),[a]),p={icon:h("uds-chip-dismissible-button","uds-hit-target")};return $(ye,{ref:l,variant:n,disabled:i,tabIndex:-1,endIcon:a=>$(o,{"aria-label":e,className:p.icon,onClick:d,disabled:i,children:$(m,{icon:t??r,iconProps:a,"data-testid":"dismiss-icon"})}),layerClassNames:c,...s})}));xe.displayName="ChipDismissible";var Ne=C((function({variant:e=be,href:a,disabled:t,...n},i){const o=V((()=>({root:u({chipLinkVariantRoot:e}),icon:u({chipLinkVariantIcon:e})})),[e]);return $(ye,{as:"a",ref:i,variant:e,disabled:t,layerClassNames:o,...{...n,href:t?void 0:a}})}));Ne.displayName="ChipLink";var Ce=C((function({isToggled:e=!1,onToggle:a,onClick:t,variant:n=be,...i},o){const r=V((()=>({root:u({chipToggleVariantRoot:n,chipToggleVariantActiveRoot:e?"on":"off"}),icon:u({chipToggleVariantIcon:n})})),[e,n]),s=T((n=>{a?.(!e),t?.(n)}),[e,t,a]);return $(ye,{ref:o,as:"button",variant:n,onClick:s,"aria-pressed":e,layerClassNames:r,...i})}));Ce.displayName="ChipToggle";var Ve=C((function({onClick:e,href:a,linkProps:t,onDismiss:n,onToggle:i,isToggled:o,...r},s){return n?$(xe,{ref:s,onDismiss:n,...r}):i?$(Ce,{ref:s,onToggle:i,isToggled:o,...r}):a?$(Ne,{ref:s,href:a,...r,...t}):$(ge,{ref:s,onClick:e,...r})}));Ve.displayName="Chip";var we=C((function({variant:e,size:a,iconVariant:t,loading:o,disableEffects:r,name:s,type:l="button",htmlName:c,className:d,children:p,...m},f){const b=w(null);I(f,(()=>b.current));const{palette:y,variant:g}=x({flatVariant:e}),N=V((()=>({button:u({buttonVariant:g,buttonPalette:y,iconButtonSize:a,className:h("uds-icon-button","uds-button","uds-ring","uds-hit-target",o&&"uds-button-loading",r&&"uds-button-without-effects",d)}),loading:"uds-button-icon start-content animate-spin",icon:"uds-button-icon start-content"})),[y,g,d,r,a,o]),C=O(),k=V((()=>C?"smooth":"subtle"),[C]),S=V((()=>{const{rest:e,hover:a,pressed:t}=se;return r?{rest:{},hover:{},pressed:{}}:{rest:e,hover:a,pressed:t}}),[r]);return $(i,{layoutSpeed:"3",layoutVariant:k,reducedMotion:r?"always":"user",children:$(E.button,{ref:b,type:l,className:N.button,initial:"icon",variants:S,whileHover:"hover",whileTap:"pressed",name:c,...m,children:M(W,{initial:!1,mode:"popLayout",children:[o&&$(E.span,{variants:ie,initial:"loading",animate:"loading",exit:"hide",children:$(v,{size:B,name:n,variant:t,color:"current",className:N.loading})},"loading"),s&&!o&&$(E.span,{variants:ne,initial:"icon",animate:"icon",exit:"hide",children:p||$(v,{size:B,name:s,variant:t,color:"current",className:N.icon})},s.name)]})})})})),Ie=({children:e,reduceMotion:a,layoutVariant:t})=>{const n=w(null),[o,r]=R("auto");return P((()=>{if(n.current){const e=new ResizeObserver((e=>{r(e[0].contentRect.height)}));return e.observe(n.current),()=>{e.disconnect()}}}),[]),$(i,{reducedMotion:a,layoutSpeed:"4",layoutVariant:t,children:$(E.div,{className:"overflow-hidden",style:{height:o,opacity:0},animate:{height:o,opacity:1},children:$("div",{ref:n,children:e})})})},ke=L((function({helpText:e,helperTextIcon:t,spacingStart:n,spacingTop:i,size:o,isFilled:r,...s}){return e?$(b,{spacingTop:i,spacingStart:n,...s,children:$(a,{startIcon:t,size:o,isFilled:r,children:q(e)?e():e})}):null})),Se=L((function({icon:e,className:a}){return e?$(m,{icon:e,iconProps:{variant:"outline"},className:a}):null})),ze=L((function({icon:e,className:a}){if(!e)return null;return $(m,{icon:e,iconProps:{variant:"outline"},"data-testid":"end-icon",className:a})})),Re=C((function({id:e,label:a,type:t="text",size:n="md",startIcon:i,endIcon:o,helpText:r,helperTextIcon:s,hasError:l,width:c="full",defaultValue:d,required:m,readOnly:f,disabled:v,reduceMotion:y,onChange:x,className:N,...C},V){const k=z(),S=e??`uds-input-${k}`,P=`uds-input-${S}-help-text`,L=w(null);I(V,(()=>L.current));const[H,A]=R(d??""),j=T((e=>{A(e.target.value),x?.(e)}),[x]),B=O()?"smooth":"bouncy",E=y?"always":"user",W=!f&&!v,D={root:u({inputSizeRoot:n,inputVariantRoot:"default",inputVariantValueRoot:H?"filled":"empty",className:h([N,v?"opacity-50":""])}),inputWrapper:h(u({inputSizeInputWrapper:n,inputVariantInputWrapper:"default",inputVariantValueInputWrapper:H?"filled":"empty"}),"min-w-[200px]"),input:u({inputSizeInput:n,inputVariantInput:"default",inputVariantValueInput:H?"filled":"empty",inputVariantInputPlaceholder:"default",inputVariantValueInputPlaceholder:H?"filled":"empty",className:h("grow","uds-hit-target","bg-clip-text","focus:outline-none",W?"cursor-text":"cursor-not-allowed")}),label:h(u({inputSizeLabel:n,inputVariantLabel:"default",inputVariantValueLabel:H?"filled":"empty"})),labelRequired:u({inputVariantLabelRequired:"default",inputVariantValueLabelRequired:H?"filled":"empty"}),startIcon:u({inputSizeStartIcon:n,inputVariantStartIcon:"default",inputVariantValueStartIcon:H?"filled":"empty"}),endIcon:u({inputSizeEndIcon:n,inputVariantEndIcon:"default",inputVariantValueEndIcon:H?"filled":"empty"})};return M(g,{width:c,className:D.root,children:[a&&M(b,{spacingBottom:"2",columnGap:"0.5",alignItems:"flex-end",className:D.label,children:[$("label",{htmlFor:S,children:q(a)?a():a}),m&&$("span",{className:D.labelRequired,children:"*"})]}),M(b,{position:"relative",alignItems:"center",className:D.inputWrapper,children:[$(Se,{icon:i,className:D.startIcon}),$("input",{ref:L,id:S,type:t,value:H,required:m,readOnly:f,disabled:v,"aria-describedby":P,"aria-invalid":l,onChange:j,className:D.input,...C}),o&&$(p,{alignItems:"center",gap:"1",children:$(ze,{icon:o,className:D.endIcon})})]}),$(Ie,{reduceMotion:E,layoutVariant:B,children:$(ke,{id:P,helpText:r,spacingTop:"2",size:n,isFilled:!!H,helperTextIcon:s})})]})}));Re.displayName="Input";var Te=class e{name;value;activeCount=0;#e=new Set;constructor(e){this.name=e}onChange(e){return this.#e.add(e),()=>{this.#e.delete(e)}}setValue(e){this.value=e,this.#e.forEach((a=>a(e)))}static findOrCreate(a,t){let n=a.get(t);return n||(n=new e(t),a.set(t,n)),n}},Pe=H(new Map),Le=e=>{const a=z();return e??`uds-radio-group-${a}`},He={primary:"alert",secondary:"alert-secondary"},Ae=E.create(b),Me={layoutVariant:"smooth",layoutSpeed:"3"},$e={layoutVariant:"veryBouncy",layoutSpeed:"4"},je=C((function({id:a,name:t,label:n,labelPosition:o="start",variant:r="primary",size:s="md",reduceMotion:l,value:c="",checked:d,defaultChecked:p,disabled:m,hasError:f,onChange:v,onFocus:y,onBlur:g,className:x,layerClassNames:N,...C},I){const k=z(),S=a??`uds-radio-${k}`,L=w(null),{name:H,isControlled:j,checked:B,setGroupValue:W}=(({name:e,value:a,checked:t,defaultChecked:n})=>{const i=A(Pe),o=i instanceof Te,r=void 0!==t||o,s=Le(e),l=V((()=>o?i:Te.findOrCreate(i,s)),[i,o,s]),[c,d]=R(l.value),u=l.name??s,h=T((e=>{l.setValue(e),r||d(e)}),[r,l]);return P((()=>l.onChange(d)),[l]),P((()=>{!0===t&&h(a)}),[t,a,h]),P((()=>{if(o)return;const e=Te.findOrCreate(i,u);return e.activeCount+=1,i.set(u,e),()=>{const e=i.get(u);e&&(e.activeCount-=1,0===e.activeCount&&i.delete(u))}}),[i,o,u]),{name:u,isControlled:r,checked:r&&!o?t:void 0!==c?a===c:n??!1,setGroupValue:h}})({name:t,value:c,checked:d,defaultChecked:p}),[q,D]=R(!1),[F,G]=R(!1),U=V((()=>f?He[r]:r),[f,r]),X=V((()=>!m&&q),[m,q]),J=V((()=>!m&&!B&&F),[B,m,F]),Z=V((()=>J?.9:X?1.1:1),[X,J]),Q=V((()=>B?J?"opacity-55":"opacity-100":"opacity-0"),[B,J]),K=V((()=>!m&&(J&&!B||X&&B)),[B,m,X,J]),Y=V((()=>({scale:Z})),[Z]),_=V((()=>F?$e:Me),[F]),ee=T((e=>{W(e.target.value),v?.(e)}),[v,W]),ae=T((e=>{y?.(e)}),[y]),te=T((e=>{g?.(e)}),[g]),ne=T((()=>{D(!0)}),[]),ie=T((()=>{D(!1)}),[]),oe=T((()=>{G(!0)}),[]),re=T((()=>{G(!1)}),[]),se=l?"always":"user",le=O()||l?"duration-0":"duration-120",ce={root:u({radioSizeRoot:s,radioVariantValueRoot:B?"checked":"unchecked",radioVariantRoot:U,display:"flex",flexDirection:"start"===o?"row":"row-reverse",alignItems:"center",className:h([{"cursor-pointer":!m,"cursor-default":m,"opacity-50":m},x,N?.root])}),radio:u({radioSizeRadio:s,radioVariantRadio:U,radioVariantValueRadio:B?"checked":"unchecked",className:h(["border","uds-ring","uds-ring-within",le,"transition-[background-color,border-color]","transition-shadow",N?.radio])}),radioCircle:u({radioVariantRadioCircle:U,radioVariantValueRadioCircle:B?"checked":"unchecked",className:h(["pointer-events-none","w-[8px]","h-[8px]",Q,le,"transition-opacity"])}),htmlRadio:h("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:h("start"===o?"text-start":"text-end",N?.label)},de=n?E.label:E.div;return $(i,{reducedMotion:se,..._,children:M(de,{className:ce.root,"data-testid":"container",onHoverStart:ne,onHoverEnd:ie,onTapStart:oe,onTap:re,onTapCancel:re,tabIndex:-1,children:[M(Ae,{position:"relative",borderRadius:"full",alignItems:"center",justifyContent:"center",flex:"none",className:ce.radio,animate:Y,insetShadow:K?"lg-invert":"none",children:[$("input",{type:"radio",...C,ref:e=>{L.current=e,"function"==typeof I?I(e):null!==I&&(I.current=e)},onFocus:ae,onBlur:te,id:S,name:H,value:c,disabled:m,"aria-invalid":f,onChange:ee,...j?{checked:B}:{defaultChecked:p},className:ce.htmlRadio}),$(b,{borderRadius:"full",className:ce.radioCircle})]}),n&&$(e,{as:"div",variant:"inherit",color:"inherit",label:n,className:ce.label})]})})}));je.displayName="Radio";var Be=f(),Ee=class extends Te{onChangeCb;isControlled;constructor(e,a){super(e),this.isControlled=a}setValue(e,a=!1){this.isControlled&&!a?this.onChangeCb?.(e):super.setValue(e)}},Oe=C((function({asChild:e,name:a,value:t,defaultValue:n,onChange:i,...o},r){const s=void 0!==t,l=Le(a),c=V((()=>{const e=new Ee(l,s);return e.value=s?t:n,e}),[n,s,l,t]);P((()=>{c.onChangeCb=i}),[i,c]),P((()=>{s&&c.setValue(t,!0)}),[s,c,t]),P((()=>c.onChange((e=>i?.(e)))),[i,c]);const d=e?Be:"div";return $(Pe.Provider,{value:c,children:$(d,{role:"radiogroup",ref:r,...o})})}));Oe.displayName="RadioGroupProvider";var We={md:{isOnX:20},sm:{isOnX:12}},qe=E.create(b),De={layoutVariant:"bouncy",layoutSpeed:"4"},Fe=C((function({id:a,isOn:t,defaultIsOn:n,onChange:o,label:r,labelPosition:s="start",size:l="md",onIcon:c,offIcon:d,reduceMotion:p,disabled:f,required:v,onFocus:y,onBlur:g,className:x,layerClassNames:N,...C},I){const k=z(),S=a??`uds-input-${k}`,L=w(null),H=void 0!==t,[A,j]=R(H?t:n),[B,W]=R(!1),q=V((()=>!f&&B),[f,B]),{isOnX:D}=We[l],F=V((()=>({initial:{scale:1,x:A?D:0},animate:{scale:q?1.05:1,x:A?D:0}})),[q,A,D]),G=T((e=>{o?.(e),H||j(e.target.checked)}),[H,o]),U=T((e=>{y?.(e)}),[y]),X=T((e=>{g?.(e)}),[g]),J=T((()=>{W(!0)}),[]),Z=T((()=>{W(!1)}),[]),Q=p?"always":"user",K=O()||p?"duration-0":"duration-120";P((()=>{H&&j(t)}),[t,H]);const Y={root:u({switchSizeRoot:l,switchVariantRoot:"default",switchVariantActiveRoot:A?"on":"off",display:"flex",flexDirection:"start"===s?"row":"row-reverse",alignItems:"center",className:h("group",{"cursor-pointer":!f,"cursor-default":f,"opacity-50":f},N?.root,x)}),switch:u({switchVariantSwitch:"default",switchSizeSwitch:l,switchVariantActiveSwitch:A?"on":"off",borderRadius:"full",position:"relative",alignItems:"center",className:h("uds-ring","uds-ring-within",K,"transition-[background-color,box-shadow]",N?.switch)}),handle:u({switchSizeHandle:l,className:h("relative","pointer-events-none","rounded-full","overflow-hidden",N?.handle)}),handleCircle:u({switchVariantActiveHandle:A?"on":"off",switchVariantHandle:"default",className:h("absolute","top-0","left-0","right-0","bottom-0","opacity-95 group-hover:opacity-100",K,"transition-[background-color,box-shadow,opacity]")}),handleIcon:u({switchSizeHandleIcon:l,switchVariantHandleIcon:"default",switchVariantActiveHandleIcon:A?"on":"off",className:h("absolute","opacity-0","top-1/2","left-1/2","transform","translate-x-[-50%]","translate-y-[-50%]",K,"transition-opacity")}),htmlCheckbox:h("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:h("start"===s?"text-start":"text-end",N?.label)},_=r?E.label:E.div;return $(i,{reducedMotion:Q,...De,children:M(_,{className:Y.root,"data-testid":"container",onHoverStart:J,onHoverEnd:Z,tabIndex:-1,children:[M(qe,{className:Y.switch,children:[$("input",{type:"checkbox",...C,ref:e=>{L.current=e,"function"==typeof I?I(e):null!==I&&(I.current=e)},onFocus:U,onBlur:X,id:S,disabled:f,required:v,checked:H?A:void 0,defaultChecked:H?void 0:n,onChange:G,className:Y.htmlCheckbox,style:{}}),M(qe,{className:Y.handle,...F,children:[$(b,{className:Y.handleCircle}),c&&$(m,{icon:c,iconProps:{variant:"fill",size:"sm"},"data-testid":"on-icon",className:h(Y.handleIcon,A?"opacity-100":"opacity-0")}),d&&$(m,{icon:d,iconProps:{variant:"fill",size:"sm"},"data-testid":"off-icon",className:h(Y.handleIcon,A?"opacity-0":"opacity-100")})]})]}),r&&$(e,{as:"div",variant:"inherit",color:"inherit",required:v,label:r,className:Y.label})]})})}));Fe.displayName="Switch";export{_ as Avatar,Q as AvatarIcon,Y as AvatarImage,K as AvatarText,ee as Badge,ce as Button,ve as Checkbox,Ve as Chip,ge as ChipButton,xe as ChipDismissible,Ne as ChipLink,Ce as ChipToggle,we as IconButton,Re as Input,je as Radio,Oe as RadioGroupProvider,Fe as Switch};
|
2
|
+
import{FormLabel as e,InputHelpTextMemo as a,Image as t}from"../chunk-MABGUDH4.js";import{o2 as n,SpringMotionConfig as i,Pressable as o,a as r,o as s,e as l,t as c,e2 as d}from"../chunk-3AGA62FV.js";export{Pressable,SpringMotionConfig}from"../chunk-3AGA62FV.js";import{getStyles as u,cx as h,HStack as p,IconSlot as m,createSlot as f,Icon as v,Box as b,Text as y,VStack as g}from"../chunk-UZXPZDSS.js";import{parseDeprecatedButtonPaletteVariant as x}from"../chunk-KS3DH3LU.js";import{BUTTON_CSS_VAR_MAP as N}from"../chunk-WLUJBM5E.js";import{forwardRef as C,useMemo as V,useRef as w,useImperativeHandle as I,isValidElement as k,cloneElement as S,useId as z,useState as R,useCallback as T,useEffect as P,memo as A,createContext as L,useContext as M}from"react";import{jsxs as H,jsx as $,Fragment as j}from"react/jsx-runtime";import{buttonIconSvgSize as B}from"@yahoo/uds/fixtures";import{m as E,useReducedMotion as W,AnimatePresence as q}from"motion/react";import{isFunction as D}from"lodash-es";export{Menu}from"@yahoo/uds/client/Menu";/*! © 2025 Yahoo, Inc. UDS v0.0.0-development */var O={first:e=>e[0]||"",last:e=>e[e.length-1]||"",firstAndLast:e=>1===e.length?e[0]:`${e[0]}${e[e.length-1]}`,firstTwo:e=>e.slice(0,2).join(""),firstThree:e=>e.slice(0,3).join(""),firstOfEach:e=>e.join("")},F=(e,a="firstAndLast")=>{if(!e)return"";const t=e.trim().split(/\s+/).map((e=>e[0].toUpperCase()));return"function"==typeof a?a(e):O[a](t)},G=(e="md")=>u({avatarSizeRoot:e,flexShrink:"0",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",overflow:"visible",className:"truncate"}),U=e=>e?{height:e,width:e}:{},X="primary",Z="md",J={primary:d,secondary:c},K=({size:e=Z,variant:a=X,customSize:t,icon:n,className:i})=>{const o=V((()=>U(t)),[t]),r=V((()=>h(G(e),u({avatarIconVariantRoot:a,overflow:"hidden"}),i)),[i,e,a]),s=V((()=>u({width:"full",height:"full",flexShrink:"0",overflow:"hidden",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center"})),[]),l=V((()=>({...o,boxSizing:"content-box"})),[o]),c=V((()=>n??J[a??"primary"]),[n,a]),d=V((()=>u({avatarSizeIcon:e})),[e]);return $(b,{className:r,style:o,children:$(b,{className:s,style:l,children:$(v,{name:c,variant:"fill",color:"current",className:d,"data-testid":"avatar-icon"})})})};K.displayName="AvatarIcon";var Q=({size:e=Z,variant:a=X,name:t,initials:n,customSize:i,abbreviationStrategy:o,className:r})=>{const s=V((()=>h(G(e),u({avatarTextVariantRoot:a,overflow:"hidden"}),"truncate",r)),[r,e,a]),l=V((()=>u({width:"full",height:"full",flexShrink:"0",overflow:"hidden",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",className:"truncate"})),[]),c=V((()=>U(i)),[i]),d=V((()=>({...c,boxSizing:"content-box"})),[c]);return $(b,{className:s,style:c,children:$(y,{color:"inherit",variant:"inherit",className:l,style:d,"data-testid":"avatar-text",children:n||F(t,o)})})};Q.displayName="AvatarText";var Y=({size:e=Z,variant:a=X,src:n,srcSet:i,customSize:o,alt:r,imageProps:s,abbreviationStrategy:l,fallback:c,className:d})=>{const[p,m]=R("loading");P((()=>{let e=!0;if(n||i){const a=new Image;a.onload=()=>{e&&m("loaded")},a.onerror=()=>{e&&m("error")},n&&(a.src=n),i&&(a.srcset=i)}else m("error");return()=>{e=!1}}),[n,i]);const f=V((()=>h(G(e),u({avatarImageVariantRoot:a,overflow:"hidden"}),d)),[d,e,a]),v=V((()=>u({width:"full",height:"full",flexShrink:"0",textAlign:"center",display:"inline-flex",justifyContent:"center",alignItems:"center",contentFit:"cover"})),[]),y=V((()=>U(o)),[o]),g=V((()=>({...y,boxSizing:"content-box"})),[y]);if("loaded"===p)return $(b,{className:f,style:y,children:$(t,{src:n,srcSet:i,alt:r,className:v,style:g,...s})});const x={size:e,customSize:o,variant:a};return c||r?$(Q,{name:r,initials:c,abbreviationStrategy:l,...x}):$(K,{...x})};Y.displayName="AvatarImage";var _=e=>$(Y,{...e});_.displayName="Avatar";var ee=C((function({variant:e="primary",size:a="md",minWidth:t,maxWidth:n=200,startIcon:i,endIcon:o,backgroundColor:r,color:s,iconColor:l,borderColor:c,children:d,className:f,...v},b){const y=u({badgeSizeRoot:a,badgeVariantRoot:e,className:h(["uds-badge","uds-badge-variant","uds-badge-size",f])}),g=u({badgeVariantIcon:e,badgeSizeIcon:a,className:h(["uds-badge-iconSize","uds-badge-iconColor"])}),x=V((()=>({...t?{minWidth:`${t}px`}:{},..."full"===n?{}:{maxWidth:`${n}px`},...r?{backgroundColor:r}:{},...c?{borderColor:c}:{},...s?{color:s}:{}})),[r,c,s,n,t]),N=V((()=>({variant:"fill",style:{...l?{color:l}:{}}})),[l]);return H(p,{ref:b,gap:"2",display:"inline-flex",alignItems:"center",className:y,style:x,...v,children:[i&&$(m,{icon:i,iconProps:N,"data-testid":"start-icon",className:g}),$("span",{className:"flex-1 truncate whitespace-nowrap text-center",children:d}),o&&$(m,{icon:o,iconProps:N,"data-testid":"end-icon",className:g})]})}));ee.displayName="Badge";var ae={scale:.7,opacity:0},te={scale:[.7,.7,1],opacity:[0,0,1],transition:{times:[0,.5,1]}},ne={icon:te,hide:ae,loading:ae},ie={loading:te,hide:ae,icon:ae},oe=`var(${N.columnGap})`,re=`var(${N.iconSize})`,se={rest:{scale:`var(${N.effects.scale.rest})`},hover:{scale:`var(${N.effects.scale.hover})`},pressed:{scale:`var(${N.effects.scale.pressed})`},withoutIcon:{columnGap:"0px"},withIcon:{columnGap:oe}},le={hide:{width:"0px",opacity:0,display:"none"},loading:{width:re,display:"flex",opacity:1},icon:{width:re,display:"flex",opacity:1}},ce=C((function({variant:e,size:a,startIcon:t,endIcon:o,iconVariant:r,loading:s,disableEffects:l,children:c,asChild:d,type:p="button",className:b,width:y,...g},N){const C=w(null);I(N,(()=>C.current));const z=V((()=>f()),[]),R=V((()=>E.create(z)),[z]),T=o?"icon":"hide",P=(({startIcon:e,endIcon:a,loading:t})=>e||a||t?"withIcon":"withoutIcon")({startIcon:t,endIcon:o,loading:s}),A=(({loading:e,startIcon:a})=>e?"loading":a?"icon":"hide")({loading:s,startIcon:t}),{palette:L,variant:M}=V((()=>x({flatVariant:e})),[e]),D=V((()=>({button:u({width:y,buttonSize:a,buttonVariant:M,buttonPalette:L,className:h("uds-button","uds-ring","uds-hit-target",s&&"uds-button-loading",l&&"uds-button-without-effects","withIcon"===P&&"uds-button-with-gap",b)}),content:"uds-button-content truncate",iconContainer:"uds-button-icon-container flex overflow-clip",loading:"uds-button-icon start-content animate-spin",start:"uds-button-icon start-content",end:"uds-button-icon end-content"})),[y,a,M,L,b,s,l,P]),O=W()?"smooth":"subtle",F=V((()=>$(E.span,{className:D.iconContainer,initial:!1,variants:le,animate:A,children:H(q,{initial:!1,mode:"popLayout",children:[s&&$(E.span,{variants:ie,initial:"hide",animate:"loading",exit:"hide",children:$(v,{size:B,name:n,variant:r,color:"current",className:D.loading})},"loading"),t&&!s&&$(E.span,{variants:ne,initial:"hide",animate:"icon",exit:"hide",children:$(m,{className:D.start,icon:t,iconProps:{size:B,variant:r,color:"current"}})})]})})),[D.iconContainer,D.loading,D.start,A,s,r,t]),G=V((()=>$(E.span,{className:D.iconContainer,initial:!1,variants:le,animate:T,children:$(q,{initial:!1,mode:"popLayout",children:o&&$(E.span,{variants:ne,initial:"hide",animate:"icon",exit:"hide",children:$(m,{className:D.end,icon:o,iconProps:{size:B,variant:r,color:"current"}})})})})),[D.iconContainer,D.end,o,T,r]),U=V((()=>l?{...se,rest:{},hover:{},pressed:{}}:se),[l]);return d&&k(c)?$(i,{layoutSpeed:"3",layoutVariant:O,children:$(R,{type:p,className:D.button,initial:["hide",P],animate:P,variants:U,whileHover:"hover",whileTap:"pressed",...g,children:S(c,c.props,H(j,{children:[F,$("span",{className:D.content,children:c.props.children}),G]}))})}):$(i,{layoutSpeed:"3",layoutVariant:O,children:H(E.button,{ref:C,type:p,className:D.button,initial:["hide",P],animate:P,variants:U,whileHover:"hover",whileTap:"pressed",...g,children:[F,$("span",{className:D.content,children:c}),G]})})})),de={primary:"alert",secondary:"alert-secondary"},ue=e=>"indeterminate"===e,he=e=>ue(e)?s:l,pe=E.create(b),me={layoutVariant:"smooth",layoutSpeed:"3"},fe={layoutVariant:"veryBouncy",layoutSpeed:"4"},ve=C((function({id:a,checked:t,defaultChecked:n,onChange:o,label:r,labelPosition:s="start",variant:l="primary",size:c="md",reduceMotion:d,disabled:p,required:m,hasError:f,className:b,layerClassNames:y,...g},x){const N=z(),C=a??`uds-input-${N}`,I=w(null),k=void 0!==t,[S,A]=R(k?t:n),[L,M]=R(!1),[j,B]=R(!1),q=V((()=>f?de[l]:l),[f,l]),D=!p&&L,O=!p&&j,F=V((()=>O?.9:D?1.1:1),[O,D]),G=V((()=>S?O?"opacity-55":"opacity-100":"opacity-0"),[S,O]),U=V((()=>({scale:F})),[F]),X=V((()=>j?fe:me),[j]),Z=T((e=>{o?.(e),k||A(e.target.checked)}),[k,o]),J=T((()=>{M(!0)}),[]),K=T((()=>{M(!1)}),[]),Q=T((()=>{B(!0)}),[]),Y=T((()=>{B(!1)}),[]),_=e=>{I.current&&(I.current.indeterminate=ue(e))},ee=d?"always":"user",ae=W()||d?"duration-0":"duration-120";P((()=>{k&&A(t)}),[t,k]),P((()=>{_(S)}),[S]);const te=ue(S)?"indeterminate":S?"checked":"unchecked",ne={root:u({checkboxSizeRoot:c,checkboxVariantRoot:q,checkboxVariantValueRoot:te,display:"flex",flexDirection:"start"===s?"row":"row-reverse",alignItems:"center",className:h({"cursor-pointer":!p,"cursor-default":p,"opacity-50":p},b,y?.root)}),checkbox:u({checkboxSizeCheckbox:c,checkboxVariantCheckbox:q,checkboxVariantValueCheckbox:te,className:h("border","rounded-[4px]","uds-ring","uds-ring-within",ae,"transition-[background-color,border-color,box-shadow]",y?.checkbox)}),check:u({checkboxVariantCheckboxIcon:q,checkboxVariantValueCheckboxIcon:te,className:h("pointer-events-none",G,ae,"transition-opacity")}),htmlCheckbox:h("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:h("start"===s?"text-start":"text-end",y?.label)},ie=r?E.label:E.div;return $(i,{reducedMotion:ee,...X,children:H(ie,{className:ne.root,"data-testid":"container",onHoverStart:J,onHoverEnd:K,onTapStart:Q,onTap:Y,onTapCancel:Y,tabIndex:-1,children:[H(pe,{position:"relative",className:ne.checkbox,alignItems:"center",justifyContent:"center",flex:"none",animate:U,children:[$("input",{type:"checkbox",...g,ref:e=>{I.current=e,_(S),"function"==typeof x?x(e):null!==x&&(x.current=e)},id:C,disabled:p,required:m,"aria-invalid":f,checked:k?!ue(S)&&S:void 0,defaultChecked:k?void 0:n,onChange:Z,className:ne.htmlCheckbox}),$(v,{name:he(S),size:"sm",className:ne.check})]}),r&&$(e,{as:"div",variant:"inherit",color:"inherit",required:m,label:r,className:ne.label})]})})}));ve.displayName="Checkbox";var be="primary",ye=C((function({size:e="md",minWidth:a,maxWidth:t=200,startIcon:n,endIcon:i,as:o="div",reduceMotion:r,disabled:s=!1,className:l,layerClassNames:c,children:d,...f},v){const b=W()||r?"duration-0":"duration-120",g=V((()=>({root:u({chipSizeRoot:e,className:h({"pointer-events-none":s,"cursor-default":s,"opacity-50":s},"focus-visible:-outline-offset-2","uds-ring",b,"transition-[background-color,outline-color,box-shadow]",c?.root,l)}),icon:u({chipSizeIcon:e,className:c?.icon})})),[l,b,s,c?.icon,c?.root,e]);return $(p,{asChild:!0,ref:v,display:"inline-flex",alignItems:"center",style:{maxWidth:`${t}px`,...a?{minWidth:`${a}px`}:{}},className:g.root,...f,children:H(o,{disabled:s,children:[n&&$(m,{icon:n,iconProps:{variant:"fill",className:g.icon},"data-testid":"start-icon"}),$(y,{as:"span",className:"truncate whitespace-nowrap",flex:"1",textAlign:"center",color:"current",variant:"inherit",children:d}),i&&$(m,{icon:i,iconProps:{variant:"fill",className:g.icon},"data-testid":"end-icon"})]})})}));ye.displayName="ChipBase";var ge=C((function({variant:e=be,...a},t){const n=V((()=>({root:u({chipLinkVariantRoot:e}),icon:u({chipLinkVariantIcon:e})})),[e]);return $(ye,{as:"button",ref:t,variant:e,layerClassNames:n,...a})}));ge.displayName="ChipButton";var xe=C((function({dismissButtonAriaLabel:e,onDismiss:a,dismissIcon:t,variant:n=be,disabled:i,...s},l){const c=V((()=>({root:u({chipDismissibleVariantRoot:n}),icon:u({chipDismissibleVariantIcon:n})})),[n]),d=T((e=>{e.stopPropagation(),a?.()}),[a]),p={icon:h("uds-chip-dismissible-button","uds-hit-target")};return $(ye,{ref:l,variant:n,disabled:i,tabIndex:-1,endIcon:a=>$(o,{"aria-label":e,className:p.icon,onClick:d,disabled:i,children:$(m,{icon:t??r,iconProps:a,"data-testid":"dismiss-icon"})}),layerClassNames:c,...s})}));xe.displayName="ChipDismissible";var Ne=C((function({variant:e=be,href:a,disabled:t,...n},i){const o=V((()=>({root:u({chipLinkVariantRoot:e}),icon:u({chipLinkVariantIcon:e})})),[e]);return $(ye,{as:"a",ref:i,variant:e,disabled:t,layerClassNames:o,...{...n,href:t?void 0:a}})}));Ne.displayName="ChipLink";var Ce=C((function({isToggled:e=!1,onToggle:a,onClick:t,variant:n=be,...i},o){const r=V((()=>({root:u({chipToggleVariantRoot:n,chipToggleVariantActiveRoot:e?"on":"off"}),icon:u({chipToggleVariantIcon:n})})),[e,n]),s=T((n=>{a?.(!e),t?.(n)}),[e,t,a]);return $(ye,{ref:o,as:"button",variant:n,onClick:s,"aria-pressed":e,layerClassNames:r,...i})}));Ce.displayName="ChipToggle";var Ve=C((function({onClick:e,href:a,linkProps:t,onDismiss:n,onToggle:i,isToggled:o,...r},s){return n?$(xe,{ref:s,onDismiss:n,...r}):i?$(Ce,{ref:s,onToggle:i,isToggled:o,...r}):a?$(Ne,{ref:s,href:a,...r,...t}):$(ge,{ref:s,onClick:e,...r})}));Ve.displayName="Chip";var we=C((function({variant:e,size:a,iconVariant:t,loading:o,disableEffects:r,name:s,type:l="button",htmlName:c,className:d,children:p,...m},f){const b=w(null);I(f,(()=>b.current));const{palette:y,variant:g}=x({flatVariant:e}),N=V((()=>({button:u({buttonVariant:g,buttonPalette:y,iconButtonSize:a,className:h("uds-icon-button","uds-button","uds-ring","uds-hit-target",o&&"uds-button-loading",r&&"uds-button-without-effects",d)}),loading:"uds-button-icon start-content animate-spin",icon:"uds-button-icon start-content"})),[y,g,d,r,a,o]),C=W(),k=V((()=>C?"smooth":"subtle"),[C]),S=V((()=>{const{rest:e,hover:a,pressed:t}=se;return r?{rest:{},hover:{},pressed:{}}:{rest:e,hover:a,pressed:t}}),[r]);return $(i,{layoutSpeed:"3",layoutVariant:k,reducedMotion:r?"always":"user",children:$(E.button,{ref:b,type:l,className:N.button,initial:"icon",variants:S,whileHover:"hover",whileTap:"pressed",name:c,...m,children:H(q,{initial:!1,mode:"popLayout",children:[o&&$(E.span,{variants:ie,initial:"loading",animate:"loading",exit:"hide",children:$(v,{size:B,name:n,variant:t,color:"current",className:N.loading})},"loading"),s&&!o&&$(E.span,{variants:ne,initial:"icon",animate:"icon",exit:"hide",children:p||$(v,{size:B,name:s,variant:t,color:"current",className:N.icon})},s.name)]})})})})),Ie=({children:e,reduceMotion:a,layoutVariant:t})=>{const n=w(null),[o,r]=R("auto");return P((()=>{if(n.current){const e=new ResizeObserver((e=>{r(e[0].contentRect.height)}));return e.observe(n.current),()=>{e.disconnect()}}}),[]),$(i,{reducedMotion:a,layoutSpeed:"4",layoutVariant:t,children:$(E.div,{className:"overflow-hidden",style:{height:o,opacity:0},animate:{height:o,opacity:1},children:$("div",{ref:n,children:e})})})},ke=A((function({helpText:e,helperTextIcon:t,spacingStart:n,spacingTop:i,size:o,isFilled:r,...s}){return e?$(b,{spacingTop:i,spacingStart:n,...s,children:$(a,{startIcon:t,size:o,isFilled:r,children:D(e)?e():e})}):null})),Se=A((function({icon:e,className:a}){return e?$(m,{icon:e,iconProps:{variant:"outline"},className:a}):null})),ze=A((function({icon:e,className:a}){if(!e)return null;return $(m,{icon:e,iconProps:{variant:"outline"},"data-testid":"end-icon",className:a})})),Re=C((function({id:e,label:a,type:t="text",size:n="md",startIcon:i,endIcon:o,helpText:r,helperTextIcon:s,hasError:l,width:c="full",defaultValue:d,required:m,readOnly:f,disabled:v,reduceMotion:y,onChange:x,className:N,...C},V){const k=z(),S=e??`uds-input-${k}`,P=`uds-input-${S}-help-text`,A=w(null);I(V,(()=>A.current));const[L,M]=R(d??""),j=T((e=>{M(e.target.value),x?.(e)}),[x]),B=W()?"smooth":"bouncy",E=y?"always":"user",q=!f&&!v,O={root:u({inputSizeRoot:n,inputVariantRoot:"default",inputVariantValueRoot:L?"filled":"empty",className:h([N,v?"opacity-50":""])}),inputWrapper:h(u({inputSizeInputWrapper:n,inputVariantInputWrapper:"default",inputVariantValueInputWrapper:L?"filled":"empty"}),"min-w-[200px]"),input:u({inputSizeInput:n,inputVariantInput:"default",inputVariantValueInput:L?"filled":"empty",inputVariantInputPlaceholder:"default",inputVariantValueInputPlaceholder:L?"filled":"empty",className:h("grow","uds-hit-target","bg-clip-text","focus:outline-none",q?"cursor-text":"cursor-not-allowed")}),label:h(u({inputSizeLabel:n,inputVariantLabel:"default",inputVariantValueLabel:L?"filled":"empty"})),labelRequired:u({inputVariantLabelRequired:"default",inputVariantValueLabelRequired:L?"filled":"empty"}),startIcon:u({inputSizeStartIcon:n,inputVariantStartIcon:"default",inputVariantValueStartIcon:L?"filled":"empty"}),endIcon:u({inputSizeEndIcon:n,inputVariantEndIcon:"default",inputVariantValueEndIcon:L?"filled":"empty"})};return H(g,{width:c,className:O.root,children:[a&&H(b,{spacingBottom:"2",columnGap:"0.5",alignItems:"flex-end",className:O.label,children:[$("label",{htmlFor:S,children:D(a)?a():a}),m&&$("span",{className:O.labelRequired,children:"*"})]}),H(b,{position:"relative",alignItems:"center",className:O.inputWrapper,children:[$(Se,{icon:i,className:O.startIcon}),$("input",{ref:A,id:S,type:t,value:L,required:m,readOnly:f,disabled:v,"aria-describedby":P,"aria-invalid":l,onChange:j,className:O.input,...C}),o&&$(p,{alignItems:"center",gap:"1",children:$(ze,{icon:o,className:O.endIcon})})]}),$(Ie,{reduceMotion:E,layoutVariant:B,children:$(ke,{id:P,helpText:r,spacingTop:"2",size:n,isFilled:!!L,helperTextIcon:s})})]})}));Re.displayName="Input";var Te=class e{name;value;activeCount=0;#e=new Set;constructor(e){this.name=e}onChange(e){return this.#e.add(e),()=>{this.#e.delete(e)}}setValue(e){this.value=e,this.#e.forEach((a=>a(e)))}static findOrCreate(a,t){let n=a.get(t);return n||(n=new e(t),a.set(t,n)),n}},Pe=L(new Map),Ae=e=>{const a=z();return e??`uds-radio-group-${a}`},Le={primary:"alert",secondary:"alert-secondary"},Me=E.create(b),He={layoutVariant:"smooth",layoutSpeed:"3"},$e={layoutVariant:"veryBouncy",layoutSpeed:"4"},je=C((function({id:a,name:t,label:n,labelPosition:o="start",variant:r="primary",size:s="md",reduceMotion:l,value:c="",checked:d,defaultChecked:p,disabled:m,hasError:f,onChange:v,onFocus:y,onBlur:g,className:x,layerClassNames:N,...C},I){const k=z(),S=a??`uds-radio-${k}`,A=w(null),{name:L,isControlled:j,checked:B,setGroupValue:q}=(({name:e,value:a,checked:t,defaultChecked:n})=>{const i=M(Pe),o=i instanceof Te,r=void 0!==t||o,s=Ae(e),l=V((()=>o?i:Te.findOrCreate(i,s)),[i,o,s]),[c,d]=R(l.value),u=l.name??s,h=T((e=>{l.setValue(e),r||d(e)}),[r,l]);return P((()=>l.onChange(d)),[l]),P((()=>{!0===t&&h(a)}),[t,a,h]),P((()=>{if(o)return;const e=Te.findOrCreate(i,u);return e.activeCount+=1,i.set(u,e),()=>{const e=i.get(u);e&&(e.activeCount-=1,0===e.activeCount&&i.delete(u))}}),[i,o,u]),{name:u,isControlled:r,checked:r&&!o?t:void 0!==c?a===c:n??!1,setGroupValue:h}})({name:t,value:c,checked:d,defaultChecked:p}),[D,O]=R(!1),[F,G]=R(!1),U=V((()=>f?Le[r]:r),[f,r]),X=V((()=>!m&&D),[m,D]),Z=V((()=>!m&&!B&&F),[B,m,F]),J=V((()=>Z?.9:X?1.1:1),[X,Z]),K=V((()=>B?Z?"opacity-55":"opacity-100":"opacity-0"),[B,Z]),Q=V((()=>!m&&(Z&&!B||X&&B)),[B,m,X,Z]),Y=V((()=>({scale:J})),[J]),_=V((()=>F?$e:He),[F]),ee=T((e=>{q(e.target.value),v?.(e)}),[v,q]),ae=T((e=>{y?.(e)}),[y]),te=T((e=>{g?.(e)}),[g]),ne=T((()=>{O(!0)}),[]),ie=T((()=>{O(!1)}),[]),oe=T((()=>{G(!0)}),[]),re=T((()=>{G(!1)}),[]),se=l?"always":"user",le=W()||l?"duration-0":"duration-120",ce={root:u({radioSizeRoot:s,radioVariantValueRoot:B?"checked":"unchecked",radioVariantRoot:U,display:"flex",flexDirection:"start"===o?"row":"row-reverse",alignItems:"center",className:h([{"cursor-pointer":!m,"cursor-default":m,"opacity-50":m},x,N?.root])}),radio:u({radioSizeRadio:s,radioVariantRadio:U,radioVariantValueRadio:B?"checked":"unchecked",className:h(["border","uds-ring","uds-ring-within",le,"transition-[background-color,border-color]","transition-shadow",N?.radio])}),radioCircle:u({radioVariantRadioCircle:U,radioVariantValueRadioCircle:B?"checked":"unchecked",className:h(["pointer-events-none","w-[8px]","h-[8px]",K,le,"transition-opacity"])}),htmlRadio:h("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:h("start"===o?"text-start":"text-end",N?.label)},de=n?E.label:E.div;return $(i,{reducedMotion:se,..._,children:H(de,{className:ce.root,"data-testid":"container",onHoverStart:ne,onHoverEnd:ie,onTapStart:oe,onTap:re,onTapCancel:re,tabIndex:-1,children:[H(Me,{position:"relative",borderRadius:"full",alignItems:"center",justifyContent:"center",flex:"none",className:ce.radio,animate:Y,insetShadow:Q?"lg-invert":"none",children:[$("input",{type:"radio",...C,ref:e=>{A.current=e,"function"==typeof I?I(e):null!==I&&(I.current=e)},onFocus:ae,onBlur:te,id:S,name:L,value:c,disabled:m,"aria-invalid":f,onChange:ee,...j?{checked:B}:{defaultChecked:p},className:ce.htmlRadio}),$(b,{borderRadius:"full",className:ce.radioCircle})]}),n&&$(e,{as:"div",variant:"inherit",color:"inherit",label:n,className:ce.label})]})})}));je.displayName="Radio";var Be=f(),Ee=class extends Te{onChangeCb;isControlled;constructor(e,a){super(e),this.isControlled=a}setValue(e,a=!1){this.isControlled&&!a?this.onChangeCb?.(e):super.setValue(e)}},We=C((function({asChild:e,name:a,value:t,defaultValue:n,onChange:i,...o},r){const s=void 0!==t,l=Ae(a),c=V((()=>{const e=new Ee(l,s);return e.value=s?t:n,e}),[n,s,l,t]);P((()=>{c.onChangeCb=i}),[i,c]),P((()=>{s&&c.setValue(t,!0)}),[s,c,t]),P((()=>c.onChange((e=>i?.(e)))),[i,c]);const d=e?Be:"div";return $(Pe.Provider,{value:c,children:$(d,{role:"radiogroup",ref:r,...o})})}));We.displayName="RadioGroupProvider";var qe={md:{isOnX:20},sm:{isOnX:12}},De=E.create(b),Oe={layoutVariant:"bouncy",layoutSpeed:"4"},Fe=C((function({id:a,isOn:t,defaultIsOn:n,onChange:o,label:r,labelPosition:s="start",size:l="md",onIcon:c,offIcon:d,reduceMotion:p,disabled:f,required:v,onFocus:y,onBlur:g,className:x,layerClassNames:N,...C},I){const k=z(),S=a??`uds-input-${k}`,A=w(null),L=void 0!==t,[M,j]=R(L?t:n),[B,q]=R(!1),D=V((()=>!f&&B),[f,B]),{isOnX:O}=qe[l],F=V((()=>({initial:{scale:1,x:M?O:0},animate:{scale:D?1.05:1,x:M?O:0}})),[D,M,O]),G=T((e=>{o?.(e),L||j(e.target.checked)}),[L,o]),U=T((e=>{y?.(e)}),[y]),X=T((e=>{g?.(e)}),[g]),Z=T((()=>{q(!0)}),[]),J=T((()=>{q(!1)}),[]),K=p?"always":"user",Q=W()||p?"duration-0":"duration-120";P((()=>{L&&j(t)}),[t,L]);const Y={root:u({switchSizeRoot:l,switchVariantRoot:"default",switchVariantActiveRoot:M?"on":"off",display:"flex",flexDirection:"start"===s?"row":"row-reverse",alignItems:"center",className:h("group",{"cursor-pointer":!f,"cursor-default":f,"opacity-50":f},N?.root,x)}),switch:u({switchVariantSwitch:"default",switchSizeSwitch:l,switchVariantActiveSwitch:M?"on":"off",borderRadius:"full",position:"relative",alignItems:"center",className:h("uds-ring","uds-ring-within",Q,"transition-[background-color,box-shadow]",N?.switch)}),handle:u({switchSizeHandle:l,className:h("relative","pointer-events-none","rounded-full","overflow-hidden",N?.handle)}),handleCircle:u({switchVariantActiveHandle:M?"on":"off",switchVariantHandle:"default",className:h("absolute","top-0","left-0","right-0","bottom-0","opacity-95 group-hover:opacity-100",Q,"transition-[background-color,box-shadow,opacity]")}),handleIcon:u({switchSizeHandleIcon:l,switchVariantHandleIcon:"default",switchVariantActiveHandleIcon:M?"on":"off",className:h("absolute","opacity-0","top-1/2","left-1/2","transform","translate-x-[-50%]","translate-y-[-50%]",Q,"transition-opacity")}),htmlCheckbox:h("cursor-[inherit]","absolute","opacity-0","top-1/2","left-1/2","w-[calc(100%+2px)]","h-[calc(100%+2px)]","transform","translate-x-[-50%]","translate-y-[-50%]"),label:h("start"===s?"text-start":"text-end",N?.label)},_=r?E.label:E.div;return $(i,{reducedMotion:K,...Oe,children:H(_,{className:Y.root,"data-testid":"container",onHoverStart:Z,onHoverEnd:J,tabIndex:-1,children:[H(De,{className:Y.switch,children:[$("input",{type:"checkbox",...C,ref:e=>{A.current=e,"function"==typeof I?I(e):null!==I&&(I.current=e)},onFocus:U,onBlur:X,id:S,disabled:f,required:v,checked:L?M:void 0,defaultChecked:L?void 0:n,onChange:G,className:Y.htmlCheckbox,style:{}}),H(De,{className:Y.handle,...F,children:[$(b,{className:Y.handleCircle}),c&&$(m,{icon:c,iconProps:{variant:"fill",size:"sm"},"data-testid":"on-icon",className:h(Y.handleIcon,M?"opacity-100":"opacity-0")}),d&&$(m,{icon:d,iconProps:{variant:"fill",size:"sm"},"data-testid":"off-icon",className:h(Y.handleIcon,M?"opacity-0":"opacity-100")})]})]}),r&&$(e,{as:"div",variant:"inherit",color:"inherit",required:v,label:r,className:Y.label})]})})}));Fe.displayName="Switch";export{_ as Avatar,K as AvatarIcon,Y as AvatarImage,Q as AvatarText,ee as Badge,ce as Button,ve as Checkbox,Ve as Chip,ge as ChipButton,xe as ChipDismissible,Ne as ChipLink,Ce as ChipToggle,we as IconButton,Re as Input,je as Radio,We as RadioGroupProvider,Fe as Switch};
|
@@ -0,0 +1,243 @@
|
|
1
|
+
import * as properties from '@yahoo/uds/fixtures';
|
2
|
+
import { f as ShadowPreset, b as UniversalTokensConfig } from './types-DHi8fUQQ.cjs';
|
3
|
+
|
4
|
+
type DispatchContext = {
|
5
|
+
componentName: string;
|
6
|
+
subComponentName?: string;
|
7
|
+
propertyKey: string;
|
8
|
+
layer: string;
|
9
|
+
};
|
10
|
+
interface ConfigurableProperty<T extends AllPossibleProperties, CVR = unknown> {
|
11
|
+
name: string;
|
12
|
+
cssProperties: string | string[];
|
13
|
+
twThemePath: (selected: T, value: string) => string;
|
14
|
+
possibleFixtures: T[];
|
15
|
+
extendedProperties?: ExtendablePropertiesName[] | ((context: DispatchContext) => ExtendablePropertiesName[] | undefined | false);
|
16
|
+
customValueRenderer?: (schemaStateValue: SchemaStateValue<CVR>, schema: unknown, themeGetter: (path: string) => string) => string;
|
17
|
+
concatenate?: boolean;
|
18
|
+
concatenationDelimiter?: string;
|
19
|
+
}
|
20
|
+
declare const publicProperties: {
|
21
|
+
readonly backgroundColor: ConfigurableProperty<"backgroundPaletteColors" | "spectrumColors" | "alwaysPaletteAliases", unknown>;
|
22
|
+
readonly borderWidth: ConfigurableProperty<"spacingAliases" | "borderWidths", unknown>;
|
23
|
+
readonly borderRadius: ConfigurableProperty<"borderRadii", unknown>;
|
24
|
+
readonly borderColor: ConfigurableProperty<"linePaletteColors" | "spectrumColors" | "alwaysPaletteAliases", unknown>;
|
25
|
+
readonly fontFamily: ConfigurableProperty<"textVariants", unknown>;
|
26
|
+
readonly fontSize: ConfigurableProperty<"textVariants", unknown>;
|
27
|
+
readonly lineHeight: ConfigurableProperty<"textVariants", unknown>;
|
28
|
+
readonly textTransform: ConfigurableProperty<"textVariants", unknown>;
|
29
|
+
readonly padding: ConfigurableProperty<"spacingAliases", unknown>;
|
30
|
+
readonly gap: ConfigurableProperty<"spacingAliases", unknown>;
|
31
|
+
readonly color: ConfigurableProperty<"foregroundPaletteColors" | "spectrumColors" | "alwaysPaletteAliases", unknown>;
|
32
|
+
readonly fontWeight: ConfigurableProperty<"textVariants", unknown>;
|
33
|
+
readonly iconSize: ConfigurableProperty<"iconSizes", unknown>;
|
34
|
+
readonly spacingHorizontal: ConfigurableProperty<"spacingAliases", unknown>;
|
35
|
+
readonly spacingVertical: ConfigurableProperty<"spacingAliases", unknown>;
|
36
|
+
readonly textVariant: ConfigurableProperty<"textVariants", unknown>;
|
37
|
+
readonly textDecorationLine: ConfigurableProperty<"textDecorationLines", unknown>;
|
38
|
+
readonly shadow: ConfigurableProperty<"shadowVariants", string | [] | [ShadowPreset] | [ShadowPreset, ShadowPreset] | [ShadowPreset, ShadowPreset, ShadowPreset]>;
|
39
|
+
readonly insetShadow: ConfigurableProperty<"shadowVariantsWithInvert", string | [] | [ShadowPreset] | [ShadowPreset, ShadowPreset] | [ShadowPreset, ShadowPreset, ShadowPreset]>;
|
40
|
+
readonly height: ConfigurableProperty<"spacingAliases", unknown>;
|
41
|
+
readonly width: ConfigurableProperty<"spacingAliases", unknown>;
|
42
|
+
};
|
43
|
+
declare const configurableProperties: {
|
44
|
+
outlineWidth: ConfigurableProperty<"spacingAliases" | "borderWidths", unknown>;
|
45
|
+
outlineColor: ConfigurableProperty<"linePaletteColors" | "spectrumColors" | "alwaysPaletteAliases", unknown>;
|
46
|
+
insetOutlineOffset: ConfigurableProperty<"spacingAliases" | "borderWidths", unknown>;
|
47
|
+
solidOutline: ConfigurableProperty<never, unknown>;
|
48
|
+
backgroundColor: ConfigurableProperty<"backgroundPaletteColors" | "spectrumColors" | "alwaysPaletteAliases", unknown>;
|
49
|
+
borderWidth: ConfigurableProperty<"spacingAliases" | "borderWidths", unknown>;
|
50
|
+
borderRadius: ConfigurableProperty<"borderRadii", unknown>;
|
51
|
+
borderColor: ConfigurableProperty<"linePaletteColors" | "spectrumColors" | "alwaysPaletteAliases", unknown>;
|
52
|
+
fontFamily: ConfigurableProperty<"textVariants", unknown>;
|
53
|
+
fontSize: ConfigurableProperty<"textVariants", unknown>;
|
54
|
+
lineHeight: ConfigurableProperty<"textVariants", unknown>;
|
55
|
+
textTransform: ConfigurableProperty<"textVariants", unknown>;
|
56
|
+
padding: ConfigurableProperty<"spacingAliases", unknown>;
|
57
|
+
gap: ConfigurableProperty<"spacingAliases", unknown>;
|
58
|
+
color: ConfigurableProperty<"foregroundPaletteColors" | "spectrumColors" | "alwaysPaletteAliases", unknown>;
|
59
|
+
fontWeight: ConfigurableProperty<"textVariants", unknown>;
|
60
|
+
iconSize: ConfigurableProperty<"iconSizes", unknown>;
|
61
|
+
spacingHorizontal: ConfigurableProperty<"spacingAliases", unknown>;
|
62
|
+
spacingVertical: ConfigurableProperty<"spacingAliases", unknown>;
|
63
|
+
textVariant: ConfigurableProperty<"textVariants", unknown>;
|
64
|
+
textDecorationLine: ConfigurableProperty<"textDecorationLines", unknown>;
|
65
|
+
shadow: ConfigurableProperty<"shadowVariants", string | [] | [ShadowPreset] | [ShadowPreset, ShadowPreset] | [ShadowPreset, ShadowPreset, ShadowPreset]>;
|
66
|
+
insetShadow: ConfigurableProperty<"shadowVariantsWithInvert", string | [] | [ShadowPreset] | [ShadowPreset, ShadowPreset] | [ShadowPreset, ShadowPreset, ShadowPreset]>;
|
67
|
+
height: ConfigurableProperty<"spacingAliases", unknown>;
|
68
|
+
width: ConfigurableProperty<"spacingAliases", unknown>;
|
69
|
+
};
|
70
|
+
type ExtendablePropertiesName = keyof typeof configurableProperties;
|
71
|
+
type ConfigurablePropertiesName = keyof typeof publicProperties;
|
72
|
+
interface SelectedConfigurableProperty<C extends ConfigurablePropertiesName, O extends string, T extends (typeof publicProperties)[C]['possibleFixtures'] = (typeof publicProperties)[C]['possibleFixtures'], V extends readonly (readonly string[])[] = readonly (readonly string[])[]> {
|
73
|
+
label: string;
|
74
|
+
name: C;
|
75
|
+
typeOfFixture: T;
|
76
|
+
values: V;
|
77
|
+
pseudoStates?: PossibleStates[];
|
78
|
+
supportsCustom?: boolean;
|
79
|
+
defaults: {
|
80
|
+
[K in O]: V[number][number];
|
81
|
+
};
|
82
|
+
}
|
83
|
+
|
84
|
+
type AllPossibleProperties = Exclude<keyof typeof properties, 'iconButtonClassNames' | 'iconButtonSize' | 'iconButtonStates' | 'buttonClassNames' | 'buttonColorProperties' | 'buttonIconSvgSize' | 'buttonKinds' | 'buttonMotionEffects' | 'buttonMotionProperties' | 'buttonPalettes' | 'buttonSizeProperties' | 'buttonSizes' | 'buttonStates' | 'buttonVariants'> | 'shadowVariantConfig';
|
85
|
+
type PossibleStates = 'hover' | 'pressed' | 'focused' | 'invalid' | 'focus-within' | 'focused-keyboard' | 'visited' | 'readonly' | 'disabled' | 'invalid&hover' | 'invalid&pressed';
|
86
|
+
type PossibleStatesWithRest = 'rest' | PossibleStates;
|
87
|
+
interface LayerConfig {
|
88
|
+
label: string;
|
89
|
+
properties: Readonly<Record<string, SelectedConfigurableProperty<ConfigurablePropertiesName, string>>>;
|
90
|
+
pseudoSelector?: string;
|
91
|
+
}
|
92
|
+
interface ComponentStateConfig {
|
93
|
+
label: string;
|
94
|
+
options: string[];
|
95
|
+
layers: {
|
96
|
+
root: LayerConfig;
|
97
|
+
} & Record<string, LayerConfig>;
|
98
|
+
}
|
99
|
+
interface SubComponentConfig {
|
100
|
+
label: string;
|
101
|
+
description: string;
|
102
|
+
overrideComponentName?: string;
|
103
|
+
variants: Record<string, VariantConfigWithProperties | VariantConfigWithComponentStates>;
|
104
|
+
}
|
105
|
+
interface VariantConfig<O extends string = string> {
|
106
|
+
label: string;
|
107
|
+
description: string;
|
108
|
+
isConfigurable: boolean;
|
109
|
+
default: O;
|
110
|
+
options: readonly O[];
|
111
|
+
}
|
112
|
+
interface VariantConfigWithProperties<O extends string = string> extends VariantConfig<O> {
|
113
|
+
layers: {
|
114
|
+
root: LayerConfig;
|
115
|
+
} & Record<string, LayerConfig>;
|
116
|
+
}
|
117
|
+
interface VariantConfigWithComponentStates<O extends string = string> extends VariantConfig<O> {
|
118
|
+
componentStates?: Readonly<Record<string, ComponentStateConfig>>;
|
119
|
+
}
|
120
|
+
interface ComponentConfig {
|
121
|
+
label: string;
|
122
|
+
description: string;
|
123
|
+
overrideComponentName?: string;
|
124
|
+
subComponents?: Record<string, SubComponentConfig>;
|
125
|
+
variants?: Record<string, VariantConfigWithProperties | VariantConfigWithComponentStates>;
|
126
|
+
}
|
127
|
+
type AutoComponents = Omit<UniversalTokensConfig, 'colorMode' | 'font' | 'scaleMode' | 'version' | 'motion' | 'button' | 'iconButton' | 'shadow' | 'breakpoints' | 'typography' | 'globalDefaults'>;
|
128
|
+
type AutoComponentName = keyof AutoComponents;
|
129
|
+
type AllVariantKeys = {
|
130
|
+
[K in keyof AutoComponents]: {
|
131
|
+
[V in keyof AutoComponents[K]['defaults']]: V;
|
132
|
+
}[keyof AutoComponents[K]['defaults']];
|
133
|
+
}[keyof AutoComponents];
|
134
|
+
|
135
|
+
type ThemeFn = (path: string) => string;
|
136
|
+
type SchemaStateValue<T = any> = {
|
137
|
+
type: string;
|
138
|
+
valueType: 'alias' | 'custom';
|
139
|
+
value: T;
|
140
|
+
};
|
141
|
+
declare const statePseudoMapDocsMode: Record<PossibleStates | 'rest', string>;
|
142
|
+
declare function findFixtureType(property: SelectedConfigurableProperty<ConfigurablePropertiesName, string>, variantKey: string): string;
|
143
|
+
declare function toMinimalDbConfigObject<C extends ComponentConfig>(config: C): any;
|
144
|
+
declare function generateClassName({ componentName, variantKey, variantValue, layer, layerOptionalPseudoSelector, subComponentName, stateKey, stateValue, }: {
|
145
|
+
componentName: string;
|
146
|
+
variantKey: string;
|
147
|
+
variantValue?: string;
|
148
|
+
layer: string;
|
149
|
+
layerOptionalPseudoSelector?: string;
|
150
|
+
subComponentName?: string;
|
151
|
+
stateKey?: string;
|
152
|
+
stateValue?: string;
|
153
|
+
}): string;
|
154
|
+
declare function generateDeclaration({ componentName, variantKey, variantValue, layer, layerOptionalPseudoSelector, subComponentName, stateKey, stateValue, schema, propertyKey, originalPropertyDefinition, theme, currentStyles, previewOptions, }: {
|
155
|
+
componentName: string;
|
156
|
+
variantKey: string;
|
157
|
+
variantValue: string;
|
158
|
+
layer: string;
|
159
|
+
layerOptionalPseudoSelector?: string;
|
160
|
+
subComponentName?: string;
|
161
|
+
stateKey?: string;
|
162
|
+
stateValue?: string;
|
163
|
+
schema: unknown;
|
164
|
+
propertyKey: string;
|
165
|
+
originalPropertyDefinition: SelectedConfigurableProperty<ConfigurablePropertiesName, any>;
|
166
|
+
theme: ThemeFn;
|
167
|
+
currentStyles: Readonly<Record<string, Record<string, string>>>;
|
168
|
+
previewOptions?: {
|
169
|
+
generatePseudoStateClassModifier?: boolean;
|
170
|
+
forcePseudoState?: boolean;
|
171
|
+
};
|
172
|
+
}): Record<string, Record<string, string>>;
|
173
|
+
declare function generateStyles<C extends ComponentConfig>(config: C, schema: any, theme: ThemeFn, previewOptions?: {
|
174
|
+
generatePseudoStateClassModifier: boolean;
|
175
|
+
forcePseudoState: boolean;
|
176
|
+
}): Record<string, Record<string, string>>;
|
177
|
+
declare function createConfigurableProperty<C extends ConfigurablePropertiesName, O extends string, T extends (typeof configurableProperties)[C]['possibleFixtures'], V extends readonly (readonly string[])[] = readonly (readonly string[])[]>(prop: {
|
178
|
+
name: C;
|
179
|
+
typeOfFixture: T;
|
180
|
+
values: V;
|
181
|
+
defaults: {
|
182
|
+
[K in O]: V[number][number];
|
183
|
+
};
|
184
|
+
label: string;
|
185
|
+
pseudoStates?: PossibleStates[];
|
186
|
+
supportsCustom?: boolean;
|
187
|
+
}): SelectedConfigurableProperty<C, O, T, V>;
|
188
|
+
/**
|
189
|
+
* @deprecated use the new functions instead
|
190
|
+
*/
|
191
|
+
declare function createVariantConfig<O extends string, T extends Record<string, SelectedConfigurableProperty<ConfigurablePropertiesName, O>>>(config: {
|
192
|
+
label: string;
|
193
|
+
description: string;
|
194
|
+
isConfigurable: boolean;
|
195
|
+
default: O;
|
196
|
+
options: readonly O[];
|
197
|
+
properties: T;
|
198
|
+
}): VariantConfig<O>;
|
199
|
+
declare function createComponentStateConfig(config: {
|
200
|
+
label: string;
|
201
|
+
options: string[];
|
202
|
+
layers: {
|
203
|
+
root: LayerConfig;
|
204
|
+
} & Record<string, LayerConfig>;
|
205
|
+
}): ComponentStateConfig;
|
206
|
+
declare function createVariantConfigWithProperties(config: {
|
207
|
+
label: string;
|
208
|
+
description: string;
|
209
|
+
isConfigurable: boolean;
|
210
|
+
default: string;
|
211
|
+
options: readonly string[];
|
212
|
+
layers: {
|
213
|
+
root: LayerConfig;
|
214
|
+
} & Record<string, LayerConfig>;
|
215
|
+
}): VariantConfigWithProperties;
|
216
|
+
declare function createVariantConfigWithComponentStates(config: {
|
217
|
+
label: string;
|
218
|
+
description: string;
|
219
|
+
isConfigurable: boolean;
|
220
|
+
default: string;
|
221
|
+
options: readonly string[];
|
222
|
+
componentStates: Record<string, ComponentStateConfig>;
|
223
|
+
}): VariantConfigWithComponentStates;
|
224
|
+
declare function createComponentStates(config: {
|
225
|
+
label: string;
|
226
|
+
options: string[];
|
227
|
+
layers: {
|
228
|
+
root: LayerConfig;
|
229
|
+
} & Record<string, LayerConfig>;
|
230
|
+
}): ComponentStateConfig;
|
231
|
+
declare function createLayerConfig(config: {
|
232
|
+
label: string;
|
233
|
+
pseudoSelector?: string;
|
234
|
+
properties: Readonly<Record<string, SelectedConfigurableProperty<ConfigurablePropertiesName, string>>>;
|
235
|
+
}): LayerConfig;
|
236
|
+
declare function createSubComponentConfig(config: {
|
237
|
+
label: string;
|
238
|
+
description: string;
|
239
|
+
overrideComponentName?: string;
|
240
|
+
variants: Record<string, VariantConfigWithProperties | VariantConfigWithComponentStates>;
|
241
|
+
}): SubComponentConfig;
|
242
|
+
|
243
|
+
export { type AllPossibleProperties as A, type ConfigurablePropertiesName as C, type ExtendablePropertiesName as E, type LayerConfig as L, type PossibleStates as P, type SelectedConfigurableProperty as S, type VariantConfig as V, type PossibleStatesWithRest as a, type ComponentStateConfig as b, configurableProperties as c, type SubComponentConfig as d, type VariantConfigWithProperties as e, type VariantConfigWithComponentStates as f, type ComponentConfig as g, type AutoComponents as h, type AutoComponentName as i, type AllVariantKeys as j, type SchemaStateValue as k, findFixtureType as l, generateClassName as m, generateDeclaration as n, generateStyles as o, createConfigurableProperty as p, createVariantConfig as q, createComponentStateConfig as r, statePseudoMapDocsMode as s, toMinimalDbConfigObject as t, createVariantConfigWithProperties as u, createVariantConfigWithComponentStates as v, createComponentStates as w, createLayerConfig as x, createSubComponentConfig as y };
|