tango-ui-cw 1.0.7 → 1.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +5 -5
- package/dist/index.js +845 -845
- package/dist/styles/base.css +354 -0
- package/dist/styles/global.css +270 -289
- package/dist/styles/style.css +1 -1
- package/dist/styles/theme.css +6 -6
- package/dist/styles/utilities.css +1 -1
- package/package.json +2 -1
package/dist/index.cjs
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),d=require("react"),Zt=require("react-dom"),t=require("prop-types"),Gt=require("tailwind-merge"),ot="tango:theme",st="tango:themeTokens",Fe="light",qt=["primary","input-accent","modal-ok-bg","drawer-ok-bg","datepicker-confirm-bg"],Pt=d.createContext(null),Ot=()=>typeof window<"u",rt=(e,o)=>{if(!Ot())return o;try{const r=window.localStorage.getItem(e);return r?JSON.parse(r):o}catch{return o}},at=(e,o)=>{if(Ot())try{window.localStorage.setItem(e,JSON.stringify(o))}catch{}};function Xt({children:e}){const[o,r]=d.useState(Fe),n=d.useRef(!1);d.useEffect(()=>{const u=rt(ot,Fe);u!==Fe&&r(u==="dark"?"dark":"light"),n.current=!0},[]);const[c,l]=d.useState(()=>rt(st,{})),a=d.useRef(new Set);d.useEffect(()=>{typeof document>"u"||(document.documentElement.dataset.theme=o)},[o]),d.useEffect(()=>{n.current&&at(ot,o)},[o]),d.useEffect(()=>{if(typeof document>"u")return;const u=document.documentElement,f=new Set(Object.keys(c));a.current.forEach(S=>{f.has(S)||u.style.removeProperty(`--${S}`)}),Object.entries(c).forEach(([S,C])=>{C==null||C===""?u.style.removeProperty(`--${S}`):u.style.setProperty(`--${S}`,String(C))}),a.current=f,at(st,c)},[c]);const i=u=>{l(f=>{const S=typeof u=="function"?u(f):u;return{...f,...S||{}}})},p=(u,f=qt)=>{i(S=>{const C={...S};return f.forEach(T=>{C[T]=u}),C})},h=()=>{l({})},x=()=>{r(u=>u==="dark"?"light":"dark")};return s.jsx(Pt.Provider,{value:{theme:o,setTheme:r,toggleTheme:x,themeTokens:c,setThemeTokens:i,setThemeColor:p,resetThemeTokens:h},children:e})}function Jt(){return d.useContext(Pt)}const Qt=new Set(["root","slots","tw","className","css","style"]),Pe={tw:"",css:{}},be=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Y=(e,o="px")=>typeof e=="number"?`${e}${o}`:e,me=e=>typeof e=="string"&&e.startsWith("$")?`var(--${e.slice(1)})`:e,eo=e=>e.includes("-")?e.replace(/-([a-z])/g,(o,r)=>r.toUpperCase()):e,to=e=>/(color|background|border|fill|stroke|shadow)$/i.test(e),oo={mt:(e,o)=>{e.marginTop=Y(o)},mr:(e,o)=>{e.marginRight=Y(o)},mb:(e,o)=>{e.marginBottom=Y(o)},ml:(e,o)=>{e.marginLeft=Y(o)},mx:(e,o)=>{e.marginLeft=Y(o),e.marginRight=Y(o)},my:(e,o)=>{e.marginTop=Y(o),e.marginBottom=Y(o)},m:(e,o)=>{e.margin=Y(o)},pt:(e,o)=>{e.paddingTop=Y(o)},pr:(e,o)=>{e.paddingRight=Y(o)},pb:(e,o)=>{e.paddingBottom=Y(o)},pl:(e,o)=>{e.paddingLeft=Y(o)},px:(e,o)=>{e.paddingLeft=Y(o),e.paddingRight=Y(o)},py:(e,o)=>{e.paddingTop=Y(o),e.paddingBottom=Y(o)},p:(e,o)=>{e.padding=Y(o)},g:(e,o)=>{e.gap=Y(o)},rg:(e,o)=>{e.rowGap=Y(o)},cg:(e,o)=>{e.columnGap=Y(o)},w:(e,o)=>{e.width=Y(o)},h:(e,o)=>{e.height=Y(o)},mw:(e,o)=>{e.minWidth=Y(o)},mh:(e,o)=>{e.minHeight=Y(o)},maxw:(e,o)=>{e.maxWidth=Y(o)},maxh:(e,o)=>{e.maxHeight=Y(o)},vw:(e,o)=>{e.width=typeof o=="number"?`${o}vw`:o},vh:(e,o)=>{e.height=typeof o=="number"?`${o}vh`:o},presentw:(e,o)=>{e.width=typeof o=="number"?`${o}%`:o},presenth:(e,o)=>{e.height=typeof o=="number"?`${o}%`:o},size:(e,o)=>{e.fontSize=Y(o)},fw:(e,o)=>{e.fontWeight=o},fwb:e=>{e.fontWeight="bold"},fwn:e=>{e.fontWeight="normal"},tac:e=>{e.textAlign="center"},tar:e=>{e.textAlign="right"},tal:e=>{e.textAlign="left"},lh:(e,o)=>{e.lineHeight=Y(o)},ls:(e,o)=>{e.letterSpacing=Y(o)},c:(e,o)=>{e.color=me(o)},bg:(e,o)=>{e.background=me(o)},bgc:(e,o)=>{e.backgroundColor=me(o)},b:(e,o)=>{e.border=o===1?"1px solid var(--border)":me(o)},br:(e,o)=>{e.borderRadius=Y(o)},bw:(e,o)=>{e.borderWidth=Y(o)},bs:(e,o)=>{e.borderStyle=o},bColor:(e,o)=>{e.borderColor=me(o)},boxshadow:(e,o)=>{e.boxShadow=me(o)},bgSize:(e,o)=>{e.backgroundSize=o},bgPosition:(e,o)=>{e.backgroundPosition=o},bgRepeat:(e,o)=>{e.backgroundRepeat=o},rel:e=>{e.position="relative"},ab:e=>{e.position="absolute"},fixed:e=>{e.position="fixed"},sticky:e=>{e.position="sticky"},center:e=>{e.position="absolute",e.inset=0,e.margin="auto"},inset:(e,o)=>{e.inset=Y(o)},top:(e,o)=>{e.top=Y(o)},right:(e,o)=>{e.right=Y(o)},bottom:(e,o)=>{e.bottom=Y(o)},left:(e,o)=>{e.left=Y(o)},z:(e,o)=>{e.zIndex=o},flex:e=>{e.display="flex"},iflex:e=>{e.display="inline-flex"},fd:(e,o)=>{e.flexDirection=o},fwrap:(e,o="wrap")=>{e.flexWrap=o},aic:e=>{e.alignItems="center"},ai:(e,o)=>{e.alignItems=o},jcc:e=>{e.justifyContent="center"},jc:(e,o)=>{e.justifyContent=o},ac:(e,o)=>{e.alignContent=o},as:(e,o)=>{e.alignSelf=o},f:(e,o)=>{e.flex=typeof o=="number"?o:`${o}`},fl:e=>{e.float="left"},fr:e=>{e.float="right"},ar:(e,o)=>{e.aspectRatio=o},tran:(e,o)=>{e.transition=typeof o=="number"?`${o}s`:o},op:(e,o)=>{e.opacity=o},oh:e=>{e.overflow="hidden"},ohauto:e=>{e.overflow="auto"},oxh:e=>{e.overflowX="hidden"},oxa:e=>{e.overflowX="auto"},oyh:e=>{e.overflowY="hidden"},oya:e=>{e.overflowY="auto"},cur:(e,o)=>{e.cursor=o},pe:(e,o)=>{e.pointerEvents=o},boxsizing:e=>{e.boxSizing="border-box"},none:e=>{e.display="none"},block:e=>{e.display="block"},inline:e=>{e.display="inline"},ib:e=>{e.display="inline-block"},hidden:e=>{e.visibility="hidden"},shown:e=>{e.visibility="visible"}},ve=(e={})=>be(e)?Object.entries(e).reduce((o,[r,n])=>{if(Qt.has(r))return o;const c=oo[r];if(c)return c(o,n),o;const l=eo(r),a=typeof n=="string"&&(n.startsWith("$")||to(l))?me(n):n;return o[l]=a,o},{}):{},$=(...e)=>{const o=e.filter(Boolean).join(" ").trim();return o?Gt.twMerge(o):""},Te=e=>{if(typeof e=="string")return{tw:e,css:{}};if(!be(e))return{...Pe};if(!("tw"in e||"className"in e||"css"in e||"style"in e))return{tw:"",css:ve(e)};const r=[e.className,e.tw].filter(Boolean).join(" "),n=be(e.css)?ve(e.css):{},c=be(e.style)?ve(e.style):{};return{tw:r,css:{...n,...c}}},so=(e,o)=>be(e)?"root"in e||"slots"in e||"tw"in e||"className"in e||"css"in e||"style"in e?!0:o.some(r=>r!=="root"&&r in e):!1,ro=e=>{const o={};return e.forEach(r=>{o[r]={...Pe}}),o.root||(o.root={...Pe}),o},H=(e,o=["root"])=>{const r=ro(o);if(typeof e=="string")return r.root.tw=e,r;if(!be(e))return r;if(!so(e,o))return r.root.css=ve(e),r;const n=Te({tw:[e.className,e.tw].filter(Boolean).join(" "),css:e.css,style:e.style}),c=Te(e.root);r.root={tw:$(n.tw,c.tw),css:{...n.css,...c.css}};const l=be(e.slots)?e.slots:{};return Object.keys(r).forEach(a=>{if(a==="root")return;const i=Te(e[a]),p=Te(l[a]);r[a]={tw:$(i.tw,p.tw),css:{...i.css,...p.css}}}),r},b=({baseClassName:e="",className:o="",baseStyle:r={},style:n={},sxSlot:c=Pe}={})=>({className:$(e,o,c.tw),style:{...r||{},...c.css||{},...n||{}}}),ao=["root","icon","content"],nt={success:"text-[var(--notice-success-text)]",fail:"text-[var(--notice-fail-text)]",caution:"text-[var(--notice-caution-text)]"},lt={default:{base:"fixed top-5 left-1/2 -translate-x-1/2",enter:"animate-[noticeSlideDown_0.3s_cubic-bezier(0.22,1,0.36,1)_forwards]"},md:{base:"fixed bottom-5 left-5",enter:"animate-[noticeSlideFromBottom_0.3s_ease-out_forwards]"}};function no(e,o){const{type:r="success",icon:n,message:c,variant:l="default",duration:a=3e3,onClose:i,sx:p={},style:h={},className:x="",...u}=e,[f,S]=d.useState(!1),C=nt[r]?r:"success",T=lt[l]?l:"default",F=H(p,ao),P=d.useCallback(()=>{S(!0);const O=setTimeout(()=>i==null?void 0:i(),300);return()=>clearTimeout(O)},[i]);d.useEffect(()=>{if(!i||a<=0)return;const O=setTimeout(P,a);return()=>clearTimeout(O)},[i,a,P]);const y=lt[T],v=T==="default"?"animate-[noticeSlideUpFade_0.3s_ease-in_forwards]":"animate-[noticeSlideToBottom_0.3s_ease-in_forwards]",k=b({baseClassName:$("inline-flex items-center gap-2 px-3 py-2 text-sm z-[999]","rounded-[var(--notice-radius)]","bg-[var(--notice-bg)] text-[var(--notice-foreground)]","shadow-[var(--notice-shadow)]",y.base,f?v:y.enter,T==="md"&&nt[C]),className:x,sxSlot:F.root,baseStyle:{borderRadius:"var(--notice-radius)"},style:h}),m=b({baseClassName:"flex-shrink-0 text-[var(--notice-foreground)]",sxSlot:F.icon}),N=b({baseClassName:"inline-block",sxSlot:F.content});return s.jsxs("div",{ref:o,role:"alert",className:k.className,style:k.style,...u,children:[T!=="md"&&n&&s.jsx("span",{className:m.className,style:m.style,children:n}),s.jsx("span",{className:N.className,style:N.style,children:c})]})}const Ne=d.forwardRef(no);Ne.displayName="Notice";Ne.propTypes={type:t.oneOf(["success","fail","caution"]),icon:t.node,message:t.node,variant:t.oneOf(["default","md"]),duration:t.number,onClose:t.func,sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string};const _t=d.createContext(null),lo=s.jsx("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:s.jsx("path",{d:"M874.119618 149.859922A510.816461 510.816461 0 0 0 511.997 0.00208a509.910462 509.910462 0 0 0-362.119618 149.857842c-199.817789 199.679789-199.817789 524.581447 0 724.260236a509.969462 509.969462 0 0 0 362.119618 149.857842A508.872463 508.872463 0 0 0 874.119618 874.120158c199.836789-199.679789 199.836789-524.581447 0-724.260236zM814.94268 378.210681L470.999043 744.132295a15.359984 15.359984 0 0 1-5.887994 4.095996c-1.751998 1.180999-2.913997 2.362998-5.276994 2.913997a34.499964 34.499964 0 0 1-13.469986 2.914997 45.547952 45.547952 0 0 1-12.897986-2.303998l-4.095996-2.363997a45.291952 45.291952 0 0 1-7.009992-4.095996l-196.902793-193.789796a34.126964 34.126964 0 0 1-10.555989-25.186973c0-9.37399 3.583996-18.74698 9.98399-25.186974a36.429962 36.429962 0 0 1 50.372947 0l169.98382 167.423824L763.389735 330.220732a37.059961 37.059961 0 0 1 50.371947-1.732998 33.647965 33.647965 0 0 1 11.165988 25.186973 35.544963 35.544963 0 0 1-9.98399 24.575974v-0.04z m0 0",fill:"var(--notice-success-text)"})}),co=s.jsx("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:s.jsx("path",{d:"M549.044706 512l166.189176-166.249412a26.383059 26.383059 0 0 0 0-36.98447 26.383059 26.383059 0 0 0-37.044706 0L512 475.015529l-166.249412-166.249411a26.383059 26.383059 0 0 0-36.98447 0 26.383059 26.383059 0 0 0 0 37.044706L475.015529 512l-166.249411 166.249412a26.383059 26.383059 0 0 0 0 36.98447 26.383059 26.383059 0 0 0 37.044706 0L512 548.984471l166.249412 166.249411a26.383059 26.383059 0 0 0 36.98447 0 26.383059 26.383059 0 0 0 0-37.044706L548.984471 512zM512 1024a512 512 0 1 1 0-1024 512 512 0 0 1 0 1024z",fill:"var(--notice-fail-text)"})}),io=s.jsxs("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:[s.jsx("path",{d:"M512 909.061224c-218.906122 0-397.061224-178.155102-397.061224-397.061224s178.155102-397.061224 397.061224-397.061224 397.061224 178.155102 397.061224 397.061224-178.155102 397.061224-397.061224 397.061224z",fill:"var(--notice-caution-text)"}),s.jsx("path",{d:"M512 690.677551m-31.346939 0a31.346939 31.346939 0 1 0 62.693878 0 31.346939 31.346939 0 1 0-62.693878 0Z",fill:"var(--notice-fail-text)"}),s.jsx("path",{d:"M512 584.097959c-11.493878 0-20.897959-9.404082-20.897959-20.897959v-261.22449c0-11.493878 9.404082-20.897959 20.897959-20.897959s20.897959 9.404082 20.897959 20.897959v261.22449c0 12.016327-9.404082 20.897959-20.897959 20.897959z",fill:"var(--notice-fail-text)"})]}),uo={success:lo,fail:co,caution:io};function po({children:e}){const[o,r]=d.useState([]),[n,c]=d.useState(!1);d.useEffect(()=>{c(!0)},[]);const l=d.useCallback(i=>{r(p=>p.filter(h=>h.id!==i))},[]),a=d.useCallback((i,p,h="default")=>{const x=Date.now()+Math.random();r(u=>[...u,{id:x,type:i,message:p,variant:h,icon:uo[i]}])},[]);return s.jsxs(_t.Provider,{value:{add:a,remove:l},children:[e,n&&Zt.createPortal(s.jsx("div",{id:"notification-container",className:"flex flex-col items-center gap-2",children:o.map(i=>s.jsx(Ne,{...i,onClose:()=>l(i.id)},i.id))}),document.body)]})}function mo(){const e=d.useContext(_t);if(!e)throw new Error("useNotice must be used inside <NoticeProvider />");return e}function bo(){const{add:e}=mo();return{success:o=>e("success",o),fail:o=>e("fail",o),caution:o=>e("caution",o),md:{success:o=>e("success",o,"md"),fail:o=>e("fail",o,"md"),caution:o=>e("caution",o,"md")}}}const At="tango:locale",xe="zh-CN",xo={zh:"zh-CN",ZH:"zh-CN","zh-CN":"zh-CN","zh-cn":"zh-CN",cn:"zh-CN",CN:"zh-CN",en:"en-US",EN:"en-US","en-US":"en-US","en-us":"en-US",us:"en-US",US:"en-US"},Mt={"zh-CN":{button:{default:"按钮",loading:"加载中",iconAlt:"图标",toggle:"切换",light:"浅色",dark:"暗色",blue:"蓝色",green:"绿色",token:"自定义词条",reset:"重置",locale:"语言",chinese:"中文",english:"英文",successDemo:"成功",outlineDemo:"描边",submit:"提交",confirm:"确认",cancel:"取消",search:"搜索",save:"保存",delete:"删除",back:"返回",next:"下一步",prev:"上一步",add:"新增"},banner:{cancel:"取消",action:"操作"},colorpicker:{hex:"HEX",rgb:"RGB",hsl:"HSL"},date:{weekdayPrefix:"星期",weekdayShortPrefix:"周"},datepicker:{placeholder:"YYYY-MM-DD",placeholderTime:"YYYY-MM-DD HH:mm",timeLabel:"时间",confirm:"确定",cancel:"关闭",prevMonth:"上一月",nextMonth:"下一月"},drawer:{title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"},modal:{title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"},search:{placeholder:"请输入内容",btnText:"搜索"},materialInput:{label:""},materialButton:{default:"按钮",loading:"加载中",iconAlt:"图标"},table:{empty:"暂无数据",prev:"上一页",next:"下一页",page:"页",total:"共 {total} 条",perPage:"条/页"}},"en-US":{button:{default:"Button",loading:"Loading",iconAlt:"icon",toggle:"Toggle",light:"Light",dark:"Dark",blue:"Blue",green:"Green",token:"Token",reset:"Reset",locale:"Locale",chinese:"Chinese",english:"English",successDemo:"Success",outlineDemo:"Outline",submit:"Submit",confirm:"Confirm",cancel:"Cancel",search:"Search",save:"Save",delete:"Delete",back:"Back",next:"Next",prev:"Previous",add:"Add"},banner:{cancel:"Cancel",action:"Action"},colorpicker:{hex:"HEX",rgb:"RGB",hsl:"HSL"},date:{weekdayPrefix:"",weekdayShortPrefix:""},datepicker:{placeholder:"YYYY-MM-DD",placeholderTime:"YYYY-MM-DD HH:mm",timeLabel:"Time",confirm:"Confirm",cancel:"Close",prevMonth:"Previous month",nextMonth:"Next month"},drawer:{title:"Drawer",okText:"OK",cancelText:"Cancel",closeAriaLabel:"Close"},modal:{title:"Modal",okText:"OK",cancelText:"Cancel",closeAriaLabel:"Close"},search:{placeholder:"Search...",btnText:"Search"},materialInput:{label:""},materialButton:{default:"Button",loading:"Loading",iconAlt:"icon"},table:{empty:"No data",prev:"Previous",next:"Next",page:"Page",total:"{total} items",perPage:"/ page"}}},Ke=()=>{},zt=d.createContext({locale:xe,setLocale:Ke,toggleLocale:Ke,messages:Mt,t:(e,o="")=>o}),ct=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Et=(e,o)=>{const r={...e};return Object.entries(o||{}).forEach(([n,c])=>{ct(c)&&ct(r[n])?r[n]=Et(r[n],c):r[n]=c}),r},fo=(e,o)=>o.split(".").reduce((r,n)=>{if(r&&Object.prototype.hasOwnProperty.call(r,n))return r[n]},e),Se=e=>typeof e!="string"||!e.trim()?xe:xo[e]||e,go=()=>{if(typeof window>"u")return xe;try{const e=window.localStorage.getItem(At);return Se(e||xe)}catch{return xe}};function ho({children:e,locale:o,defaultLocale:r=xe,onLocaleChange:n=Ke,messages:c={}}){const l=Se(r),a=o==null?null:Se(o),[i,p]=d.useState(()=>go()||l),h=a||i,x=C=>{const T=Se(C);a==null&&p(T),n(T)};d.useEffect(()=>{if(!(typeof window>"u"))try{window.localStorage.setItem(At,h)}catch{}},[h]);const u=d.useMemo(()=>Et(Mt,c),[c]),f=()=>{x(h==="zh-CN"?"en-US":"zh-CN")},S=(C,T="")=>{const F=u[h]||u[xe]||{},P=fo(F,C);return P==null||P===""?T:String(P)};return s.jsx(zt.Provider,{value:{locale:h,setLocale:x,toggleLocale:f,messages:u,t:S},children:e})}function re(){return d.useContext(zt)}const yo="_materialBtn_y97j8_8",vo="_materialBtnSmall_y97j8_27",So="_materialBtnMedium_y97j8_33",No="_materialBtnLarge_y97j8_39",wo="_materialBtnHuge_y97j8_45",Co="_materialBtnDisabled_y97j8_52",To="_ripple_y97j8_60",he={materialBtn:yo,materialBtnSmall:vo,materialBtnMedium:So,materialBtnLarge:No,materialBtnHuge:wo,materialBtnDisabled:Co,ripple:To},it=["root","content","icon","loading"],ko={small:"small",medium:"medium",large:"large",huge:"huge"},jo={small:12,medium:14,large:16,huge:20},dt={default:{backgroundColor:"var(--primary)",color:"var(--primary-foreground)",borderColor:"var(--border)",borderWidth:"1px",borderStyle:"solid"},transparent:{backgroundColor:"var(--transparent)",color:"var(--primary-foreground)",borderColor:"var(--button-transparent-border)",borderWidth:"1px",borderStyle:"solid"},danger:{backgroundColor:"var(--destructive)",color:"var(--destructive-foreground)",borderColor:"transparent",borderWidth:"1px",borderStyle:"solid"},success:{backgroundColor:"var(--success)",color:"var(--success-foreground)",borderColor:"transparent",borderWidth:"1px",borderStyle:"solid"}},Lo={default:{backgroundColor:"var(--transparent)",color:"var(--button-outline-foreground)",borderColor:"var(--border)",borderWidth:"1px",borderStyle:"solid"},transparent:{backgroundColor:"var(--transparent)",color:"var(--button-outline-foreground)",borderColor:"var(--button-transparent-border)",borderWidth:"1px",borderStyle:"solid"},danger:{backgroundColor:"var(--transparent)",color:"var(--destructive)",borderColor:"var(--destructive)",borderWidth:"1px",borderStyle:"solid"},success:{backgroundColor:"var(--transparent)",color:"var(--success)",borderColor:"var(--success)",borderWidth:"1px",borderStyle:"solid"}},Po={backgroundColor:"var(--muted)",color:"var(--muted-foreground)",borderColor:"transparent",borderWidth:"1px",borderStyle:"solid",cursor:"not-allowed"},De={default:"按钮",loading:"加载中",iconAlt:"图标"},Oo=e=>e.charAt(0).toUpperCase()+e.slice(1),_o=e=>e===!0||e==="light"||e==="dark"?!0:Array.isArray(e)&&e.length>0?e[0]===!0||e[0]==="light"||e[0]==="dark":!1,Ao=e=>e==="light"?"light":e==="dark"||e===!0||Array.isArray(e)&&e.length>=2&&e[1]==="dark"?"dark":"light",ut=(e,o,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:o;function Oe(e){const{type:o="default",size:r="medium",sx:n={},style:c={},className:l="",onClick:a=()=>{},children:i,disabled:p=!1,outline:h=!1,icon:x=null,iconPosition:u=null,loading:f=!1,i18nKey:S=null,localeText:C={},rippleColor:T,"aria-label":F,...P}=e,{t:y}=re(),v=d.useRef(null),k=ut(r,"medium",ko),m=ut(o,"default",dt),N=_o(f),O=Ao(f),A=p||N,B=jo[k],_=u==="right"?"right":x||N?"left":null,j=T??"var(--material-button-ripple)",w={default:y("materialButton.default",De.default),loading:y("materialButton.loading",De.loading),iconAlt:y("materialButton.iconAlt",De.iconAlt),...C},W=(S&&typeof w[S]=="string"?w[S]:null)||(S?y(`materialButton.${S}`,w.default):w.default),D=N?w.loading:W,z=i??D,E=F||(i==null?String(z||w.default):void 0),M=H(n,it),U=A?Po:h?Lo[m]:dt[m],K=he[`materialBtn${Oo(k)}`],Z=M.root.css||{},R=typeof n=="string"?n:"",J=new Set([...it,"root","slots","tw","className","css","style"]),le=typeof n=="object"?Object.fromEntries(Object.entries(n).filter(([ee])=>!J.has(ee))):{},de=[he.materialBtn,K,A&&he.materialBtnDisabled,M.root.tw,R,l].filter(Boolean).join(" "),ue={...U,...le,...Z,...c},pe=b({baseClassName:"inline-flex items-center relative z-[1]",sxSlot:M.content}),G=b({baseClassName:"inline-flex items-center justify-center shrink-0 transition-all duration-300 relative z-[1]",baseStyle:{width:`${B}px`,height:`${B}px`},sxSlot:M.icon}),X=b({baseClassName:"inline-flex items-center justify-center shrink-0 animate-spin relative z-[1]",baseStyle:{width:`${B}px`,height:`${B}px`,color:O==="light"?"var(--button-loading-light)":"var(--button-loading-dark)"},sxSlot:M.loading}),I=d.useCallback(ee=>{if(A)return;const oe=v.current;if(!oe)return;const g=document.createElement("span"),V=Math.max(oe.clientWidth,oe.clientHeight),Q=V/2;Object.assign(g.style,{width:`${V}px`,height:`${V}px`,left:`${ee.clientX-oe.getBoundingClientRect().left-Q}px`,top:`${ee.clientY-oe.getBoundingClientRect().top-Q}px`}),g.className=he.ripple,g.style.background=j;const ne=oe.querySelector(`.${he.ripple}`);ne&&ne.remove(),oe.appendChild(g)},[A,j]),q=()=>{if(!x)return null;if(typeof x=="string")return s.jsx("img",{src:x,alt:w.iconAlt,className:G.className,style:G.style,"aria-hidden":"true"});if(d.isValidElement(x))return d.cloneElement(x,{className:$(G.className,x.props.className),style:{...G.style,...x.props.style},"aria-hidden":!0});if(typeof x=="function"){const ee=x;return s.jsx(ee,{className:G.className,style:G.style,"aria-hidden":"true"})}return s.jsx("span",{className:G.className,style:G.style,"aria-hidden":"true",children:x})},ae=()=>s.jsx("svg",{viewBox:"0 0 1024 1024",role:"presentation",className:X.className,style:X.style,"aria-hidden":"true",children:s.jsx("path",{d:"M512 1024A512 512 0 0 1 0 512a32 32 0 0 1 64 0 448 448 0 0 0 896 0 32 32 0 0 1 64 0 512 512 0 0 1-512 512z",fill:"currentColor"})});return s.jsxs("button",{ref:v,className:de,style:ue,onClick:ee=>{I(ee),a==null||a(ee)},disabled:A,"aria-label":E,"data-variant":m,"data-size":k,"data-icon-position":_||void 0,...P,children:[_==="left"&&s.jsxs(s.Fragment,{children:[N&&ae(),!N&&x&&q()]}),s.jsx("span",{className:pe.className,style:pe.style,children:z}),_==="right"&&s.jsxs(s.Fragment,{children:[N&&ae(),!N&&x&&q()]})]})}Oe.propTypes={type:t.oneOf(["default","transparent","danger","success"]),size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,onClick:t.func,className:t.string,children:t.node,disabled:t.bool,outline:t.bool,icon:t.oneOfType([t.elementType,t.node,t.string]),iconPosition:t.oneOf(["left","right"]),loading:t.oneOfType([t.bool,t.oneOf(["light","dark"]),t.array]),i18nKey:t.string,localeText:t.object,rippleColor:t.string};const Mo=["root","content","icon","loading"],Re={default:"按钮",loading:"加载中",iconAlt:"图标"},zo="inline-flex select-none items-center justify-center whitespace-nowrap rounded-[var(--radius)] border align-middle font-medium tracking-[0.5px] transition-all duration-300 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--input-accent)] focus-visible:ring-offset-2",Ve={small:{iconSize:12,className:"text-xs px-2 py-1 gap-1"},medium:{iconSize:14,className:"text-sm px-4 py-2 gap-1.5"},large:{iconSize:16,className:"text-base px-5 py-3 gap-2"},huge:{iconSize:20,className:"text-[25px] px-[45px] py-[18px] gap-3"}},pt={default:"bg-[var(--primary)] text-[var(--primary-foreground)] border-[var(--border)] hover:shadow-[0_0_0.4em_0_var(--button-shadow-default)]",transparent:"bg-[var(--transparent)] text-[var(--primary-foreground)] border-[var(--button-transparent-border)] hover:shadow-[0_0_0.4em_0_var(--button-shadow-default)]",danger:"bg-[var(--destructive)] text-[var(--destructive-foreground)] border-transparent hover:shadow-[0_0_0.4em_0_var(--destructive)]",success:"bg-[var(--success)] text-[var(--success-foreground)] border-transparent hover:shadow-[0_0_0.4em_0_var(--success)]"},Eo="bg-[var(--transparent)]",$o={default:"text-[var(--button-outline-foreground)] border-[var(--border)]",transparent:"text-[var(--button-outline-foreground)] border-[var(--button-transparent-border)]",danger:"text-[var(--destructive)] border-[var(--destructive)]",success:"text-[var(--success)] border-[var(--success)]"},Bo="shadow-[var(--button-enu-shadow)] hover:shadow-[var(--button-enu-hover-shadow)] active:translate-y-px active:shadow-[var(--button-enu-active-shadow)]",Io={default:"bg-[var(--button-enu-bg)] text-[var(--button-enu-fg)] border-transparent",transparent:"bg-[var(--transparent)] text-[var(--button-enu-fg)] border-[var(--button-transparent-border)]",danger:"bg-[var(--destructive)] text-[var(--destructive-foreground)] border-transparent",success:"bg-[var(--success)] text-[var(--success-foreground)] border-transparent"},Fo="bg-[var(--muted)] text-[var(--muted-foreground)] border-transparent cursor-not-allowed shadow-none hover:shadow-none",Do=e=>e===!0||e==="light"||e==="dark"?!0:Array.isArray(e)&&e.length>0?e[0]===!0||e[0]==="light"||e[0]==="dark":!1,Ro=e=>e==="light"?"light":e==="dark"||e===!0||Array.isArray(e)&&e.length>=2&&e[1]==="dark"?"dark":"light",mt=(e,o,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:o;function se(e){const{type:o="default",size:r="medium",sx:n={},style:c={},className:l="",onClick:a=()=>{},children:i,disabled:p=!1,outline:h=!1,enu:x=!1,icon:u=null,iconPosition:f=null,loading:S=!1,i18nKey:C=null,localeText:T={},"aria-label":F,...P}=e,{t:y}=re(),v=mt(r,"medium",Ve),k=mt(o,"default",pt),m=Do(S),N=Ro(S),O=p||m,A=Ve[v].iconSize,B=f==="right"?"right":u||m?"left":null,_=H(n,Mo),j={default:y("button.default",Re.default),loading:y("button.loading",Re.loading),iconAlt:y("button.iconAlt",Re.iconAlt),...T},L=(C&&typeof j[C]=="string"?j[C]:null)||(C?y(`button.${C}`,j.default):j.default),W=m?j.loading:L,D=i??W,z=F||(i==null?String(D||j.default):void 0);let E=pt[k];h&&(E=$(E,Eo,$o[k])),x&&(E=$(E,Bo,Io[k]));const M=b({baseClassName:$(zo,Ve[v].className,E,O&&Fo,m&&"cursor-wait"),className:l,style:c,sxSlot:_.root}),U=b({baseClassName:"inline-flex items-center",sxSlot:_.content}),K=b({baseClassName:"inline-flex items-center justify-center shrink-0 transition-all duration-300",baseStyle:{width:`${A}px`,height:`${A}px`},sxSlot:_.icon}),Z=b({baseClassName:"inline-flex items-center justify-center shrink-0 animate-spin",baseStyle:{width:`${A}px`,height:`${A}px`,color:N==="light"?"var(--button-loading-light)":"var(--button-loading-dark)"},sxSlot:_.loading}),R=()=>{if(!u)return null;if(typeof u=="string")return s.jsx("img",{src:u,alt:j.iconAlt,className:K.className,style:K.style,"aria-hidden":"true"});if(d.isValidElement(u))return d.cloneElement(u,{className:$(K.className,u.props.className),style:{...K.style,...u.props.style},"aria-hidden":!0});if(typeof u=="function"){const le=u;return s.jsx(le,{className:K.className,style:K.style,"aria-hidden":"true"})}return s.jsx("span",{className:K.className,style:K.style,"aria-hidden":"true",children:u})},J=()=>s.jsx("svg",{viewBox:"0 0 1024 1024",role:"presentation",className:Z.className,style:Z.style,"aria-hidden":"true",children:s.jsx("path",{d:"M512 1024A512 512 0 0 1 0 512a32 32 0 0 1 64 0 448 448 0 0 0 896 0 32 32 0 0 1 64 0 512 512 0 0 1-512 512z",fill:"currentColor"})});return s.jsxs("button",{className:M.className,style:M.style,onClick:a,disabled:O,"aria-label":z,"data-variant":k,"data-size":v,"data-icon-position":B||void 0,...P,children:[B==="left"&&s.jsxs(s.Fragment,{children:[m&&J(),!m&&u&&R()]}),s.jsx("span",{className:U.className,style:U.style,children:D}),B==="right"&&s.jsxs(s.Fragment,{children:[m&&J(),!m&&u&&R()]})]})}se.propTypes={type:t.oneOf(["default","transparent","danger","success"]),size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,onClick:t.func,className:t.string,children:t.node,disabled:t.bool,outline:t.bool,enu:t.bool,icon:t.oneOfType([t.elementType,t.node,t.string]),iconPosition:t.oneOf(["left","right"]),loading:t.oneOfType([t.bool,t.oneOf(["light","dark"]),t.array]),i18nKey:t.string,localeText:t.object};se.MaterialButton=Oe;const Vo=["root","input","label"],Yo={small:"small",medium:"medium",large:"large",huge:"huge"},Ko={small:{wrapper:"h-10 text-sm",label:"text-sm",labelFloat:"text-[10px]",pt:"pt-5"},medium:{wrapper:"h-12 text-base",label:"text-base",labelFloat:"text-xs",pt:"pt-6"},large:{wrapper:"h-14 text-lg",label:"text-lg",labelFloat:"text-sm",pt:"pt-7"},huge:{wrapper:"h-16 text-xl",label:"text-xl",labelFloat:"text-base",pt:"pt-8"}},Wo={label:""},Uo=(e,o,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:o;function _e(e){const{size:o="medium",sx:r={},style:n={},className:c="",onChange:l,value:a,defaultValue:i,disabled:p=!1,label:h,localeText:x,type:u="text",...f}=e,{t:S}=re(),C=Uo(o,"medium",Yo),T=a!==void 0,[F,P]=d.useState(i??""),[y,v]=d.useState(!1),k=T?a:F,m=y||String(k).length>0,N=h??(x==null?void 0:x.label)??S("materialInput.label",Wo.label),O=H(r,Vo),A={tw:$(O.root.tw,O.input.tw),css:{...O.root.css,...O.input.css}},B=$("relative inline-flex",O.root.tw),_=Ko[C],j=$("w-[300px] bg-transparent text-[var(--foreground)] outline-none transition-all duration-200 ease-in-out","border-b border-b-[var(--border)]","hover:border-b-[var(--input-accent)]","focus:border-b-[var(--input-accent)]",p&&"text-[var(--muted-foreground)] border-b-[var(--muted)] cursor-not-allowed hover:border-b-[var(--muted)]",_.wrapper,_.pt),w=b({baseClassName:j,className:c,style:n,sxSlot:A}),L=$("absolute left-0 transition-all duration-200 ease-in-out pointer-events-none",m?`top-1 ${_.labelFloat} text-[var(--input-accent)]`:`top-1/2 -translate-y-1/2 ${_.label} text-[var(--muted-foreground)]`,y&&m&&"text-[var(--input-accent)]",p&&"text-[var(--muted-foreground)]",O.label.tw),W=b({baseClassName:L,sxSlot:{tw:"",css:O.label.css}}),D=d.useCallback(Z=>{const R=Z.target.value;T||P(R),l==null||l(R)},[T,l]),z=d.useCallback(Z=>{var R;v(!0),(R=f.onFocus)==null||R.call(f,Z)},[f.onFocus]),E=d.useCallback(Z=>{var R;v(!1),(R=f.onBlur)==null||R.call(f,Z)},[f.onBlur]),{onFocus:M,onBlur:U,...K}=f;return s.jsxs("div",{className:B,children:[s.jsx("input",{...K,type:u,className:w.className,style:w.style,value:k,disabled:p||void 0,onChange:D,onFocus:z,onBlur:E,"aria-label":N||void 0}),N&&s.jsx("label",{className:W.className,style:W.style,children:N})]})}_e.propTypes={size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,onChange:t.func,value:t.string,defaultValue:t.string,disabled:t.bool,label:t.string,localeText:t.shape({label:t.string}),type:t.string};const Ho=["root","input"],Zo={small:"small",medium:"medium",large:"large",huge:"huge"},Go={small:"h-8 text-xs px-2.5",medium:"h-10 text-sm px-3",large:"h-12 text-base px-3.5",huge:"h-14 text-lg px-4"},qo=(e,o,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:o;function Ae(e){const{type:o="default",size:r="medium",sx:n={},style:c={},className:l="",onClick:a,onChange:i,value:p,defaultValue:h,disabled:x=!1,placeholder:u="",maxlength:f=524288,status:S,...C}=e,T=qo(r,"medium",Zo),F=o==="textarea",P=o==="password",y=S==="error",v=H(n,Ho),k={tw:$(v.root.tw,v.input.tw),css:{...v.root.css,...v.input.css}},m=$("inline-flex",v.root.tw),N=$("w-[300px] rounded-[var(--radius)] border bg-[var(--input-bg)] text-[var(--foreground)] outline-none transition-all duration-200 ease-in-out","border-[var(--border)] shadow-[var(--input-shadow)]","hover:border-[var(--input-accent)]","focus:border-[var(--input-accent)] focus:shadow-[var(--input-focus-shadow)]",y&&"border-[var(--input-error-border)] bg-[var(--input-error-bg)] text-[var(--input-error-fg)] hover:border-[var(--input-error-border)] focus:shadow-[var(--input-error-focus-shadow)]",x&&"bg-[var(--muted)] text-[var(--muted-foreground)] border-[var(--muted)] cursor-not-allowed shadow-none hover:border-[var(--muted)] focus:shadow-none",Go[T]),O=b({baseClassName:N,className:l,style:c,sxSlot:k}),A=p!==void 0,B={className:O.className,style:O.style,onClick:a,onChange:i?_=>i(_.target.value):void 0,value:A?p:void 0,defaultValue:A?void 0:h??"",disabled:x||void 0,placeholder:u,maxLength:f,"aria-invalid":y||void 0,...C};return s.jsx("div",{className:m,children:P?s.jsx("form",{onSubmit:_=>_.preventDefault(),style:{display:"inline-flex"},autoComplete:"off",children:s.jsx("input",{...B,type:"password"})}):F?s.jsx("textarea",{...B,className:`${B.className} min-h-[80px] py-2 resize-y`}):s.jsx("input",{...B,type:"text"})})}Ae.propTypes={type:t.oneOf(["default","textarea","password"]),size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,onClick:t.func,onChange:t.func,value:t.string,defaultValue:t.string,disabled:t.bool,placeholder:t.string,maxlength:t.number,status:t.oneOf(["default","error"])};Ae.MaterialInput=_e;const ge=["root"];function Xo(e,o){const{sx:r={},style:n={},className:c="",children:l,...a}=e,i=H(r,ge),p=b({baseClassName:"flex items-center px-4 bg-[var(--layout-header-bg)] text-[var(--layout-header-color)]",className:c,sxSlot:i.root,baseStyle:{height:"var(--layout-header-height)",borderBottom:"1px solid var(--layout-border)"},style:n});return s.jsx("header",{ref:o,className:p.className,style:p.style,...a,children:l})}const Me=d.forwardRef(Xo);Me.displayName="LayoutHeader";Me.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function Jo(e,o){const{sx:r={},style:n={},className:c="",children:l,...a}=e,i=H(r,ge),p=b({baseClassName:"flex items-center px-4 bg-[var(--layout-footer-bg)] text-[var(--layout-footer-color)]",className:c,sxSlot:i.root,baseStyle:{height:"var(--layout-footer-height)",borderTop:"1px solid var(--layout-border)"},style:n});return s.jsx("footer",{ref:o,className:p.className,style:p.style,...a,children:l})}const ze=d.forwardRef(Jo);ze.displayName="LayoutFooter";ze.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function Qo(e,o){const{sx:r={},style:n={},className:c="",width:l,children:a,...i}=e,p=H(r,ge),h=l??"var(--layout-sider-width)",x=b({baseClassName:"overflow-auto flex flex-col bg-[var(--layout-sider-bg)] text-[var(--layout-sider-color)]",className:c,sxSlot:p.root,baseStyle:{width:h,minWidth:h,maxWidth:"100%",borderRight:"1px solid var(--layout-border)"},style:n});return s.jsx("aside",{ref:o,className:x.className,style:x.style,...i,children:a})}const we=d.forwardRef(Qo);we.displayName="LayoutSider";we.propTypes={width:t.oneOfType([t.string,t.number]),sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function es(e,o){const{sx:r={},style:n={},className:c="",width:l,children:a,...i}=e,p=H(r,ge),h=l??"var(--layout-toc-width)",x=b({baseClassName:"overflow-auto flex flex-col bg-[var(--layout-toc-bg)] text-[var(--layout-toc-color)]",className:c,sxSlot:p.root,baseStyle:{width:h,minWidth:h,maxWidth:"100%",borderLeft:"1px solid var(--layout-border)"},style:n});return s.jsx("nav",{ref:o,className:x.className,style:x.style,...i,children:a})}const Ce=d.forwardRef(es);Ce.displayName="LayoutToc";Ce.propTypes={width:t.oneOfType([t.string,t.number]),sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function ts(e,o){const{sx:r={},style:n={},className:c="",children:l,...a}=e,i=H(r,ge),p=b({baseClassName:"flex-1 flex flex-col bg-[var(--layout-content-bg)] text-[var(--layout-content-color)]",className:c,sxSlot:i.root,baseStyle:{},style:n});return s.jsx("main",{ref:o,className:p.className,style:p.style,...a,children:l})}const Ee=d.forwardRef(ts);Ee.displayName="LayoutContent";Ee.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function os(e,o){const{sx:r={},style:n={},className:c="",hasSider:l,children:a,...i}=e,p=H(r,ge),h=l??d.Children.toArray(a).some(u=>{var f,S;return d.isValidElement(u)&&(u.type===we||u.type===Ce||((f=u.type)==null?void 0:f.displayName)==="LayoutSider"||((S=u.type)==null?void 0:S.displayName)==="LayoutToc")}),x=b({baseClassName:$("flex flex-1 flex-col min-h-0",h?"md:flex-row":""),className:c,sxSlot:p.root,style:n});return s.jsx("section",{ref:o,className:x.className,style:x.style,...i,children:a})}const te=d.forwardRef(os);te.displayName="Layout";te.Header=Me;te.Footer=ze;te.Sider=we;te.Content=Ee;te.Toc=Ce;te.propTypes={hasSider:t.bool,sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};const $t=Me,Bt=ze,It=we,Ft=Ee,Dt=Ce,ss=["root","button","list","item"],Rt=Symbol("LIST_IGNORE"),bt=s.jsxs("svg",{viewBox:"0 0 24 24",width:"1em",height:"1em",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:[s.jsx("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z"}),s.jsx("path",{d:"M14 2v6h6"})]}),xt=s.jsx("svg",{viewBox:"0 0 24 24",width:"1em",height:"1em",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:s.jsx("path",{d:"M18 6 6 18M6 6l12 12"})});function rs(e,o){const{sx:r={},style:n={},className:c="",accept:l="image/*",multiple:a=!1,onChange:i=()=>{},beforeUpload:p=()=>{},files:h=[],showUploadList:x=!0,maxCount:u=20,maxSize:f=100,btnText:S="选择文件",btnStyle:C,showSize:T=!0,disabled:F=!1,...P}=e,y=d.useId(),v=h||[],k=H(r,ss),m=d.useCallback(async(j,w)=>{if(!p)return!0;try{const L=await p(j,w);return L===void 0?!0:L}catch{return!1}},[p]),N=d.useCallback(async j=>{const L=Array.from(j.target.files||[]).filter(z=>z.size/1024/1024>f?(console.warn(`[Tango Upload] ${z.name} 超过 ${f}MB,已被过滤`),!1):!0),W=a?L.slice(0,u):L.slice(0,1),D=[];for(const z of W){const E=await m(z,W);if(E===!1){console.warn(`[Tango Upload] ${z.name} 被 beforeUpload 拦截`);continue}if(E===Rt){console.warn(`[Tango Upload] ${z.name} 被 LIST_IGNORE 忽略`);continue}if(E instanceof Blob){const M=E instanceof File?E:new File([E],z.name,{type:z.type});D.push(M)}else D.push(z)}j.target.value="",i(D)},[a,u,f,m,i]),O=d.useCallback((j,w)=>{const L=v.filter((W,D)=>D!==w);i(L)},[v,i]),A=b({baseClassName:"inline-flex flex-col gap-3",className:c,sxSlot:k.root,style:n}),B=b({baseClassName:$("list-none p-0 m-0 max-h-[150px] max-w-[400px] overflow-y-auto","border border-[var(--upload-border)] rounded-[var(--upload-radius)]","bg-[var(--upload-list-bg)]",v.length===0&&"border-transparent"),baseStyle:{borderRadius:"var(--upload-radius)"},sxSlot:k.list}),_=b({baseClassName:$("flex items-center gap-2 px-3 py-1.5 text-sm","text-[var(--upload-item-text)] hover:bg-[var(--upload-item-hover-bg)]","transition-colors"),sxSlot:k.item});return s.jsxs("div",{ref:o,className:A.className,style:A.style,...P,children:[s.jsx("input",{id:y,type:"file",accept:l,multiple:a,className:"hidden",onChange:N,disabled:F,"aria-hidden":"true",tabIndex:-1}),s.jsx(se,{disabled:F,style:C,sx:k.button,onClick:()=>{var j;return(j=document.getElementById(y))==null?void 0:j.click()},children:S}),x&&v.length>0&&s.jsx("ul",{className:B.className,style:B.style,children:a?v.map((j,w)=>s.jsxs("li",{className:_.className,style:_.style,children:[s.jsx("span",{className:"flex-shrink-0 text-[var(--upload-icon-color)]",children:bt}),s.jsxs("span",{className:"flex-1 truncate",children:[j.name,T&&s.jsxs("span",{className:"ml-1 text-xs text-[var(--muted-foreground)]",children:["(",(j.size/1024).toFixed(2)," KB)"]})]}),s.jsx("button",{type:"button",className:"flex-shrink-0 p-0.5 rounded hover:bg-[var(--upload-del-hover-bg)] text-[var(--upload-del-color)] transition-colors",onClick:()=>O(j,w),"aria-label":`删除 ${j.name}`,children:xt})]},w)):s.jsxs("li",{className:_.className,style:_.style,children:[s.jsx("span",{className:"flex-shrink-0 text-[var(--upload-icon-color)]",children:bt}),s.jsxs("span",{className:"flex-1 truncate",children:[v[0].name,T&&s.jsxs("span",{className:"ml-1 text-xs text-[var(--muted-foreground)]",children:["(",(v[0].size/1024).toFixed(2)," KB)"]})]}),s.jsx("button",{type:"button",className:"flex-shrink-0 p-0.5 rounded hover:bg-[var(--upload-del-hover-bg)] text-[var(--upload-del-color)] transition-colors",onClick:()=>O(v[0],0),"aria-label":`删除 ${v[0].name}`,children:xt})]})})]})}const $e=d.forwardRef(rs);$e.displayName="Upload";$e.LIST_IGNORE=Rt;$e.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,accept:t.string,multiple:t.bool,onChange:t.func,beforeUpload:t.func,files:t.array,showUploadList:t.bool,maxCount:t.number,maxSize:t.number,btnText:t.string,btnStyle:t.object,showSize:t.bool,disabled:t.bool};const as=["root","icon","content","actions","closeIcon"],ft={cancel:"取消",action:"操作"},gt={small:{rootClass:"px-[15px] py-[8px] h-[45px] rounded-[6px] gap-[8px] border",iconSize:20,contentClass:"text-[14px]",closeIconSize:18,buttonBorderRadius:"0.8rem",buttonGap:"8px",buttonFontSize:"13px"},normal:{rootClass:"px-[20px] py-[10px] h-[52px] rounded-[8px] gap-[10px] border",iconSize:22,contentClass:"text-[15px]",closeIconSize:20,buttonBorderRadius:"1rem",buttonGap:"10px",buttonFontSize:"14px"},large:{rootClass:"px-[25px] py-[12px] h-[60px] rounded-[10px] gap-[12px] border-[1.5px]",iconSize:26,contentClass:"text-[16px]",closeIconSize:22,buttonBorderRadius:"1.2rem",buttonGap:"12px",buttonFontSize:"15px"}},ht={info:{bgVar:"--banner-info-bg",borderVar:"--banner-info-border",iconVar:"--banner-info-icon",textVar:"--banner-info-text"},success:{bgVar:"--banner-success-bg",borderVar:"--banner-success-border",iconVar:"--banner-success-icon",textVar:"--banner-success-text"},warning:{bgVar:"--banner-warning-bg",borderVar:"--banner-warning-border",iconVar:"--banner-warning-icon",textVar:"--banner-warning-text"},error:{bgVar:"--banner-error-bg",borderVar:"--banner-error-border",iconVar:"--banner-error-icon",textVar:"--banner-error-text"}},yt=(e,o,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:o;function We(e){const{children:o,onCancel:r=()=>{},onAction:n=()=>{},size:c="normal",cancelText:l,actionText:a,level:i="info",transparent:p=!1,bannerBgColor:h,bannerBorderColor:x,bannerIconColor:u,sx:f={},style:S={},className:C="",i18nKey:T,localeText:F={},...P}=e,{t:y}=re(),v=yt(c,"normal",gt),k=yt(i,"info",ht),m=gt[v],N=ht[k],O=H(f,as),A={cancel:y("banner.cancel",ft.cancel),action:y("banner.action",ft.action),...F},B=l??(T==="cancel"?y("banner.cancel",A.cancel):A.cancel),_=a??(T==="action"?y("banner.action",A.action):A.action),j=o??B,w=h||(p===!0?"transparent":`var(${N.bgVar})`),L=x||`var(${N.borderVar})`,W=u||`var(${N.iconVar})`,D=`var(${N.textVar})`,z=b({baseClassName:$("flex w-full items-center justify-start transition-colors duration-200",m.rootClass),className:C,style:{backgroundColor:w,borderColor:L,color:p===!0?"var(--muted-foreground)":D,...S},sxSlot:O.root}),E=b({baseClassName:"shrink-0",baseStyle:{width:`${m.iconSize}px`,height:`${m.iconSize}px`,color:W},sxSlot:O.icon}),M=b({baseClassName:$("flex-grow text-left",m.contentClass),sxSlot:O.content}),U=b({baseClassName:"flex items-center justify-end flex-1",baseStyle:{gap:m.buttonGap},sxSlot:O.actions}),K=b({baseClassName:"shrink-0 cursor-pointer",baseStyle:{width:`${m.closeIconSize}px`,height:`${m.closeIconSize}px`,color:"var(--banner-close-icon)"},sxSlot:O.closeIcon}),Z=s.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[s.jsx("path",{d:"M512.50142 958.397886c-119.320573 0-231.499491-46.465265-315.871087-130.837884C112.258737 743.188406 65.792449 631.010511 65.792449 511.688915c0-119.319549 46.466288-231.499491 130.837884-315.871087C281.002952 111.445208 393.180847 64.979944 512.50142 64.979944s231.499491 46.465265 315.871087 130.837884c84.372619 84.372619 130.837884 196.551538 130.837884 315.871087 0 119.321596-46.465265 231.499491-130.837884 315.871087C744.000911 911.932622 631.821993 958.397886 512.50142 958.397886zM512.50142 105.962334c-223.718271 0-405.726581 182.00831-405.726581 405.726581s182.00831 405.726581 405.726581 405.726581c223.718271 0 405.727605-182.00831 405.727605-405.726581S736.220714 105.962334 512.50142 105.962334z"}),s.jsx("path",{d:"M510.150886 775.953647c-18.107403 0-32.745798-14.678304-32.745798-32.785707L477.405087 452.191846c0-18.108426 14.638395-32.785707 32.745798-32.785707 18.107403 0 32.745798 14.678304 32.745798 32.785707l0 290.976094C542.896684 761.275343 528.258289 775.953647 510.150886 775.953647z"}),s.jsx("path",{d:"M511.357364 296.458969m-45.080731 0a44.054 44.054 0 1 0 90.161463 0 44.054 44.054 0 1 0-90.161463 0Z"})]}),R=s.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[s.jsx("path",{d:"M869.472578 920.128281 154.906046 920.128281c-31.943526 0-60.545958-16.517185-76.514651-44.181245-15.968693-27.666106-15.96153-60.696384 0.016373-88.355327l357.283266-618.47194c15.971763-27.647687 44.568055-44.152593 76.496232-44.152593 31.930223-0.001023 60.527538 16.504906 76.499301 44.151569l357.283266 618.472963c15.977903 27.659967 15.984043 60.689221 0.017396 88.355327C930.018535 903.611096 901.416104 920.128281 869.472578 920.128281zM512.187265 169.139212c-15.962553 0-30.261211 8.251941-38.247092 22.075785l0 0L116.65793 809.686936c-7.989975 13.829983-7.993045 30.345122-0.008186 44.179199 7.983835 13.83203 22.285562 22.090111 38.257326 22.090111l714.566532 0c15.971763 0 30.273491-8.258081 38.256302-22.090111 7.984858-13.83203 7.980765-30.349215-0.008186-44.179199L550.437427 191.213973C542.452569 177.391153 528.152888 169.138188 512.187265 169.139212z"}),s.jsx("path",{d:"M513.732457 621.119233c-18.296715 0-33.257451-14.832823-33.257451-33.129538L480.475006 331.789639c0-18.296715 14.960737-33.129538 33.257451-33.129538 18.296715 0 33.257451 14.832823 33.257451 33.129538l0 256.200056C546.989909 606.28641 532.029172 621.119233 513.732457 621.119233z"}),s.jsx("path",{d:"M513.686409 737.619574m-49.991578 0a48.853 48.853 0 1 0 99.983155 0 48.853 48.853 0 1 0-99.983155 0Z"})]}),J=s.jsx("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:s.jsx("path",{d:"M85.333333 512C85.333333 276.352 276.352 85.333333 512 85.333333s426.666667 191.018667 426.666667 426.666667-191.018667 426.666667-426.666667 426.666667S85.333333 747.648 85.333333 512z m683.093334-256.426667a358.954667 358.954667 0 0 0-122.922667-80.768A359.466667 359.466667 0 0 0 512 149.333333c-46.08 0-90.624 8.490667-133.504 25.472A358.954667 358.954667 0 0 0 255.573333 255.573333c-35.413333 35.413333-62.336 76.373333-80.768 122.922667A359.466667 359.466667 0 0 0 149.333333 512c0 46.08 8.490667 90.624 25.472 133.504A358.954667 358.954667 0 0 0 255.573333 768.426667c35.413333 35.413333 76.373333 62.336 122.922667 80.768A359.466667 359.466667 0 0 0 512 874.666667c46.08 0 90.624-8.490667 133.504-25.472a358.954667 358.954667 0 0 0 122.922667-80.768c35.413333-35.413333 62.336-76.373333 80.768-122.922667A359.466667 359.466667 0 0 0 874.666667 512c0-46.08-8.490667-90.624-25.472-133.504A358.912 358.912 0 0 0 768.426667 255.573333zM338.517333 640.213333L466.773333 512 338.517333 383.786667l45.226667-45.226667L512 466.688l128.213333-128.213333 45.226667 45.226666L557.312 512l128.213333 128.213333-45.226666 45.226667L512 557.312l-128.213333 128.213333-45.226667-45.226666z"})}),le=s.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[s.jsx("path",{d:"M512.3 961.3c-247.1 0-448.1-201-448.1-448.1s201-448.1 448.1-448.1 448.1 201 448.1 448.1-201 448.1-448.1 448.1z m0-849.7c-221.4 0-401.6 180.2-401.6 401.6s180.2 401.6 401.6 401.6 401.6-180.2 401.6-401.6-180.2-401.6-401.6-401.6z"}),s.jsx("path",{d:"M441.2 676c-16.4 0-32.7-5.8-45.5-17.4l-151.3-138c-9.5-8.6-10.2-23.3-1.5-32.8 8.6-9.5 23.3-10.2 32.8-1.5L427 624.2c7.6 6.9 20.8 6.9 28.4 0l293.5-267.5c9.5-8.6 24.2-8 32.8 1.5 8.6 9.5 8 24.2-1.5 32.8L486.7 658.5c-12.8 11.7-29.1 17.5-45.5 17.5z"})]}),de=s.jsx("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:s.jsx("path",{d:"M558.8 509.2l302.8-302.8c3.1-3.1 3.1-8.1 0-11.2l-30.8-30.8c-3.1-3.1-8.1-3.1-11.2 0L516.8 467.2c-1.5 1.5-4.1 1.5-5.6 0L208.3 164.3c-3.1-3.1-8.1-3.1-11.2 0l-30.8 30.8c-3.1 3.1-3.1 8.1 0 11.2l302.8 302.8c1.5 1.5 1.5 4.1 0 5.6l-302.8 303c-3.1 3.1-3.1 8.1 0 11.2l30.8 30.8c3.1 3.1 8.1 3.1 11.2 0l302.8-302.8c1.5-1.5 4.1-1.5 5.6 0l302.8 302.8c3.1 3.1 8.1 3.1 11.2 0l30.8-30.8c3.1-3.1 3.1-8.1 0-11.2L558.8 514.8c-1.5-1.5-1.5-4.1 0-5.6z"})}),ue={success:le,warning:R,error:J,info:Z};return s.jsxs("div",{className:z.className,style:z.style,"data-level":k,"data-size":v,...P,children:[s.jsx("div",{className:E.className,style:E.style,children:ue[k]}),s.jsx("div",{className:M.className,style:M.style,children:j}),s.jsxs("div",{className:U.className,style:U.style,children:[s.jsx(se,{type:"transparent",sx:{c:"var(--banner-btn-text)",br:m.buttonBorderRadius,bColor:"transparent",s:m.buttonFontSize},onClick:r,size:v==="normal"?"medium":v,children:B}),s.jsx(se,{type:"transparent",sx:{c:"var(--banner-btn-text)",br:m.buttonBorderRadius,b:1,bColor:"var(--banner-btn-border)",s:m.buttonFontSize},onClick:n,size:v==="normal"?"medium":v,children:_}),s.jsx("div",{className:K.className,style:K.style,onClick:r,children:de})]})]})}We.propTypes={children:t.node,onCancel:t.func,onAction:t.func,size:t.oneOf(["small","normal","large"]),cancelText:t.string,actionText:t.string,level:t.oneOf(["info","success","warning","error"]),transparent:t.bool,bannerBgColor:t.string,bannerBorderColor:t.string,bannerIconColor:t.string,sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,i18nKey:t.string,localeText:t.object};const ns=["root","input","text"],Ye={hex:"HEX",rgb:"RGB",hsl:"HSL"},vt={small:{inputSize:20,fontSize:"11px",gap:"6px"},medium:{inputSize:28,fontSize:"12px",gap:"10px"},large:{inputSize:36,fontSize:"14px",gap:"14px"}},ls={hex:"hex",rgb:"rgb",hsl:"hsl"},St=(e,o,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:o,cs=e=>{const o=parseInt(e.slice(1,3),16),r=parseInt(e.slice(3,5),16),n=parseInt(e.slice(5,7),16);return`rgb(${o}, ${r}, ${n})`},is=e=>{let o=parseInt(e.slice(1,3),16)/255,r=parseInt(e.slice(3,5),16)/255,n=parseInt(e.slice(5,7),16)/255;const c=Math.max(o,r,n),l=Math.min(o,r,n);let a=0,i=0,p=(c+l)/2;if(c!==l){const h=c-l;i=p>.5?h/(2-c-l):h/(c+l),c===o?a=(r-n)/h+(r<n?6:0):c===r?a=(n-o)/h+2:a=(o-r)/h+4,a/=6}return`hsl(${Math.round(a*360)}, ${Math.round(i*100)}%, ${Math.round(p*100)}%)`},ds=(e,o)=>{switch(o){case"rgb":return cs(e);case"hsl":return is(e);default:return e.toUpperCase()}};function Ue(e){const{value:o,defaultValue:r="#000000",onChange:n=()=>{},disabled:c=!1,showText:l=!1,format:a="hex",size:i="medium",sx:p={},style:h={},className:x="",i18nKey:u,localeText:f={},...S}=e,{t:C}=re(),T=St(i,"medium",vt),F=St(a,"hex",ls),P=vt[T],[y,v]=d.useState(r),k=o??y,m=H(p,ns),N={hex:C("colorpicker.hex",Ye.hex),rgb:C("colorpicker.rgb",Ye.rgb),hsl:C("colorpicker.hsl",Ye.hsl),...f},O=L=>{const W=L.target.value;o===void 0&&v(W),n(W)},A=[];if(l){const L=u||(typeof l=="string"?l:null)||F;A.push({label:N[L],value:ds(k,L)})}const B=b({baseClassName:$("inline-flex items-center",c&&"cursor-not-allowed opacity-60"),className:x,baseStyle:{gap:P.gap},style:h,sxSlot:m.root}),_=b({baseClassName:$("shrink-0 cursor-pointer border-2 border-[var(--border)] rounded-full bg-transparent overflow-hidden transition-colors duration-200",c&&"cursor-not-allowed"),baseStyle:{width:`${P.inputSize}px`,height:`${P.inputSize}px`,padding:0},sxSlot:m.input}),j=b({baseClassName:"flex flex-col text-[var(--muted-foreground)]",baseStyle:{fontSize:P.fontSize},sxSlot:m.text});return s.jsxs(s.Fragment,{children:[s.jsx("style",{children:`
|
|
2
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),d=require("react"),Zt=require("react-dom"),t=require("prop-types"),Gt=require("tailwind-merge"),ot="tango:theme",at="tango:themeTokens",Fe="light",qt=["primary","input-accent","modal-ok-bg","drawer-ok-bg","datepicker-confirm-bg"],Pt=d.createContext(null),Ot=()=>typeof window<"u",st=(e,o)=>{if(!Ot())return o;try{const s=window.localStorage.getItem(e);return s?JSON.parse(s):o}catch{return o}},rt=(e,o)=>{if(Ot())try{window.localStorage.setItem(e,JSON.stringify(o))}catch{}};function Xt({children:e}){const[o,s]=d.useState(Fe),n=d.useRef(!1);d.useEffect(()=>{const u=st(ot,Fe);u!==Fe&&s(u==="dark"?"dark":"light"),n.current=!0},[]);const[c,l]=d.useState(()=>st(at,{})),r=d.useRef(new Set);d.useEffect(()=>{typeof document>"u"||(document.documentElement.dataset.theme=o)},[o]),d.useEffect(()=>{n.current&&rt(ot,o)},[o]),d.useEffect(()=>{if(typeof document>"u")return;const u=document.documentElement,x=new Set(Object.keys(c));r.current.forEach(S=>{x.has(S)||u.style.removeProperty(`--${S}`)}),Object.entries(c).forEach(([S,C])=>{C==null||C===""?u.style.removeProperty(`--${S}`):u.style.setProperty(`--${S}`,String(C))}),r.current=x,rt(at,c)},[c]);const i=u=>{l(x=>{const S=typeof u=="function"?u(x):u;return{...x,...S||{}}})},g=(u,x=qt)=>{i(S=>{const C={...S};return x.forEach(T=>{C[T]=u}),C})},h=()=>{l({})},b=()=>{s(u=>u==="dark"?"light":"dark")};return a.jsx(Pt.Provider,{value:{theme:o,setTheme:s,toggleTheme:b,themeTokens:c,setThemeTokens:i,setThemeColor:g,resetThemeTokens:h},children:e})}function Jt(){return d.useContext(Pt)}const Qt=new Set(["root","slots","tw","className","css","style"]),Pe={tw:"",css:{}},me=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Y=(e,o="px")=>typeof e=="number"?`${e}${o}`:e,pe=e=>typeof e=="string"&&e.startsWith("$")?`var(--${e.slice(1)})`:e,eo=e=>e.includes("-")?e.replace(/-([a-z])/g,(o,s)=>s.toUpperCase()):e,to=e=>/(color|background|border|fill|stroke|shadow)$/i.test(e),oo={mt:(e,o)=>{e.marginTop=Y(o)},mr:(e,o)=>{e.marginRight=Y(o)},mb:(e,o)=>{e.marginBottom=Y(o)},ml:(e,o)=>{e.marginLeft=Y(o)},mx:(e,o)=>{e.marginLeft=Y(o),e.marginRight=Y(o)},my:(e,o)=>{e.marginTop=Y(o),e.marginBottom=Y(o)},m:(e,o)=>{e.margin=Y(o)},pt:(e,o)=>{e.paddingTop=Y(o)},pr:(e,o)=>{e.paddingRight=Y(o)},pb:(e,o)=>{e.paddingBottom=Y(o)},pl:(e,o)=>{e.paddingLeft=Y(o)},px:(e,o)=>{e.paddingLeft=Y(o),e.paddingRight=Y(o)},py:(e,o)=>{e.paddingTop=Y(o),e.paddingBottom=Y(o)},p:(e,o)=>{e.padding=Y(o)},g:(e,o)=>{e.gap=Y(o)},rg:(e,o)=>{e.rowGap=Y(o)},cg:(e,o)=>{e.columnGap=Y(o)},w:(e,o)=>{e.width=Y(o)},h:(e,o)=>{e.height=Y(o)},mw:(e,o)=>{e.minWidth=Y(o)},mh:(e,o)=>{e.minHeight=Y(o)},maxw:(e,o)=>{e.maxWidth=Y(o)},maxh:(e,o)=>{e.maxHeight=Y(o)},vw:(e,o)=>{e.width=typeof o=="number"?`${o}vw`:o},vh:(e,o)=>{e.height=typeof o=="number"?`${o}vh`:o},presentw:(e,o)=>{e.width=typeof o=="number"?`${o}%`:o},presenth:(e,o)=>{e.height=typeof o=="number"?`${o}%`:o},size:(e,o)=>{e.fontSize=Y(o)},fw:(e,o)=>{e.fontWeight=o},fwb:e=>{e.fontWeight="bold"},fwn:e=>{e.fontWeight="normal"},tac:e=>{e.textAlign="center"},tar:e=>{e.textAlign="right"},tal:e=>{e.textAlign="left"},lh:(e,o)=>{e.lineHeight=Y(o)},ls:(e,o)=>{e.letterSpacing=Y(o)},c:(e,o)=>{e.color=pe(o)},bg:(e,o)=>{e.background=pe(o)},bgc:(e,o)=>{e.backgroundColor=pe(o)},b:(e,o)=>{e.border=o===1?"1px solid var(--tango-border)":pe(o)},br:(e,o)=>{e.borderRadius=Y(o)},bw:(e,o)=>{e.borderWidth=Y(o)},bs:(e,o)=>{e.borderStyle=o},bColor:(e,o)=>{e.borderColor=pe(o)},boxshadow:(e,o)=>{e.boxShadow=pe(o)},bgSize:(e,o)=>{e.backgroundSize=o},bgPosition:(e,o)=>{e.backgroundPosition=o},bgRepeat:(e,o)=>{e.backgroundRepeat=o},rel:e=>{e.position="relative"},ab:e=>{e.position="absolute"},fixed:e=>{e.position="fixed"},sticky:e=>{e.position="sticky"},center:e=>{e.position="absolute",e.inset=0,e.margin="auto"},inset:(e,o)=>{e.inset=Y(o)},top:(e,o)=>{e.top=Y(o)},right:(e,o)=>{e.right=Y(o)},bottom:(e,o)=>{e.bottom=Y(o)},left:(e,o)=>{e.left=Y(o)},z:(e,o)=>{e.zIndex=o},flex:e=>{e.display="flex"},iflex:e=>{e.display="inline-flex"},fd:(e,o)=>{e.flexDirection=o},fwrap:(e,o="wrap")=>{e.flexWrap=o},aic:e=>{e.alignItems="center"},ai:(e,o)=>{e.alignItems=o},jcc:e=>{e.justifyContent="center"},jc:(e,o)=>{e.justifyContent=o},ac:(e,o)=>{e.alignContent=o},as:(e,o)=>{e.alignSelf=o},f:(e,o)=>{e.flex=typeof o=="number"?o:`${o}`},fl:e=>{e.float="left"},fr:e=>{e.float="right"},ar:(e,o)=>{e.aspectRatio=o},tran:(e,o)=>{e.transition=typeof o=="number"?`${o}s`:o},op:(e,o)=>{e.opacity=o},oh:e=>{e.overflow="hidden"},ohauto:e=>{e.overflow="auto"},oxh:e=>{e.overflowX="hidden"},oxa:e=>{e.overflowX="auto"},oyh:e=>{e.overflowY="hidden"},oya:e=>{e.overflowY="auto"},cur:(e,o)=>{e.cursor=o},pe:(e,o)=>{e.pointerEvents=o},boxsizing:e=>{e.boxSizing="border-box"},none:e=>{e.display="none"},block:e=>{e.display="block"},inline:e=>{e.display="inline"},ib:e=>{e.display="inline-block"},hidden:e=>{e.visibility="hidden"},shown:e=>{e.visibility="visible"}},ve=(e={})=>me(e)?Object.entries(e).reduce((o,[s,n])=>{if(Qt.has(s))return o;const c=oo[s];if(c)return c(o,n),o;const l=eo(s),r=typeof n=="string"&&(n.startsWith("$")||to(l))?pe(n):n;return o[l]=r,o},{}):{},$=(...e)=>{const o=e.filter(Boolean).join(" ").trim();return o?Gt.twMerge(o):""},Te=e=>{if(typeof e=="string")return{tw:e,css:{}};if(!me(e))return{...Pe};if(!("tw"in e||"className"in e||"css"in e||"style"in e))return{tw:"",css:ve(e)};const s=[e.className,e.tw].filter(Boolean).join(" "),n=me(e.css)?ve(e.css):{},c=me(e.style)?ve(e.style):{};return{tw:s,css:{...n,...c}}},ao=(e,o)=>me(e)?"root"in e||"slots"in e||"tw"in e||"className"in e||"css"in e||"style"in e?!0:o.some(s=>s!=="root"&&s in e):!1,so=e=>{const o={};return e.forEach(s=>{o[s]={...Pe}}),o.root||(o.root={...Pe}),o},H=(e,o=["root"])=>{const s=so(o);if(typeof e=="string")return s.root.tw=e,s;if(!me(e))return s;if(!ao(e,o))return s.root.css=ve(e),s;const n=Te({tw:[e.className,e.tw].filter(Boolean).join(" "),css:e.css,style:e.style}),c=Te(e.root);s.root={tw:$(n.tw,c.tw),css:{...n.css,...c.css}};const l=me(e.slots)?e.slots:{};return Object.keys(s).forEach(r=>{if(r==="root")return;const i=Te(e[r]),g=Te(l[r]);s[r]={tw:$(i.tw,g.tw),css:{...i.css,...g.css}}}),s},m=({baseClassName:e="",className:o="",baseStyle:s={},style:n={},sxSlot:c=Pe}={})=>({className:$(e,o,c.tw),style:{...s||{},...c.css||{},...n||{}}}),ro=["root","icon","content"],nt={success:"text-[var(--tango-notice-success-text)]",fail:"text-[var(--tango-notice-fail-text)]",caution:"text-[var(--tango-notice-caution-text)]"},lt={default:{base:"fixed top-5 left-1/2 -translate-x-1/2",enter:"animate-[noticeSlideDown_0.3s_cubic-bezier(0.22,1,0.36,1)_forwards]"},md:{base:"fixed bottom-5 left-5",enter:"animate-[noticeSlideFromBottom_0.3s_ease-out_forwards]"}};function no(e,o){const{type:s="success",icon:n,message:c,variant:l="default",duration:r=3e3,onClose:i,sx:g={},style:h={},className:b="",...u}=e,[x,S]=d.useState(!1),C=nt[s]?s:"success",T=lt[l]?l:"default",F=H(g,ro),P=d.useCallback(()=>{S(!0);const O=setTimeout(()=>i==null?void 0:i(),300);return()=>clearTimeout(O)},[i]);d.useEffect(()=>{if(!i||r<=0)return;const O=setTimeout(P,r);return()=>clearTimeout(O)},[i,r,P]);const y=lt[T],v=T==="default"?"animate-[noticeSlideUpFade_0.3s_ease-in_forwards]":"animate-[noticeSlideToBottom_0.3s_ease-in_forwards]",k=m({baseClassName:$("inline-flex items-center gap-2 px-3 py-2 text-sm z-[999]","rounded-[var(--tango-notice-radius)]","bg-[var(--tango-notice-bg)] text-[var(--tango-notice-foreground)]","shadow-[var(--tango-notice-shadow)]",y.base,x?v:y.enter,T==="md"&&nt[C]),className:b,sxSlot:F.root,baseStyle:{borderRadius:"var(--tango-notice-radius)"},style:h}),p=m({baseClassName:"flex-shrink-0 text-[var(--tango-notice-foreground)]",sxSlot:F.icon}),N=m({baseClassName:"inline-block",sxSlot:F.content});return a.jsxs("div",{ref:o,role:"alert",className:k.className,style:k.style,...u,children:[T!=="md"&&n&&a.jsx("span",{className:p.className,style:p.style,children:n}),a.jsx("span",{className:N.className,style:N.style,children:c})]})}const Ne=d.forwardRef(no);Ne.displayName="Notice";Ne.propTypes={type:t.oneOf(["success","fail","caution"]),icon:t.node,message:t.node,variant:t.oneOf(["default","md"]),duration:t.number,onClose:t.func,sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string};const _t=d.createContext(null),lo=a.jsx("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:a.jsx("path",{d:"M874.119618 149.859922A510.816461 510.816461 0 0 0 511.997 0.00208a509.910462 509.910462 0 0 0-362.119618 149.857842c-199.817789 199.679789-199.817789 524.581447 0 724.260236a509.969462 509.969462 0 0 0 362.119618 149.857842A508.872463 508.872463 0 0 0 874.119618 874.120158c199.836789-199.679789 199.836789-524.581447 0-724.260236zM814.94268 378.210681L470.999043 744.132295a15.359984 15.359984 0 0 1-5.887994 4.095996c-1.751998 1.180999-2.913997 2.362998-5.276994 2.913997a34.499964 34.499964 0 0 1-13.469986 2.914997 45.547952 45.547952 0 0 1-12.897986-2.303998l-4.095996-2.363997a45.291952 45.291952 0 0 1-7.009992-4.095996l-196.902793-193.789796a34.126964 34.126964 0 0 1-10.555989-25.186973c0-9.37399 3.583996-18.74698 9.98399-25.186974a36.429962 36.429962 0 0 1 50.372947 0l169.98382 167.423824L763.389735 330.220732a37.059961 37.059961 0 0 1 50.371947-1.732998 33.647965 33.647965 0 0 1 11.165988 25.186973 35.544963 35.544963 0 0 1-9.98399 24.575974v-0.04z m0 0",fill:"var(--tango-notice-success-text)"})}),co=a.jsx("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:a.jsx("path",{d:"M549.044706 512l166.189176-166.249412a26.383059 26.383059 0 0 0 0-36.98447 26.383059 26.383059 0 0 0-37.044706 0L512 475.015529l-166.249412-166.249411a26.383059 26.383059 0 0 0-36.98447 0 26.383059 26.383059 0 0 0 0 37.044706L475.015529 512l-166.249411 166.249412a26.383059 26.383059 0 0 0 0 36.98447 26.383059 26.383059 0 0 0 37.044706 0L512 548.984471l166.249412 166.249411a26.383059 26.383059 0 0 0 36.98447 0 26.383059 26.383059 0 0 0 0-37.044706L548.984471 512zM512 1024a512 512 0 1 1 0-1024 512 512 0 0 1 0 1024z",fill:"var(--tango-notice-fail-text)"})}),io=a.jsxs("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:[a.jsx("path",{d:"M512 909.061224c-218.906122 0-397.061224-178.155102-397.061224-397.061224s178.155102-397.061224 397.061224-397.061224 397.061224 178.155102 397.061224 397.061224-178.155102 397.061224-397.061224 397.061224z",fill:"var(--tango-notice-caution-text)"}),a.jsx("path",{d:"M512 690.677551m-31.346939 0a31.346939 31.346939 0 1 0 62.693878 0 31.346939 31.346939 0 1 0-62.693878 0Z",fill:"var(--tango-notice-fail-text)"}),a.jsx("path",{d:"M512 584.097959c-11.493878 0-20.897959-9.404082-20.897959-20.897959v-261.22449c0-11.493878 9.404082-20.897959 20.897959-20.897959s20.897959 9.404082 20.897959 20.897959v261.22449c0 12.016327-9.404082 20.897959-20.897959 20.897959z",fill:"var(--tango-notice-fail-text)"})]}),uo={success:lo,fail:co,caution:io};function go({children:e}){const[o,s]=d.useState([]),[n,c]=d.useState(!1);d.useEffect(()=>{c(!0)},[]);const l=d.useCallback(i=>{s(g=>g.filter(h=>h.id!==i))},[]),r=d.useCallback((i,g,h="default")=>{const b=Date.now()+Math.random();s(u=>[...u,{id:b,type:i,message:g,variant:h,icon:uo[i]}])},[]);return a.jsxs(_t.Provider,{value:{add:r,remove:l},children:[e,n&&Zt.createPortal(a.jsx("div",{id:"notification-container",className:"flex flex-col items-center gap-2",children:o.map(i=>a.jsx(Ne,{...i,onClose:()=>l(i.id)},i.id))}),document.body)]})}function po(){const e=d.useContext(_t);if(!e)throw new Error("useNotice must be used inside <NoticeProvider />");return e}function mo(){const{add:e}=po();return{success:o=>e("success",o),fail:o=>e("fail",o),caution:o=>e("caution",o),md:{success:o=>e("success",o,"md"),fail:o=>e("fail",o,"md"),caution:o=>e("caution",o,"md")}}}const At="tango:locale",be="zh-CN",bo={zh:"zh-CN",ZH:"zh-CN","zh-CN":"zh-CN","zh-cn":"zh-CN",cn:"zh-CN",CN:"zh-CN",en:"en-US",EN:"en-US","en-US":"en-US","en-us":"en-US",us:"en-US",US:"en-US"},Mt={"zh-CN":{button:{default:"按钮",loading:"加载中",iconAlt:"图标",toggle:"切换",light:"浅色",dark:"暗色",blue:"蓝色",green:"绿色",token:"自定义词条",reset:"重置",locale:"语言",chinese:"中文",english:"英文",successDemo:"成功",outlineDemo:"描边",submit:"提交",confirm:"确认",cancel:"取消",search:"搜索",save:"保存",delete:"删除",back:"返回",next:"下一步",prev:"上一步",add:"新增"},banner:{cancel:"取消",action:"操作"},colorpicker:{hex:"HEX",rgb:"RGB",hsl:"HSL"},date:{weekdayPrefix:"星期",weekdayShortPrefix:"周"},datepicker:{placeholder:"YYYY-MM-DD",placeholderTime:"YYYY-MM-DD HH:mm",timeLabel:"时间",confirm:"确定",cancel:"关闭",prevMonth:"上一月",nextMonth:"下一月"},drawer:{title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"},modal:{title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"},search:{placeholder:"请输入内容",btnText:"搜索"},materialInput:{label:""},materialButton:{default:"按钮",loading:"加载中",iconAlt:"图标"},table:{empty:"暂无数据",prev:"上一页",next:"下一页",page:"页",total:"共 {total} 条",perPage:"条/页"}},"en-US":{button:{default:"Button",loading:"Loading",iconAlt:"icon",toggle:"Toggle",light:"Light",dark:"Dark",blue:"Blue",green:"Green",token:"Token",reset:"Reset",locale:"Locale",chinese:"Chinese",english:"English",successDemo:"Success",outlineDemo:"Outline",submit:"Submit",confirm:"Confirm",cancel:"Cancel",search:"Search",save:"Save",delete:"Delete",back:"Back",next:"Next",prev:"Previous",add:"Add"},banner:{cancel:"Cancel",action:"Action"},colorpicker:{hex:"HEX",rgb:"RGB",hsl:"HSL"},date:{weekdayPrefix:"",weekdayShortPrefix:""},datepicker:{placeholder:"YYYY-MM-DD",placeholderTime:"YYYY-MM-DD HH:mm",timeLabel:"Time",confirm:"Confirm",cancel:"Close",prevMonth:"Previous month",nextMonth:"Next month"},drawer:{title:"Drawer",okText:"OK",cancelText:"Cancel",closeAriaLabel:"Close"},modal:{title:"Modal",okText:"OK",cancelText:"Cancel",closeAriaLabel:"Close"},search:{placeholder:"Search...",btnText:"Search"},materialInput:{label:""},materialButton:{default:"Button",loading:"Loading",iconAlt:"icon"},table:{empty:"No data",prev:"Previous",next:"Next",page:"Page",total:"{total} items",perPage:"/ page"}}},Ke=()=>{},zt=d.createContext({locale:be,setLocale:Ke,toggleLocale:Ke,messages:Mt,t:(e,o="")=>o}),ct=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Et=(e,o)=>{const s={...e};return Object.entries(o||{}).forEach(([n,c])=>{ct(c)&&ct(s[n])?s[n]=Et(s[n],c):s[n]=c}),s},xo=(e,o)=>o.split(".").reduce((s,n)=>{if(s&&Object.prototype.hasOwnProperty.call(s,n))return s[n]},e),Se=e=>typeof e!="string"||!e.trim()?be:bo[e]||e,fo=()=>{if(typeof window>"u")return be;try{const e=window.localStorage.getItem(At);return Se(e||be)}catch{return be}};function ho({children:e,locale:o,defaultLocale:s=be,onLocaleChange:n=Ke,messages:c={}}){const l=Se(s),r=o==null?null:Se(o),[i,g]=d.useState(()=>fo()||l),h=r||i,b=C=>{const T=Se(C);r==null&&g(T),n(T)};d.useEffect(()=>{if(!(typeof window>"u"))try{window.localStorage.setItem(At,h)}catch{}},[h]);const u=d.useMemo(()=>Et(Mt,c),[c]),x=()=>{b(h==="zh-CN"?"en-US":"zh-CN")},S=(C,T="")=>{const F=u[h]||u[be]||{},P=xo(F,C);return P==null||P===""?T:String(P)};return a.jsx(zt.Provider,{value:{locale:h,setLocale:b,toggleLocale:x,messages:u,t:S},children:e})}function se(){return d.useContext(zt)}const yo="_materialBtn_1tku0_8",vo="_materialBtnSmall_1tku0_27",So="_materialBtnMedium_1tku0_33",No="_materialBtnLarge_1tku0_39",wo="_materialBtnHuge_1tku0_45",Co="_materialBtnDisabled_1tku0_52",To="_ripple_1tku0_60",he={materialBtn:yo,materialBtnSmall:vo,materialBtnMedium:So,materialBtnLarge:No,materialBtnHuge:wo,materialBtnDisabled:Co,ripple:To},it=["root","content","icon","loading"],ko={small:"small",medium:"medium",large:"large",huge:"huge"},jo={small:12,medium:14,large:16,huge:20},dt={default:{backgroundColor:"var(--tango-primary)",color:"var(--tango-primary-foreground)",borderColor:"var(--tango-border)",borderWidth:"1px",borderStyle:"solid"},transparent:{backgroundColor:"var(--tango-transparent)",color:"var(--tango-primary-foreground)",borderColor:"var(--tango-button-transparent-border)",borderWidth:"1px",borderStyle:"solid"},danger:{backgroundColor:"var(--tango-destructive)",color:"var(--tango-destructive-foreground)",borderColor:"transparent",borderWidth:"1px",borderStyle:"solid"},success:{backgroundColor:"var(--tango-success)",color:"var(--tango-success-foreground)",borderColor:"transparent",borderWidth:"1px",borderStyle:"solid"}},Lo={default:{backgroundColor:"var(--tango-transparent)",color:"var(--tango-button-outline-foreground)",borderColor:"var(--tango-border)",borderWidth:"1px",borderStyle:"solid"},transparent:{backgroundColor:"var(--tango-transparent)",color:"var(--tango-button-outline-foreground)",borderColor:"var(--tango-button-transparent-border)",borderWidth:"1px",borderStyle:"solid"},danger:{backgroundColor:"var(--tango-transparent)",color:"var(--tango-destructive)",borderColor:"var(--tango-destructive)",borderWidth:"1px",borderStyle:"solid"},success:{backgroundColor:"var(--tango-transparent)",color:"var(--tango-success)",borderColor:"var(--tango-success)",borderWidth:"1px",borderStyle:"solid"}},Po={backgroundColor:"var(--tango-muted)",color:"var(--tango-muted-foreground)",borderColor:"transparent",borderWidth:"1px",borderStyle:"solid",cursor:"not-allowed"},De={default:"按钮",loading:"加载中",iconAlt:"图标"},Oo=e=>e.charAt(0).toUpperCase()+e.slice(1),_o=e=>e===!0||e==="light"||e==="dark"?!0:Array.isArray(e)&&e.length>0?e[0]===!0||e[0]==="light"||e[0]==="dark":!1,Ao=e=>e==="light"?"light":e==="dark"||e===!0||Array.isArray(e)&&e.length>=2&&e[1]==="dark"?"dark":"light",ut=(e,o,s)=>Object.prototype.hasOwnProperty.call(s,e)?e:o;function Oe(e){const{type:o="default",size:s="medium",sx:n={},style:c={},className:l="",onClick:r=()=>{},children:i,disabled:g=!1,outline:h=!1,icon:b=null,iconPosition:u=null,loading:x=!1,i18nKey:S=null,localeText:C={},rippleColor:T,"aria-label":F,...P}=e,{t:y}=se(),v=d.useRef(null),k=ut(s,"medium",ko),p=ut(o,"default",dt),N=_o(x),O=Ao(x),A=g||N,B=jo[k],_=u==="right"?"right":b||N?"left":null,j=T??"var(--tango-material-button-ripple)",w={default:y("materialButton.default",De.default),loading:y("materialButton.loading",De.loading),iconAlt:y("materialButton.iconAlt",De.iconAlt),...C},W=(S&&typeof w[S]=="string"?w[S]:null)||(S?y(`materialButton.${S}`,w.default):w.default),D=N?w.loading:W,z=i??D,E=F||(i==null?String(z||w.default):void 0),M=H(n,it),U=A?Po:h?Lo[p]:dt[p],K=he[`materialBtn${Oo(k)}`],Z=M.root.css||{},R=typeof n=="string"?n:"",J=new Set([...it,"root","slots","tw","className","css","style"]),le=typeof n=="object"?Object.fromEntries(Object.entries(n).filter(([ee])=>!J.has(ee))):{},de=[he.materialBtn,K,A&&he.materialBtnDisabled,M.root.tw,R,l].filter(Boolean).join(" "),ue={...U,...le,...Z,...c},ge=m({baseClassName:"inline-flex items-center relative z-[1]",sxSlot:M.content}),G=m({baseClassName:"inline-flex items-center justify-center shrink-0 transition-all duration-300 relative z-[1]",baseStyle:{width:`${B}px`,height:`${B}px`},sxSlot:M.icon}),X=m({baseClassName:"inline-flex items-center justify-center shrink-0 animate-spin relative z-[1]",baseStyle:{width:`${B}px`,height:`${B}px`,color:O==="light"?"var(--tango-button-loading-light)":"var(--tango-button-loading-dark)"},sxSlot:M.loading}),I=d.useCallback(ee=>{if(A)return;const oe=v.current;if(!oe)return;const f=document.createElement("span"),V=Math.max(oe.clientWidth,oe.clientHeight),Q=V/2;Object.assign(f.style,{width:`${V}px`,height:`${V}px`,left:`${ee.clientX-oe.getBoundingClientRect().left-Q}px`,top:`${ee.clientY-oe.getBoundingClientRect().top-Q}px`}),f.className=he.ripple,f.style.background=j;const ne=oe.querySelector(`.${he.ripple}`);ne&&ne.remove(),oe.appendChild(f)},[A,j]),q=()=>{if(!b)return null;if(typeof b=="string")return a.jsx("img",{src:b,alt:w.iconAlt,className:G.className,style:G.style,"aria-hidden":"true"});if(d.isValidElement(b))return d.cloneElement(b,{className:$(G.className,b.props.className),style:{...G.style,...b.props.style},"aria-hidden":!0});if(typeof b=="function"){const ee=b;return a.jsx(ee,{className:G.className,style:G.style,"aria-hidden":"true"})}return a.jsx("span",{className:G.className,style:G.style,"aria-hidden":"true",children:b})},re=()=>a.jsx("svg",{viewBox:"0 0 1024 1024",role:"presentation",className:X.className,style:X.style,"aria-hidden":"true",children:a.jsx("path",{d:"M512 1024A512 512 0 0 1 0 512a32 32 0 0 1 64 0 448 448 0 0 0 896 0 32 32 0 0 1 64 0 512 512 0 0 1-512 512z",fill:"currentColor"})});return a.jsxs("button",{ref:v,className:de,style:ue,onClick:ee=>{I(ee),r==null||r(ee)},disabled:A,"aria-label":E,"data-variant":p,"data-size":k,"data-icon-position":_||void 0,...P,children:[_==="left"&&a.jsxs(a.Fragment,{children:[N&&re(),!N&&b&&q()]}),a.jsx("span",{className:ge.className,style:ge.style,children:z}),_==="right"&&a.jsxs(a.Fragment,{children:[N&&re(),!N&&b&&q()]})]})}Oe.propTypes={type:t.oneOf(["default","transparent","danger","success"]),size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,onClick:t.func,className:t.string,children:t.node,disabled:t.bool,outline:t.bool,icon:t.oneOfType([t.elementType,t.node,t.string]),iconPosition:t.oneOf(["left","right"]),loading:t.oneOfType([t.bool,t.oneOf(["light","dark"]),t.array]),i18nKey:t.string,localeText:t.object,rippleColor:t.string};const Mo=["root","content","icon","loading"],Re={default:"按钮",loading:"加载中",iconAlt:"图标"},zo="inline-flex select-none items-center justify-center whitespace-nowrap rounded-[var(--tango-radius)] border align-middle font-medium tracking-[0.5px] transition-all duration-300 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--tango-input-accent)] focus-visible:ring-offset-2",Ve={small:{iconSize:12,className:"text-xs px-2 py-1 gap-1"},medium:{iconSize:14,className:"text-sm px-4 py-2 gap-1.5"},large:{iconSize:16,className:"text-base px-5 py-3 gap-2"},huge:{iconSize:20,className:"text-[25px] px-[45px] py-[18px] gap-3"}},gt={default:"bg-[var(--tango-primary)] text-[var(--tango-primary-foreground)] border-[var(--tango-border)] hover:shadow-[0_0_0.4em_0_var(--tango-button-shadow-default)]",transparent:"bg-[var(--tango-transparent)] text-[var(--tango-primary-foreground)] border-[var(--tango-button-transparent-border)] hover:shadow-[0_0_0.4em_0_var(--tango-button-shadow-default)]",danger:"bg-[var(--tango-destructive)] text-[var(--tango-destructive-foreground)] border-transparent hover:shadow-[0_0_0.4em_0_var(--tango-destructive)]",success:"bg-[var(--tango-success)] text-[var(--tango-success-foreground)] border-transparent hover:shadow-[0_0_0.4em_0_var(--tango-success)]"},Eo="bg-[var(--tango-transparent)]",$o={default:"text-[var(--tango-button-outline-foreground)] border-[var(--tango-border)]",transparent:"text-[var(--tango-button-outline-foreground)] border-[var(--tango-button-transparent-border)]",danger:"text-[var(--tango-destructive)] border-[var(--tango-destructive)]",success:"text-[var(--tango-success)] border-[var(--tango-success)]"},Bo="shadow-[var(--tango-button-enu-shadow)] hover:shadow-[var(--tango-button-enu-hover-shadow)] active:translate-y-px active:shadow-[var(--tango-button-enu-active-shadow)]",Io={default:"bg-[var(--tango-button-enu-bg)] text-[var(--tango-button-enu-fg)] border-transparent",transparent:"bg-[var(--tango-transparent)] text-[var(--tango-button-enu-fg)] border-[var(--tango-button-transparent-border)]",danger:"bg-[var(--tango-destructive)] text-[var(--tango-destructive-foreground)] border-transparent",success:"bg-[var(--tango-success)] text-[var(--tango-success-foreground)] border-transparent"},Fo="bg-[var(--tango-muted)] text-[var(--tango-muted-foreground)] border-transparent cursor-not-allowed shadow-none hover:shadow-none",Do=e=>e===!0||e==="light"||e==="dark"?!0:Array.isArray(e)&&e.length>0?e[0]===!0||e[0]==="light"||e[0]==="dark":!1,Ro=e=>e==="light"?"light":e==="dark"||e===!0||Array.isArray(e)&&e.length>=2&&e[1]==="dark"?"dark":"light",pt=(e,o,s)=>Object.prototype.hasOwnProperty.call(s,e)?e:o;function ae(e){const{type:o="default",size:s="medium",sx:n={},style:c={},className:l="",onClick:r=()=>{},children:i,disabled:g=!1,outline:h=!1,enu:b=!1,icon:u=null,iconPosition:x=null,loading:S=!1,i18nKey:C=null,localeText:T={},"aria-label":F,...P}=e,{t:y}=se(),v=pt(s,"medium",Ve),k=pt(o,"default",gt),p=Do(S),N=Ro(S),O=g||p,A=Ve[v].iconSize,B=x==="right"?"right":u||p?"left":null,_=H(n,Mo),j={default:y("button.default",Re.default),loading:y("button.loading",Re.loading),iconAlt:y("button.iconAlt",Re.iconAlt),...T},L=(C&&typeof j[C]=="string"?j[C]:null)||(C?y(`button.${C}`,j.default):j.default),W=p?j.loading:L,D=i??W,z=F||(i==null?String(D||j.default):void 0);let E=gt[k];h&&(E=$(E,Eo,$o[k])),b&&(E=$(E,Bo,Io[k]));const M=m({baseClassName:$(zo,Ve[v].className,E,O&&Fo,p&&"cursor-wait"),className:l,style:c,sxSlot:_.root}),U=m({baseClassName:"inline-flex items-center",sxSlot:_.content}),K=m({baseClassName:"inline-flex items-center justify-center shrink-0 transition-all duration-300",baseStyle:{width:`${A}px`,height:`${A}px`},sxSlot:_.icon}),Z=m({baseClassName:"inline-flex items-center justify-center shrink-0 animate-spin",baseStyle:{width:`${A}px`,height:`${A}px`,color:N==="light"?"var(--tango-button-loading-light)":"var(--tango-button-loading-dark)"},sxSlot:_.loading}),R=()=>{if(!u)return null;if(typeof u=="string")return a.jsx("img",{src:u,alt:j.iconAlt,className:K.className,style:K.style,"aria-hidden":"true"});if(d.isValidElement(u))return d.cloneElement(u,{className:$(K.className,u.props.className),style:{...K.style,...u.props.style},"aria-hidden":!0});if(typeof u=="function"){const le=u;return a.jsx(le,{className:K.className,style:K.style,"aria-hidden":"true"})}return a.jsx("span",{className:K.className,style:K.style,"aria-hidden":"true",children:u})},J=()=>a.jsx("svg",{viewBox:"0 0 1024 1024",role:"presentation",className:Z.className,style:Z.style,"aria-hidden":"true",children:a.jsx("path",{d:"M512 1024A512 512 0 0 1 0 512a32 32 0 0 1 64 0 448 448 0 0 0 896 0 32 32 0 0 1 64 0 512 512 0 0 1-512 512z",fill:"currentColor"})});return a.jsxs("button",{className:M.className,style:M.style,onClick:r,disabled:O,"aria-label":z,"data-variant":k,"data-size":v,"data-icon-position":B||void 0,...P,children:[B==="left"&&a.jsxs(a.Fragment,{children:[p&&J(),!p&&u&&R()]}),a.jsx("span",{className:U.className,style:U.style,children:D}),B==="right"&&a.jsxs(a.Fragment,{children:[p&&J(),!p&&u&&R()]})]})}ae.propTypes={type:t.oneOf(["default","transparent","danger","success"]),size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,onClick:t.func,className:t.string,children:t.node,disabled:t.bool,outline:t.bool,enu:t.bool,icon:t.oneOfType([t.elementType,t.node,t.string]),iconPosition:t.oneOf(["left","right"]),loading:t.oneOfType([t.bool,t.oneOf(["light","dark"]),t.array]),i18nKey:t.string,localeText:t.object};ae.MaterialButton=Oe;const Vo=["root","input","label"],Yo={small:"small",medium:"medium",large:"large",huge:"huge"},Ko={small:{wrapper:"h-10 text-sm",label:"text-sm",labelFloat:"text-[10px]",pt:"pt-5"},medium:{wrapper:"h-12 text-base",label:"text-base",labelFloat:"text-xs",pt:"pt-6"},large:{wrapper:"h-14 text-lg",label:"text-lg",labelFloat:"text-sm",pt:"pt-7"},huge:{wrapper:"h-16 text-xl",label:"text-xl",labelFloat:"text-base",pt:"pt-8"}},Wo={label:""},Uo=(e,o,s)=>Object.prototype.hasOwnProperty.call(s,e)?e:o;function _e(e){const{size:o="medium",sx:s={},style:n={},className:c="",onChange:l,value:r,defaultValue:i,disabled:g=!1,label:h,localeText:b,type:u="text",...x}=e,{t:S}=se(),C=Uo(o,"medium",Yo),T=r!==void 0,[F,P]=d.useState(i??""),[y,v]=d.useState(!1),k=T?r:F,p=y||String(k).length>0,N=h??(b==null?void 0:b.label)??S("materialInput.label",Wo.label),O=H(s,Vo),A={tw:$(O.root.tw,O.input.tw),css:{...O.root.css,...O.input.css}},B=$("relative inline-flex",O.root.tw),_=Ko[C],j=$("w-[300px] bg-transparent text-[var(--tango-foreground)] outline-none transition-all duration-200 ease-in-out","border-b border-b-[var(--tango-border)]","hover:border-b-[var(--tango-input-accent)]","focus:border-b-[var(--tango-input-accent)]",g&&"text-[var(--tango-muted-foreground)] border-b-[var(--tango-muted)] cursor-not-allowed hover:border-b-[var(--tango-muted)]",_.wrapper,_.pt),w=m({baseClassName:j,className:c,style:n,sxSlot:A}),L=$("absolute left-0 transition-all duration-200 ease-in-out pointer-events-none",p?`top-1 ${_.labelFloat} text-[var(--tango-input-accent)]`:`top-1/2 -translate-y-1/2 ${_.label} text-[var(--tango-muted-foreground)]`,y&&p&&"text-[var(--tango-input-accent)]",g&&"text-[var(--tango-muted-foreground)]",O.label.tw),W=m({baseClassName:L,sxSlot:{tw:"",css:O.label.css}}),D=d.useCallback(Z=>{const R=Z.target.value;T||P(R),l==null||l(R)},[T,l]),z=d.useCallback(Z=>{var R;v(!0),(R=x.onFocus)==null||R.call(x,Z)},[x.onFocus]),E=d.useCallback(Z=>{var R;v(!1),(R=x.onBlur)==null||R.call(x,Z)},[x.onBlur]),{onFocus:M,onBlur:U,...K}=x;return a.jsxs("div",{className:B,children:[a.jsx("input",{...K,type:u,className:w.className,style:w.style,value:k,disabled:g||void 0,onChange:D,onFocus:z,onBlur:E,"aria-label":N||void 0}),N&&a.jsx("label",{className:W.className,style:W.style,children:N})]})}_e.propTypes={size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,onChange:t.func,value:t.string,defaultValue:t.string,disabled:t.bool,label:t.string,localeText:t.shape({label:t.string}),type:t.string};const Ho=["root","input"],Zo={small:"small",medium:"medium",large:"large",huge:"huge"},Go={small:"h-8 text-xs px-2.5",medium:"h-10 text-sm px-3",large:"h-12 text-base px-3.5",huge:"h-14 text-lg px-4"},qo=(e,o,s)=>Object.prototype.hasOwnProperty.call(s,e)?e:o;function Ae(e){const{type:o="default",size:s="medium",sx:n={},style:c={},className:l="",onClick:r,onChange:i,value:g,defaultValue:h,disabled:b=!1,placeholder:u="",maxlength:x=524288,status:S,...C}=e,T=qo(s,"medium",Zo),F=o==="textarea",P=o==="password",y=S==="error",v=H(n,Ho),k={tw:$(v.root.tw,v.input.tw),css:{...v.root.css,...v.input.css}},p=$("inline-flex",v.root.tw),N=$("w-[300px] rounded-[var(--tango-radius)] border bg-[var(--tango-input-bg)] text-[var(--tango-foreground)] outline-none transition-all duration-200 ease-in-out","border-[var(--tango-border)] shadow-[var(--tango-input-shadow)]","hover:border-[var(--tango-input-accent)]","focus:border-[var(--tango-input-accent)] focus:shadow-[var(--tango-input-focus-shadow)]",y&&"border-[var(--tango-input-error-border)] bg-[var(--tango-input-error-bg)] text-[var(--tango-input-error-fg)] hover:border-[var(--tango-input-error-border)] focus:shadow-[var(--tango-input-error-focus-shadow)]",b&&"bg-[var(--tango-muted)] text-[var(--tango-muted-foreground)] border-[var(--tango-muted)] cursor-not-allowed shadow-none hover:border-[var(--tango-muted)] focus:shadow-none",Go[T]),O=m({baseClassName:N,className:l,style:c,sxSlot:k}),A=g!==void 0,B={className:O.className,style:O.style,onClick:r,onChange:i?_=>i(_.target.value):void 0,value:A?g:void 0,defaultValue:A?void 0:h??"",disabled:b||void 0,placeholder:u,maxLength:x,"aria-invalid":y||void 0,...C};return a.jsx("div",{className:p,children:P?a.jsx("form",{onSubmit:_=>_.preventDefault(),style:{display:"inline-flex"},autoComplete:"off",children:a.jsx("input",{...B,type:"password"})}):F?a.jsx("textarea",{...B,className:`${B.className} min-h-[80px] py-2 resize-y`}):a.jsx("input",{...B,type:"text"})})}Ae.propTypes={type:t.oneOf(["default","textarea","password"]),size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,onClick:t.func,onChange:t.func,value:t.string,defaultValue:t.string,disabled:t.bool,placeholder:t.string,maxlength:t.number,status:t.oneOf(["default","error"])};Ae.MaterialInput=_e;const fe=["root"];function Xo(e,o){const{sx:s={},style:n={},className:c="",children:l,...r}=e,i=H(s,fe),g=m({baseClassName:"flex items-center px-4 bg-[var(--tango-layout-header-bg)] text-[var(--tango-layout-header-color)]",className:c,sxSlot:i.root,baseStyle:{height:"var(--tango-layout-header-height)",borderBottom:"1px solid var(--tango-layout-border)"},style:n});return a.jsx("header",{ref:o,className:g.className,style:g.style,...r,children:l})}const Me=d.forwardRef(Xo);Me.displayName="LayoutHeader";Me.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function Jo(e,o){const{sx:s={},style:n={},className:c="",children:l,...r}=e,i=H(s,fe),g=m({baseClassName:"flex items-center px-4 bg-[var(--tango-layout-footer-bg)] text-[var(--tango-layout-footer-color)]",className:c,sxSlot:i.root,baseStyle:{height:"var(--tango-layout-footer-height)",borderTop:"1px solid var(--tango-layout-border)"},style:n});return a.jsx("footer",{ref:o,className:g.className,style:g.style,...r,children:l})}const ze=d.forwardRef(Jo);ze.displayName="LayoutFooter";ze.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function Qo(e,o){const{sx:s={},style:n={},className:c="",width:l,children:r,...i}=e,g=H(s,fe),h=l??"var(--tango-layout-sider-width)",b=m({baseClassName:"overflow-auto flex flex-col bg-[var(--tango-layout-sider-bg)] text-[var(--tango-layout-sider-color)]",className:c,sxSlot:g.root,baseStyle:{width:h,minWidth:h,maxWidth:"100%",borderRight:"1px solid var(--tango-layout-border)"},style:n});return a.jsx("aside",{ref:o,className:b.className,style:b.style,...i,children:r})}const we=d.forwardRef(Qo);we.displayName="LayoutSider";we.propTypes={width:t.oneOfType([t.string,t.number]),sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function ea(e,o){const{sx:s={},style:n={},className:c="",width:l,children:r,...i}=e,g=H(s,fe),h=l??"var(--tango-layout-toc-width)",b=m({baseClassName:"overflow-auto flex flex-col bg-[var(--tango-layout-toc-bg)] text-[var(--tango-layout-toc-color)]",className:c,sxSlot:g.root,baseStyle:{width:h,minWidth:h,maxWidth:"100%",borderLeft:"1px solid var(--tango-layout-border)"},style:n});return a.jsx("nav",{ref:o,className:b.className,style:b.style,...i,children:r})}const Ce=d.forwardRef(ea);Ce.displayName="LayoutToc";Ce.propTypes={width:t.oneOfType([t.string,t.number]),sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function ta(e,o){const{sx:s={},style:n={},className:c="",children:l,...r}=e,i=H(s,fe),g=m({baseClassName:"flex-1 flex flex-col bg-[var(--tango-layout-content-bg)] text-[var(--tango-layout-content-color)]",className:c,sxSlot:i.root,baseStyle:{},style:n});return a.jsx("main",{ref:o,className:g.className,style:g.style,...r,children:l})}const Ee=d.forwardRef(ta);Ee.displayName="LayoutContent";Ee.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function oa(e,o){const{sx:s={},style:n={},className:c="",hasSider:l,children:r,...i}=e,g=H(s,fe),h=l??d.Children.toArray(r).some(u=>{var x,S;return d.isValidElement(u)&&(u.type===we||u.type===Ce||((x=u.type)==null?void 0:x.displayName)==="LayoutSider"||((S=u.type)==null?void 0:S.displayName)==="LayoutToc")}),b=m({baseClassName:$("flex flex-1 flex-col min-h-0",h?"md:flex-row":""),className:c,sxSlot:g.root,style:n});return a.jsx("section",{ref:o,className:b.className,style:b.style,...i,children:r})}const te=d.forwardRef(oa);te.displayName="Layout";te.Header=Me;te.Footer=ze;te.Sider=we;te.Content=Ee;te.Toc=Ce;te.propTypes={hasSider:t.bool,sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};const $t=Me,Bt=ze,It=we,Ft=Ee,Dt=Ce,aa=["root","button","list","item"],Rt=Symbol("LIST_IGNORE"),mt=a.jsxs("svg",{viewBox:"0 0 24 24",width:"1em",height:"1em",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:[a.jsx("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z"}),a.jsx("path",{d:"M14 2v6h6"})]}),bt=a.jsx("svg",{viewBox:"0 0 24 24",width:"1em",height:"1em",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:a.jsx("path",{d:"M18 6 6 18M6 6l12 12"})});function sa(e,o){const{sx:s={},style:n={},className:c="",accept:l="image/*",multiple:r=!1,onChange:i=()=>{},beforeUpload:g=()=>{},files:h=[],showUploadList:b=!0,maxCount:u=20,maxSize:x=100,btnText:S="选择文件",btnStyle:C,showSize:T=!0,disabled:F=!1,...P}=e,y=d.useId(),v=h||[],k=H(s,aa),p=d.useCallback(async(j,w)=>{if(!g)return!0;try{const L=await g(j,w);return L===void 0?!0:L}catch{return!1}},[g]),N=d.useCallback(async j=>{const L=Array.from(j.target.files||[]).filter(z=>z.size/1024/1024>x?(console.warn(`[Tango Upload] ${z.name} 超过 ${x}MB,已被过滤`),!1):!0),W=r?L.slice(0,u):L.slice(0,1),D=[];for(const z of W){const E=await p(z,W);if(E===!1){console.warn(`[Tango Upload] ${z.name} 被 beforeUpload 拦截`);continue}if(E===Rt){console.warn(`[Tango Upload] ${z.name} 被 LIST_IGNORE 忽略`);continue}if(E instanceof Blob){const M=E instanceof File?E:new File([E],z.name,{type:z.type});D.push(M)}else D.push(z)}j.target.value="",i(D)},[r,u,x,p,i]),O=d.useCallback((j,w)=>{const L=v.filter((W,D)=>D!==w);i(L)},[v,i]),A=m({baseClassName:"inline-flex flex-col gap-3",className:c,sxSlot:k.root,style:n}),B=m({baseClassName:$("list-none p-0 m-0 max-h-[150px] max-w-[400px] overflow-y-auto","border border-[var(--tango-upload-border)] rounded-[var(--tango-upload-radius)]","bg-[var(--tango-upload-list-bg)]",v.length===0&&"border-transparent"),baseStyle:{borderRadius:"var(--tango-upload-radius)"},sxSlot:k.list}),_=m({baseClassName:$("flex items-center gap-2 px-3 py-1.5 text-sm","text-[var(--tango-upload-item-text)] hover:bg-[var(--tango-upload-item-hover-bg)]","transition-colors"),sxSlot:k.item});return a.jsxs("div",{ref:o,className:A.className,style:A.style,...P,children:[a.jsx("input",{id:y,type:"file",accept:l,multiple:r,className:"hidden",onChange:N,disabled:F,"aria-hidden":"true",tabIndex:-1}),a.jsx(ae,{disabled:F,style:C,sx:k.button,onClick:()=>{var j;return(j=document.getElementById(y))==null?void 0:j.click()},children:S}),b&&v.length>0&&a.jsx("ul",{className:B.className,style:B.style,children:r?v.map((j,w)=>a.jsxs("li",{className:_.className,style:_.style,children:[a.jsx("span",{className:"flex-shrink-0 text-[var(--tango-upload-icon-color)]",children:mt}),a.jsxs("span",{className:"flex-1 truncate",children:[j.name,T&&a.jsxs("span",{className:"ml-1 text-xs text-[var(--tango-muted-foreground)]",children:["(",(j.size/1024).toFixed(2)," KB)"]})]}),a.jsx("button",{type:"button",className:"flex-shrink-0 p-0.5 rounded hover:bg-[var(--tango-upload-del-hover-bg)] text-[var(--tango-upload-del-color)] transition-colors",onClick:()=>O(j,w),"aria-label":`删除 ${j.name}`,children:bt})]},w)):a.jsxs("li",{className:_.className,style:_.style,children:[a.jsx("span",{className:"flex-shrink-0 text-[var(--tango-upload-icon-color)]",children:mt}),a.jsxs("span",{className:"flex-1 truncate",children:[v[0].name,T&&a.jsxs("span",{className:"ml-1 text-xs text-[var(--tango-muted-foreground)]",children:["(",(v[0].size/1024).toFixed(2)," KB)"]})]}),a.jsx("button",{type:"button",className:"flex-shrink-0 p-0.5 rounded hover:bg-[var(--tango-upload-del-hover-bg)] text-[var(--tango-upload-del-color)] transition-colors",onClick:()=>O(v[0],0),"aria-label":`删除 ${v[0].name}`,children:bt})]})})]})}const $e=d.forwardRef(sa);$e.displayName="Upload";$e.LIST_IGNORE=Rt;$e.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,accept:t.string,multiple:t.bool,onChange:t.func,beforeUpload:t.func,files:t.array,showUploadList:t.bool,maxCount:t.number,maxSize:t.number,btnText:t.string,btnStyle:t.object,showSize:t.bool,disabled:t.bool};const ra=["root","icon","content","actions","closeIcon"],xt={cancel:"取消",action:"操作"},ft={small:{rootClass:"px-[15px] py-[8px] h-[45px] rounded-[6px] gap-[8px] border",iconSize:20,contentClass:"text-[14px]",closeIconSize:18,buttonBorderRadius:"0.8rem",buttonGap:"8px",buttonFontSize:"13px"},normal:{rootClass:"px-[20px] py-[10px] h-[52px] rounded-[8px] gap-[10px] border",iconSize:22,contentClass:"text-[15px]",closeIconSize:20,buttonBorderRadius:"1rem",buttonGap:"10px",buttonFontSize:"14px"},large:{rootClass:"px-[25px] py-[12px] h-[60px] rounded-[10px] gap-[12px] border-[1.5px]",iconSize:26,contentClass:"text-[16px]",closeIconSize:22,buttonBorderRadius:"1.2rem",buttonGap:"12px",buttonFontSize:"15px"}},ht={info:{bgVar:"--tango-banner-info-bg",borderVar:"--tango-banner-info-border",iconVar:"--tango-banner-info-icon",textVar:"--tango-banner-info-text"},success:{bgVar:"--tango-banner-success-bg",borderVar:"--tango-banner-success-border",iconVar:"--tango-banner-success-icon",textVar:"--tango-banner-success-text"},warning:{bgVar:"--tango-banner-warning-bg",borderVar:"--tango-banner-warning-border",iconVar:"--tango-banner-warning-icon",textVar:"--tango-banner-warning-text"},error:{bgVar:"--tango-banner-error-bg",borderVar:"--tango-banner-error-border",iconVar:"--tango-banner-error-icon",textVar:"--tango-banner-error-text"}},yt=(e,o,s)=>Object.prototype.hasOwnProperty.call(s,e)?e:o;function We(e){const{children:o,onCancel:s=()=>{},onAction:n=()=>{},size:c="normal",cancelText:l,actionText:r,level:i="info",transparent:g=!1,bannerBgColor:h,bannerBorderColor:b,bannerIconColor:u,sx:x={},style:S={},className:C="",i18nKey:T,localeText:F={},...P}=e,{t:y}=se(),v=yt(c,"normal",ft),k=yt(i,"info",ht),p=ft[v],N=ht[k],O=H(x,ra),A={cancel:y("banner.cancel",xt.cancel),action:y("banner.action",xt.action),...F},B=l??(T==="cancel"?y("banner.cancel",A.cancel):A.cancel),_=r??(T==="action"?y("banner.action",A.action):A.action),j=o??B,w=h||(g===!0?"transparent":`var(${N.bgVar})`),L=b||`var(${N.borderVar})`,W=u||`var(${N.iconVar})`,D=`var(${N.textVar})`,z=m({baseClassName:$("flex w-full items-center justify-start transition-colors duration-200",p.rootClass),className:C,style:{backgroundColor:w,borderColor:L,color:g===!0?"var(--tango-muted-foreground)":D,...S},sxSlot:O.root}),E=m({baseClassName:"shrink-0",baseStyle:{width:`${p.iconSize}px`,height:`${p.iconSize}px`,color:W},sxSlot:O.icon}),M=m({baseClassName:$("flex-grow text-left",p.contentClass),sxSlot:O.content}),U=m({baseClassName:"flex items-center justify-end flex-1",baseStyle:{gap:p.buttonGap},sxSlot:O.actions}),K=m({baseClassName:"shrink-0 cursor-pointer",baseStyle:{width:`${p.closeIconSize}px`,height:`${p.closeIconSize}px`,color:"var(--tango-banner-close-icon)"},sxSlot:O.closeIcon}),Z=a.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[a.jsx("path",{d:"M512.50142 958.397886c-119.320573 0-231.499491-46.465265-315.871087-130.837884C112.258737 743.188406 65.792449 631.010511 65.792449 511.688915c0-119.319549 46.466288-231.499491 130.837884-315.871087C281.002952 111.445208 393.180847 64.979944 512.50142 64.979944s231.499491 46.465265 315.871087 130.837884c84.372619 84.372619 130.837884 196.551538 130.837884 315.871087 0 119.321596-46.465265 231.499491-130.837884 315.871087C744.000911 911.932622 631.821993 958.397886 512.50142 958.397886zM512.50142 105.962334c-223.718271 0-405.726581 182.00831-405.726581 405.726581s182.00831 405.726581 405.726581 405.726581c223.718271 0 405.727605-182.00831 405.727605-405.726581S736.220714 105.962334 512.50142 105.962334z"}),a.jsx("path",{d:"M510.150886 775.953647c-18.107403 0-32.745798-14.678304-32.745798-32.785707L477.405087 452.191846c0-18.108426 14.638395-32.785707 32.745798-32.785707 18.107403 0 32.745798 14.678304 32.745798 32.785707l0 290.976094C542.896684 761.275343 528.258289 775.953647 510.150886 775.953647z"}),a.jsx("path",{d:"M511.357364 296.458969m-45.080731 0a44.054 44.054 0 1 0 90.161463 0 44.054 44.054 0 1 0-90.161463 0Z"})]}),R=a.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[a.jsx("path",{d:"M869.472578 920.128281 154.906046 920.128281c-31.943526 0-60.545958-16.517185-76.514651-44.181245-15.968693-27.666106-15.96153-60.696384 0.016373-88.355327l357.283266-618.47194c15.971763-27.647687 44.568055-44.152593 76.496232-44.152593 31.930223-0.001023 60.527538 16.504906 76.499301 44.151569l357.283266 618.472963c15.977903 27.659967 15.984043 60.689221 0.017396 88.355327C930.018535 903.611096 901.416104 920.128281 869.472578 920.128281zM512.187265 169.139212c-15.962553 0-30.261211 8.251941-38.247092 22.075785l0 0L116.65793 809.686936c-7.989975 13.829983-7.993045 30.345122-0.008186 44.179199 7.983835 13.83203 22.285562 22.090111 38.257326 22.090111l714.566532 0c15.971763 0 30.273491-8.258081 38.256302-22.090111 7.984858-13.83203 7.980765-30.349215-0.008186-44.179199L550.437427 191.213973C542.452569 177.391153 528.152888 169.138188 512.187265 169.139212z"}),a.jsx("path",{d:"M513.732457 621.119233c-18.296715 0-33.257451-14.832823-33.257451-33.129538L480.475006 331.789639c0-18.296715 14.960737-33.129538 33.257451-33.129538 18.296715 0 33.257451 14.832823 33.257451 33.129538l0 256.200056C546.989909 606.28641 532.029172 621.119233 513.732457 621.119233z"}),a.jsx("path",{d:"M513.686409 737.619574m-49.991578 0a48.853 48.853 0 1 0 99.983155 0 48.853 48.853 0 1 0-99.983155 0Z"})]}),J=a.jsx("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:a.jsx("path",{d:"M85.333333 512C85.333333 276.352 276.352 85.333333 512 85.333333s426.666667 191.018667 426.666667 426.666667-191.018667 426.666667-426.666667 426.666667S85.333333 747.648 85.333333 512z m683.093334-256.426667a358.954667 358.954667 0 0 0-122.922667-80.768A359.466667 359.466667 0 0 0 512 149.333333c-46.08 0-90.624 8.490667-133.504 25.472A358.954667 358.954667 0 0 0 255.573333 255.573333c-35.413333 35.413333-62.336 76.373333-80.768 122.922667A359.466667 359.466667 0 0 0 149.333333 512c0 46.08 8.490667 90.624 25.472 133.504A358.954667 358.954667 0 0 0 255.573333 768.426667c35.413333 35.413333 76.373333 62.336 122.922667 80.768A359.466667 359.466667 0 0 0 512 874.666667c46.08 0 90.624-8.490667 133.504-25.472a358.954667 358.954667 0 0 0 122.922667-80.768c35.413333-35.413333 62.336-76.373333 80.768-122.922667A359.466667 359.466667 0 0 0 874.666667 512c0-46.08-8.490667-90.624-25.472-133.504A358.912 358.912 0 0 0 768.426667 255.573333zM338.517333 640.213333L466.773333 512 338.517333 383.786667l45.226667-45.226667L512 466.688l128.213333-128.213333 45.226667 45.226666L557.312 512l128.213333 128.213333-45.226666 45.226667L512 557.312l-128.213333 128.213333-45.226667-45.226666z"})}),le=a.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[a.jsx("path",{d:"M512.3 961.3c-247.1 0-448.1-201-448.1-448.1s201-448.1 448.1-448.1 448.1 201 448.1 448.1-201 448.1-448.1 448.1z m0-849.7c-221.4 0-401.6 180.2-401.6 401.6s180.2 401.6 401.6 401.6 401.6-180.2 401.6-401.6-180.2-401.6-401.6-401.6z"}),a.jsx("path",{d:"M441.2 676c-16.4 0-32.7-5.8-45.5-17.4l-151.3-138c-9.5-8.6-10.2-23.3-1.5-32.8 8.6-9.5 23.3-10.2 32.8-1.5L427 624.2c7.6 6.9 20.8 6.9 28.4 0l293.5-267.5c9.5-8.6 24.2-8 32.8 1.5 8.6 9.5 8 24.2-1.5 32.8L486.7 658.5c-12.8 11.7-29.1 17.5-45.5 17.5z"})]}),de=a.jsx("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:a.jsx("path",{d:"M558.8 509.2l302.8-302.8c3.1-3.1 3.1-8.1 0-11.2l-30.8-30.8c-3.1-3.1-8.1-3.1-11.2 0L516.8 467.2c-1.5 1.5-4.1 1.5-5.6 0L208.3 164.3c-3.1-3.1-8.1-3.1-11.2 0l-30.8 30.8c-3.1 3.1-3.1 8.1 0 11.2l302.8 302.8c1.5 1.5 1.5 4.1 0 5.6l-302.8 303c-3.1 3.1-3.1 8.1 0 11.2l30.8 30.8c3.1 3.1 8.1 3.1 11.2 0l302.8-302.8c1.5-1.5 4.1-1.5 5.6 0l302.8 302.8c3.1 3.1 8.1 3.1 11.2 0l30.8-30.8c3.1-3.1 3.1-8.1 0-11.2L558.8 514.8c-1.5-1.5-1.5-4.1 0-5.6z"})}),ue={success:le,warning:R,error:J,info:Z};return a.jsxs("div",{className:z.className,style:z.style,"data-level":k,"data-size":v,...P,children:[a.jsx("div",{className:E.className,style:E.style,children:ue[k]}),a.jsx("div",{className:M.className,style:M.style,children:j}),a.jsxs("div",{className:U.className,style:U.style,children:[a.jsx(ae,{type:"transparent",sx:{c:"var(--tango-banner-btn-text)",br:p.buttonBorderRadius,bColor:"transparent",s:p.buttonFontSize},onClick:s,size:v==="normal"?"medium":v,children:B}),a.jsx(ae,{type:"transparent",sx:{c:"var(--tango-banner-btn-text)",br:p.buttonBorderRadius,b:1,bColor:"var(--tango-banner-btn-border)",s:p.buttonFontSize},onClick:n,size:v==="normal"?"medium":v,children:_}),a.jsx("div",{className:K.className,style:K.style,onClick:s,children:de})]})]})}We.propTypes={children:t.node,onCancel:t.func,onAction:t.func,size:t.oneOf(["small","normal","large"]),cancelText:t.string,actionText:t.string,level:t.oneOf(["info","success","warning","error"]),transparent:t.bool,bannerBgColor:t.string,bannerBorderColor:t.string,bannerIconColor:t.string,sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,i18nKey:t.string,localeText:t.object};const na=["root","input","text"],Ye={hex:"HEX",rgb:"RGB",hsl:"HSL"},vt={small:{inputSize:20,fontSize:"11px",gap:"6px"},medium:{inputSize:28,fontSize:"12px",gap:"10px"},large:{inputSize:36,fontSize:"14px",gap:"14px"}},la={hex:"hex",rgb:"rgb",hsl:"hsl"},St=(e,o,s)=>Object.prototype.hasOwnProperty.call(s,e)?e:o,ca=e=>{const o=parseInt(e.slice(1,3),16),s=parseInt(e.slice(3,5),16),n=parseInt(e.slice(5,7),16);return`rgb(${o}, ${s}, ${n})`},ia=e=>{let o=parseInt(e.slice(1,3),16)/255,s=parseInt(e.slice(3,5),16)/255,n=parseInt(e.slice(5,7),16)/255;const c=Math.max(o,s,n),l=Math.min(o,s,n);let r=0,i=0,g=(c+l)/2;if(c!==l){const h=c-l;i=g>.5?h/(2-c-l):h/(c+l),c===o?r=(s-n)/h+(s<n?6:0):c===s?r=(n-o)/h+2:r=(o-s)/h+4,r/=6}return`hsl(${Math.round(r*360)}, ${Math.round(i*100)}%, ${Math.round(g*100)}%)`},da=(e,o)=>{switch(o){case"rgb":return ca(e);case"hsl":return ia(e);default:return e.toUpperCase()}};function Ue(e){const{value:o,defaultValue:s="#000000",onChange:n=()=>{},disabled:c=!1,showText:l=!1,format:r="hex",size:i="medium",sx:g={},style:h={},className:b="",i18nKey:u,localeText:x={},...S}=e,{t:C}=se(),T=St(i,"medium",vt),F=St(r,"hex",la),P=vt[T],[y,v]=d.useState(s),k=o??y,p=H(g,na),N={hex:C("colorpicker.hex",Ye.hex),rgb:C("colorpicker.rgb",Ye.rgb),hsl:C("colorpicker.hsl",Ye.hsl),...x},O=L=>{const W=L.target.value;o===void 0&&v(W),n(W)},A=[];if(l){const L=u||(typeof l=="string"?l:null)||F;A.push({label:N[L],value:da(k,L)})}const B=m({baseClassName:$("inline-flex items-center",c&&"cursor-not-allowed opacity-60"),className:b,baseStyle:{gap:P.gap},style:h,sxSlot:p.root}),_=m({baseClassName:$("shrink-0 cursor-pointer border-2 border-[var(--tango-border)] rounded-full bg-transparent overflow-hidden transition-colors duration-200",c&&"cursor-not-allowed"),baseStyle:{width:`${P.inputSize}px`,height:`${P.inputSize}px`,padding:0},sxSlot:p.input}),j=m({baseClassName:"flex flex-col text-[var(--tango-muted-foreground)]",baseStyle:{fontSize:P.fontSize},sxSlot:p.text});return a.jsxs(a.Fragment,{children:[a.jsx("style",{children:`
|
|
3
3
|
.tango-cp-input::-webkit-color-swatch-wrapper { padding: 0; }
|
|
4
4
|
.tango-cp-input::-webkit-color-swatch { border: 0; border-radius: 9999px; }
|
|
5
5
|
.tango-cp-input::-moz-color-swatch { border: 0; border-radius: 9999px; }
|
|
6
|
-
`}),s.jsxs("div",{className:B.className,style:B.style,...S,children:[s.jsx("input",{type:"color",value:k,onChange:O,disabled:c,className:`tango-cp-input ${_.className}`,style:_.style,"aria-label":S["aria-label"]||`颜色选择器: ${k}`}),l&&A.length>0&&s.jsx("div",{className:j.className,style:j.style,children:A.map(({label:L,value:W})=>s.jsxs("span",{children:[L,": ",W]},L))})]})]})}Ue.propTypes={value:t.string,defaultValue:t.string,onChange:t.func,disabled:t.bool,showText:t.oneOfType([t.bool,t.oneOf(["hex","rgb","hsl"])]),format:t.oneOf(["hex","rgb","hsl"]),size:t.oneOf(["small","medium","large"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,i18nKey:t.string,localeText:t.object};const us=["root","date","weekday","time"],Nt={weekdayPrefix:"星期",weekdayShortPrefix:"周"},wt={default:"default",line:"line",full:"full","full-line":"full-line","year-week":"year-week","year-week-line":"year-week-line","week-time":"week-time","no-s":"no-s","no-s-line":"no-s-line"},ps=(e,o,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:o,ms=(e,o)=>{const n=new Date().toLocaleDateString(e,{year:"numeric",month:"2-digit",day:"2-digit"});return o?n.replaceAll("/","-"):n},bs=(e,o)=>{let n=new Date().toLocaleString(e,{weekday:"long"});return o&&e.startsWith("zh")&&(n=n.replace("星期","周")),n},ye=(e,o)=>{const r=new Date,n={hour:"2-digit",minute:"2-digit"};return o&&(n.second="2-digit"),r.toLocaleTimeString(e,n)},xs=(e,o,r,n)=>{const c=e.endsWith("-line"),l=ms(o,c),a=bs(o,r);switch(e){case"line":return[{key:"date",text:l}];case"full":return[{key:"date",text:l+" "},{key:"weekday",text:a+" "},{key:"time",text:ye(o,!0)}];case"full-line":return[{key:"date",text:l+" "},{key:"weekday",text:a+" "},{key:"time",text:ye(o,!0)}];case"year-week":return[{key:"date",text:l+" "},{key:"weekday",text:a}];case"year-week-line":return[{key:"date",text:l+" "},{key:"weekday",text:a}];case"week-time":return[{key:"weekday",text:a+" "},{key:"time",text:ye(o,!0)}];case"no-s":return[{key:"date",text:l+" "},{key:"weekday",text:a+" "},{key:"time",text:ye(o,!1)}];case"no-s-line":return[{key:"date",text:l+" "},{key:"weekday",text:a+" "},{key:"time",text:ye(o,!1)}];default:return[{key:"date",text:l}]}};function He(e){const{type:o="default",single:r=!1,sx:n={},style:c={},className:l="",i18nKey:a,localeText:i={},...p}=e||{},{t:h,locale:x}=re(),[u,f]=d.useState(!1);d.useEffect(()=>{f(!0)},[]);const S=ps(o,"default",wt),C=x==="en-US"?"en-US":"zh-CN";({weekdayPrefix:h("date.weekdayPrefix",Nt.weekdayPrefix),weekdayShortPrefix:h("date.weekdayShortPrefix",Nt.weekdayShortPrefix),...i});const T=H(n,us),F=a&&wt[a]?a:S,P=u?xs(F,C,r):[],y=b({baseClassName:$("inline-flex items-center gap-1 text-[var(--foreground)]"),className:l,baseStyle:{},style:c,sxSlot:T.root}),v={date:b({baseClassName:"",sxSlot:T.date}),weekday:b({baseClassName:"text-[var(--muted-foreground)]",sxSlot:T.weekday}),time:b({baseClassName:"",sxSlot:T.time})};return s.jsx("div",{className:y.className,style:y.style,role:"timer","aria-live":"polite",...p,children:P.map(k=>{const m=v[k.key]||{className:"",style:{}};return s.jsx("span",{className:m.className,style:m.style,children:k.text},k.key)})})}He.propTypes={type:t.oneOf(["default","line","full","full-line","year-week","year-week-line","week-time","no-s","no-s-line"]),single:t.bool,sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,i18nKey:t.string,localeText:t.object};const fs=["root","input","panel","header","body","footer"],ie={placeholder:"YYYY-MM-DD",placeholderTime:"YYYY-MM-DD HH:mm",timeLabel:"时间",confirm:"确定",cancel:"关闭",prevMonth:"上一月",nextMonth:"下一月",weekDays:["日","一","二","三","四","五","六"],monthFormat:"${year} 年 ${month} 月"},Ct={small:{inputPx:"px-2 py-1",textSm:"text-xs",minW:"min-w-[140px]",panelW:"w-[260px]"},medium:{inputPx:"px-3 py-2",textSm:"text-sm",minW:"min-w-[180px]",panelW:"w-[300px]"},large:{inputPx:"px-4 py-3",textSm:"text-base",minW:"min-w-[220px]",panelW:"w-[340px]"}},gs=(e,o,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:o;function Ze(e){const{value:o,defaultValue:r,onChange:n=()=>{},disabled:c=!1,time:l=!1,size:a="medium",sx:i={},style:p={},className:h="",i18nKey:x,localeText:u={},placeholder:f,...S}=e,{t:C,locale:T}=re(),F=gs(a,"medium",Ct),P=Ct[F],y=T==="en-US",[v,k]=d.useState(r||""),m=o!==void 0?o:v,[N,O]=d.useState("00"),[A,B]=d.useState("00"),[_,j]=d.useState(!1),[w,L]=d.useState(()=>{const g=new Date;return new Date(g.getFullYear(),g.getMonth(),1)}),W=d.useRef(null),D={placeholder:C("datepicker.placeholder",ie.placeholder),placeholderTime:C("datepicker.placeholderTime",ie.placeholderTime),timeLabel:C("datepicker.timeLabel",ie.timeLabel),confirm:C("datepicker.confirm",ie.confirm),cancel:C("datepicker.cancel",ie.cancel),prevMonth:C("datepicker.prevMonth",ie.prevMonth),nextMonth:C("datepicker.nextMonth",ie.nextMonth),weekDays:y?["Su","Mo","Tu","We","Th","Fr","Sa"]:ie.weekDays,monthFormat:y?"${month}/${year}":ie.monthFormat,...u};d.useEffect(()=>{const g=V=>{W.current&&!W.current.contains(V.target)&&j(!1)};return document.addEventListener("mousedown",g),()=>document.removeEventListener("mousedown",g)},[]);const z=g=>{const V=g.getFullYear(),Q=(g.getMonth()+1).toString().padStart(2,"0"),ne=g.getDate().toString().padStart(2,"0");return`${V}-${Q}-${ne}`},E=d.useMemo(()=>{const g=w.getFullYear(),V=w.getMonth()+1;return D.monthFormat.replace("${year}",String(g)).replace("${month}",String(V))},[w,D.monthFormat]),M=d.useMemo(()=>{const g=w.getFullYear(),V=w.getMonth(),Q=new Date(g,V,1).getDay(),ne=new Date(g,V+1,0).getDate(),ce=Array.from({length:ne},(tt,Ie)=>Ie+1);return[...Array(Q).fill(null),...ce]},[w]),U=d.useMemo(()=>m?l?`${m} ${N}:${A}`:m:"",[m,N,A,l]),K=g=>{const V=new Date(w.getFullYear(),w.getMonth(),g);return m===z(V)},Z=(g,V,Q)=>{if(g){if(l){const ne=`${g}T${V}:${Q}`,ce=new Date(ne),tt=ce.getFullYear(),Ie=(ce.getMonth()+1).toString().padStart(2,"0"),Wt=ce.getDate().toString().padStart(2,"0"),Ut=ce.getHours().toString().padStart(2,"0"),Ht=ce.getMinutes().toString().padStart(2,"0");n(`${tt}-${Ie}-${Wt} ${Ut}:${Ht}`,ne);return}n(g,g)}},R=g=>{const V=new Date(w.getFullYear(),w.getMonth(),g),Q=z(V);o===void 0&&k(Q),Z(Q,N,A),l||j(!1)},J=g=>{const V=g.target.value;O(V),Z(m,V,A)},le=g=>{const V=g.target.value;B(V),Z(m,N,V)},de=()=>{if(!c){if(m){const[g,V]=m.split("-").map(Number);L(new Date(g,V-1,1))}j(!0)}},ue=Array.from({length:24},(g,V)=>String(V).padStart(2,"0")),pe=Array.from({length:60},(g,V)=>String(V).padStart(2,"0")),G=H(i,fs);typeof i=="string"&&(G.input.tw=$(G.input.tw,G.root.tw),G.root.tw="");const X=b({baseClassName:"relative inline-block",sxSlot:G.root}),I=b({baseClassName:$("border border-[var(--border)] rounded-[var(--radius)] bg-[var(--card)] text-[var(--foreground)] placeholder:text-[var(--muted-foreground)] outline-none transition-all duration-200 cursor-pointer","focus:border-[var(--primary)] focus:shadow-[0_0_0_2px_color-mix(in_srgb,var(--primary)_18%,transparent)]","hover:border-[var(--primary)]",P.inputPx,P.textSm,P.minW,c&&"bg-[var(--muted)] text-[var(--muted-foreground)] cursor-not-allowed"),className:h,style:p,sxSlot:G.input}),q=b({baseClassName:$("absolute top-[calc(100%+8px)] left-0 z-20 p-3 border border-[var(--border)] bg-[var(--card)] rounded-xl shadow-[0_8px_28px_rgba(0,0,0,0.12)]",P.panelW),sxSlot:G.panel}),ae=b({baseClassName:"flex items-center justify-between h-10 mb-2",sxSlot:G.header}),ee=b({baseClassName:"flex flex-wrap",sxSlot:G.body}),oe=b({baseClassName:"mt-2.5 pt-2.5 border-t border-[var(--border)]",sxSlot:G.footer});return s.jsxs("div",{className:X.className,style:X.style,ref:W,...S,children:[s.jsx("input",{type:"text",value:U,readOnly:!0,onClick:de,className:I.className,style:I.style,disabled:c,placeholder:f||(l?D.placeholderTime:D.placeholder),"aria-label":S["aria-label"]||f||(l?D.placeholderTime:D.placeholder),"aria-haspopup":"dialog","aria-expanded":_}),_&&!c&&s.jsxs("div",{className:q.className,style:q.style,role:"dialog","aria-label":"日期选择面板",children:[s.jsxs("div",{className:ae.className,style:ae.style,children:[s.jsx("button",{type:"button",className:"w-7 h-7 border border-[var(--border)] bg-[var(--card)] text-sm cursor-pointer rounded hover:border-[var(--primary)] hover:bg-[color-mix(in_srgb,var(--primary)_14%,var(--card))]",onClick:()=>L(new Date(w.getFullYear(),w.getMonth()-1,1)),"aria-label":D.prevMonth,children:"<"}),s.jsx("div",{className:"text-sm font-semibold text-[var(--foreground)]",children:E}),s.jsx("button",{type:"button",className:"w-7 h-7 border border-[var(--border)] bg-[var(--card)] text-sm cursor-pointer rounded hover:border-[var(--primary)] hover:bg-[color-mix(in_srgb,var(--primary)_14%,var(--card))]",onClick:()=>L(new Date(w.getFullYear(),w.getMonth()+1,1)),"aria-label":D.nextMonth,children:">"})]}),s.jsxs("div",{className:ee.className,style:ee.style,children:[D.weekDays.map(g=>s.jsx("div",{className:"w-[calc(100%/7)] text-center leading-[30px] text-xs text-[var(--muted-foreground)]",children:g},g)),M.map((g,V)=>{if(!g)return s.jsx("div",{className:"w-[calc(100%/7)] text-center leading-[30px]"},`empty-${V}`);const Q=K(g);return s.jsx("button",{type:"button",className:$("w-[calc(100%/7)] text-center leading-[30px] border-none bg-transparent cursor-pointer rounded-md text-[13px] text-[var(--foreground)] hover:bg-[var(--muted)]",Q&&"bg-[var(--primary)] text-[var(--primary-foreground)] hover:bg-[var(--primary)]"),onClick:()=>R(g),"aria-label":`${w.getFullYear()}-${(w.getMonth()+1).toString().padStart(2,"0")}-${g.toString().padStart(2,"0")}`,children:g},`${w.getFullYear()}-${w.getMonth()}-${g}`)})]}),l&&s.jsxs("div",{className:oe.className,style:oe.style,children:[s.jsx("div",{className:"text-xs text-[var(--muted-foreground)] mb-2",children:D.timeLabel}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("select",{className:"w-20 h-8 border border-[var(--border)] rounded-md px-2 text-[13px] outline-none bg-[var(--card)] text-[var(--foreground)] focus:border-[var(--primary)]",value:N,onChange:J,"aria-label":"小时",children:ue.map(g=>s.jsx("option",{value:g,children:g},g))}),s.jsx("span",{className:"font-semibold text-[var(--muted-foreground)]",children:":"}),s.jsx("select",{className:"w-20 h-8 border border-[var(--border)] rounded-md px-2 text-[13px] outline-none bg-[var(--card)] text-[var(--foreground)] focus:border-[var(--primary)]",value:A,onChange:le,"aria-label":"分钟",children:pe.map(g=>s.jsx("option",{value:g,children:g},g))})]}),s.jsxs("div",{className:"mt-2.5 flex justify-end gap-2",children:[s.jsx(se,{onClick:()=>j(!1),size:"small",type:"transparent",outline:!0,style:{backgroundColor:"var(--datepicker-cancel-bg)",color:"var(--datepicker-cancel-fg)"},children:D.cancel}),s.jsx(se,{onClick:()=>j(!1),size:"small",style:{backgroundColor:"var(--datepicker-confirm-bg)",color:"var(--datepicker-confirm-fg)",borderColor:"var(--datepicker-confirm-bg)"},children:D.confirm})]})]})]})]})}Ze.propTypes={value:t.string,defaultValue:t.string,onChange:t.func,disabled:t.bool,time:t.bool,size:t.oneOf(["small","medium","large"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,i18nKey:t.string,localeText:t.object};const hs=["overlay","container","header","title","closeBtn","content","footer"],ke={title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"},ys={right:"right",left:"left",top:"top",bottom:"bottom"},vs={right:"right-0 top-0 h-full",left:"left-0 top-0 h-full",top:"top-0 left-0 w-full",bottom:"bottom-0 left-0 w-full"},Ss={right:"translateX(100%)",left:"translateX(-100%)",top:"translateY(-100%)",bottom:"translateY(100%)"},Ns=(e,o,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:o;function Ge(e){const{children:o,title:r,okText:n,cancelText:c,open:l=!1,onClose:a=()=>{},onOk:i,type:p="right",width:h,height:x,sx:u={},style:f={},className:S="",maskClosable:C=!0,footerButtons:T,localeText:F={},...P}=e,{t:y}=re(),v=Ns(p,"right",ys),[k,m]=d.useState(!1),[N,O]=d.useState(!1);d.useEffect(()=>{if(l){m(!0);const R=setTimeout(()=>O(!0),30);return()=>clearTimeout(R)}if(k){O(!1);const R=setTimeout(()=>m(!1),300);return()=>clearTimeout(R)}},[l]),d.useEffect(()=>{if(k){const R=parseInt(document.body.dataset.tangoScrollLock||"0",10);return R===0&&(document.body.dataset.tangoOriginalOverflow=document.body.style.overflow),document.body.dataset.tangoScrollLock=String(R+1),document.body.style.overflow="hidden",()=>{const J=parseInt(document.body.dataset.tangoScrollLock||"0",10);J<=1?(document.body.style.overflow=document.body.dataset.tangoOriginalOverflow||"",delete document.body.dataset.tangoOriginalOverflow,delete document.body.dataset.tangoScrollLock):document.body.dataset.tangoScrollLock=String(J-1)}}},[k]);const A={};v==="left"||v==="right"?A.width=h||"320px":A.height=x||"300px";const B={title:r??y("drawer.title",ke.title),okText:n??y("drawer.okText",ke.okText),cancelText:c??y("drawer.cancelText",ke.cancelText),closeAriaLabel:y("drawer.closeAriaLabel",ke.closeAriaLabel),...F},_=H(u,hs),j=b({baseClassName:"fixed inset-0 z-[999] flex",sxSlot:_.overlay}),w={tw:$(_.root.tw,_.container.tw),css:{..._.root.css,..._.container.css}},L=b({baseClassName:$("fixed bg-[var(--card)] text-[var(--foreground)] flex flex-col transition-all duration-300 ease-in-out",vs[v]),className:S,style:{...A,transform:N?"translate(0, 0)":Ss[v],...f},sxSlot:w}),W=b({baseClassName:"flex items-center justify-between px-5 pt-5 pb-3 shrink-0",sxSlot:_.header}),D=b({baseClassName:"text-lg font-bold text-[var(--foreground)]",sxSlot:_.title}),z=b({baseClassName:"cursor-pointer p-1 rounded-md hover:bg-[var(--muted)] transition-colors text-[var(--muted-foreground)]",sxSlot:_.closeBtn}),E=b({baseClassName:"flex-1 overflow-auto overscroll-contain px-5 py-2 text-[var(--foreground)]",sxSlot:_.content}),M=b({baseClassName:"flex justify-end gap-2 px-5 py-4 border-t border-[var(--border)] shrink-0",sxSlot:_.footer}),U=R=>{C&&R.target===R.currentTarget&&a()},K=s.jsx("svg",{viewBox:"0 0 1024 1024",width:"20",height:"20",fill:"currentColor","aria-hidden":"true",children:s.jsx("path",{d:"M512 466.944l233.472-233.472a31.744 31.744 0 0 1 45.056 45.056L557.056 512l233.472 233.472a31.744 31.744 0 0 1-45.056 45.056L512 557.056l-233.472 233.472a31.744 31.744 0 0 1-45.056-45.056L466.944 512 233.472 278.528a31.744 31.744 0 0 1 45.056-45.056z"})}),Z=T!=null&&T.length?T:[{key:"cancel",text:B.cancelText,onClick:a},{key:"ok",text:B.okText,onClick:i||a}];return k?s.jsx("div",{className:j.className,style:{...j.style,backgroundColor:"rgba(0, 0, 0, 0.5)",opacity:N?1:0,transition:"opacity 300ms ease-in-out"},onClick:U,role:"dialog","aria-modal":"true","aria-label":B.title,...P,children:s.jsxs("div",{className:L.className,style:L.style,children:[s.jsxs("div",{className:W.className,style:W.style,children:[s.jsx("h3",{className:D.className,style:D.style,children:B.title}),s.jsx("div",{className:z.className,style:z.style,onClick:a,role:"button",tabIndex:0,"aria-label":B.closeAriaLabel,onKeyDown:R=>{(R.key==="Enter"||R.key===" ")&&a()},children:K})]}),s.jsx("div",{className:E.className,style:E.style,children:o}),s.jsx("div",{className:M.className,style:M.style,children:Z.map(R=>{const J=R.key==="ok";return s.jsx(se,{onClick:R.onClick,type:"default",outline:!J,size:"medium",style:J?{backgroundColor:"var(--drawer-ok-bg)",color:"var(--drawer-ok-fg)",borderColor:"var(--drawer-ok-bg)"}:{backgroundColor:"var(--drawer-cancel-bg)",color:"var(--drawer-cancel-fg)"},children:R.text},R.key)})})]})}):null}Ge.propTypes={children:t.node,title:t.string,okText:t.string,cancelText:t.string,open:t.bool,onClose:t.func,onOk:t.func,type:t.oneOf(["top","bottom","left","right"]),width:t.oneOfType([t.string,t.number]),height:t.oneOfType([t.string,t.number]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,maskClosable:t.bool,footerButtons:t.arrayOf(t.shape({key:t.string.isRequired,text:t.string.isRequired,onClick:t.func.isRequired})),localeText:t.object};const ws=["root","text"],Tt={small:"my-0.5",medium:"my-1.5",large:"my-2.5",huge:"my-4"};function Cs(e,o){const{sx:r={},style:n={},className:c="",size:l="medium",children:a,...i}=e,p=H(r,ws),h=Tt[l]||Tt.medium,x=!!a,u=b({baseClassName:$("flex items-center justify-center relative w-full",h),className:c,sxSlot:p.root,baseStyle:{},style:n}),f=b({baseClassName:"px-2 whitespace-nowrap z-[1]",sxSlot:p.text});return s.jsxs("span",{ref:o,className:u.className,style:{...u.style,display:"flex",alignItems:"center",justifyContent:"center"},...i,children:[s.jsx("span",{className:`flex-1 h-px bg-[var(--line-color)] ${x?"mr-2.5":""}`}),x&&s.jsx("span",{className:f.className,style:f.style,children:a}),s.jsx("span",{className:`flex-1 h-px bg-[var(--line-color)] ${x?"ml-2.5":""}`})]})}const qe=d.forwardRef(Cs);qe.displayName="Line";qe.propTypes={size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};const Ts=["root"],kt={default:"bg-[var(--mark-default-bg)]",primary:"bg-[var(--mark-primary-bg)]",success:"bg-[var(--mark-success-bg)]",warning:"bg-[var(--mark-warning-bg)]",danger:"bg-[var(--mark-danger-bg)]"};function ks(e,o){const{sx:r={},style:n={},className:c="",color:l="default",beauty:a=!1,children:i,...p}=e,h=H(r,Ts),x=kt[l]||kt.default,u=b({baseClassName:$("inline-block",x,a?"px-2 py-1 rounded":""),className:c,sxSlot:h.root,baseStyle:{},style:n});return s.jsx("mark",{ref:o,className:u.className,style:u.style,...p,children:i})}const Xe=d.forwardRef(ks);Xe.displayName="Mark";Xe.propTypes={color:t.oneOf(["default","primary","success","warning","danger"]),beauty:t.bool,sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};const js=["overlay","container","header","title","closeBtn","content","footer"],je={title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"};function Je(e){const{children:o,title:r,okText:n,cancelText:c,open:l=!1,onClose:a=()=>{},onOk:i,width:p,sx:h={},style:x={},className:u="",maskClosable:f=!0,footerButtons:S,localeText:C={},...T}=e,{t:F}=re(),[P,y]=d.useState(!1),[v,k]=d.useState(!1);d.useEffect(()=>{if(l){y(!0);const M=setTimeout(()=>k(!0),30);return()=>clearTimeout(M)}if(P){k(!1);const M=setTimeout(()=>y(!1),300);return()=>clearTimeout(M)}},[l]),d.useEffect(()=>{if(P){const M=parseInt(document.body.dataset.tangoScrollLock||"0",10);return M===0&&(document.body.dataset.tangoOriginalOverflow=document.body.style.overflow),document.body.dataset.tangoScrollLock=String(M+1),document.body.style.overflow="hidden",()=>{const U=parseInt(document.body.dataset.tangoScrollLock||"0",10);U<=1?(document.body.style.overflow=document.body.dataset.tangoOriginalOverflow||"",delete document.body.dataset.tangoOriginalOverflow,delete document.body.dataset.tangoScrollLock):document.body.dataset.tangoScrollLock=String(U-1)}}},[P]);const m={title:r??F("modal.title",je.title),okText:n??F("modal.okText",je.okText),cancelText:c??F("modal.cancelText",je.cancelText),closeAriaLabel:F("modal.closeAriaLabel",je.closeAriaLabel),...C},N=H(h,js),O=b({baseClassName:"fixed inset-0 z-[999] flex justify-center items-center",sxSlot:N.overlay}),A={tw:$(N.root.tw,N.container.tw),css:{...N.root.css,...N.container.css}},B=b({baseClassName:"bg-[var(--modal-bg)] text-[var(--foreground)] flex flex-col rounded-[var(--radius)] shadow-[var(--modal-shadow)] transition-all duration-300 ease-in-out",className:u,style:{width:p||"520px",maxWidth:"90vw",minHeight:"200px",maxHeight:"80vh",transform:v?"scale(1)":"scale(0.8)",opacity:v?1:0,...x},sxSlot:A}),_=b({baseClassName:"flex items-center justify-between px-5 pt-5 pb-3 shrink-0",sxSlot:N.header}),j=b({baseClassName:"text-lg font-bold text-[var(--foreground)]",sxSlot:N.title}),w=b({baseClassName:"cursor-pointer p-1 rounded-md hover:bg-[var(--muted)] transition-colors text-[var(--muted-foreground)]",sxSlot:N.closeBtn}),L=b({baseClassName:"flex-1 overflow-auto overscroll-contain px-6 py-5 text-[var(--foreground)]",sxSlot:N.content}),W=b({baseClassName:"flex justify-end gap-2 px-5 py-4 border-t border-[var(--border)] shrink-0",sxSlot:N.footer}),D=M=>{f&&M.target===M.currentTarget&&a()},z=s.jsx("svg",{viewBox:"0 0 1024 1024",width:"20",height:"20",fill:"currentColor","aria-hidden":"true",children:s.jsx("path",{d:"M512 466.944l233.472-233.472a31.744 31.744 0 0 1 45.056 45.056L557.056 512l233.472 233.472a31.744 31.744 0 0 1-45.056 45.056L512 557.056l-233.472 233.472a31.744 31.744 0 0 1-45.056-45.056L466.944 512 233.472 278.528a31.744 31.744 0 0 1 45.056-45.056z"})}),E=S!=null&&S.length?S:[{key:"cancel",text:m.cancelText,onClick:a},{key:"ok",text:m.okText,onClick:i||a}];return P?s.jsx("div",{className:O.className,style:{...O.style,backgroundColor:"rgba(0, 0, 0, 0.5)",opacity:v?1:0,transition:"opacity 300ms ease-in-out"},onClick:D,role:"dialog","aria-modal":"true","aria-label":m.title,...T,children:s.jsxs("div",{className:B.className,style:B.style,children:[s.jsxs("div",{className:_.className,style:_.style,children:[s.jsx("h3",{className:j.className,style:j.style,children:m.title}),s.jsx("div",{className:w.className,style:w.style,onClick:a,role:"button",tabIndex:0,"aria-label":m.closeAriaLabel,onKeyDown:M=>{(M.key==="Enter"||M.key===" ")&&a()},children:z})]}),s.jsx("div",{className:L.className,style:L.style,children:o}),s.jsx("div",{className:W.className,style:W.style,children:E.map(M=>{const U=M.key==="ok";return s.jsx(se,{onClick:M.onClick,type:"default",outline:!U,size:"medium",style:U?{backgroundColor:"var(--modal-ok-bg)",color:"var(--modal-ok-fg)",borderColor:"var(--modal-ok-bg)"}:{backgroundColor:"var(--modal-cancel-bg)",color:"var(--modal-cancel-fg)"},children:M.text},M.key)})})]})}):null}Je.propTypes={children:t.node,title:t.string,okText:t.string,cancelText:t.string,open:t.bool,onClose:t.func,onOk:t.func,width:t.oneOfType([t.string,t.number]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,maskClosable:t.bool,footerButtons:t.arrayOf(t.shape({key:t.string.isRequired,text:t.string.isRequired,onClick:t.func.isRequired})),localeText:t.object};const Ls=["root","input","button"],Ps={small:"small",medium:"medium",large:"large",huge:"huge"},Os={small:"h-8 text-xs pl-2.5 pr-20",medium:"h-10 text-sm pl-3 pr-24",large:"h-12 text-base pl-3.5 pr-28",huge:"h-14 text-lg pl-4 pr-32"},_s={small:"small",medium:"small",large:"medium",huge:"medium"},jt={placeholder:"请输入内容",btnText:"搜索"},As=(e,o,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:o;function Qe(e){const{size:o="medium",sx:r={},style:n={},className:c="",onSearch:l,onChange:a,value:i,defaultValue:p,disabled:h=!1,placeholder:x,btnText:u,localeText:f,path:S="",...C}=e,{t:T}=re(),F=d.useRef(null),P=As(o,"medium",Ps),y=i!==void 0,v=T("search.placeholder",jt.placeholder),k=T("search.btnText",jt.btnText),m=x??(f==null?void 0:f.placeholder)??v,N=u??(f==null?void 0:f.btnText)??k,O=H(r,Ls),A={tw:$(O.root.tw,O.input.tw),css:{...O.root.css,...O.input.css}},B=$("relative inline-flex",O.root.tw),_=$("w-[300px] rounded-[var(--radius)] border bg-[var(--input-bg)] text-[var(--foreground)] outline-none transition-all duration-200 ease-in-out","border-[var(--border)] shadow-[var(--input-shadow)]","hover:border-[var(--input-accent)]","focus:border-[var(--input-accent)] focus:shadow-[var(--input-focus-shadow)]",h&&"bg-[var(--muted)] text-[var(--muted-foreground)] border-[var(--muted)] cursor-not-allowed shadow-none hover:border-[var(--muted)] focus:shadow-none",Os[P]),j=b({baseClassName:_,className:c,style:n,sxSlot:A}),w=b({baseClassName:"absolute top-1/2 -translate-y-1/2",sxSlot:O.button,style:{right:"calc(var(--spacing) * 2)"}}),L={right:w.style.right},W={...w.style};delete W.right;const D=d.useCallback(()=>{var M;return y?i:((M=F.current)==null?void 0:M.value)??""},[y,i]),z=d.useCallback(()=>{l==null||l(D())},[l,D]),E=d.useCallback(M=>{M.key==="Enter"&&z()},[z]);return s.jsxs("div",{className:B,children:[s.jsx("input",{ref:y?void 0:F,className:j.className,style:j.style,onKeyDown:E,onChange:a,value:y?i:void 0,defaultValue:y?void 0:p??"",disabled:h||void 0,placeholder:m,type:"text",role:"searchbox","aria-label":m,...C}),s.jsx("div",{className:w.className,style:L,children:s.jsx(se,{onClick:z,size:_s[P],disabled:h,"aria-label":N,style:W,children:S?s.jsx("img",{src:S,alt:"search-icon",style:{width:16,height:16,marginTop:2,marginBottom:-3}}):N})})]})}Qe.propTypes={size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,onSearch:t.func,onChange:t.func,value:t.string,defaultValue:t.string,disabled:t.bool,placeholder:t.string,btnText:t.string,localeText:t.shape({placeholder:t.string,btnText:t.string}),path:t.string};const Vt={default:"block",inline:"inline-block",flex:"flex",inlineFlex:"inline-flex",grid:"grid",circle:"block rounded-full",triangle:"block w-0 h-0 border-l-[var(--space-triangle-size)] border-r-[var(--space-triangle-size)] border-b-[calc(var(--space-triangle-size)*2)] border-l-transparent border-r-transparent border-b-[var(--space-triangle-color)]",halfCircle:"block rounded-t-full rounded-b-none",fixed:"block fixed",absolute:"block absolute",relative:"block relative"},Yt=Object.keys(Vt),Ms=["root"];function zs(e,o){const{sx:r={},style:n={},className:c="",type:l="default",children:a,...i}=e,p=Yt.includes(l)?l:"default",h=H(r,Ms),x=b({baseClassName:Vt[p],className:c,sxSlot:h.root}),u=p==="halfCircle"?{width:"var(--space-half-circle-w)",height:"var(--space-half-circle-h)",background:"var(--space-half-circle-color)"}:{};return s.jsx("div",{ref:o,className:x.className,style:{...u,...x.style,...n},...i,children:a})}const et=d.forwardRef(zs);et.propTypes={type:t.oneOf(Yt),sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};et.displayName="Space";const Es=["root","wrapper","thead","headerCell","body","row","cell","empty","pagination"],fe={empty:"暂无数据",prev:"上一页",next:"下一页",page:"页",total:"共 {total} 条",perPage:"条/页"},$s=10,Bs=[10,20,50,100],Le=(e,...o)=>typeof e=="function"?e(...o):e??{};function Kt(e){const{dataSource:o=[],columns:r=[],sx:n={},style:c={},className:l="",pagination:a=null,hide:i=[],rowClassName:p,rowStyle:h,cellClassName:x,cellStyle:u,hoverColor:f="",i18nKey:S=null,localeText:C={},"aria-label":T,...F}=e,{t:P}=re();o.length===0&&r.length===0&&console.warn("[Tango Table] dataSource 和 columns 不能同时为空,请至少提供一项。");const y={empty:P("table.empty",fe.empty),prev:P("table.prev",fe.prev),next:P("table.next",fe.next),page:P("table.page",fe.page),total:P("table.total",fe.total),perPage:P("table.perPage",fe.perPage),...C},v=Array.isArray(i)?i:typeof i=="string"?[i]:[],k=d.useMemo(()=>r.filter(X=>!X.hide&&!v.includes(X.dataIndex)),[r,v]),m=a!==null&&a!==!1,N=a&&a.placement||"bottom",O=a&&a.pageSize||$s,A=a&&a.pageSizeOptions||Bs,B=(a==null?void 0:a.showTotal)!==!1,_=(a==null?void 0:a.showSizeChanger)!==!1,[j,w]=d.useState(1),[L,W]=d.useState(O),D=o.length,z=Math.max(1,Math.ceil(D/L)),E=Math.min(j,z),M=d.useMemo(()=>{if(!m)return o;const X=(E-1)*L;return o.slice(X,X+L)},[o,E,L,m]),U=d.useCallback(X=>w(Math.max(1,Math.min(X,z))),[z]),K=H(n,Es),Z=b({baseClassName:$("w-full overflow-x-auto rounded-xl border border-[var(--border)]","shadow-[0_0_20px_color-mix(in_oklch,var(--foreground)_8%,transparent)]"),className:l,style:c,sxSlot:{tw:$(K.root.tw,K.wrapper.tw),css:{...K.root.css,...K.wrapper.css}}}),R=b({baseClassName:"bg-[var(--primary)] text-[var(--primary-foreground)] sticky top-0 z-10",sxSlot:K.thead}),J=b({baseClassName:"text-[var(--foreground)]",sxSlot:K.body}),le=b({baseClassName:"text-[var(--muted-foreground)] py-16 text-center",sxSlot:K.empty}),de=b({baseClassName:"flex items-center justify-between px-4 py-3 text-sm text-[var(--muted-foreground)] border-t border-[var(--border)]",sxSlot:K.pagination}),ue=f?s.jsx("style",{children:`
|
|
6
|
+
`}),a.jsxs("div",{className:B.className,style:B.style,...S,children:[a.jsx("input",{type:"color",value:k,onChange:O,disabled:c,className:`tango-cp-input ${_.className}`,style:_.style,"aria-label":S["aria-label"]||`颜色选择器: ${k}`}),l&&A.length>0&&a.jsx("div",{className:j.className,style:j.style,children:A.map(({label:L,value:W})=>a.jsxs("span",{children:[L,": ",W]},L))})]})]})}Ue.propTypes={value:t.string,defaultValue:t.string,onChange:t.func,disabled:t.bool,showText:t.oneOfType([t.bool,t.oneOf(["hex","rgb","hsl"])]),format:t.oneOf(["hex","rgb","hsl"]),size:t.oneOf(["small","medium","large"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,i18nKey:t.string,localeText:t.object};const ua=["root","date","weekday","time"],Nt={weekdayPrefix:"星期",weekdayShortPrefix:"周"},wt={default:"default",line:"line",full:"full","full-line":"full-line","year-week":"year-week","year-week-line":"year-week-line","week-time":"week-time","no-s":"no-s","no-s-line":"no-s-line"},ga=(e,o,s)=>Object.prototype.hasOwnProperty.call(s,e)?e:o,pa=(e,o)=>{const n=new Date().toLocaleDateString(e,{year:"numeric",month:"2-digit",day:"2-digit"});return o?n.replaceAll("/","-"):n},ma=(e,o)=>{let n=new Date().toLocaleString(e,{weekday:"long"});return o&&e.startsWith("zh")&&(n=n.replace("星期","周")),n},ye=(e,o)=>{const s=new Date,n={hour:"2-digit",minute:"2-digit"};return o&&(n.second="2-digit"),s.toLocaleTimeString(e,n)},ba=(e,o,s,n)=>{const c=e.endsWith("-line"),l=pa(o,c),r=ma(o,s);switch(e){case"line":return[{key:"date",text:l}];case"full":return[{key:"date",text:l+" "},{key:"weekday",text:r+" "},{key:"time",text:ye(o,!0)}];case"full-line":return[{key:"date",text:l+" "},{key:"weekday",text:r+" "},{key:"time",text:ye(o,!0)}];case"year-week":return[{key:"date",text:l+" "},{key:"weekday",text:r}];case"year-week-line":return[{key:"date",text:l+" "},{key:"weekday",text:r}];case"week-time":return[{key:"weekday",text:r+" "},{key:"time",text:ye(o,!0)}];case"no-s":return[{key:"date",text:l+" "},{key:"weekday",text:r+" "},{key:"time",text:ye(o,!1)}];case"no-s-line":return[{key:"date",text:l+" "},{key:"weekday",text:r+" "},{key:"time",text:ye(o,!1)}];default:return[{key:"date",text:l}]}};function He(e){const{type:o="default",single:s=!1,sx:n={},style:c={},className:l="",i18nKey:r,localeText:i={},...g}=e||{},{t:h,locale:b}=se(),[u,x]=d.useState(!1);d.useEffect(()=>{x(!0)},[]);const S=ga(o,"default",wt),C=b==="en-US"?"en-US":"zh-CN";({weekdayPrefix:h("date.weekdayPrefix",Nt.weekdayPrefix),weekdayShortPrefix:h("date.weekdayShortPrefix",Nt.weekdayShortPrefix),...i});const T=H(n,ua),F=r&&wt[r]?r:S,P=u?ba(F,C,s):[],y=m({baseClassName:$("inline-flex items-center gap-1 text-[var(--tango-foreground)]"),className:l,baseStyle:{},style:c,sxSlot:T.root}),v={date:m({baseClassName:"",sxSlot:T.date}),weekday:m({baseClassName:"text-[var(--tango-muted-foreground)]",sxSlot:T.weekday}),time:m({baseClassName:"",sxSlot:T.time})};return a.jsx("div",{className:y.className,style:y.style,role:"timer","aria-live":"polite",...g,children:P.map(k=>{const p=v[k.key]||{className:"",style:{}};return a.jsx("span",{className:p.className,style:p.style,children:k.text},k.key)})})}He.propTypes={type:t.oneOf(["default","line","full","full-line","year-week","year-week-line","week-time","no-s","no-s-line"]),single:t.bool,sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,i18nKey:t.string,localeText:t.object};const xa=["root","input","panel","header","body","footer"],ie={placeholder:"YYYY-MM-DD",placeholderTime:"YYYY-MM-DD HH:mm",timeLabel:"时间",confirm:"确定",cancel:"关闭",prevMonth:"上一月",nextMonth:"下一月",weekDays:["日","一","二","三","四","五","六"],monthFormat:"${year} 年 ${month} 月"},Ct={small:{inputPx:"px-2 py-1",textSm:"text-xs",minW:"min-w-[140px]",panelW:"w-[260px]"},medium:{inputPx:"px-3 py-2",textSm:"text-sm",minW:"min-w-[180px]",panelW:"w-[300px]"},large:{inputPx:"px-4 py-3",textSm:"text-base",minW:"min-w-[220px]",panelW:"w-[340px]"}},fa=(e,o,s)=>Object.prototype.hasOwnProperty.call(s,e)?e:o;function Ze(e){const{value:o,defaultValue:s,onChange:n=()=>{},disabled:c=!1,time:l=!1,size:r="medium",sx:i={},style:g={},className:h="",i18nKey:b,localeText:u={},placeholder:x,...S}=e,{t:C,locale:T}=se(),F=fa(r,"medium",Ct),P=Ct[F],y=T==="en-US",[v,k]=d.useState(s||""),p=o!==void 0?o:v,[N,O]=d.useState("00"),[A,B]=d.useState("00"),[_,j]=d.useState(!1),[w,L]=d.useState(()=>{const f=new Date;return new Date(f.getFullYear(),f.getMonth(),1)}),W=d.useRef(null),D={placeholder:C("datepicker.placeholder",ie.placeholder),placeholderTime:C("datepicker.placeholderTime",ie.placeholderTime),timeLabel:C("datepicker.timeLabel",ie.timeLabel),confirm:C("datepicker.confirm",ie.confirm),cancel:C("datepicker.cancel",ie.cancel),prevMonth:C("datepicker.prevMonth",ie.prevMonth),nextMonth:C("datepicker.nextMonth",ie.nextMonth),weekDays:y?["Su","Mo","Tu","We","Th","Fr","Sa"]:ie.weekDays,monthFormat:y?"${month}/${year}":ie.monthFormat,...u};d.useEffect(()=>{const f=V=>{W.current&&!W.current.contains(V.target)&&j(!1)};return document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[]);const z=f=>{const V=f.getFullYear(),Q=(f.getMonth()+1).toString().padStart(2,"0"),ne=f.getDate().toString().padStart(2,"0");return`${V}-${Q}-${ne}`},E=d.useMemo(()=>{const f=w.getFullYear(),V=w.getMonth()+1;return D.monthFormat.replace("${year}",String(f)).replace("${month}",String(V))},[w,D.monthFormat]),M=d.useMemo(()=>{const f=w.getFullYear(),V=w.getMonth(),Q=new Date(f,V,1).getDay(),ne=new Date(f,V+1,0).getDate(),ce=Array.from({length:ne},(tt,Ie)=>Ie+1);return[...Array(Q).fill(null),...ce]},[w]),U=d.useMemo(()=>p?l?`${p} ${N}:${A}`:p:"",[p,N,A,l]),K=f=>{const V=new Date(w.getFullYear(),w.getMonth(),f);return p===z(V)},Z=(f,V,Q)=>{if(f){if(l){const ne=`${f}T${V}:${Q}`,ce=new Date(ne),tt=ce.getFullYear(),Ie=(ce.getMonth()+1).toString().padStart(2,"0"),Wt=ce.getDate().toString().padStart(2,"0"),Ut=ce.getHours().toString().padStart(2,"0"),Ht=ce.getMinutes().toString().padStart(2,"0");n(`${tt}-${Ie}-${Wt} ${Ut}:${Ht}`,ne);return}n(f,f)}},R=f=>{const V=new Date(w.getFullYear(),w.getMonth(),f),Q=z(V);o===void 0&&k(Q),Z(Q,N,A),l||j(!1)},J=f=>{const V=f.target.value;O(V),Z(p,V,A)},le=f=>{const V=f.target.value;B(V),Z(p,N,V)},de=()=>{if(!c){if(p){const[f,V]=p.split("-").map(Number);L(new Date(f,V-1,1))}j(!0)}},ue=Array.from({length:24},(f,V)=>String(V).padStart(2,"0")),ge=Array.from({length:60},(f,V)=>String(V).padStart(2,"0")),G=H(i,xa);typeof i=="string"&&(G.input.tw=$(G.input.tw,G.root.tw),G.root.tw="");const X=m({baseClassName:"relative inline-block",sxSlot:G.root}),I=m({baseClassName:$("border border-[var(--tango-border)] rounded-[var(--tango-radius)] bg-[var(--tango-card)] text-[var(--tango-foreground)] placeholder:text-[var(--tango-muted-foreground)] outline-none transition-all duration-200 cursor-pointer","focus:border-[var(--tango-primary)] focus:shadow-[0_0_0_2px_color-mix(in_srgb,var(--tango-primary)_18%,transparent)]","hover:border-[var(--tango-primary)]",P.inputPx,P.textSm,P.minW,c&&"bg-[var(--tango-muted)] text-[var(--tango-muted-foreground)] cursor-not-allowed"),className:h,style:g,sxSlot:G.input}),q=m({baseClassName:$("absolute top-[calc(100%+8px)] left-0 z-20 p-3 border border-[var(--tango-border)] bg-[var(--tango-card)] rounded-xl shadow-[0_8px_28px_rgba(0,0,0,0.12)]",P.panelW),sxSlot:G.panel}),re=m({baseClassName:"flex items-center justify-between h-10 mb-2",sxSlot:G.header}),ee=m({baseClassName:"flex flex-wrap",sxSlot:G.body}),oe=m({baseClassName:"mt-2.5 pt-2.5 border-t border-[var(--tango-border)]",sxSlot:G.footer});return a.jsxs("div",{className:X.className,style:X.style,ref:W,...S,children:[a.jsx("input",{type:"text",value:U,readOnly:!0,onClick:de,className:I.className,style:I.style,disabled:c,placeholder:x||(l?D.placeholderTime:D.placeholder),"aria-label":S["aria-label"]||x||(l?D.placeholderTime:D.placeholder),"aria-haspopup":"dialog","aria-expanded":_}),_&&!c&&a.jsxs("div",{className:q.className,style:q.style,role:"dialog","aria-label":"日期选择面板",children:[a.jsxs("div",{className:re.className,style:re.style,children:[a.jsx("button",{type:"button",className:"w-7 h-7 border border-[var(--tango-border)] bg-[var(--tango-card)] text-sm cursor-pointer rounded hover:border-[var(--tango-primary)] hover:bg-[color-mix(in_srgb,var(--tango-primary)_14%,var(--tango-card))]",onClick:()=>L(new Date(w.getFullYear(),w.getMonth()-1,1)),"aria-label":D.prevMonth,children:"<"}),a.jsx("div",{className:"text-sm font-semibold text-[var(--tango-foreground)]",children:E}),a.jsx("button",{type:"button",className:"w-7 h-7 border border-[var(--tango-border)] bg-[var(--tango-card)] text-sm cursor-pointer rounded hover:border-[var(--tango-primary)] hover:bg-[color-mix(in_srgb,var(--tango-primary)_14%,var(--tango-card))]",onClick:()=>L(new Date(w.getFullYear(),w.getMonth()+1,1)),"aria-label":D.nextMonth,children:">"})]}),a.jsxs("div",{className:ee.className,style:ee.style,children:[D.weekDays.map(f=>a.jsx("div",{className:"w-[calc(100%/7)] text-center leading-[30px] text-xs text-[var(--tango-muted-foreground)]",children:f},f)),M.map((f,V)=>{if(!f)return a.jsx("div",{className:"w-[calc(100%/7)] text-center leading-[30px]"},`empty-${V}`);const Q=K(f);return a.jsx("button",{type:"button",className:$("w-[calc(100%/7)] text-center leading-[30px] border-none bg-transparent cursor-pointer rounded-md text-[13px] text-[var(--tango-foreground)] hover:bg-[var(--tango-muted)]",Q&&"bg-[var(--tango-primary)] text-[var(--tango-primary-foreground)] hover:bg-[var(--tango-primary)]"),onClick:()=>R(f),"aria-label":`${w.getFullYear()}-${(w.getMonth()+1).toString().padStart(2,"0")}-${f.toString().padStart(2,"0")}`,children:f},`${w.getFullYear()}-${w.getMonth()}-${f}`)})]}),l&&a.jsxs("div",{className:oe.className,style:oe.style,children:[a.jsx("div",{className:"text-xs text-[var(--tango-muted-foreground)] mb-2",children:D.timeLabel}),a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx("select",{className:"w-20 h-8 border border-[var(--tango-border)] rounded-md px-2 text-[13px] outline-none bg-[var(--tango-card)] text-[var(--tango-foreground)] focus:border-[var(--tango-primary)]",value:N,onChange:J,"aria-label":"小时",children:ue.map(f=>a.jsx("option",{value:f,children:f},f))}),a.jsx("span",{className:"font-semibold text-[var(--tango-muted-foreground)]",children:":"}),a.jsx("select",{className:"w-20 h-8 border border-[var(--tango-border)] rounded-md px-2 text-[13px] outline-none bg-[var(--tango-card)] text-[var(--tango-foreground)] focus:border-[var(--tango-primary)]",value:A,onChange:le,"aria-label":"分钟",children:ge.map(f=>a.jsx("option",{value:f,children:f},f))})]}),a.jsxs("div",{className:"mt-2.5 flex justify-end gap-2",children:[a.jsx(ae,{onClick:()=>j(!1),size:"small",type:"transparent",outline:!0,style:{backgroundColor:"var(--tango-datepicker-cancel-bg)",color:"var(--tango-datepicker-cancel-fg)"},children:D.cancel}),a.jsx(ae,{onClick:()=>j(!1),size:"small",style:{backgroundColor:"var(--tango-datepicker-confirm-bg)",color:"var(--tango-datepicker-confirm-fg)",borderColor:"var(--tango-datepicker-confirm-bg)"},children:D.confirm})]})]})]})]})}Ze.propTypes={value:t.string,defaultValue:t.string,onChange:t.func,disabled:t.bool,time:t.bool,size:t.oneOf(["small","medium","large"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,i18nKey:t.string,localeText:t.object};const ha=["overlay","container","header","title","closeBtn","content","footer"],ke={title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"},ya={right:"right",left:"left",top:"top",bottom:"bottom"},va={right:"right-0 top-0 h-full",left:"left-0 top-0 h-full",top:"top-0 left-0 w-full",bottom:"bottom-0 left-0 w-full"},Sa={right:"translateX(100%)",left:"translateX(-100%)",top:"translateY(-100%)",bottom:"translateY(100%)"},Na=(e,o,s)=>Object.prototype.hasOwnProperty.call(s,e)?e:o;function Ge(e){const{children:o,title:s,okText:n,cancelText:c,open:l=!1,onClose:r=()=>{},onOk:i,type:g="right",width:h,height:b,sx:u={},style:x={},className:S="",maskClosable:C=!0,footerButtons:T,localeText:F={},...P}=e,{t:y}=se(),v=Na(g,"right",ya),[k,p]=d.useState(!1),[N,O]=d.useState(!1);d.useEffect(()=>{if(l){p(!0);const R=setTimeout(()=>O(!0),30);return()=>clearTimeout(R)}if(k){O(!1);const R=setTimeout(()=>p(!1),300);return()=>clearTimeout(R)}},[l]),d.useEffect(()=>{if(k){const R=parseInt(document.body.dataset.tangoScrollLock||"0",10);return R===0&&(document.body.dataset.tangoOriginalOverflow=document.body.style.overflow),document.body.dataset.tangoScrollLock=String(R+1),document.body.style.overflow="hidden",()=>{const J=parseInt(document.body.dataset.tangoScrollLock||"0",10);J<=1?(document.body.style.overflow=document.body.dataset.tangoOriginalOverflow||"",delete document.body.dataset.tangoOriginalOverflow,delete document.body.dataset.tangoScrollLock):document.body.dataset.tangoScrollLock=String(J-1)}}},[k]);const A={};v==="left"||v==="right"?A.width=h||"320px":A.height=b||"300px";const B={title:s??y("drawer.title",ke.title),okText:n??y("drawer.okText",ke.okText),cancelText:c??y("drawer.cancelText",ke.cancelText),closeAriaLabel:y("drawer.closeAriaLabel",ke.closeAriaLabel),...F},_=H(u,ha),j=m({baseClassName:"fixed inset-0 z-[999] flex",sxSlot:_.overlay}),w={tw:$(_.root.tw,_.container.tw),css:{..._.root.css,..._.container.css}},L=m({baseClassName:$("fixed bg-[var(--tango-card)] text-[var(--tango-foreground)] flex flex-col transition-all duration-300 ease-in-out",va[v]),className:S,style:{...A,transform:N?"translate(0, 0)":Sa[v],...x},sxSlot:w}),W=m({baseClassName:"flex items-center justify-between px-5 pt-5 pb-3 shrink-0",sxSlot:_.header}),D=m({baseClassName:"text-lg font-bold text-[var(--tango-foreground)]",sxSlot:_.title}),z=m({baseClassName:"cursor-pointer p-1 rounded-md hover:bg-[var(--tango-muted)] transition-colors text-[var(--tango-muted-foreground)]",sxSlot:_.closeBtn}),E=m({baseClassName:"flex-1 overflow-auto overscroll-contain px-5 py-2 text-[var(--tango-foreground)]",sxSlot:_.content}),M=m({baseClassName:"flex justify-end gap-2 px-5 py-4 border-t border-[var(--tango-border)] shrink-0",sxSlot:_.footer}),U=R=>{C&&R.target===R.currentTarget&&r()},K=a.jsx("svg",{viewBox:"0 0 1024 1024",width:"20",height:"20",fill:"currentColor","aria-hidden":"true",children:a.jsx("path",{d:"M512 466.944l233.472-233.472a31.744 31.744 0 0 1 45.056 45.056L557.056 512l233.472 233.472a31.744 31.744 0 0 1-45.056 45.056L512 557.056l-233.472 233.472a31.744 31.744 0 0 1-45.056-45.056L466.944 512 233.472 278.528a31.744 31.744 0 0 1 45.056-45.056z"})}),Z=T!=null&&T.length?T:[{key:"cancel",text:B.cancelText,onClick:r},{key:"ok",text:B.okText,onClick:i||r}];return k?a.jsx("div",{className:j.className,style:{...j.style,backgroundColor:"rgba(0, 0, 0, 0.5)",opacity:N?1:0,transition:"opacity 300ms ease-in-out"},onClick:U,role:"dialog","aria-modal":"true","aria-label":B.title,...P,children:a.jsxs("div",{className:L.className,style:L.style,children:[a.jsxs("div",{className:W.className,style:W.style,children:[a.jsx("h3",{className:D.className,style:D.style,children:B.title}),a.jsx("div",{className:z.className,style:z.style,onClick:r,role:"button",tabIndex:0,"aria-label":B.closeAriaLabel,onKeyDown:R=>{(R.key==="Enter"||R.key===" ")&&r()},children:K})]}),a.jsx("div",{className:E.className,style:E.style,children:o}),a.jsx("div",{className:M.className,style:M.style,children:Z.map(R=>{const J=R.key==="ok";return a.jsx(ae,{onClick:R.onClick,type:"default",outline:!J,size:"medium",style:J?{backgroundColor:"var(--tango-drawer-ok-bg)",color:"var(--tango-drawer-ok-fg)",borderColor:"var(--tango-drawer-ok-bg)"}:{backgroundColor:"var(--tango-drawer-cancel-bg)",color:"var(--tango-drawer-cancel-fg)"},children:R.text},R.key)})})]})}):null}Ge.propTypes={children:t.node,title:t.string,okText:t.string,cancelText:t.string,open:t.bool,onClose:t.func,onOk:t.func,type:t.oneOf(["top","bottom","left","right"]),width:t.oneOfType([t.string,t.number]),height:t.oneOfType([t.string,t.number]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,maskClosable:t.bool,footerButtons:t.arrayOf(t.shape({key:t.string.isRequired,text:t.string.isRequired,onClick:t.func.isRequired})),localeText:t.object};const wa=["root","text"],Tt={small:"my-0.5",medium:"my-1.5",large:"my-2.5",huge:"my-4"};function Ca(e,o){const{sx:s={},style:n={},className:c="",size:l="medium",children:r,...i}=e,g=H(s,wa),h=Tt[l]||Tt.medium,b=!!r,u=m({baseClassName:$("flex items-center justify-center relative w-full",h),className:c,sxSlot:g.root,baseStyle:{},style:n}),x=m({baseClassName:"px-2 whitespace-nowrap z-[1]",sxSlot:g.text});return a.jsxs("span",{ref:o,className:u.className,style:{...u.style,display:"flex",alignItems:"center",justifyContent:"center"},...i,children:[a.jsx("span",{className:`flex-1 h-px bg-[var(--tango-line-color)] ${b?"mr-2.5":""}`}),b&&a.jsx("span",{className:x.className,style:x.style,children:r}),a.jsx("span",{className:`flex-1 h-px bg-[var(--tango-line-color)] ${b?"ml-2.5":""}`})]})}const qe=d.forwardRef(Ca);qe.displayName="Line";qe.propTypes={size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};const Ta=["root"],kt={default:"bg-[var(--tango-mark-default-bg)]",primary:"bg-[var(--tango-mark-primary-bg)]",success:"bg-[var(--tango-mark-success-bg)]",warning:"bg-[var(--tango-mark-warning-bg)]",danger:"bg-[var(--tango-mark-danger-bg)]"};function ka(e,o){const{sx:s={},style:n={},className:c="",color:l="default",beauty:r=!1,children:i,...g}=e,h=H(s,Ta),b=kt[l]||kt.default,u=m({baseClassName:$("inline-block",b,r?"px-2 py-1 rounded":""),className:c,sxSlot:h.root,baseStyle:{},style:n});return a.jsx("mark",{ref:o,className:u.className,style:u.style,...g,children:i})}const Xe=d.forwardRef(ka);Xe.displayName="Mark";Xe.propTypes={color:t.oneOf(["default","primary","success","warning","danger"]),beauty:t.bool,sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};const ja=["overlay","container","header","title","closeBtn","content","footer"],je={title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"};function Je(e){const{children:o,title:s,okText:n,cancelText:c,open:l=!1,onClose:r=()=>{},onOk:i,width:g,sx:h={},style:b={},className:u="",maskClosable:x=!0,footerButtons:S,localeText:C={},...T}=e,{t:F}=se(),[P,y]=d.useState(!1),[v,k]=d.useState(!1);d.useEffect(()=>{if(l){y(!0);const M=setTimeout(()=>k(!0),30);return()=>clearTimeout(M)}if(P){k(!1);const M=setTimeout(()=>y(!1),300);return()=>clearTimeout(M)}},[l]),d.useEffect(()=>{if(P){const M=parseInt(document.body.dataset.tangoScrollLock||"0",10);return M===0&&(document.body.dataset.tangoOriginalOverflow=document.body.style.overflow),document.body.dataset.tangoScrollLock=String(M+1),document.body.style.overflow="hidden",()=>{const U=parseInt(document.body.dataset.tangoScrollLock||"0",10);U<=1?(document.body.style.overflow=document.body.dataset.tangoOriginalOverflow||"",delete document.body.dataset.tangoOriginalOverflow,delete document.body.dataset.tangoScrollLock):document.body.dataset.tangoScrollLock=String(U-1)}}},[P]);const p={title:s??F("modal.title",je.title),okText:n??F("modal.okText",je.okText),cancelText:c??F("modal.cancelText",je.cancelText),closeAriaLabel:F("modal.closeAriaLabel",je.closeAriaLabel),...C},N=H(h,ja),O=m({baseClassName:"fixed inset-0 z-[999] flex justify-center items-center",sxSlot:N.overlay}),A={tw:$(N.root.tw,N.container.tw),css:{...N.root.css,...N.container.css}},B=m({baseClassName:"bg-[var(--tango-modal-bg)] text-[var(--tango-foreground)] flex flex-col rounded-[var(--tango-radius)] shadow-[var(--tango-modal-shadow)] transition-all duration-300 ease-in-out",className:u,style:{width:g||"520px",maxWidth:"90vw",minHeight:"200px",maxHeight:"80vh",transform:v?"scale(1)":"scale(0.8)",opacity:v?1:0,...b},sxSlot:A}),_=m({baseClassName:"flex items-center justify-between px-5 pt-5 pb-3 shrink-0",sxSlot:N.header}),j=m({baseClassName:"text-lg font-bold text-[var(--tango-foreground)]",sxSlot:N.title}),w=m({baseClassName:"cursor-pointer p-1 rounded-md hover:bg-[var(--tango-muted)] transition-colors text-[var(--tango-muted-foreground)]",sxSlot:N.closeBtn}),L=m({baseClassName:"flex-1 overflow-auto overscroll-contain px-6 py-5 text-[var(--tango-foreground)]",sxSlot:N.content}),W=m({baseClassName:"flex justify-end gap-2 px-5 py-4 border-t border-[var(--tango-border)] shrink-0",sxSlot:N.footer}),D=M=>{x&&M.target===M.currentTarget&&r()},z=a.jsx("svg",{viewBox:"0 0 1024 1024",width:"20",height:"20",fill:"currentColor","aria-hidden":"true",children:a.jsx("path",{d:"M512 466.944l233.472-233.472a31.744 31.744 0 0 1 45.056 45.056L557.056 512l233.472 233.472a31.744 31.744 0 0 1-45.056 45.056L512 557.056l-233.472 233.472a31.744 31.744 0 0 1-45.056-45.056L466.944 512 233.472 278.528a31.744 31.744 0 0 1 45.056-45.056z"})}),E=S!=null&&S.length?S:[{key:"cancel",text:p.cancelText,onClick:r},{key:"ok",text:p.okText,onClick:i||r}];return P?a.jsx("div",{className:O.className,style:{...O.style,backgroundColor:"rgba(0, 0, 0, 0.5)",opacity:v?1:0,transition:"opacity 300ms ease-in-out"},onClick:D,role:"dialog","aria-modal":"true","aria-label":p.title,...T,children:a.jsxs("div",{className:B.className,style:B.style,children:[a.jsxs("div",{className:_.className,style:_.style,children:[a.jsx("h3",{className:j.className,style:j.style,children:p.title}),a.jsx("div",{className:w.className,style:w.style,onClick:r,role:"button",tabIndex:0,"aria-label":p.closeAriaLabel,onKeyDown:M=>{(M.key==="Enter"||M.key===" ")&&r()},children:z})]}),a.jsx("div",{className:L.className,style:L.style,children:o}),a.jsx("div",{className:W.className,style:W.style,children:E.map(M=>{const U=M.key==="ok";return a.jsx(ae,{onClick:M.onClick,type:"default",outline:!U,size:"medium",style:U?{backgroundColor:"var(--tango-modal-ok-bg)",color:"var(--tango-modal-ok-fg)",borderColor:"var(--tango-modal-ok-bg)"}:{backgroundColor:"var(--tango-modal-cancel-bg)",color:"var(--tango-modal-cancel-fg)"},children:M.text},M.key)})})]})}):null}Je.propTypes={children:t.node,title:t.string,okText:t.string,cancelText:t.string,open:t.bool,onClose:t.func,onOk:t.func,width:t.oneOfType([t.string,t.number]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,maskClosable:t.bool,footerButtons:t.arrayOf(t.shape({key:t.string.isRequired,text:t.string.isRequired,onClick:t.func.isRequired})),localeText:t.object};const La=["root","input","button"],Pa={small:"small",medium:"medium",large:"large",huge:"huge"},Oa={small:"h-8 text-xs pl-2.5 pr-20",medium:"h-10 text-sm pl-3 pr-24",large:"h-12 text-base pl-3.5 pr-28",huge:"h-14 text-lg pl-4 pr-32"},_a={small:"small",medium:"small",large:"medium",huge:"medium"},jt={placeholder:"请输入内容",btnText:"搜索"},Aa=(e,o,s)=>Object.prototype.hasOwnProperty.call(s,e)?e:o;function Qe(e){const{size:o="medium",sx:s={},style:n={},className:c="",onSearch:l,onChange:r,value:i,defaultValue:g,disabled:h=!1,placeholder:b,btnText:u,localeText:x,path:S="",...C}=e,{t:T}=se(),F=d.useRef(null),P=Aa(o,"medium",Pa),y=i!==void 0,v=T("search.placeholder",jt.placeholder),k=T("search.btnText",jt.btnText),p=b??(x==null?void 0:x.placeholder)??v,N=u??(x==null?void 0:x.btnText)??k,O=H(s,La),A={tw:$(O.root.tw,O.input.tw),css:{...O.root.css,...O.input.css}},B=$("relative inline-flex",O.root.tw),_=$("w-[300px] rounded-[var(--tango-radius)] border bg-[var(--tango-input-bg)] text-[var(--tango-foreground)] outline-none transition-all duration-200 ease-in-out","border-[var(--tango-border)] shadow-[var(--tango-input-shadow)]","hover:border-[var(--tango-input-accent)]","focus:border-[var(--tango-input-accent)] focus:shadow-[var(--tango-input-focus-shadow)]",h&&"bg-[var(--tango-muted)] text-[var(--tango-muted-foreground)] border-[var(--tango-muted)] cursor-not-allowed shadow-none hover:border-[var(--tango-muted)] focus:shadow-none",Oa[P]),j=m({baseClassName:_,className:c,style:n,sxSlot:A}),w=m({baseClassName:"absolute top-1/2 -translate-y-1/2",sxSlot:O.button,style:{right:"calc(var(--spacing) * 2)"}}),L={right:w.style.right},W={...w.style};delete W.right;const D=d.useCallback(()=>{var M;return y?i:((M=F.current)==null?void 0:M.value)??""},[y,i]),z=d.useCallback(()=>{l==null||l(D())},[l,D]),E=d.useCallback(M=>{M.key==="Enter"&&z()},[z]);return a.jsxs("div",{className:B,children:[a.jsx("input",{ref:y?void 0:F,className:j.className,style:j.style,onKeyDown:E,onChange:r,value:y?i:void 0,defaultValue:y?void 0:g??"",disabled:h||void 0,placeholder:p,type:"text",role:"searchbox","aria-label":p,...C}),a.jsx("div",{className:w.className,style:L,children:a.jsx(ae,{onClick:z,size:_a[P],disabled:h,"aria-label":N,style:W,children:S?a.jsx("img",{src:S,alt:"search-icon",style:{width:16,height:16,marginTop:2,marginBottom:-3}}):N})})]})}Qe.propTypes={size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,onSearch:t.func,onChange:t.func,value:t.string,defaultValue:t.string,disabled:t.bool,placeholder:t.string,btnText:t.string,localeText:t.shape({placeholder:t.string,btnText:t.string}),path:t.string};const Vt={default:"block",inline:"inline-block",flex:"flex",inlineFlex:"inline-flex",grid:"grid",circle:"block rounded-full",triangle:"block w-0 h-0 border-l-[var(--tango-space-triangle-size)] border-r-[var(--tango-space-triangle-size)] border-b-[calc(var(--tango-space-triangle-size)*2)] border-l-transparent border-r-transparent border-b-[var(--tango-space-triangle-color)]",halfCircle:"block rounded-t-full rounded-b-none",fixed:"block fixed",absolute:"block absolute",relative:"block relative"},Yt=Object.keys(Vt),Ma=["root"];function za(e,o){const{sx:s={},style:n={},className:c="",type:l="default",children:r,...i}=e,g=Yt.includes(l)?l:"default",h=H(s,Ma),b=m({baseClassName:Vt[g],className:c,sxSlot:h.root}),u=g==="halfCircle"?{width:"var(--tango-space-half-circle-w)",height:"var(--tango-space-half-circle-h)",background:"var(--tango-space-half-circle-color)"}:{};return a.jsx("div",{ref:o,className:b.className,style:{...u,...b.style,...n},...i,children:r})}const et=d.forwardRef(za);et.propTypes={type:t.oneOf(Yt),sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};et.displayName="Space";const Ea=["root","wrapper","thead","headerCell","body","row","cell","empty","pagination"],xe={empty:"暂无数据",prev:"上一页",next:"下一页",page:"页",total:"共 {total} 条",perPage:"条/页"},$a=10,Ba=[10,20,50,100],Le=(e,...o)=>typeof e=="function"?e(...o):e??{};function Kt(e){const{dataSource:o=[],columns:s=[],sx:n={},style:c={},className:l="",pagination:r=null,hide:i=[],rowClassName:g,rowStyle:h,cellClassName:b,cellStyle:u,hoverColor:x="",i18nKey:S=null,localeText:C={},"aria-label":T,...F}=e,{t:P}=se();o.length===0&&s.length===0&&console.warn("[Tango Table] dataSource 和 columns 不能同时为空,请至少提供一项。");const y={empty:P("table.empty",xe.empty),prev:P("table.prev",xe.prev),next:P("table.next",xe.next),page:P("table.page",xe.page),total:P("table.total",xe.total),perPage:P("table.perPage",xe.perPage),...C},v=Array.isArray(i)?i:typeof i=="string"?[i]:[],k=d.useMemo(()=>s.filter(X=>!X.hide&&!v.includes(X.dataIndex)),[s,v]),p=r!==null&&r!==!1,N=r&&r.placement||"bottom",O=r&&r.pageSize||$a,A=r&&r.pageSizeOptions||Ba,B=(r==null?void 0:r.showTotal)!==!1,_=(r==null?void 0:r.showSizeChanger)!==!1,[j,w]=d.useState(1),[L,W]=d.useState(O),D=o.length,z=Math.max(1,Math.ceil(D/L)),E=Math.min(j,z),M=d.useMemo(()=>{if(!p)return o;const X=(E-1)*L;return o.slice(X,X+L)},[o,E,L,p]),U=d.useCallback(X=>w(Math.max(1,Math.min(X,z))),[z]),K=H(n,Ea),Z=m({baseClassName:$("w-full overflow-x-auto rounded-xl border border-[var(--tango-border)]","shadow-[0_0_20px_color-mix(in_oklch,var(--tango-foreground)_8%,transparent)]"),className:l,style:c,sxSlot:{tw:$(K.root.tw,K.wrapper.tw),css:{...K.root.css,...K.wrapper.css}}}),R=m({baseClassName:"bg-[var(--tango-primary)] text-[var(--tango-primary-foreground)] sticky top-0 z-10",sxSlot:K.thead}),J=m({baseClassName:"text-[var(--tango-foreground)]",sxSlot:K.body}),le=m({baseClassName:"text-[var(--tango-muted-foreground)] py-16 text-center",sxSlot:K.empty}),de=m({baseClassName:"flex items-center justify-between px-4 py-3 text-sm text-[var(--tango-muted-foreground)] border-t border-[var(--tango-border)]",sxSlot:K.pagination}),ue=x?a.jsx("style",{children:`
|
|
7
7
|
[data-tango-table-body] tr:hover {
|
|
8
|
-
background-color: ${
|
|
8
|
+
background-color: ${x} !important;
|
|
9
9
|
transform: translateY(-1px);
|
|
10
|
-
box-shadow: 0 2px 8px color-mix(in oklch, var(--foreground) 5%, transparent);
|
|
10
|
+
box-shadow: 0 2px 8px color-mix(in oklch, var(--tango-foreground) 5%, transparent);
|
|
11
11
|
}
|
|
12
|
-
`}):null,
|
|
12
|
+
`}):null,ge=()=>{if(!p)return null;const X=Array.from({length:z},(I,q)=>q+1);return a.jsxs("div",{className:de.className,style:de.style,children:[a.jsxs("div",{className:"flex items-center gap-3",children:[B&&a.jsx("span",{children:y.total.replace("{total}",String(D))}),_&&a.jsx("select",{value:L,onChange:I=>{W(Number(I.target.value)),w(1)},className:"rounded border border-[var(--tango-border)] bg-[var(--tango-background)] px-2 py-1 text-sm cursor-pointer","aria-label":y.perPage,children:A.map(I=>a.jsxs("option",{value:I,children:[I," ",y.perPage]},I))})]}),a.jsxs("div",{className:"flex items-center gap-1",children:[a.jsx("button",{type:"button",onClick:()=>U(E-1),disabled:E<=1,className:"px-2 py-1 rounded border border-[var(--tango-border)] text-xs disabled:opacity-40 disabled:cursor-not-allowed hover:bg-[var(--tango-accent)] transition-colors","aria-label":y.prev,children:y.prev}),X.length<=7?X.map(I=>a.jsx("button",{type:"button",onClick:()=>U(I),className:`min-w-[28px] px-2 py-1 rounded text-xs transition-colors ${I===E?"bg-[var(--tango-primary)] text-[var(--tango-primary-foreground)] font-medium":"border border-[var(--tango-border)] hover:bg-[var(--tango-accent)]"}`,children:I},I)):a.jsxs(a.Fragment,{children:[a.jsx("button",{type:"button",onClick:()=>U(1),className:`min-w-[28px] px-2 py-1 rounded text-xs ${E===1?"bg-[var(--tango-primary)] text-[var(--tango-primary-foreground)] font-medium":"border border-[var(--tango-border)] hover:bg-[var(--tango-accent)]"} transition-colors`,children:"1"}),E>3&&a.jsx("span",{className:"px-1 text-xs",children:"…"}),Array.from({length:z},(I,q)=>q+1).filter(I=>I>1&&I<z&&Math.abs(I-E)<=1).map(I=>a.jsx("button",{type:"button",onClick:()=>U(I),className:`min-w-[28px] px-2 py-1 rounded text-xs ${I===E?"bg-[var(--tango-primary)] text-[var(--tango-primary-foreground)] font-medium":"border border-[var(--tango-border)] hover:bg-[var(--tango-accent)]"} transition-colors`,children:I},I)),E<z-2&&a.jsx("span",{className:"px-1 text-xs",children:"…"}),a.jsx("button",{type:"button",onClick:()=>U(z),className:`min-w-[28px] px-2 py-1 rounded text-xs ${E===z?"bg-[var(--tango-primary)] text-[var(--tango-primary-foreground)] font-medium":"border border-[var(--tango-border)] hover:bg-[var(--tango-accent)]"} transition-colors`,children:z})]}),a.jsx("button",{type:"button",onClick:()=>U(E+1),disabled:E>=z,className:"px-2 py-1 rounded border border-[var(--tango-border)] text-xs disabled:opacity-40 disabled:cursor-not-allowed hover:bg-[var(--tango-accent)] transition-colors","aria-label":y.next,children:y.next})]})]})},G=X=>a.jsxs("div",{className:Z.className,style:Z.style,children:[ue,a.jsxs("table",{className:"w-full border-collapse separate border-spacing-0 text-sm",role:"table",children:[a.jsx("thead",{className:R.className,style:R.style,children:a.jsx("tr",{children:k.map(I=>{const q=m({baseClassName:$("px-5 py-4 text-left font-semibold tracking-wide relative",K.headerCell.tw),baseStyle:I.width?{width:I.width}:{},sxSlot:{tw:"",css:K.headerCell.css}});return a.jsxs("th",{className:q.className,style:q.style,children:[I.title,a.jsx("span",{className:"absolute right-0 top-[20%] h-[60%] w-px bg-[var(--tango-primary-foreground)]/15 last:hidden"})]},I.key||I.dataIndex)})})}),a.jsx("tbody",{className:J.className,style:J.style,"data-tango-table-body":!0,children:X.length===0?a.jsx("tr",{children:a.jsx("td",{colSpan:k.length,className:le.className,style:le.style,children:y.empty})}):X.map((I,q)=>{const re=q%2===0?"even":"odd",ee=$("transition-all duration-200",re==="even"?"bg-[color-mix(in_oklch,var(--tango-table-hover)_6%,transparent)]":"","hover:bg-[color-mix(in_oklch,var(--tango-table-hover)_20%,transparent)]",K.row.tw,Le(g,I,q,re)),oe={...Le(h,I,q,re),...K.row.css};return a.jsx("tr",{className:ee,style:oe,children:k.map((f,V)=>{const Q=V%2===0?"even":"odd",ne=$("px-5 py-3.5 text-left relative","border-b border-[color-mix(in_oklch,var(--tango-foreground)_5%,transparent)]",K.cell.tw,Le(b,I,f,q,V,re,Q)),ce={...f.width?{width:f.width}:{},...Le(u,I,f,q,V,re,Q),...K.cell.css};return a.jsxs("td",{className:ne,style:ce,children:[a.jsx("div",{className:"flex items-center min-h-5",children:f.render?f.render(I[f.dataIndex],I,q):I[f.dataIndex]}),a.jsx("span",{className:"absolute right-0 top-[20%] h-[60%] w-px bg-[color-mix(in_oklch,var(--tango-foreground)_4%,transparent)] last:hidden"})]},f.key||f.dataIndex||V)})},I.key||q)})})]})]});return a.jsxs("div",{role:"region","aria-label":T||"Table",...F,children:[p&&N==="top"&&ge(),G(M),p&&N==="bottom"&&ge()]})}Kt.propTypes={dataSource:t.array,columns:t.arrayOf(t.shape({title:t.string.isRequired,dataIndex:t.string.isRequired,key:t.oneOfType([t.string,t.number]),render:t.func,width:t.oneOfType([t.string,t.number]),hide:t.bool})),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,pagination:t.oneOfType([t.bool,t.shape({placement:t.oneOf(["top","bottom"]),pageSize:t.number,pageSizeOptions:t.arrayOf(t.number),showTotal:t.bool,showSizeChanger:t.bool})]),hide:t.oneOfType([t.arrayOf(t.string),t.string]),rowClassName:t.oneOfType([t.func,t.string]),rowStyle:t.oneOfType([t.func,t.object]),cellClassName:t.oneOfType([t.func,t.string]),cellStyle:t.oneOfType([t.func,t.object]),hoverColor:t.string,i18nKey:t.string,localeText:t.object};const Ia=["root","tooltip"],Lt={top:"bottom-full left-1/2 -translate-x-1/2 mb-2",bottom:"top-full left-1/2 -translate-x-1/2 mt-2",left:"right-full top-1/2 -translate-y-1/2 mr-2",right:"left-full top-1/2 -translate-y-1/2 ml-2"},Fa={top:{bottom:"-5px",left:"50%",marginLeft:"-5px",transform:"rotate(45deg)"},bottom:{top:"-5px",left:"50%",marginLeft:"-5px",transform:"rotate(45deg)"},left:{right:"-5px",top:"50%",marginTop:"-5px",transform:"rotate(45deg)"},right:{left:"-5px",top:"50%",marginTop:"-5px",transform:"rotate(45deg)"}};function Da(e,o){const{children:s,title:n,placement:c="top",open:l,defaultOpen:r=!1,onOpenChange:i,disabled:g=!1,sx:h={},style:b={},className:u="",onMouseEnter:x,onMouseLeave:S,onFocus:C,onBlur:T,...F}=e,[P,y]=d.useState(r),v=l!==void 0,k=v?l:P,p=d.useCallback(L=>{v||y(L),i==null||i(L)},[v,i]),N=Lt[c]?c:"top",O=H(h,Ia),A=m({baseClassName:"relative inline-flex",sxSlot:O.root}),B=m({baseClassName:$("absolute z-50 whitespace-nowrap px-3 py-1.5 text-sm","bg-[var(--tango-tooltip-background)] text-[var(--tango-tooltip-foreground)]","shadow-[var(--tango-tooltip-shadow)]",Lt[N]),className:u,baseStyle:{borderRadius:"var(--tango-tooltip-radius)"},sxSlot:O.tooltip,style:b}),_={position:"absolute",width:"10px",height:"10px",backgroundColor:"inherit",...Fa[N]},j=()=>!g&&p(!0),w=()=>!g&&p(!1);return a.jsxs("div",{ref:o,className:A.className,style:A.style,onMouseEnter:L=>{j(),x==null||x(L)},onMouseLeave:L=>{w(),S==null||S(L)},onFocus:L=>{j(),C==null||C(L)},onBlur:L=>{w(),T==null||T(L)},...F,children:[s,k&&n&&a.jsxs("div",{role:"tooltip",className:B.className,style:B.style,children:[a.jsx("span",{style:{position:"relative",zIndex:1},children:n}),a.jsx("span",{style:_})]})]})}const Be=d.forwardRef(Da);Be.displayName="Tooltip";Be.propTypes={children:t.node,title:t.node,placement:t.oneOf(["top","bottom","left","right"]),open:t.bool,defaultOpen:t.bool,onOpenChange:t.func,disabled:t.bool,sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,onMouseEnter:t.func,onMouseLeave:t.func,onFocus:t.func,onBlur:t.func};ae.MaterialButton=Oe;Ae.MaterialInput=_e;te.Header=$t;te.Footer=Bt;te.Sider=It;te.Content=Ft;te.Toc=Dt;exports.Banner=We;exports.Button=ae;exports.ColorPicker=Ue;exports.Content=Ft;exports.DateDisplay=He;exports.DatePicker=Ze;exports.Drawer=Ge;exports.Footer=Bt;exports.Header=$t;exports.Input=Ae;exports.Layout=te;exports.Line=qe;exports.Mark=Xe;exports.MaterialButton=Oe;exports.MaterialInput=_e;exports.Modal=Je;exports.Notice=Ne;exports.NoticeProvider=go;exports.Search=Qe;exports.Sider=It;exports.Space=et;exports.Table=Kt;exports.TangoBanner=We;exports.TangoColorPicker=Ue;exports.TangoDate=He;exports.TangoDatePicker=Ze;exports.TangoDrawer=Ge;exports.TangoI18nProvider=ho;exports.TangoModal=Je;exports.TangoNotice=Ne;exports.TangoSearch=Qe;exports.TangoTooltip=Be;exports.ThemeProvider=Xt;exports.Toc=Dt;exports.Tooltip=Be;exports.Upload=$e;exports.createSlotProps=m;exports.mergeTwClassNames=$;exports.normalizeSxSlots=H;exports.normalizeTangoLocale=Se;exports.useNotice=mo;exports.useTangoI18n=se;exports.useTangoStyle=ve;exports.useTheme=Jt;
|