tango-ui-cw 1.0.1 → 1.0.3

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/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Tango UI
2
2
 
3
- A lightweight, zero-dependency React UI library for Next.js, powered by Tailwind CSS.
3
+ A lightweight React UI library for Next.js, powered by Tailwind CSS. Pre-compiled utilities — no Tailwind setup required for consumers.
4
4
 
5
5
  **Author**: ClayW
6
6
 
@@ -21,10 +21,12 @@ npm install tango-ui-cw
21
21
  ### Peer Dependencies
22
22
 
23
23
  ```bash
24
- npm install react@>=18 react-dom@>=18 next@>=14 tailwind-merge@^3.6.0 tailwindcss@^4
24
+ npm install react@>=18 next@>=14 tailwind-merge@^3.6.0
25
25
  ```
26
26
 
27
27
  > `next` and `react-dom` are optional peers — only required if you use SSR/SSG features.
28
+ >
29
+ > `tailwindcss` is an optional peer — not required. All Tailwind utility classes are pre-compiled and bundled in `style.css`. Only install it if your own project also uses Tailwind.
28
30
 
29
31
  ---
30
32
 
@@ -57,21 +59,21 @@ import { MaterialButton, Header, Content } from "tango-ui-cw";
57
59
 
58
60
  ---
59
61
 
60
- ## Supported Versions
62
+ ## Compatible Versions
61
63
 
62
- | Package | Version |
63
- |---------|---------|
64
- | React | >= 18 |
65
- | React DOM | >= 18 |
66
- | Next.js | >= 14 |
67
- | Tailwind CSS | ^4 |
68
- | tailwind-merge | ^3.6.0 |
64
+ | Package | Version | Note |
65
+ |---------|---------|------|
66
+ | React | >= 18 | Required |
67
+ | Next.js | >= 14 | Supported |
68
+ | React DOM | >= 18 | Required for SSR/SSG |
69
+ | tailwind-merge | ^3.6.0 | Required |
70
+ | Tailwind CSS | ^4 | Not required — utilities are pre-compiled |
69
71
 
70
72
  ---
71
73
 
72
74
  ## Features
73
75
 
74
- - **Zero dependencies** — no runtime deps bloating your bundle
76
+ - **Zero-config Tailwind** — all utility classes are pre-compiled into the package; consumers don't need Tailwind installed
75
77
  - **18+ components** — Button, Input, Layout, Upload, Modal, Drawer, Table, DatePicker, ColorPicker, Search, Tooltip, Notice, Banner, Space, Line, Mark, and more
76
78
  - **`sx` prop styling** — three input forms: Tailwind string, CSS shorthand object, or slot-structured object for per-slot control
77
79
  - **70+ CSS shorthand properties** — `useTangoStyle()` auto-resolves shorthand like `mt`, `bgc`, `aic` to full CSS properties
@@ -95,7 +97,7 @@ import { MaterialButton, Header, Content } from "tango-ui-cw";
95
97
 
96
98
  ### 特性(中文)
97
99
 
98
- - **零依赖**没有运行时依赖,不会增加你的包体积
100
+ - **零配置 Tailwind** 所有工具类已预编译打包,消费者无需安装 Tailwind
99
101
  - **18+ 组件** — Button、Input、Layout、Upload、Modal、Drawer、Table、DatePicker、ColorPicker、Search、Tooltip、Notice、Banner、Space、Line、Mark 等
100
102
  - **`sx` 属性样式** — 三种输入形式:Tailwind 字符串、CSS 简写对象、或按 slot 分层的结构化对象
101
103
  - **70+ CSS 简写属性** — `useTangoStyle()` 自动将 `mt`、`bgc`、`aic` 等简写解析为完整 CSS 属性
package/dist/index.cjs CHANGED
@@ -1,12 +1,12 @@
1
1
  'use client';
2
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),d=require("react"),Ht=require("react-dom"),t=require("prop-types"),Wt=require("tailwind-merge"),tt="tango:theme",st="tango:themeTokens",Zt="light",Gt=["primary","input-accent","modal-ok-bg","drawer-ok-bg","datepicker-confirm-bg"],jt=d.createContext(null),Lt=()=>typeof window<"u",ot=(e,s)=>{if(!Lt())return s;try{const r=window.localStorage.getItem(e);return r?JSON.parse(r):s}catch{return s}},rt=(e,s)=>{if(Lt())try{window.localStorage.setItem(e,JSON.stringify(s))}catch{}};function qt({children:e}){const[s,r]=d.useState(()=>ot(tt,Zt)==="dark"?"dark":"light"),[n,c]=d.useState(()=>ot(st,{})),l=d.useRef(new Set);d.useEffect(()=>{typeof document>"u"||(document.documentElement.dataset.theme=s)},[s]),d.useEffect(()=>{rt(tt,s)},[s]),d.useEffect(()=>{if(typeof document>"u")return;const u=document.documentElement,m=new Set(Object.keys(n));l.current.forEach(g=>{m.has(g)||u.style.removeProperty(`--${g}`)}),Object.entries(n).forEach(([g,S])=>{S==null||S===""?u.style.removeProperty(`--${g}`):u.style.setProperty(`--${g}`,String(S))}),l.current=m,rt(st,n)},[n]);const a=u=>{c(m=>{const g=typeof u=="function"?u(m):u;return{...m,...g||{}}})},i=(u,m=Gt)=>{a(g=>{const S={...g};return m.forEach(j=>{S[j]=u}),S})},p=()=>{c({})},h=()=>{r(u=>u==="dark"?"light":"dark")};return o.jsx(jt.Provider,{value:{theme:s,setTheme:r,toggleTheme:h,themeTokens:n,setThemeTokens:a,setThemeColor:i,resetThemeTokens:p},children:e})}function Xt(){return d.useContext(jt)}const Jt=new Set(["root","slots","tw","className","css","style"]),Pe={tw:"",css:{}},xe=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),V=(e,s="px")=>typeof e=="number"?`${e}${s}`:e,me=e=>typeof e=="string"&&e.startsWith("$")?`var(--${e.slice(1)})`:e,Qt=e=>e.includes("-")?e.replace(/-([a-z])/g,(s,r)=>r.toUpperCase()):e,es=e=>/(color|background|border|fill|stroke|shadow)$/i.test(e),ts={mt:(e,s)=>{e.marginTop=V(s)},mr:(e,s)=>{e.marginRight=V(s)},mb:(e,s)=>{e.marginBottom=V(s)},ml:(e,s)=>{e.marginLeft=V(s)},mx:(e,s)=>{e.marginLeft=V(s),e.marginRight=V(s)},my:(e,s)=>{e.marginTop=V(s),e.marginBottom=V(s)},m:(e,s)=>{e.margin=V(s)},pt:(e,s)=>{e.paddingTop=V(s)},pr:(e,s)=>{e.paddingRight=V(s)},pb:(e,s)=>{e.paddingBottom=V(s)},pl:(e,s)=>{e.paddingLeft=V(s)},px:(e,s)=>{e.paddingLeft=V(s),e.paddingRight=V(s)},py:(e,s)=>{e.paddingTop=V(s),e.paddingBottom=V(s)},p:(e,s)=>{e.padding=V(s)},g:(e,s)=>{e.gap=V(s)},rg:(e,s)=>{e.rowGap=V(s)},cg:(e,s)=>{e.columnGap=V(s)},w:(e,s)=>{e.width=V(s)},h:(e,s)=>{e.height=V(s)},mw:(e,s)=>{e.minWidth=V(s)},mh:(e,s)=>{e.minHeight=V(s)},maxw:(e,s)=>{e.maxWidth=V(s)},maxh:(e,s)=>{e.maxHeight=V(s)},vw:(e,s)=>{e.width=typeof s=="number"?`${s}vw`:s},vh:(e,s)=>{e.height=typeof s=="number"?`${s}vh`:s},presentw:(e,s)=>{e.width=typeof s=="number"?`${s}%`:s},presenth:(e,s)=>{e.height=typeof s=="number"?`${s}%`:s},size:(e,s)=>{e.fontSize=V(s)},fw:(e,s)=>{e.fontWeight=s},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,s)=>{e.lineHeight=V(s)},ls:(e,s)=>{e.letterSpacing=V(s)},c:(e,s)=>{e.color=me(s)},bg:(e,s)=>{e.background=me(s)},bgc:(e,s)=>{e.backgroundColor=me(s)},b:(e,s)=>{e.border=s===1?"1px solid var(--border)":me(s)},br:(e,s)=>{e.borderRadius=V(s)},bw:(e,s)=>{e.borderWidth=V(s)},bs:(e,s)=>{e.borderStyle=s},bColor:(e,s)=>{e.borderColor=me(s)},boxshadow:(e,s)=>{e.boxShadow=me(s)},bgSize:(e,s)=>{e.backgroundSize=s},bgPosition:(e,s)=>{e.backgroundPosition=s},bgRepeat:(e,s)=>{e.backgroundRepeat=s},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,s)=>{e.inset=V(s)},top:(e,s)=>{e.top=V(s)},right:(e,s)=>{e.right=V(s)},bottom:(e,s)=>{e.bottom=V(s)},left:(e,s)=>{e.left=V(s)},z:(e,s)=>{e.zIndex=s},flex:e=>{e.display="flex"},iflex:e=>{e.display="inline-flex"},fd:(e,s)=>{e.flexDirection=s},fwrap:(e,s="wrap")=>{e.flexWrap=s},aic:e=>{e.alignItems="center"},ai:(e,s)=>{e.alignItems=s},jcc:e=>{e.justifyContent="center"},jc:(e,s)=>{e.justifyContent=s},ac:(e,s)=>{e.alignContent=s},as:(e,s)=>{e.alignSelf=s},f:(e,s)=>{e.flex=typeof s=="number"?s:`${s}`},fl:e=>{e.float="left"},fr:e=>{e.float="right"},ar:(e,s)=>{e.aspectRatio=s},tran:(e,s)=>{e.transition=typeof s=="number"?`${s}s`:s},op:(e,s)=>{e.opacity=s},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,s)=>{e.cursor=s},pe:(e,s)=>{e.pointerEvents=s},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={})=>xe(e)?Object.entries(e).reduce((s,[r,n])=>{if(Jt.has(r))return s;const c=ts[r];if(c)return c(s,n),s;const l=Qt(r),a=typeof n=="string"&&(n.startsWith("$")||es(l))?me(n):n;return s[l]=a,s},{}):{},M=(...e)=>{const s=e.filter(Boolean).join(" ").trim();return s?Wt.twMerge(s):""},Te=e=>{if(typeof e=="string")return{tw:e,css:{}};if(!xe(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=xe(e.css)?ve(e.css):{},c=xe(e.style)?ve(e.style):{};return{tw:r,css:{...n,...c}}},ss=(e,s)=>xe(e)?"root"in e||"slots"in e||"tw"in e||"className"in e||"css"in e||"style"in e?!0:s.some(r=>r!=="root"&&r in e):!1,os=e=>{const s={};return e.forEach(r=>{s[r]={...Pe}}),s.root||(s.root={...Pe}),s},H=(e,s=["root"])=>{const r=os(s);if(typeof e=="string")return r.root.tw=e,r;if(!xe(e))return r;if(!ss(e,s))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:M(n.tw,c.tw),css:{...n.css,...c.css}};const l=xe(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:M(i.tw,p.tw),css:{...i.css,...p.css}}}),r},b=({baseClassName:e="",className:s="",baseStyle:r={},style:n={},sxSlot:c=Pe}={})=>({className:M(e,s,c.tw),style:{...r||{},...c.css||{},...n||{}}}),rs=["root","icon","content"],at={success:"text-[var(--notice-success-text)]",fail:"text-[var(--notice-fail-text)]",caution:"text-[var(--notice-caution-text)]"},nt={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 as(e,s){const{type:r="success",icon:n,message:c,variant:l="default",duration:a=3e3,onClose:i,sx:p={},style:h={},className:u="",...m}=e,[g,S]=d.useState(!1),j=at[r]?r:"success",_=nt[l]?l:"default",I=H(p,rs),C=d.useCallback(()=>{S(!0);const A=setTimeout(()=>i==null?void 0:i(),300);return()=>clearTimeout(A)},[i]);d.useEffect(()=>{if(!i||a<=0)return;const A=setTimeout(C,a);return()=>clearTimeout(A)},[i,a,C]);const N=nt[_],v=_==="default"?"animate-[noticeSlideUpFade_0.3s_ease-in_forwards]":"animate-[noticeSlideToBottom_0.3s_ease-in_forwards]",P=b({baseClassName:M("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)]",N.base,g?v:N.enter,_==="md"&&at[j]),className:u,sxSlot:I.root,baseStyle:{borderRadius:"var(--notice-radius)"},style:h}),x=b({baseClassName:"flex-shrink-0 text-[var(--notice-foreground)]",sxSlot:I.icon}),y=b({baseClassName:"inline-block",sxSlot:I.content});return o.jsxs("div",{ref:s,role:"alert",className:P.className,style:P.style,...m,children:[_!=="md"&&n&&o.jsx("span",{className:x.className,style:x.style,children:n}),o.jsx("span",{className:y.className,style:y.style,children:c})]})}const Ne=d.forwardRef(as);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 Pt=d.createContext(null),ns=o.jsx("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:o.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)"})}),ls=o.jsx("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:o.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)"})}),cs=o.jsxs("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:[o.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)"}),o.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)"}),o.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)"})]}),is={success:ns,fail:ls,caution:cs};function ds({children:e}){const[s,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 u=Date.now()+Math.random();r(m=>[...m,{id:u,type:i,message:p,variant:h,icon:is[i]}])},[]);return o.jsxs(Pt.Provider,{value:{add:a,remove:l},children:[e,n&&Ht.createPortal(o.jsx("div",{id:"notification-container",className:"flex flex-col items-center gap-2",children:s.map(i=>o.jsx(Ne,{...i,onClose:()=>l(i.id)},i.id))}),document.body)]})}function us(){const e=d.useContext(Pt);if(!e)throw new Error("useNotice must be used inside <NoticeProvider />");return e}function ps(){const{add:e}=us();return{success:s=>e("success",s),fail:s=>e("fail",s),caution:s=>e("caution",s),md:{success:s=>e("success",s,"md"),fail:s=>e("fail",s,"md"),caution:s=>e("caution",s,"md")}}}const _t="tango:locale",be="zh-CN",ms={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"},Ot={"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"}}},Ye=()=>{},At=d.createContext({locale:be,setLocale:Ye,toggleLocale:Ye,messages:Ot,t:(e,s="")=>s}),lt=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Mt=(e,s)=>{const r={...e};return Object.entries(s||{}).forEach(([n,c])=>{lt(c)&&lt(r[n])?r[n]=Mt(r[n],c):r[n]=c}),r},xs=(e,s)=>s.split(".").reduce((r,n)=>{if(r&&Object.prototype.hasOwnProperty.call(r,n))return r[n]},e),Se=e=>typeof e!="string"||!e.trim()?be:ms[e]||e,bs=()=>{if(typeof window>"u")return be;try{const e=window.localStorage.getItem(_t);return Se(e||be)}catch{return be}};function fs({children:e,locale:s,defaultLocale:r=be,onLocaleChange:n=Ye,messages:c={}}){const l=Se(r),a=s==null?null:Se(s),[i,p]=d.useState(()=>bs()||l),h=a||i,u=j=>{const _=Se(j);a==null&&p(_),n(_)};d.useEffect(()=>{if(!(typeof window>"u"))try{window.localStorage.setItem(_t,h)}catch{}},[h]);const m=d.useMemo(()=>Mt(Ot,c),[c]),g=()=>{u(h==="zh-CN"?"en-US":"zh-CN")},S=(j,_="")=>{const I=m[h]||m[be]||{},C=xs(I,j);return C==null||C===""?_:String(C)};return o.jsx(At.Provider,{value:{locale:h,setLocale:u,toggleLocale:g,messages:m,t:S},children:e})}function ae(){return d.useContext(At)}const gs="_materialBtn_wlueu_4",hs="_materialBtnSmall_wlueu_26",ys="_materialBtnMedium_wlueu_32",vs="_materialBtnLarge_wlueu_38",Ss="_materialBtnHuge_wlueu_44",Ns="_materialBtnDisabled_wlueu_51",ws="_ripple_wlueu_59",he={materialBtn:gs,materialBtnSmall:hs,materialBtnMedium:ys,materialBtnLarge:vs,materialBtnHuge:Ss,materialBtnDisabled:Ns,ripple:ws},Cs=["root","content","icon","loading"],Ts={small:"small",medium:"medium",large:"large",huge:"huge"},ks={small:12,medium:14,large:16,huge:20},ct={default:{backgroundColor:"var(--primary)",color:"var(--primary-foreground)",borderColor:"var(--border)"},transparent:{backgroundColor:"var(--transparent)",color:"var(--primary-foreground)",borderColor:"var(--button-transparent-border)"},danger:{backgroundColor:"var(--destructive)",color:"var(--destructive-foreground)",borderColor:"transparent"},success:{backgroundColor:"var(--success)",color:"var(--success-foreground)",borderColor:"transparent"}},js={default:{backgroundColor:"var(--transparent)",color:"var(--button-outline-foreground)",borderColor:"var(--border)"},transparent:{backgroundColor:"var(--transparent)",color:"var(--button-outline-foreground)",borderColor:"var(--button-transparent-border)"},danger:{backgroundColor:"var(--transparent)",color:"var(--destructive)",borderColor:"var(--destructive)"},success:{backgroundColor:"var(--transparent)",color:"var(--success)",borderColor:"var(--success)"}},Ls={backgroundColor:"var(--muted)",color:"var(--muted-foreground)",borderColor:"transparent",cursor:"not-allowed"},Fe={default:"按钮",loading:"加载中",iconAlt:"图标"},Ps=e=>e.charAt(0).toUpperCase()+e.slice(1),_s=e=>e===!0||e==="light"||e==="dark"?!0:Array.isArray(e)&&e.length>0?e[0]===!0||e[0]==="light"||e[0]==="dark":!1,Os=e=>e==="light"?"light":e==="dark"||e===!0||Array.isArray(e)&&e.length>=2&&e[1]==="dark"?"dark":"light",it=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function _e(e){const{type:s="default",size:r="medium",sx:n={},style:c={},className:l="",onClick:a=()=>{},children:i,disabled:p=!1,outline:h=!1,icon:u=null,iconPosition:m=null,loading:g=!1,i18nKey:S=null,localeText:j={},rippleColor:_,"aria-label":I,...C}=e,{t:N}=ae(),v=d.useRef(null),P=it(r,"medium",Ts),x=it(s,"default",ct),y=_s(g),A=Os(g),O=p||y,E=ks[P],L=m==="right"?"right":u||y?"left":null,k=_??"var(--material-button-ripple)",w={default:N("materialButton.default",Fe.default),loading:N("materialButton.loading",Fe.loading),iconAlt:N("materialButton.iconAlt",Fe.iconAlt),...j},U=(S&&typeof w[S]=="string"?w[S]:null)||(S?N(`materialButton.${S}`,w.default):w.default),B=y?w.loading:U,F=i??B,$=I||(i==null?String(F||w.default):void 0),D=H(n,Cs),W=O?Ls:h?js[x]:ct[x],K=he[`materialBtn${Ps(P)}`],Z=typeof n=="object"?n:{},R=D.root.css||{},ee=typeof n=="string"?n:"",ne=[he.materialBtn,K,O&&he.materialBtnDisabled,D.root.tw,ee,l].filter(Boolean).join(" "),de={...W,...Z,...R,...c},ue=b({baseClassName:"inline-flex items-center relative z-[1]",sxSlot:D.content}),te=b({baseClassName:"inline-flex items-center justify-center shrink-0 transition-all duration-300 relative z-[1]",baseStyle:{width:`${E}px`,height:`${E}px`},sxSlot:D.icon}),Q=b({baseClassName:"inline-flex items-center justify-center shrink-0 animate-spin relative z-[1]",baseStyle:{width:`${E}px`,height:`${E}px`,color:A==="light"?"var(--button-loading-light)":"var(--button-loading-dark)"},sxSlot:D.loading}),q=d.useCallback(J=>{if(O)return;const oe=v.current;if(!oe)return;const le=document.createElement("span"),f=Math.max(oe.clientWidth,oe.clientHeight),Y=f/2;Object.assign(le.style,{width:`${f}px`,height:`${f}px`,left:`${J.clientX-oe.getBoundingClientRect().left-Y}px`,top:`${J.clientY-oe.getBoundingClientRect().top-Y}px`}),le.className=he.ripple,le.style.background=k;const X=oe.querySelector(`.${he.ripple}`);X&&X.remove(),oe.appendChild(le)},[O,k]),z=()=>{if(!u)return null;if(typeof u=="string")return o.jsx("img",{src:u,alt:w.iconAlt,className:te.className,style:te.style,"aria-hidden":"true"});if(d.isValidElement(u))return d.cloneElement(u,{className:M(te.className,u.props.className),style:{...te.style,...u.props.style},"aria-hidden":!0});if(typeof u=="function"){const J=u;return o.jsx(J,{className:te.className,style:te.style,"aria-hidden":"true"})}return o.jsx("span",{className:te.className,style:te.style,"aria-hidden":"true",children:u})},G=()=>o.jsx("svg",{viewBox:"0 0 1024 1024",role:"presentation",className:Q.className,style:Q.style,"aria-hidden":"true",children:o.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 o.jsxs("button",{ref:v,className:ne,style:de,onClick:J=>{q(J),a==null||a(J)},disabled:O,"aria-label":$,"data-variant":x,"data-size":P,"data-icon-position":L||void 0,...C,children:[L==="left"&&o.jsxs(o.Fragment,{children:[y&&G(),!y&&u&&z()]}),o.jsx("span",{className:ue.className,style:ue.style,children:F}),L==="right"&&o.jsxs(o.Fragment,{children:[y&&G(),!y&&u&&z()]})]})}_e.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 As=["root","content","icon","loading"],De={default:"按钮",loading:"加载中",iconAlt:"图标"},Ms="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",Re={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"}},dt={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)]"},zs="bg-[var(--transparent)]",Es={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)]"},$s="shadow-[var(--button-enu-shadow)] hover:shadow-[var(--button-enu-hover-shadow)] active:translate-y-px active:shadow-[var(--button-enu-active-shadow)]",Bs={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"},Is="bg-[var(--muted)] text-[var(--muted-foreground)] border-transparent cursor-not-allowed shadow-none hover:shadow-none",Fs=e=>e===!0||e==="light"||e==="dark"?!0:Array.isArray(e)&&e.length>0?e[0]===!0||e[0]==="light"||e[0]==="dark":!1,Ds=e=>e==="light"?"light":e==="dark"||e===!0||Array.isArray(e)&&e.length>=2&&e[1]==="dark"?"dark":"light",ut=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function re(e){const{type:s="default",size:r="medium",sx:n={},style:c={},className:l="",onClick:a=()=>{},children:i,disabled:p=!1,outline:h=!1,enu:u=!1,icon:m=null,iconPosition:g=null,loading:S=!1,i18nKey:j=null,localeText:_={},"aria-label":I,...C}=e,{t:N}=ae(),v=ut(r,"medium",Re),P=ut(s,"default",dt),x=Fs(S),y=Ds(S),A=p||x,O=Re[v].iconSize,E=g==="right"?"right":m||x?"left":null,L=H(n,As),k={default:N("button.default",De.default),loading:N("button.loading",De.loading),iconAlt:N("button.iconAlt",De.iconAlt),..._},T=(j&&typeof k[j]=="string"?k[j]:null)||(j?N(`button.${j}`,k.default):k.default),U=x?k.loading:T,B=i??U,F=I||(i==null?String(B||k.default):void 0);let $=dt[P];h&&($=M($,zs,Es[P])),u&&($=M($,$s,Bs[P]));const D=b({baseClassName:M(Ms,Re[v].className,$,A&&Is,x&&"cursor-wait"),className:l,style:c,sxSlot:L.root}),W=b({baseClassName:"inline-flex items-center",sxSlot:L.content}),K=b({baseClassName:"inline-flex items-center justify-center shrink-0 transition-all duration-300",baseStyle:{width:`${O}px`,height:`${O}px`},sxSlot:L.icon}),Z=b({baseClassName:"inline-flex items-center justify-center shrink-0 animate-spin",baseStyle:{width:`${O}px`,height:`${O}px`,color:y==="light"?"var(--button-loading-light)":"var(--button-loading-dark)"},sxSlot:L.loading}),R=()=>{if(!m)return null;if(typeof m=="string")return o.jsx("img",{src:m,alt:k.iconAlt,className:K.className,style:K.style,"aria-hidden":"true"});if(d.isValidElement(m))return d.cloneElement(m,{className:M(K.className,m.props.className),style:{...K.style,...m.props.style},"aria-hidden":!0});if(typeof m=="function"){const ne=m;return o.jsx(ne,{className:K.className,style:K.style,"aria-hidden":"true"})}return o.jsx("span",{className:K.className,style:K.style,"aria-hidden":"true",children:m})},ee=()=>o.jsx("svg",{viewBox:"0 0 1024 1024",role:"presentation",className:Z.className,style:Z.style,"aria-hidden":"true",children:o.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 o.jsxs("button",{className:D.className,style:D.style,onClick:a,disabled:A,"aria-label":F,"data-variant":P,"data-size":v,"data-icon-position":E||void 0,...C,children:[E==="left"&&o.jsxs(o.Fragment,{children:[x&&ee(),!x&&m&&R()]}),o.jsx("span",{className:W.className,style:W.style,children:B}),E==="right"&&o.jsxs(o.Fragment,{children:[x&&ee(),!x&&m&&R()]})]})}re.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};re.MaterialButton=_e;const Rs=["root","input","label"],Vs={small:"small",medium:"medium",large:"large",huge:"huge"},Ys={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"}},Ks={label:""},Us=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function Oe(e){const{size:s="medium",sx:r={},style:n={},className:c="",onChange:l,value:a,defaultValue:i,disabled:p=!1,label:h,localeText:u,type:m="text",...g}=e,{t:S}=ae(),j=Us(s,"medium",Vs),_=a!==void 0,[I,C]=d.useState(i??""),[N,v]=d.useState(!1),P=_?a:I,x=N||String(P).length>0,y=h??(u==null?void 0:u.label)??S("materialInput.label",Ks.label),A=H(r,Rs),O={tw:M(A.root.tw,A.input.tw),css:{...A.root.css,...A.input.css}},E=M("relative inline-flex",A.root.tw),L=Ys[j],k=M("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)]",L.wrapper,L.pt),w=b({baseClassName:k,className:c,style:n,sxSlot:O}),T=M("absolute left-0 transition-all duration-200 ease-in-out pointer-events-none",x?`top-1 ${L.labelFloat} text-[var(--input-accent)]`:`top-1/2 -translate-y-1/2 ${L.label} text-[var(--muted-foreground)]`,N&&x&&"text-[var(--input-accent)]",p&&"text-[var(--muted-foreground)]",A.label.tw),U=b({baseClassName:T,sxSlot:{tw:"",css:A.label.css}}),B=d.useCallback(Z=>{const R=Z.target.value;_||C(R),l==null||l(R)},[_,l]),F=d.useCallback(Z=>{var R;v(!0),(R=g.onFocus)==null||R.call(g,Z)},[g.onFocus]),$=d.useCallback(Z=>{var R;v(!1),(R=g.onBlur)==null||R.call(g,Z)},[g.onBlur]),{onFocus:D,onBlur:W,...K}=g;return o.jsxs("div",{className:E,children:[o.jsx("input",{...K,type:m,className:w.className,style:w.style,value:P,disabled:p||void 0,onChange:B,onFocus:F,onBlur:$,"aria-label":y||void 0}),y&&o.jsx("label",{className:U.className,style:U.style,children:y})]})}Oe.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 Hs=["root","input"],Ws={small:"small",medium:"medium",large:"large",huge:"huge"},Zs={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"},Gs=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function Ae(e){const{type:s="default",size:r="medium",sx:n={},style:c={},className:l="",onClick:a,onChange:i,value:p,defaultValue:h,disabled:u=!1,placeholder:m="",maxlength:g=524288,status:S,...j}=e,_=Gs(r,"medium",Ws),I=s==="textarea",C=s==="password",N=S==="error",v=H(n,Hs),P={tw:M(v.root.tw,v.input.tw),css:{...v.root.css,...v.input.css}},x=M("inline-flex",v.root.tw),y=M("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)]",N&&"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)]",u&&"bg-[var(--muted)] text-[var(--muted-foreground)] border-[var(--muted)] cursor-not-allowed shadow-none hover:border-[var(--muted)] focus:shadow-none",Zs[_]),A=b({baseClassName:y,className:l,style:c,sxSlot:P}),O=p!==void 0,E={className:A.className,style:A.style,onClick:a,onChange:i?L=>i(L.target.value):void 0,value:O?p:void 0,defaultValue:O?void 0:h??"",disabled:u||void 0,placeholder:m,maxLength:g,"aria-invalid":N||void 0,...j};return o.jsx("div",{className:x,children:I?o.jsx("textarea",{...E,className:`${E.className} min-h-[80px] py-2 resize-y`}):o.jsx("input",{...E,type:C?"password":"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=Oe;const ge=["root"];function qs(e,s){const{sx:r={},style:n={},className:c="",children:l,...a}=e,i=H(r,ge),p=b({baseClassName:"flex items-center justify-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 o.jsx("header",{ref:s,className:p.className,style:p.style,...a,children:l})}const Me=d.forwardRef(qs);Me.displayName="LayoutHeader";Me.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function Xs(e,s){const{sx:r={},style:n={},className:c="",children:l,...a}=e,i=H(r,ge),p=b({baseClassName:"flex items-center justify-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 o.jsx("footer",{ref:s,className:p.className,style:p.style,...a,children:l})}const ze=d.forwardRef(Xs);ze.displayName="LayoutFooter";ze.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function Js(e,s){const{sx:r={},style:n={},className:c="",width:l,children:a,...i}=e,p=H(r,ge),h=l??"var(--layout-sider-width)",u=b({baseClassName:"overflow-auto flex items-center justify-center 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 o.jsx("aside",{ref:s,className:u.className,style:u.style,...i,children:a})}const we=d.forwardRef(Js);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 Qs(e,s){const{sx:r={},style:n={},className:c="",width:l,children:a,...i}=e,p=H(r,ge),h=l??"var(--layout-toc-width)",u=b({baseClassName:"overflow-auto flex items-center justify-center 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 o.jsx("nav",{ref:s,className:u.className,style:u.style,...i,children:a})}const Ce=d.forwardRef(Qs);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 eo(e,s){const{sx:r={},style:n={},className:c="",children:l,...a}=e,i=H(r,ge),p=b({baseClassName:"flex-1 flex items-center justify-center bg-[var(--layout-content-bg)] text-[var(--layout-content-color)]",className:c,sxSlot:i.root,baseStyle:{},style:n});return o.jsx("main",{ref:s,className:p.className,style:p.style,...a,children:l})}const Ee=d.forwardRef(eo);Ee.displayName="LayoutContent";Ee.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function to(e,s){const{sx:r={},style:n={},className:c="",hasSider:l,children:a,...i}=e,p=H(r,ge),h=l??d.Children.toArray(a).some(m=>{var g,S;return d.isValidElement(m)&&(m.type===we||m.type===Ce||((g=m.type)==null?void 0:g.displayName)==="LayoutSider"||((S=m.type)==null?void 0:S.displayName)==="LayoutToc")}),u=b({baseClassName:M("flex flex-1 flex-col min-h-0",h?"md:flex-row":""),className:c,sxSlot:p.root,style:n});return o.jsx("section",{ref:s,className:u.className,style:u.style,...i,children:a})}const se=d.forwardRef(to);se.displayName="Layout";se.Header=Me;se.Footer=ze;se.Sider=we;se.Content=Ee;se.Toc=Ce;se.propTypes={hasSider:t.bool,sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};const zt=Me,Et=ze,$t=we,Bt=Ee,It=Ce,so=["root","button","list","item"],Ft=Symbol("LIST_IGNORE"),pt=o.jsxs("svg",{viewBox:"0 0 24 24",width:"1em",height:"1em",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:[o.jsx("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z"}),o.jsx("path",{d:"M14 2v6h6"})]}),mt=o.jsx("svg",{viewBox:"0 0 24 24",width:"1em",height:"1em",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:o.jsx("path",{d:"M18 6 6 18M6 6l12 12"})});function oo(e,s){const{sx:r={},style:n={},className:c="",accept:l="image/*",multiple:a=!1,onChange:i=()=>{},beforeUpload:p=()=>{},files:h=[],showUploadList:u=!0,maxCount:m=20,maxSize:g=100,btnText:S="选择文件",btnStyle:j,showSize:_=!0,disabled:I=!1,...C}=e,N=d.useId(),v=h||[],P=H(r,so),x=d.useCallback(async(k,w)=>{if(!p)return!0;try{const T=await p(k,w);return T===void 0?!0:T}catch{return!1}},[p]),y=d.useCallback(async k=>{const T=Array.from(k.target.files||[]).filter(F=>F.size/1024/1024>g?(console.warn(`[Tango Upload] ${F.name} 超过 ${g}MB,已被过滤`),!1):!0),U=a?T.slice(0,m):T.slice(0,1),B=[];for(const F of U){const $=await x(F,U);if($===!1){console.warn(`[Tango Upload] ${F.name} 被 beforeUpload 拦截`);continue}if($===Ft){console.warn(`[Tango Upload] ${F.name} 被 LIST_IGNORE 忽略`);continue}if($ instanceof Blob){const D=$ instanceof File?$:new File([$],F.name,{type:F.type});B.push(D)}else B.push(F)}k.target.value="",i(B)},[a,m,g,x,i]),A=d.useCallback((k,w)=>{const T=v.filter((U,B)=>B!==w);i(T)},[v,i]),O=b({baseClassName:"inline-flex flex-col gap-3",className:c,sxSlot:P.root,style:n}),E=b({baseClassName:M("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:P.list}),L=b({baseClassName:M("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:P.item});return o.jsxs("div",{ref:s,className:O.className,style:O.style,...C,children:[o.jsx("input",{id:N,type:"file",accept:l,multiple:a,className:"hidden",onChange:y,disabled:I,"aria-hidden":"true",tabIndex:-1}),o.jsx(re,{disabled:I,style:j,sx:P.button,onClick:()=>{var k;return(k=document.getElementById(N))==null?void 0:k.click()},children:S}),u&&v.length>0&&o.jsx("ul",{className:E.className,style:E.style,children:a?v.map((k,w)=>o.jsxs("li",{className:L.className,style:L.style,children:[o.jsx("span",{className:"flex-shrink-0 text-[var(--upload-icon-color)]",children:pt}),o.jsxs("span",{className:"flex-1 truncate",children:[k.name,_&&o.jsxs("span",{className:"ml-1 text-xs text-[var(--muted-foreground)]",children:["(",(k.size/1024).toFixed(2)," KB)"]})]}),o.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:()=>A(k,w),"aria-label":`删除 ${k.name}`,children:mt})]},w)):o.jsxs("li",{className:L.className,style:L.style,children:[o.jsx("span",{className:"flex-shrink-0 text-[var(--upload-icon-color)]",children:pt}),o.jsxs("span",{className:"flex-1 truncate",children:[v[0].name,_&&o.jsxs("span",{className:"ml-1 text-xs text-[var(--muted-foreground)]",children:["(",(v[0].size/1024).toFixed(2)," KB)"]})]}),o.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:()=>A(v[0],0),"aria-label":`删除 ${v[0].name}`,children:mt})]})})]})}const $e=d.forwardRef(oo);$e.displayName="Upload";$e.LIST_IGNORE=Ft;$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 ro=["root","icon","content","actions","closeIcon"],xt={cancel:"取消",action:"操作"},bt={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"}},ft={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"}},gt=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function Ke(e){const{children:s,onCancel:r=()=>{},onAction:n=()=>{},size:c="normal",cancelText:l,actionText:a,level:i="info",transparent:p=!1,bannerBgColor:h,bannerBorderColor:u,bannerIconColor:m,sx:g={},style:S={},className:j="",i18nKey:_,localeText:I={},...C}=e,{t:N}=ae(),v=gt(c,"normal",bt),P=gt(i,"info",ft),x=bt[v],y=ft[P],A=H(g,ro),O={cancel:N("banner.cancel",xt.cancel),action:N("banner.action",xt.action),...I},E=l??(_==="cancel"?N("banner.cancel",O.cancel):O.cancel),L=a??(_==="action"?N("banner.action",O.action):O.action),k=s??E,w=h||(p===!0?"transparent":`var(${y.bgVar})`),T=u||`var(${y.borderVar})`,U=m||`var(${y.iconVar})`,B=`var(${y.textVar})`,F=b({baseClassName:M("flex w-full items-center justify-start transition-colors duration-200",x.rootClass),className:j,style:{backgroundColor:w,borderColor:T,color:p===!0?"var(--muted-foreground)":B,...S},sxSlot:A.root}),$=b({baseClassName:"shrink-0",baseStyle:{width:`${x.iconSize}px`,height:`${x.iconSize}px`,color:U},sxSlot:A.icon}),D=b({baseClassName:M("flex-grow text-left",x.contentClass),sxSlot:A.content}),W=b({baseClassName:"flex items-center justify-end flex-1",baseStyle:{gap:x.buttonGap},sxSlot:A.actions}),K=b({baseClassName:"shrink-0 cursor-pointer",baseStyle:{width:`${x.closeIconSize}px`,height:`${x.closeIconSize}px`,color:"var(--banner-close-icon)"},sxSlot:A.closeIcon}),Z=o.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[o.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"}),o.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"}),o.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=o.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[o.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"}),o.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"}),o.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"})]}),ee=o.jsx("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:o.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"})}),ne=o.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[o.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"}),o.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=o.jsx("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:o.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:ne,warning:R,error:ee,info:Z};return o.jsxs("div",{className:F.className,style:F.style,"data-level":P,"data-size":v,...C,children:[o.jsx("div",{className:$.className,style:$.style,children:ue[P]}),o.jsx("div",{className:D.className,style:D.style,children:k}),o.jsxs("div",{className:W.className,style:W.style,children:[o.jsx(re,{type:"transparent",sx:{c:"var(--banner-btn-text)",br:x.buttonBorderRadius,bColor:"transparent",s:x.buttonFontSize},onClick:r,size:v==="normal"?"medium":v,children:E}),o.jsx(re,{type:"transparent",sx:{c:"var(--banner-btn-text)",br:x.buttonBorderRadius,b:1,bColor:"var(--banner-btn-border)",s:x.buttonFontSize},onClick:n,size:v==="normal"?"medium":v,children:L}),o.jsx("div",{className:K.className,style:K.style,onClick:r,children:de})]})]})}Ke.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 ao=["root","input","text"],Ve={hex:"HEX",rgb:"RGB",hsl:"HSL"},ht={small:{inputSize:20,fontSize:"11px",gap:"6px"},medium:{inputSize:28,fontSize:"12px",gap:"10px"},large:{inputSize:36,fontSize:"14px",gap:"14px"}},no={hex:"hex",rgb:"rgb",hsl:"hsl"},yt=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s,lo=e=>{const s=parseInt(e.slice(1,3),16),r=parseInt(e.slice(3,5),16),n=parseInt(e.slice(5,7),16);return`rgb(${s}, ${r}, ${n})`},co=e=>{let s=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(s,r,n),l=Math.min(s,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===s?a=(r-n)/h+(r<n?6:0):c===r?a=(n-s)/h+2:a=(s-r)/h+4,a/=6}return`hsl(${Math.round(a*360)}, ${Math.round(i*100)}%, ${Math.round(p*100)}%)`},io=(e,s)=>{switch(s){case"rgb":return lo(e);case"hsl":return co(e);default:return e.toUpperCase()}};function Ue(e){const{value:s,defaultValue:r="#000000",onChange:n=()=>{},disabled:c=!1,showText:l=!1,format:a="hex",size:i="medium",sx:p={},style:h={},className:u="",i18nKey:m,localeText:g={},...S}=e,{t:j}=ae(),_=yt(i,"medium",ht),I=yt(a,"hex",no),C=ht[_],[N,v]=d.useState(r),P=s??N,x=H(p,ao),y={hex:j("colorpicker.hex",Ve.hex),rgb:j("colorpicker.rgb",Ve.rgb),hsl:j("colorpicker.hsl",Ve.hsl),...g},A=T=>{const U=T.target.value;s===void 0&&v(U),n(U)},O=[];if(l){const T=m||(typeof l=="string"?l:null)||I;O.push({label:y[T],value:io(P,T)})}const E=b({baseClassName:M("inline-flex items-center",c&&"cursor-not-allowed opacity-60"),className:u,baseStyle:{gap:C.gap},style:h,sxSlot:x.root}),L=b({baseClassName:M("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:`${C.inputSize}px`,height:`${C.inputSize}px`,padding:0},sxSlot:x.input}),k=b({baseClassName:"flex flex-col text-[var(--muted-foreground)]",baseStyle:{fontSize:C.fontSize},sxSlot:x.text});return o.jsxs(o.Fragment,{children:[o.jsx("style",{children:`
2
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),d=require("react"),Wt=require("react-dom"),t=require("prop-types"),Zt=require("tailwind-merge"),tt="tango:theme",st="tango:themeTokens",Gt="light",qt=["primary","input-accent","modal-ok-bg","drawer-ok-bg","datepicker-confirm-bg"],Lt=d.createContext(null),Pt=()=>typeof window<"u",ot=(e,s)=>{if(!Pt())return s;try{const r=window.localStorage.getItem(e);return r?JSON.parse(r):s}catch{return s}},rt=(e,s)=>{if(Pt())try{window.localStorage.setItem(e,JSON.stringify(s))}catch{}};function Xt({children:e}){const[s,r]=d.useState(()=>ot(tt,Gt)==="dark"?"dark":"light"),[n,c]=d.useState(()=>ot(st,{})),l=d.useRef(new Set);d.useEffect(()=>{typeof document>"u"||(document.documentElement.dataset.theme=s)},[s]),d.useEffect(()=>{rt(tt,s)},[s]),d.useEffect(()=>{if(typeof document>"u")return;const u=document.documentElement,m=new Set(Object.keys(n));l.current.forEach(f=>{m.has(f)||u.style.removeProperty(`--${f}`)}),Object.entries(n).forEach(([f,C])=>{C==null||C===""?u.style.removeProperty(`--${f}`):u.style.setProperty(`--${f}`,String(C))}),l.current=m,rt(st,n)},[n]);const a=u=>{c(m=>{const f=typeof u=="function"?u(m):u;return{...m,...f||{}}})},i=(u,m=qt)=>{a(f=>{const C={...f};return m.forEach(L=>{C[L]=u}),C})},p=()=>{c({})},h=()=>{r(u=>u==="dark"?"light":"dark")};return o.jsx(Lt.Provider,{value:{theme:s,setTheme:r,toggleTheme:h,themeTokens:n,setThemeTokens:a,setThemeColor:i,resetThemeTokens:p},children:e})}function Jt(){return d.useContext(Lt)}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,s="px")=>typeof e=="number"?`${e}${s}`:e,me=e=>typeof e=="string"&&e.startsWith("$")?`var(--${e.slice(1)})`:e,es=e=>e.includes("-")?e.replace(/-([a-z])/g,(s,r)=>r.toUpperCase()):e,ts=e=>/(color|background|border|fill|stroke|shadow)$/i.test(e),ss={mt:(e,s)=>{e.marginTop=Y(s)},mr:(e,s)=>{e.marginRight=Y(s)},mb:(e,s)=>{e.marginBottom=Y(s)},ml:(e,s)=>{e.marginLeft=Y(s)},mx:(e,s)=>{e.marginLeft=Y(s),e.marginRight=Y(s)},my:(e,s)=>{e.marginTop=Y(s),e.marginBottom=Y(s)},m:(e,s)=>{e.margin=Y(s)},pt:(e,s)=>{e.paddingTop=Y(s)},pr:(e,s)=>{e.paddingRight=Y(s)},pb:(e,s)=>{e.paddingBottom=Y(s)},pl:(e,s)=>{e.paddingLeft=Y(s)},px:(e,s)=>{e.paddingLeft=Y(s),e.paddingRight=Y(s)},py:(e,s)=>{e.paddingTop=Y(s),e.paddingBottom=Y(s)},p:(e,s)=>{e.padding=Y(s)},g:(e,s)=>{e.gap=Y(s)},rg:(e,s)=>{e.rowGap=Y(s)},cg:(e,s)=>{e.columnGap=Y(s)},w:(e,s)=>{e.width=Y(s)},h:(e,s)=>{e.height=Y(s)},mw:(e,s)=>{e.minWidth=Y(s)},mh:(e,s)=>{e.minHeight=Y(s)},maxw:(e,s)=>{e.maxWidth=Y(s)},maxh:(e,s)=>{e.maxHeight=Y(s)},vw:(e,s)=>{e.width=typeof s=="number"?`${s}vw`:s},vh:(e,s)=>{e.height=typeof s=="number"?`${s}vh`:s},presentw:(e,s)=>{e.width=typeof s=="number"?`${s}%`:s},presenth:(e,s)=>{e.height=typeof s=="number"?`${s}%`:s},size:(e,s)=>{e.fontSize=Y(s)},fw:(e,s)=>{e.fontWeight=s},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,s)=>{e.lineHeight=Y(s)},ls:(e,s)=>{e.letterSpacing=Y(s)},c:(e,s)=>{e.color=me(s)},bg:(e,s)=>{e.background=me(s)},bgc:(e,s)=>{e.backgroundColor=me(s)},b:(e,s)=>{e.border=s===1?"1px solid var(--border)":me(s)},br:(e,s)=>{e.borderRadius=Y(s)},bw:(e,s)=>{e.borderWidth=Y(s)},bs:(e,s)=>{e.borderStyle=s},bColor:(e,s)=>{e.borderColor=me(s)},boxshadow:(e,s)=>{e.boxShadow=me(s)},bgSize:(e,s)=>{e.backgroundSize=s},bgPosition:(e,s)=>{e.backgroundPosition=s},bgRepeat:(e,s)=>{e.backgroundRepeat=s},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,s)=>{e.inset=Y(s)},top:(e,s)=>{e.top=Y(s)},right:(e,s)=>{e.right=Y(s)},bottom:(e,s)=>{e.bottom=Y(s)},left:(e,s)=>{e.left=Y(s)},z:(e,s)=>{e.zIndex=s},flex:e=>{e.display="flex"},iflex:e=>{e.display="inline-flex"},fd:(e,s)=>{e.flexDirection=s},fwrap:(e,s="wrap")=>{e.flexWrap=s},aic:e=>{e.alignItems="center"},ai:(e,s)=>{e.alignItems=s},jcc:e=>{e.justifyContent="center"},jc:(e,s)=>{e.justifyContent=s},ac:(e,s)=>{e.alignContent=s},as:(e,s)=>{e.alignSelf=s},f:(e,s)=>{e.flex=typeof s=="number"?s:`${s}`},fl:e=>{e.float="left"},fr:e=>{e.float="right"},ar:(e,s)=>{e.aspectRatio=s},tran:(e,s)=>{e.transition=typeof s=="number"?`${s}s`:s},op:(e,s)=>{e.opacity=s},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,s)=>{e.cursor=s},pe:(e,s)=>{e.pointerEvents=s},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((s,[r,n])=>{if(Qt.has(r))return s;const c=ss[r];if(c)return c(s,n),s;const l=es(r),a=typeof n=="string"&&(n.startsWith("$")||ts(l))?me(n):n;return s[l]=a,s},{}):{},z=(...e)=>{const s=e.filter(Boolean).join(" ").trim();return s?Zt.twMerge(s):""},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}}},os=(e,s)=>be(e)?"root"in e||"slots"in e||"tw"in e||"className"in e||"css"in e||"style"in e?!0:s.some(r=>r!=="root"&&r in e):!1,rs=e=>{const s={};return e.forEach(r=>{s[r]={...Pe}}),s.root||(s.root={...Pe}),s},W=(e,s=["root"])=>{const r=rs(s);if(typeof e=="string")return r.root.tw=e,r;if(!be(e))return r;if(!os(e,s))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:z(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:z(i.tw,p.tw),css:{...i.css,...p.css}}}),r},x=({baseClassName:e="",className:s="",baseStyle:r={},style:n={},sxSlot:c=Pe}={})=>({className:z(e,s,c.tw),style:{...r||{},...c.css||{},...n||{}}}),as=["root","icon","content"],at={success:"text-[var(--notice-success-text)]",fail:"text-[var(--notice-fail-text)]",caution:"text-[var(--notice-caution-text)]"},nt={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 ns(e,s){const{type:r="success",icon:n,message:c,variant:l="default",duration:a=3e3,onClose:i,sx:p={},style:h={},className:u="",...m}=e,[f,C]=d.useState(!1),L=at[r]?r:"success",P=nt[l]?l:"default",D=W(p,as),N=d.useCallback(()=>{C(!0);const M=setTimeout(()=>i==null?void 0:i(),300);return()=>clearTimeout(M)},[i]);d.useEffect(()=>{if(!i||a<=0)return;const M=setTimeout(N,a);return()=>clearTimeout(M)},[i,a,N]);const S=nt[P],v=P==="default"?"animate-[noticeSlideUpFade_0.3s_ease-in_forwards]":"animate-[noticeSlideToBottom_0.3s_ease-in_forwards]",T=x({baseClassName:z("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)]",S.base,f?v:S.enter,P==="md"&&at[L]),className:u,sxSlot:D.root,baseStyle:{borderRadius:"var(--notice-radius)"},style:h}),b=x({baseClassName:"flex-shrink-0 text-[var(--notice-foreground)]",sxSlot:D.icon}),y=x({baseClassName:"inline-block",sxSlot:D.content});return o.jsxs("div",{ref:s,role:"alert",className:T.className,style:T.style,...m,children:[P!=="md"&&n&&o.jsx("span",{className:b.className,style:b.style,children:n}),o.jsx("span",{className:y.className,style:y.style,children:c})]})}const Ne=d.forwardRef(ns);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 Ot=d.createContext(null),ls=o.jsx("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:o.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)"})}),cs=o.jsx("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:o.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)"})}),is=o.jsxs("svg",{viewBox:"0 0 1024 1024",width:"1.2em",height:"1.2em",children:[o.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)"}),o.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)"}),o.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)"})]}),ds={success:ls,fail:cs,caution:is};function us({children:e}){const[s,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 u=Date.now()+Math.random();r(m=>[...m,{id:u,type:i,message:p,variant:h,icon:ds[i]}])},[]);return o.jsxs(Ot.Provider,{value:{add:a,remove:l},children:[e,n&&Wt.createPortal(o.jsx("div",{id:"notification-container",className:"flex flex-col items-center gap-2",children:s.map(i=>o.jsx(Ne,{...i,onClose:()=>l(i.id)},i.id))}),document.body)]})}function ps(){const e=d.useContext(Ot);if(!e)throw new Error("useNotice must be used inside <NoticeProvider />");return e}function ms(){const{add:e}=ps();return{success:s=>e("success",s),fail:s=>e("fail",s),caution:s=>e("caution",s),md:{success:s=>e("success",s,"md"),fail:s=>e("fail",s,"md"),caution:s=>e("caution",s,"md")}}}const _t="tango:locale",xe="zh-CN",bs={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"},At={"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"}}},Ye=()=>{},Mt=d.createContext({locale:xe,setLocale:Ye,toggleLocale:Ye,messages:At,t:(e,s="")=>s}),lt=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),zt=(e,s)=>{const r={...e};return Object.entries(s||{}).forEach(([n,c])=>{lt(c)&&lt(r[n])?r[n]=zt(r[n],c):r[n]=c}),r},xs=(e,s)=>s.split(".").reduce((r,n)=>{if(r&&Object.prototype.hasOwnProperty.call(r,n))return r[n]},e),Se=e=>typeof e!="string"||!e.trim()?xe:bs[e]||e,gs=()=>{if(typeof window>"u")return xe;try{const e=window.localStorage.getItem(_t);return Se(e||xe)}catch{return xe}};function fs({children:e,locale:s,defaultLocale:r=xe,onLocaleChange:n=Ye,messages:c={}}){const l=Se(r),a=s==null?null:Se(s),[i,p]=d.useState(()=>gs()||l),h=a||i,u=L=>{const P=Se(L);a==null&&p(P),n(P)};d.useEffect(()=>{if(!(typeof window>"u"))try{window.localStorage.setItem(_t,h)}catch{}},[h]);const m=d.useMemo(()=>zt(At,c),[c]),f=()=>{u(h==="zh-CN"?"en-US":"zh-CN")},C=(L,P="")=>{const D=m[h]||m[xe]||{},N=xs(D,L);return N==null||N===""?P:String(N)};return o.jsx(Mt.Provider,{value:{locale:h,setLocale:u,toggleLocale:f,messages:m,t:C},children:e})}function re(){return d.useContext(Mt)}const hs="_materialBtn_wlueu_4",ys="_materialBtnSmall_wlueu_26",vs="_materialBtnMedium_wlueu_32",Ss="_materialBtnLarge_wlueu_38",Ns="_materialBtnHuge_wlueu_44",ws="_materialBtnDisabled_wlueu_51",Cs="_ripple_wlueu_59",he={materialBtn:hs,materialBtnSmall:ys,materialBtnMedium:vs,materialBtnLarge:Ss,materialBtnHuge:Ns,materialBtnDisabled:ws,ripple:Cs},ct=["root","content","icon","loading"],Ts={small:"small",medium:"medium",large:"large",huge:"huge"},ks={small:12,medium:14,large:16,huge:20},it={default:{backgroundColor:"var(--primary)",color:"var(--primary-foreground)",borderColor:"var(--border)"},transparent:{backgroundColor:"var(--transparent)",color:"var(--primary-foreground)",borderColor:"var(--button-transparent-border)"},danger:{backgroundColor:"var(--destructive)",color:"var(--destructive-foreground)",borderColor:"transparent"},success:{backgroundColor:"var(--success)",color:"var(--success-foreground)",borderColor:"transparent"}},js={default:{backgroundColor:"var(--transparent)",color:"var(--button-outline-foreground)",borderColor:"var(--border)"},transparent:{backgroundColor:"var(--transparent)",color:"var(--button-outline-foreground)",borderColor:"var(--button-transparent-border)"},danger:{backgroundColor:"var(--transparent)",color:"var(--destructive)",borderColor:"var(--destructive)"},success:{backgroundColor:"var(--transparent)",color:"var(--success)",borderColor:"var(--success)"}},Ls={backgroundColor:"var(--muted)",color:"var(--muted-foreground)",borderColor:"transparent",cursor:"not-allowed"},Fe={default:"按钮",loading:"加载中",iconAlt:"图标"},Ps=e=>e.charAt(0).toUpperCase()+e.slice(1),Os=e=>e===!0||e==="light"||e==="dark"?!0:Array.isArray(e)&&e.length>0?e[0]===!0||e[0]==="light"||e[0]==="dark":!1,_s=e=>e==="light"?"light":e==="dark"||e===!0||Array.isArray(e)&&e.length>=2&&e[1]==="dark"?"dark":"light",dt=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function Oe(e){const{type:s="default",size:r="medium",sx:n={},style:c={},className:l="",onClick:a=()=>{},children:i,disabled:p=!1,outline:h=!1,icon:u=null,iconPosition:m=null,loading:f=!1,i18nKey:C=null,localeText:L={},rippleColor:P,"aria-label":D,...N}=e,{t:S}=re(),v=d.useRef(null),T=dt(r,"medium",Ts),b=dt(s,"default",it),y=Os(f),M=_s(f),_=p||y,E=ks[T],O=m==="right"?"right":u||y?"left":null,k=P??"var(--material-button-ripple)",w={default:S("materialButton.default",Fe.default),loading:S("materialButton.loading",Fe.loading),iconAlt:S("materialButton.iconAlt",Fe.iconAlt),...L},U=(C&&typeof w[C]=="string"?w[C]:null)||(C?S(`materialButton.${C}`,w.default):w.default),I=y?w.loading:U,$=i??I,A=D||(i==null?String($||w.default):void 0),F=W(n,ct),H=_?Ls:h?js[b]:it[b],K=he[`materialBtn${Ps(T)}`],Z=F.root.css||{},R=typeof n=="string"?n:"",J=new Set([...ct,"root","slots","tw","className","css","style"]),le=typeof n=="object"?Object.fromEntries(Object.entries(n).filter(([ee])=>!J.has(ee))):{},de=[he.materialBtn,K,_&&he.materialBtnDisabled,F.root.tw,R,l].filter(Boolean).join(" "),ue={...H,...le,...Z,...c},pe=x({baseClassName:"inline-flex items-center relative z-[1]",sxSlot:F.content}),G=x({baseClassName:"inline-flex items-center justify-center shrink-0 transition-all duration-300 relative z-[1]",baseStyle:{width:`${E}px`,height:`${E}px`},sxSlot:F.icon}),X=x({baseClassName:"inline-flex items-center justify-center shrink-0 animate-spin relative z-[1]",baseStyle:{width:`${E}px`,height:`${E}px`,color:M==="light"?"var(--button-loading-light)":"var(--button-loading-dark)"},sxSlot:F.loading}),B=d.useCallback(ee=>{if(_)return;const se=v.current;if(!se)return;const g=document.createElement("span"),V=Math.max(se.clientWidth,se.clientHeight),Q=V/2;Object.assign(g.style,{width:`${V}px`,height:`${V}px`,left:`${ee.clientX-se.getBoundingClientRect().left-Q}px`,top:`${ee.clientY-se.getBoundingClientRect().top-Q}px`}),g.className=he.ripple,g.style.background=k;const ne=se.querySelector(`.${he.ripple}`);ne&&ne.remove(),se.appendChild(g)},[_,k]),q=()=>{if(!u)return null;if(typeof u=="string")return o.jsx("img",{src:u,alt:w.iconAlt,className:G.className,style:G.style,"aria-hidden":"true"});if(d.isValidElement(u))return d.cloneElement(u,{className:z(G.className,u.props.className),style:{...G.style,...u.props.style},"aria-hidden":!0});if(typeof u=="function"){const ee=u;return o.jsx(ee,{className:G.className,style:G.style,"aria-hidden":"true"})}return o.jsx("span",{className:G.className,style:G.style,"aria-hidden":"true",children:u})},ae=()=>o.jsx("svg",{viewBox:"0 0 1024 1024",role:"presentation",className:X.className,style:X.style,"aria-hidden":"true",children:o.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 o.jsxs("button",{ref:v,className:de,style:ue,onClick:ee=>{B(ee),a==null||a(ee)},disabled:_,"aria-label":A,"data-variant":b,"data-size":T,"data-icon-position":O||void 0,...N,children:[O==="left"&&o.jsxs(o.Fragment,{children:[y&&ae(),!y&&u&&q()]}),o.jsx("span",{className:pe.className,style:pe.style,children:$}),O==="right"&&o.jsxs(o.Fragment,{children:[y&&ae(),!y&&u&&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 As=["root","content","icon","loading"],De={default:"按钮",loading:"加载中",iconAlt:"图标"},Ms="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",Re={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"}},ut={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)]"},zs="bg-[var(--transparent)]",Es={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)]"},$s="shadow-[var(--button-enu-shadow)] hover:shadow-[var(--button-enu-hover-shadow)] active:translate-y-px active:shadow-[var(--button-enu-active-shadow)]",Bs={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"},Is="bg-[var(--muted)] text-[var(--muted-foreground)] border-transparent cursor-not-allowed shadow-none hover:shadow-none",Fs=e=>e===!0||e==="light"||e==="dark"?!0:Array.isArray(e)&&e.length>0?e[0]===!0||e[0]==="light"||e[0]==="dark":!1,Ds=e=>e==="light"?"light":e==="dark"||e===!0||Array.isArray(e)&&e.length>=2&&e[1]==="dark"?"dark":"light",pt=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function oe(e){const{type:s="default",size:r="medium",sx:n={},style:c={},className:l="",onClick:a=()=>{},children:i,disabled:p=!1,outline:h=!1,enu:u=!1,icon:m=null,iconPosition:f=null,loading:C=!1,i18nKey:L=null,localeText:P={},"aria-label":D,...N}=e,{t:S}=re(),v=pt(r,"medium",Re),T=pt(s,"default",ut),b=Fs(C),y=Ds(C),M=p||b,_=Re[v].iconSize,E=f==="right"?"right":m||b?"left":null,O=W(n,As),k={default:S("button.default",De.default),loading:S("button.loading",De.loading),iconAlt:S("button.iconAlt",De.iconAlt),...P},j=(L&&typeof k[L]=="string"?k[L]:null)||(L?S(`button.${L}`,k.default):k.default),U=b?k.loading:j,I=i??U,$=D||(i==null?String(I||k.default):void 0);let A=ut[T];h&&(A=z(A,zs,Es[T])),u&&(A=z(A,$s,Bs[T]));const F=x({baseClassName:z(Ms,Re[v].className,A,M&&Is,b&&"cursor-wait"),className:l,style:c,sxSlot:O.root}),H=x({baseClassName:"inline-flex items-center",sxSlot:O.content}),K=x({baseClassName:"inline-flex items-center justify-center shrink-0 transition-all duration-300",baseStyle:{width:`${_}px`,height:`${_}px`},sxSlot:O.icon}),Z=x({baseClassName:"inline-flex items-center justify-center shrink-0 animate-spin",baseStyle:{width:`${_}px`,height:`${_}px`,color:y==="light"?"var(--button-loading-light)":"var(--button-loading-dark)"},sxSlot:O.loading}),R=()=>{if(!m)return null;if(typeof m=="string")return o.jsx("img",{src:m,alt:k.iconAlt,className:K.className,style:K.style,"aria-hidden":"true"});if(d.isValidElement(m))return d.cloneElement(m,{className:z(K.className,m.props.className),style:{...K.style,...m.props.style},"aria-hidden":!0});if(typeof m=="function"){const le=m;return o.jsx(le,{className:K.className,style:K.style,"aria-hidden":"true"})}return o.jsx("span",{className:K.className,style:K.style,"aria-hidden":"true",children:m})},J=()=>o.jsx("svg",{viewBox:"0 0 1024 1024",role:"presentation",className:Z.className,style:Z.style,"aria-hidden":"true",children:o.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 o.jsxs("button",{className:F.className,style:F.style,onClick:a,disabled:M,"aria-label":$,"data-variant":T,"data-size":v,"data-icon-position":E||void 0,...N,children:[E==="left"&&o.jsxs(o.Fragment,{children:[b&&J(),!b&&m&&R()]}),o.jsx("span",{className:H.className,style:H.style,children:I}),E==="right"&&o.jsxs(o.Fragment,{children:[b&&J(),!b&&m&&R()]})]})}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,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};oe.MaterialButton=Oe;const Rs=["root","input","label"],Vs={small:"small",medium:"medium",large:"large",huge:"huge"},Ys={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"}},Ks={label:""},Us=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function _e(e){const{size:s="medium",sx:r={},style:n={},className:c="",onChange:l,value:a,defaultValue:i,disabled:p=!1,label:h,localeText:u,type:m="text",...f}=e,{t:C}=re(),L=Us(s,"medium",Vs),P=a!==void 0,[D,N]=d.useState(i??""),[S,v]=d.useState(!1),T=P?a:D,b=S||String(T).length>0,y=h??(u==null?void 0:u.label)??C("materialInput.label",Ks.label),M=W(r,Rs),_={tw:z(M.root.tw,M.input.tw),css:{...M.root.css,...M.input.css}},E=z("relative inline-flex",M.root.tw),O=Ys[L],k=z("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)]",O.wrapper,O.pt),w=x({baseClassName:k,className:c,style:n,sxSlot:_}),j=z("absolute left-0 transition-all duration-200 ease-in-out pointer-events-none",b?`top-1 ${O.labelFloat} text-[var(--input-accent)]`:`top-1/2 -translate-y-1/2 ${O.label} text-[var(--muted-foreground)]`,S&&b&&"text-[var(--input-accent)]",p&&"text-[var(--muted-foreground)]",M.label.tw),U=x({baseClassName:j,sxSlot:{tw:"",css:M.label.css}}),I=d.useCallback(Z=>{const R=Z.target.value;P||N(R),l==null||l(R)},[P,l]),$=d.useCallback(Z=>{var R;v(!0),(R=f.onFocus)==null||R.call(f,Z)},[f.onFocus]),A=d.useCallback(Z=>{var R;v(!1),(R=f.onBlur)==null||R.call(f,Z)},[f.onBlur]),{onFocus:F,onBlur:H,...K}=f;return o.jsxs("div",{className:E,children:[o.jsx("input",{...K,type:m,className:w.className,style:w.style,value:T,disabled:p||void 0,onChange:I,onFocus:$,onBlur:A,"aria-label":y||void 0}),y&&o.jsx("label",{className:U.className,style:U.style,children:y})]})}_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 Hs=["root","input"],Ws={small:"small",medium:"medium",large:"large",huge:"huge"},Zs={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"},Gs=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function Ae(e){const{type:s="default",size:r="medium",sx:n={},style:c={},className:l="",onClick:a,onChange:i,value:p,defaultValue:h,disabled:u=!1,placeholder:m="",maxlength:f=524288,status:C,...L}=e,P=Gs(r,"medium",Ws),D=s==="textarea",N=s==="password",S=C==="error",v=W(n,Hs),T={tw:z(v.root.tw,v.input.tw),css:{...v.root.css,...v.input.css}},b=z("inline-flex",v.root.tw),y=z("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)]",S&&"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)]",u&&"bg-[var(--muted)] text-[var(--muted-foreground)] border-[var(--muted)] cursor-not-allowed shadow-none hover:border-[var(--muted)] focus:shadow-none",Zs[P]),M=x({baseClassName:y,className:l,style:c,sxSlot:T}),_=p!==void 0,E={className:M.className,style:M.style,onClick:a,onChange:i?O=>i(O.target.value):void 0,value:_?p:void 0,defaultValue:_?void 0:h??"",disabled:u||void 0,placeholder:m,maxLength:f,"aria-invalid":S||void 0,...N?{autoComplete:"current-password"}:{},...L};return o.jsx("div",{className:b,children:D?o.jsx("textarea",{...E,className:`${E.className} min-h-[80px] py-2 resize-y`}):o.jsx("input",{...E,type:N?"password":"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 qs(e,s){const{sx:r={},style:n={},className:c="",children:l,...a}=e,i=W(r,fe),p=x({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 o.jsx("header",{ref:s,className:p.className,style:p.style,...a,children:l})}const Me=d.forwardRef(qs);Me.displayName="LayoutHeader";Me.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function Xs(e,s){const{sx:r={},style:n={},className:c="",children:l,...a}=e,i=W(r,fe),p=x({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 o.jsx("footer",{ref:s,className:p.className,style:p.style,...a,children:l})}const ze=d.forwardRef(Xs);ze.displayName="LayoutFooter";ze.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function Js(e,s){const{sx:r={},style:n={},className:c="",width:l,children:a,...i}=e,p=W(r,fe),h=x({baseClassName:"overflow-auto flex flex-col bg-[var(--layout-sider-bg)] text-[var(--layout-sider-color)]",className:c,sxSlot:p.root,baseStyle:{width:siderWidth,minWidth:siderWidth,maxWidth:"100%",borderRight:"1px solid var(--layout-border)"},style:n});return o.jsx("aside",{ref:s,className:h.className,style:h.style,...i,children:a})}const we=d.forwardRef(Js);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 Qs(e,s){const{sx:r={},style:n={},className:c="",width:l,children:a,...i}=e,p=W(r,fe),h=l??"var(--layout-toc-width)",u=x({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 o.jsx("nav",{ref:s,className:u.className,style:u.style,...i,children:a})}const Ce=d.forwardRef(Qs);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 eo(e,s){const{sx:r={},style:n={},className:c="",children:l,...a}=e,i=W(r,fe),p=x({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 o.jsx("main",{ref:s,className:p.className,style:p.style,...a,children:l})}const Ee=d.forwardRef(eo);Ee.displayName="LayoutContent";Ee.propTypes={sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};function to(e,s){const{sx:r={},style:n={},className:c="",hasSider:l,children:a,...i}=e,p=W(r,fe),h=l??d.Children.toArray(a).some(m=>{var f,C;return d.isValidElement(m)&&(m.type===we||m.type===Ce||((f=m.type)==null?void 0:f.displayName)==="LayoutSider"||((C=m.type)==null?void 0:C.displayName)==="LayoutToc")}),u=x({baseClassName:z("flex flex-1 flex-col min-h-0",h?"md:flex-row":""),className:c,sxSlot:p.root,style:n});return o.jsx("section",{ref:s,className:u.className,style:u.style,...i,children:a})}const te=d.forwardRef(to);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 Et=Me,$t=ze,Bt=we,It=Ee,Ft=Ce,so=["root","button","list","item"],Dt=Symbol("LIST_IGNORE"),mt=o.jsxs("svg",{viewBox:"0 0 24 24",width:"1em",height:"1em",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:[o.jsx("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z"}),o.jsx("path",{d:"M14 2v6h6"})]}),bt=o.jsx("svg",{viewBox:"0 0 24 24",width:"1em",height:"1em",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:o.jsx("path",{d:"M18 6 6 18M6 6l12 12"})});function oo(e,s){const{sx:r={},style:n={},className:c="",accept:l="image/*",multiple:a=!1,onChange:i=()=>{},beforeUpload:p=()=>{},files:h=[],showUploadList:u=!0,maxCount:m=20,maxSize:f=100,btnText:C="选择文件",btnStyle:L,showSize:P=!0,disabled:D=!1,...N}=e,S=d.useId(),v=h||[],T=W(r,so),b=d.useCallback(async(k,w)=>{if(!p)return!0;try{const j=await p(k,w);return j===void 0?!0:j}catch{return!1}},[p]),y=d.useCallback(async k=>{const j=Array.from(k.target.files||[]).filter($=>$.size/1024/1024>f?(console.warn(`[Tango Upload] ${$.name} 超过 ${f}MB,已被过滤`),!1):!0),U=a?j.slice(0,m):j.slice(0,1),I=[];for(const $ of U){const A=await b($,U);if(A===!1){console.warn(`[Tango Upload] ${$.name} 被 beforeUpload 拦截`);continue}if(A===Dt){console.warn(`[Tango Upload] ${$.name} 被 LIST_IGNORE 忽略`);continue}if(A instanceof Blob){const F=A instanceof File?A:new File([A],$.name,{type:$.type});I.push(F)}else I.push($)}k.target.value="",i(I)},[a,m,f,b,i]),M=d.useCallback((k,w)=>{const j=v.filter((U,I)=>I!==w);i(j)},[v,i]),_=x({baseClassName:"inline-flex flex-col gap-3",className:c,sxSlot:T.root,style:n}),E=x({baseClassName:z("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:T.list}),O=x({baseClassName:z("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:T.item});return o.jsxs("div",{ref:s,className:_.className,style:_.style,...N,children:[o.jsx("input",{id:S,type:"file",accept:l,multiple:a,className:"hidden",onChange:y,disabled:D,"aria-hidden":"true",tabIndex:-1}),o.jsx(oe,{disabled:D,style:L,sx:T.button,onClick:()=>{var k;return(k=document.getElementById(S))==null?void 0:k.click()},children:C}),u&&v.length>0&&o.jsx("ul",{className:E.className,style:E.style,children:a?v.map((k,w)=>o.jsxs("li",{className:O.className,style:O.style,children:[o.jsx("span",{className:"flex-shrink-0 text-[var(--upload-icon-color)]",children:mt}),o.jsxs("span",{className:"flex-1 truncate",children:[k.name,P&&o.jsxs("span",{className:"ml-1 text-xs text-[var(--muted-foreground)]",children:["(",(k.size/1024).toFixed(2)," KB)"]})]}),o.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:()=>M(k,w),"aria-label":`删除 ${k.name}`,children:bt})]},w)):o.jsxs("li",{className:O.className,style:O.style,children:[o.jsx("span",{className:"flex-shrink-0 text-[var(--upload-icon-color)]",children:mt}),o.jsxs("span",{className:"flex-1 truncate",children:[v[0].name,P&&o.jsxs("span",{className:"ml-1 text-xs text-[var(--muted-foreground)]",children:["(",(v[0].size/1024).toFixed(2)," KB)"]})]}),o.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:()=>M(v[0],0),"aria-label":`删除 ${v[0].name}`,children:bt})]})})]})}const $e=d.forwardRef(oo);$e.displayName="Upload";$e.LIST_IGNORE=Dt;$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 ro=["root","icon","content","actions","closeIcon"],xt={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"}},ft={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"}},ht=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function Ke(e){const{children:s,onCancel:r=()=>{},onAction:n=()=>{},size:c="normal",cancelText:l,actionText:a,level:i="info",transparent:p=!1,bannerBgColor:h,bannerBorderColor:u,bannerIconColor:m,sx:f={},style:C={},className:L="",i18nKey:P,localeText:D={},...N}=e,{t:S}=re(),v=ht(c,"normal",gt),T=ht(i,"info",ft),b=gt[v],y=ft[T],M=W(f,ro),_={cancel:S("banner.cancel",xt.cancel),action:S("banner.action",xt.action),...D},E=l??(P==="cancel"?S("banner.cancel",_.cancel):_.cancel),O=a??(P==="action"?S("banner.action",_.action):_.action),k=s??E,w=h||(p===!0?"transparent":`var(${y.bgVar})`),j=u||`var(${y.borderVar})`,U=m||`var(${y.iconVar})`,I=`var(${y.textVar})`,$=x({baseClassName:z("flex w-full items-center justify-start transition-colors duration-200",b.rootClass),className:L,style:{backgroundColor:w,borderColor:j,color:p===!0?"var(--muted-foreground)":I,...C},sxSlot:M.root}),A=x({baseClassName:"shrink-0",baseStyle:{width:`${b.iconSize}px`,height:`${b.iconSize}px`,color:U},sxSlot:M.icon}),F=x({baseClassName:z("flex-grow text-left",b.contentClass),sxSlot:M.content}),H=x({baseClassName:"flex items-center justify-end flex-1",baseStyle:{gap:b.buttonGap},sxSlot:M.actions}),K=x({baseClassName:"shrink-0 cursor-pointer",baseStyle:{width:`${b.closeIconSize}px`,height:`${b.closeIconSize}px`,color:"var(--banner-close-icon)"},sxSlot:M.closeIcon}),Z=o.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[o.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"}),o.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"}),o.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=o.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[o.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"}),o.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"}),o.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=o.jsx("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:o.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=o.jsxs("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[o.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"}),o.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=o.jsx("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:o.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 o.jsxs("div",{className:$.className,style:$.style,"data-level":T,"data-size":v,...N,children:[o.jsx("div",{className:A.className,style:A.style,children:ue[T]}),o.jsx("div",{className:F.className,style:F.style,children:k}),o.jsxs("div",{className:H.className,style:H.style,children:[o.jsx(oe,{type:"transparent",sx:{c:"var(--banner-btn-text)",br:b.buttonBorderRadius,bColor:"transparent",s:b.buttonFontSize},onClick:r,size:v==="normal"?"medium":v,children:E}),o.jsx(oe,{type:"transparent",sx:{c:"var(--banner-btn-text)",br:b.buttonBorderRadius,b:1,bColor:"var(--banner-btn-border)",s:b.buttonFontSize},onClick:n,size:v==="normal"?"medium":v,children:O}),o.jsx("div",{className:K.className,style:K.style,onClick:r,children:de})]})]})}Ke.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 ao=["root","input","text"],Ve={hex:"HEX",rgb:"RGB",hsl:"HSL"},yt={small:{inputSize:20,fontSize:"11px",gap:"6px"},medium:{inputSize:28,fontSize:"12px",gap:"10px"},large:{inputSize:36,fontSize:"14px",gap:"14px"}},no={hex:"hex",rgb:"rgb",hsl:"hsl"},vt=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s,lo=e=>{const s=parseInt(e.slice(1,3),16),r=parseInt(e.slice(3,5),16),n=parseInt(e.slice(5,7),16);return`rgb(${s}, ${r}, ${n})`},co=e=>{let s=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(s,r,n),l=Math.min(s,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===s?a=(r-n)/h+(r<n?6:0):c===r?a=(n-s)/h+2:a=(s-r)/h+4,a/=6}return`hsl(${Math.round(a*360)}, ${Math.round(i*100)}%, ${Math.round(p*100)}%)`},io=(e,s)=>{switch(s){case"rgb":return lo(e);case"hsl":return co(e);default:return e.toUpperCase()}};function Ue(e){const{value:s,defaultValue:r="#000000",onChange:n=()=>{},disabled:c=!1,showText:l=!1,format:a="hex",size:i="medium",sx:p={},style:h={},className:u="",i18nKey:m,localeText:f={},...C}=e,{t:L}=re(),P=vt(i,"medium",yt),D=vt(a,"hex",no),N=yt[P],[S,v]=d.useState(r),T=s??S,b=W(p,ao),y={hex:L("colorpicker.hex",Ve.hex),rgb:L("colorpicker.rgb",Ve.rgb),hsl:L("colorpicker.hsl",Ve.hsl),...f},M=j=>{const U=j.target.value;s===void 0&&v(U),n(U)},_=[];if(l){const j=m||(typeof l=="string"?l:null)||D;_.push({label:y[j],value:io(T,j)})}const E=x({baseClassName:z("inline-flex items-center",c&&"cursor-not-allowed opacity-60"),className:u,baseStyle:{gap:N.gap},style:h,sxSlot:b.root}),O=x({baseClassName:z("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:`${N.inputSize}px`,height:`${N.inputSize}px`,padding:0},sxSlot:b.input}),k=x({baseClassName:"flex flex-col text-[var(--muted-foreground)]",baseStyle:{fontSize:N.fontSize},sxSlot:b.text});return o.jsxs(o.Fragment,{children:[o.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
- `}),o.jsxs("div",{className:E.className,style:E.style,...S,children:[o.jsx("input",{type:"color",value:P,onChange:A,disabled:c,className:`tango-cp-input ${L.className}`,style:L.style,"aria-label":S["aria-label"]||`颜色选择器: ${P}`}),l&&O.length>0&&o.jsx("div",{className:k.className,style:k.style,children:O.map(({label:T,value:U})=>o.jsxs("span",{children:[T,": ",U]},T))})]})]})}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 uo=["root","date","weekday","time"],vt={weekdayPrefix:"星期",weekdayShortPrefix:"周"},St={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"},po=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s,mo=(e,s)=>{const n=new Date().toLocaleDateString(e,{year:"numeric",month:"2-digit",day:"2-digit"});return s?n.replaceAll("/","-"):n},xo=(e,s)=>{let n=new Date().toLocaleString(e,{weekday:"long"});return s&&e.startsWith("zh")&&(n=n.replace("星期","周")),n},ye=(e,s)=>{const r=new Date,n={hour:"2-digit",minute:"2-digit"};return s&&(n.second="2-digit"),r.toLocaleTimeString(e,n)},bo=(e,s,r,n)=>{const c=e.endsWith("-line"),l=mo(s,c),a=xo(s,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(s,!0)}];case"full-line":return[{key:"date",text:l+" "},{key:"weekday",text:a+" "},{key:"time",text:ye(s,!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(s,!0)}];case"no-s":return[{key:"date",text:l+" "},{key:"weekday",text:a+" "},{key:"time",text:ye(s,!1)}];case"no-s-line":return[{key:"date",text:l+" "},{key:"weekday",text:a+" "},{key:"time",text:ye(s,!1)}];default:return[{key:"date",text:l}]}};function He(e){const{type:s="default",single:r=!1,sx:n={},style:c={},className:l="",i18nKey:a,localeText:i={},...p}=e||{},{t:h,locale:u}=ae(),m=po(s,"default",St),g=u==="en-US"?"en-US":"zh-CN";({weekdayPrefix:h("date.weekdayPrefix",vt.weekdayPrefix),weekdayShortPrefix:h("date.weekdayShortPrefix",vt.weekdayShortPrefix),...i});const S=H(n,uo),j=a&&St[a]?a:m,_=bo(j,g,r),I=b({baseClassName:M("inline-flex items-center gap-1 text-[var(--foreground)]"),className:l,baseStyle:{},style:c,sxSlot:S.root}),C={date:b({baseClassName:"",sxSlot:S.date}),weekday:b({baseClassName:"text-[var(--muted-foreground)]",sxSlot:S.weekday}),time:b({baseClassName:"",sxSlot:S.time})};return o.jsx("div",{className:I.className,style:I.style,role:"timer","aria-live":"polite",...p,children:_.map(N=>{const v=C[N.key]||{className:"",style:{}};return o.jsx("span",{className:v.className,style:v.style,children:N.text},N.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 fo=["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} 月"},Nt={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]"}},go=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function We(e){const{value:s,defaultValue:r,onChange:n=()=>{},disabled:c=!1,time:l=!1,size:a="medium",sx:i={},style:p={},className:h="",i18nKey:u,localeText:m={},placeholder:g,...S}=e,{t:j,locale:_}=ae(),I=go(a,"medium",Nt),C=Nt[I],N=_==="en-US",[v,P]=d.useState(r||""),x=s!==void 0?s:v,[y,A]=d.useState("00"),[O,E]=d.useState("00"),[L,k]=d.useState(!1),[w,T]=d.useState(()=>{const f=new Date;return new Date(f.getFullYear(),f.getMonth(),1)}),U=d.useRef(null),B={placeholder:j("datepicker.placeholder",ie.placeholder),placeholderTime:j("datepicker.placeholderTime",ie.placeholderTime),timeLabel:j("datepicker.timeLabel",ie.timeLabel),confirm:j("datepicker.confirm",ie.confirm),cancel:j("datepicker.cancel",ie.cancel),prevMonth:j("datepicker.prevMonth",ie.prevMonth),nextMonth:j("datepicker.nextMonth",ie.nextMonth),weekDays:N?["Su","Mo","Tu","We","Th","Fr","Sa"]:ie.weekDays,monthFormat:N?"${month}/${year}":ie.monthFormat,...m};d.useEffect(()=>{const f=Y=>{U.current&&!U.current.contains(Y.target)&&k(!1)};return document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[]);const F=f=>{const Y=f.getFullYear(),X=(f.getMonth()+1).toString().padStart(2,"0"),pe=f.getDate().toString().padStart(2,"0");return`${Y}-${X}-${pe}`},$=d.useMemo(()=>{const f=w.getFullYear(),Y=w.getMonth()+1;return B.monthFormat.replace("${year}",String(f)).replace("${month}",String(Y))},[w,B.monthFormat]),D=d.useMemo(()=>{const f=w.getFullYear(),Y=w.getMonth(),X=new Date(f,Y,1).getDay(),pe=new Date(f,Y+1,0).getDate(),ce=Array.from({length:pe},(et,Ie)=>Ie+1);return[...Array(X).fill(null),...ce]},[w]),W=d.useMemo(()=>x?l?`${x} ${y}:${O}`:x:"",[x,y,O,l]),K=f=>{const Y=new Date(w.getFullYear(),w.getMonth(),f);return x===F(Y)},Z=(f,Y,X)=>{if(f){if(l){const pe=`${f}T${Y}:${X}`,ce=new Date(pe),et=ce.getFullYear(),Ie=(ce.getMonth()+1).toString().padStart(2,"0"),Yt=ce.getDate().toString().padStart(2,"0"),Kt=ce.getHours().toString().padStart(2,"0"),Ut=ce.getMinutes().toString().padStart(2,"0");n(`${et}-${Ie}-${Yt} ${Kt}:${Ut}`,pe);return}n(f,f)}},R=f=>{const Y=new Date(w.getFullYear(),w.getMonth(),f),X=F(Y);s===void 0&&P(X),Z(X,y,O),l||k(!1)},ee=f=>{const Y=f.target.value;A(Y),Z(x,Y,O)},ne=f=>{const Y=f.target.value;E(Y),Z(x,y,Y)},de=()=>{if(!c){if(x){const[f,Y]=x.split("-").map(Number);T(new Date(f,Y-1,1))}k(!0)}},ue=Array.from({length:24},(f,Y)=>String(Y).padStart(2,"0")),te=Array.from({length:60},(f,Y)=>String(Y).padStart(2,"0")),Q=H(i,fo);typeof i=="string"&&(Q.input.tw=M(Q.input.tw,Q.root.tw),Q.root.tw="");const q=b({baseClassName:"relative inline-block",sxSlot:Q.root}),z=b({baseClassName:M("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)]",C.inputPx,C.textSm,C.minW,c&&"bg-[var(--muted)] text-[var(--muted-foreground)] cursor-not-allowed"),className:h,style:p,sxSlot:Q.input}),G=b({baseClassName:M("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)]",C.panelW),sxSlot:Q.panel}),J=b({baseClassName:"flex items-center justify-between h-10 mb-2",sxSlot:Q.header}),oe=b({baseClassName:"flex flex-wrap",sxSlot:Q.body}),le=b({baseClassName:"mt-2.5 pt-2.5 border-t border-[var(--border)]",sxSlot:Q.footer});return o.jsxs("div",{className:q.className,style:q.style,ref:U,...S,children:[o.jsx("input",{type:"text",value:W,readOnly:!0,onClick:de,className:z.className,style:z.style,disabled:c,placeholder:g||(l?B.placeholderTime:B.placeholder),"aria-label":S["aria-label"]||g||(l?B.placeholderTime:B.placeholder),"aria-haspopup":"dialog","aria-expanded":L}),L&&!c&&o.jsxs("div",{className:G.className,style:G.style,role:"dialog","aria-label":"日期选择面板",children:[o.jsxs("div",{className:J.className,style:J.style,children:[o.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:()=>T(new Date(w.getFullYear(),w.getMonth()-1,1)),"aria-label":B.prevMonth,children:"<"}),o.jsx("div",{className:"text-sm font-semibold text-[var(--foreground)]",children:$}),o.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:()=>T(new Date(w.getFullYear(),w.getMonth()+1,1)),"aria-label":B.nextMonth,children:">"})]}),o.jsxs("div",{className:oe.className,style:oe.style,children:[B.weekDays.map(f=>o.jsx("div",{className:"w-[calc(100%/7)] text-center leading-[30px] text-xs text-[var(--muted-foreground)]",children:f},f)),D.map((f,Y)=>{if(!f)return o.jsx("div",{className:"w-[calc(100%/7)] text-center leading-[30px]"},`empty-${Y}`);const X=K(f);return o.jsx("button",{type:"button",className:M("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)]",X&&"bg-[var(--primary)] text-[var(--primary-foreground)] hover:bg-[var(--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&&o.jsxs("div",{className:le.className,style:le.style,children:[o.jsx("div",{className:"text-xs text-[var(--muted-foreground)] mb-2",children:B.timeLabel}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.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:y,onChange:ee,"aria-label":"小时",children:ue.map(f=>o.jsx("option",{value:f,children:f},f))}),o.jsx("span",{className:"font-semibold text-[var(--muted-foreground)]",children:":"}),o.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:O,onChange:ne,"aria-label":"分钟",children:te.map(f=>o.jsx("option",{value:f,children:f},f))})]}),o.jsxs("div",{className:"mt-2.5 flex justify-end gap-2",children:[o.jsx(re,{onClick:()=>k(!1),size:"small",type:"transparent",outline:!0,children:B.cancel}),o.jsx(re,{onClick:()=>k(!1),size:"small",children:B.confirm})]})]})]})]})}We.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 ho=["overlay","container","header","title","closeBtn","content","footer"],ke={title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"},yo={right:"right",left:"left",top:"top",bottom:"bottom"},vo={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"},So={right:"translateX(100%)",left:"translateX(-100%)",top:"translateY(-100%)",bottom:"translateY(100%)"},No=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function Ze(e){const{children:s,title:r,okText:n,cancelText:c,open:l=!1,onClose:a=()=>{},onOk:i,type:p="right",width:h,height:u,sx:m={},style:g={},className:S="",maskClosable:j=!0,footerButtons:_,localeText:I={},...C}=e,{t:N}=ae(),v=No(p,"right",yo),[P,x]=d.useState(!1),[y,A]=d.useState(!1);d.useEffect(()=>{if(l){x(!0);const R=setTimeout(()=>A(!0),30);return()=>clearTimeout(R)}if(P){A(!1);const R=setTimeout(()=>x(!1),300);return()=>clearTimeout(R)}},[l]),d.useEffect(()=>{if(P){const R=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=R}}},[P]);const O={};v==="left"||v==="right"?O.width=h||"320px":O.height=u||"300px";const E={title:r??N("drawer.title",ke.title),okText:n??N("drawer.okText",ke.okText),cancelText:c??N("drawer.cancelText",ke.cancelText),closeAriaLabel:N("drawer.closeAriaLabel",ke.closeAriaLabel),...I},L=H(m,ho),k=b({baseClassName:"fixed inset-0 z-[999] flex",sxSlot:L.overlay}),w={tw:M(L.root.tw,L.container.tw),css:{...L.root.css,...L.container.css}},T=b({baseClassName:M("fixed bg-[var(--card)] text-[var(--foreground)] flex flex-col transition-all duration-300 ease-in-out",vo[v]),className:S,style:{...O,transform:y?"translate(0, 0)":So[v],...g},sxSlot:w}),U=b({baseClassName:"flex items-center justify-between px-5 pt-5 pb-3 shrink-0",sxSlot:L.header}),B=b({baseClassName:"text-lg font-bold text-[var(--foreground)]",sxSlot:L.title}),F=b({baseClassName:"cursor-pointer p-1 rounded-md hover:bg-[var(--muted)] transition-colors text-[var(--muted-foreground)]",sxSlot:L.closeBtn}),$=b({baseClassName:"flex-1 overflow-auto overscroll-contain px-5 py-2 text-[var(--foreground)]",sxSlot:L.content}),D=b({baseClassName:"flex justify-end gap-2 px-5 py-4 border-t border-[var(--border)] shrink-0",sxSlot:L.footer}),W=R=>{j&&R.target===R.currentTarget&&a()},K=o.jsx("svg",{viewBox:"0 0 1024 1024",width:"20",height:"20",fill:"currentColor","aria-hidden":"true",children:o.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=_!=null&&_.length?_:[{key:"cancel",text:E.cancelText,onClick:a},{key:"ok",text:E.okText,onClick:i||a}];return P?o.jsx("div",{className:k.className,style:{...k.style,backgroundColor:"rgba(0, 0, 0, 0.5)",opacity:y?1:0,transition:"opacity 300ms ease-in-out"},onClick:W,role:"dialog","aria-modal":"true","aria-label":E.title,...C,children:o.jsxs("div",{className:T.className,style:T.style,children:[o.jsxs("div",{className:U.className,style:U.style,children:[o.jsx("h3",{className:B.className,style:B.style,children:E.title}),o.jsx("div",{className:F.className,style:F.style,onClick:a,role:"button",tabIndex:0,"aria-label":E.closeAriaLabel,onKeyDown:R=>{(R.key==="Enter"||R.key===" ")&&a()},children:K})]}),o.jsx("div",{className:$.className,style:$.style,children:s}),o.jsx("div",{className:D.className,style:D.style,children:Z.map(R=>{const ee=R.key==="ok";return o.jsx(re,{onClick:R.onClick,type:"default",outline:!ee,size:"medium",style:ee?{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}Ze.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 wo=["root","text"],wt={small:"my-0.5",medium:"my-1.5",large:"my-2.5",huge:"my-4"};function Co(e,s){const{sx:r={},style:n={},className:c="",size:l="medium",children:a,...i}=e,p=H(r,wo),h=wt[l]||wt.medium,u=!!a,m=b({baseClassName:M("flex items-center justify-center relative w-full",h),className:c,sxSlot:p.root,baseStyle:{},style:n}),g=b({baseClassName:"px-2 whitespace-nowrap z-[1]",sxSlot:p.text});return o.jsxs("div",{ref:s,className:m.className,style:m.style,...i,children:[o.jsx("span",{className:`flex-1 h-px bg-[var(--line-color)] ${u?"mr-2.5":""}`}),u&&o.jsx("span",{className:g.className,style:g.style,children:a}),o.jsx("span",{className:`flex-1 h-px bg-[var(--line-color)] ${u?"ml-2.5":""}`})]})}const Ge=d.forwardRef(Co);Ge.displayName="Line";Ge.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 To=["root"],Ct={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 ko(e,s){const{sx:r={},style:n={},className:c="",color:l="default",beauty:a=!1,children:i,...p}=e,h=H(r,To),u=Ct[l]||Ct.default,m=b({baseClassName:M("inline-block",u,a?"px-2 py-1 rounded":""),className:c,sxSlot:h.root,baseStyle:{},style:n});return o.jsx("mark",{ref:s,className:m.className,style:m.style,...p,children:i})}const qe=d.forwardRef(ko);qe.displayName="Mark";qe.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 jo=["overlay","container","header","title","closeBtn","content","footer"],je={title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"};function Xe(e){const{children:s,title:r,okText:n,cancelText:c,open:l=!1,onClose:a=()=>{},onOk:i,width:p,sx:h={},style:u={},className:m="",maskClosable:g=!0,footerButtons:S,localeText:j={},..._}=e,{t:I}=ae(),[C,N]=d.useState(!1),[v,P]=d.useState(!1);d.useEffect(()=>{if(l){N(!0);const D=setTimeout(()=>P(!0),30);return()=>clearTimeout(D)}if(C){P(!1);const D=setTimeout(()=>N(!1),300);return()=>clearTimeout(D)}},[l]),d.useEffect(()=>{if(C){const D=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=D}}},[C]);const x={title:r??I("modal.title",je.title),okText:n??I("modal.okText",je.okText),cancelText:c??I("modal.cancelText",je.cancelText),closeAriaLabel:I("modal.closeAriaLabel",je.closeAriaLabel),...j},y=H(h,jo),A=b({baseClassName:"fixed inset-0 z-[999] flex justify-center items-center",sxSlot:y.overlay}),O={tw:M(y.root.tw,y.container.tw),css:{...y.root.css,...y.container.css}},E=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:m,style:{width:p||"520px",maxWidth:"90vw",minHeight:"200px",maxHeight:"80vh",transform:v?"scale(1)":"scale(0.8)",opacity:v?1:0,...u},sxSlot:O}),L=b({baseClassName:"flex items-center justify-between px-5 pt-5 pb-3 shrink-0",sxSlot:y.header}),k=b({baseClassName:"text-lg font-bold text-[var(--foreground)]",sxSlot:y.title}),w=b({baseClassName:"cursor-pointer p-1 rounded-md hover:bg-[var(--muted)] transition-colors text-[var(--muted-foreground)]",sxSlot:y.closeBtn}),T=b({baseClassName:"flex-1 overflow-auto overscroll-contain px-6 py-5 text-[var(--foreground)]",sxSlot:y.content}),U=b({baseClassName:"flex justify-end gap-2 px-5 py-4 border-t border-[var(--border)] shrink-0",sxSlot:y.footer}),B=D=>{g&&D.target===D.currentTarget&&a()},F=o.jsx("svg",{viewBox:"0 0 1024 1024",width:"20",height:"20",fill:"currentColor","aria-hidden":"true",children:o.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"})}),$=S!=null&&S.length?S:[{key:"cancel",text:x.cancelText,onClick:a},{key:"ok",text:x.okText,onClick:i||a}];return C?o.jsx("div",{className:A.className,style:{...A.style,backgroundColor:"rgba(0, 0, 0, 0.5)",opacity:v?1:0,transition:"opacity 300ms ease-in-out"},onClick:B,role:"dialog","aria-modal":"true","aria-label":x.title,..._,children:o.jsxs("div",{className:E.className,style:E.style,children:[o.jsxs("div",{className:L.className,style:L.style,children:[o.jsx("h3",{className:k.className,style:k.style,children:x.title}),o.jsx("div",{className:w.className,style:w.style,onClick:a,role:"button",tabIndex:0,"aria-label":x.closeAriaLabel,onKeyDown:D=>{(D.key==="Enter"||D.key===" ")&&a()},children:F})]}),o.jsx("div",{className:T.className,style:T.style,children:s}),o.jsx("div",{className:U.className,style:U.style,children:$.map(D=>{const W=D.key==="ok";return o.jsx(re,{onClick:D.onClick,type:"default",outline:!W,size:"medium",style:W?{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:D.text},D.key)})})]})}):null}Xe.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 Lo=["root","input","button"],Po={small:"small",medium:"medium",large:"large",huge:"huge"},_o={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"},Oo={small:"small",medium:"small",large:"medium",huge:"medium"},Tt={placeholder:"请输入内容",btnText:"搜索"},Ao=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function Je(e){const{size:s="medium",sx:r={},style:n={},className:c="",onSearch:l,value:a,defaultValue:i,disabled:p=!1,placeholder:h,btnText:u,localeText:m,path:g="",...S}=e,{t:j}=ae(),_=d.useRef(null),I=Ao(s,"medium",Po),C=a!==void 0,N=j("search.placeholder",Tt.placeholder),v=j("search.btnText",Tt.btnText),P=h??(m==null?void 0:m.placeholder)??N,x=u??(m==null?void 0:m.btnText)??v,y=H(r,Lo),A={tw:M(y.root.tw,y.input.tw),css:{...y.root.css,...y.input.css}},O=M("relative inline-flex",y.root.tw),E=M("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)]",p&&"bg-[var(--muted)] text-[var(--muted-foreground)] border-[var(--muted)] cursor-not-allowed shadow-none hover:border-[var(--muted)] focus:shadow-none",_o[I]),L=b({baseClassName:E,className:c,style:n,sxSlot:A}),k=b({baseClassName:"absolute top-1/2 -translate-y-1/2",sxSlot:y.button,style:{right:"calc(var(--spacing) * 2)"}}),w=d.useCallback(()=>{var B;return C?a:((B=_.current)==null?void 0:B.value)??""},[C,a]),T=d.useCallback(()=>{l==null||l(w())},[l,w]),U=d.useCallback(B=>{B.key==="Enter"&&T()},[T]);return o.jsxs("div",{className:O,children:[o.jsx("input",{ref:C?void 0:_,className:L.className,style:L.style,onKeyDown:U,value:C?a:void 0,defaultValue:C?void 0:i??"",disabled:p||void 0,placeholder:P,type:"text",role:"searchbox","aria-label":P,...S}),o.jsx("div",{className:k.className,style:k.style,children:o.jsx(re,{onClick:T,size:Oo[I],disabled:p,"aria-label":x,children:g?o.jsx("img",{src:g,alt:"search-icon",style:{width:16,height:16,marginTop:2,marginBottom:-3}}):x})})]})}Je.propTypes={size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,onSearch: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 Dt={default:"",inline:"inline-block",circle:"rounded-full",triangle:"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:"rounded-t-full rounded-b-none",fixed:"fixed",absolute:"absolute",relative:"relative"},Rt=Object.keys(Dt),Mo=["root"];function zo(e,s){const{sx:r={},style:n={},className:c="",type:l="default",children:a,...i}=e,p=Rt.includes(l)?l:"default",h=H(r,Mo),u=b({baseClassName:Dt[p],className:c,sxSlot:h.root}),m=p==="halfCircle"?{width:"var(--space-half-circle-w)",height:"var(--space-half-circle-h)",background:"var(--space-half-circle-color)"}:{};return o.jsx("div",{ref:s,className:u.className,style:{...m,...u.style,...n},...i,children:a})}const Qe=d.forwardRef(zo);Qe.propTypes={type:t.oneOf(Rt),sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};Qe.displayName="Space";const Eo=["root","wrapper","thead","headerCell","body","row","cell","empty","pagination"],fe={empty:"暂无数据",prev:"上一页",next:"下一页",page:"页",total:"共 {total} 条",perPage:"条/页"},$o=10,Bo=[10,20,50,100],Le=(e,...s)=>typeof e=="function"?e(...s):e??{};function Vt(e){const{dataSource:s=[],columns:r=[],sx:n={},style:c={},className:l="",pagination:a=null,hide:i=[],rowClassName:p,rowStyle:h,cellClassName:u,cellStyle:m,hoverColor:g="",i18nKey:S=null,localeText:j={},"aria-label":_,...I}=e,{t:C}=ae();s.length===0&&r.length===0&&console.warn("[Tango Table] dataSource 和 columns 不能同时为空,请至少提供一项。");const N={empty:C("table.empty",fe.empty),prev:C("table.prev",fe.prev),next:C("table.next",fe.next),page:C("table.page",fe.page),total:C("table.total",fe.total),perPage:C("table.perPage",fe.perPage),...j},v=Array.isArray(i)?i:typeof i=="string"?[i]:[],P=d.useMemo(()=>r.filter(q=>!q.hide&&!v.includes(q.dataIndex)),[r,v]),x=a!==null&&a!==!1,y=a&&a.placement||"bottom",A=a&&a.pageSize||$o,O=a&&a.pageSizeOptions||Bo,E=(a==null?void 0:a.showTotal)!==!1,L=(a==null?void 0:a.showSizeChanger)!==!1,[k,w]=d.useState(1),[T,U]=d.useState(A),B=s.length,F=Math.max(1,Math.ceil(B/T)),$=Math.min(k,F),D=d.useMemo(()=>{if(!x)return s;const q=($-1)*T;return s.slice(q,q+T)},[s,$,T,x]),W=d.useCallback(q=>w(Math.max(1,Math.min(q,F))),[F]),K=H(n,Eo),Z=b({baseClassName:M("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:M(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}),ee=b({baseClassName:"text-[var(--foreground)]",sxSlot:K.body}),ne=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=g?o.jsx("style",{children:`
6
+ `}),o.jsxs("div",{className:E.className,style:E.style,...C,children:[o.jsx("input",{type:"color",value:T,onChange:M,disabled:c,className:`tango-cp-input ${O.className}`,style:O.style,"aria-label":C["aria-label"]||`颜色选择器: ${T}`}),l&&_.length>0&&o.jsx("div",{className:k.className,style:k.style,children:_.map(({label:j,value:U})=>o.jsxs("span",{children:[j,": ",U]},j))})]})]})}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 uo=["root","date","weekday","time"],St={weekdayPrefix:"星期",weekdayShortPrefix:"周"},Nt={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"},po=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s,mo=(e,s)=>{const n=new Date().toLocaleDateString(e,{year:"numeric",month:"2-digit",day:"2-digit"});return s?n.replaceAll("/","-"):n},bo=(e,s)=>{let n=new Date().toLocaleString(e,{weekday:"long"});return s&&e.startsWith("zh")&&(n=n.replace("星期","周")),n},ye=(e,s)=>{const r=new Date,n={hour:"2-digit",minute:"2-digit"};return s&&(n.second="2-digit"),r.toLocaleTimeString(e,n)},xo=(e,s,r,n)=>{const c=e.endsWith("-line"),l=mo(s,c),a=bo(s,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(s,!0)}];case"full-line":return[{key:"date",text:l+" "},{key:"weekday",text:a+" "},{key:"time",text:ye(s,!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(s,!0)}];case"no-s":return[{key:"date",text:l+" "},{key:"weekday",text:a+" "},{key:"time",text:ye(s,!1)}];case"no-s-line":return[{key:"date",text:l+" "},{key:"weekday",text:a+" "},{key:"time",text:ye(s,!1)}];default:return[{key:"date",text:l}]}};function He(e){const{type:s="default",single:r=!1,sx:n={},style:c={},className:l="",i18nKey:a,localeText:i={},...p}=e||{},{t:h,locale:u}=re(),[m,f]=d.useState(!1);d.useEffect(()=>{f(!0)},[]);const C=po(s,"default",Nt),L=u==="en-US"?"en-US":"zh-CN";({weekdayPrefix:h("date.weekdayPrefix",St.weekdayPrefix),weekdayShortPrefix:h("date.weekdayShortPrefix",St.weekdayShortPrefix),...i});const P=W(n,uo),D=a&&Nt[a]?a:C,N=m?xo(D,L,r):[],S=x({baseClassName:z("inline-flex items-center gap-1 text-[var(--foreground)]"),className:l,baseStyle:{},style:c,sxSlot:P.root}),v={date:x({baseClassName:"",sxSlot:P.date}),weekday:x({baseClassName:"text-[var(--muted-foreground)]",sxSlot:P.weekday}),time:x({baseClassName:"",sxSlot:P.time})};return o.jsx("div",{className:S.className,style:S.style,role:"timer","aria-live":"polite",...p,children:N.map(T=>{const b=v[T.key]||{className:"",style:{}};return o.jsx("span",{className:b.className,style:b.style,children:T.text},T.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 go=["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} 月"},wt={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]"}},fo=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function We(e){const{value:s,defaultValue:r,onChange:n=()=>{},disabled:c=!1,time:l=!1,size:a="medium",sx:i={},style:p={},className:h="",i18nKey:u,localeText:m={},placeholder:f,...C}=e,{t:L,locale:P}=re(),D=fo(a,"medium",wt),N=wt[D],S=P==="en-US",[v,T]=d.useState(r||""),b=s!==void 0?s:v,[y,M]=d.useState("00"),[_,E]=d.useState("00"),[O,k]=d.useState(!1),[w,j]=d.useState(()=>{const g=new Date;return new Date(g.getFullYear(),g.getMonth(),1)}),U=d.useRef(null),I={placeholder:L("datepicker.placeholder",ie.placeholder),placeholderTime:L("datepicker.placeholderTime",ie.placeholderTime),timeLabel:L("datepicker.timeLabel",ie.timeLabel),confirm:L("datepicker.confirm",ie.confirm),cancel:L("datepicker.cancel",ie.cancel),prevMonth:L("datepicker.prevMonth",ie.prevMonth),nextMonth:L("datepicker.nextMonth",ie.nextMonth),weekDays:S?["Su","Mo","Tu","We","Th","Fr","Sa"]:ie.weekDays,monthFormat:S?"${month}/${year}":ie.monthFormat,...m};d.useEffect(()=>{const g=V=>{U.current&&!U.current.contains(V.target)&&k(!1)};return document.addEventListener("mousedown",g),()=>document.removeEventListener("mousedown",g)},[]);const $=g=>{const V=g.getFullYear(),Q=(g.getMonth()+1).toString().padStart(2,"0"),ne=g.getDate().toString().padStart(2,"0");return`${V}-${Q}-${ne}`},A=d.useMemo(()=>{const g=w.getFullYear(),V=w.getMonth()+1;return I.monthFormat.replace("${year}",String(g)).replace("${month}",String(V))},[w,I.monthFormat]),F=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},(et,Ie)=>Ie+1);return[...Array(Q).fill(null),...ce]},[w]),H=d.useMemo(()=>b?l?`${b} ${y}:${_}`:b:"",[b,y,_,l]),K=g=>{const V=new Date(w.getFullYear(),w.getMonth(),g);return b===$(V)},Z=(g,V,Q)=>{if(g){if(l){const ne=`${g}T${V}:${Q}`,ce=new Date(ne),et=ce.getFullYear(),Ie=(ce.getMonth()+1).toString().padStart(2,"0"),Kt=ce.getDate().toString().padStart(2,"0"),Ut=ce.getHours().toString().padStart(2,"0"),Ht=ce.getMinutes().toString().padStart(2,"0");n(`${et}-${Ie}-${Kt} ${Ut}:${Ht}`,ne);return}n(g,g)}},R=g=>{const V=new Date(w.getFullYear(),w.getMonth(),g),Q=$(V);s===void 0&&T(Q),Z(Q,y,_),l||k(!1)},J=g=>{const V=g.target.value;M(V),Z(b,V,_)},le=g=>{const V=g.target.value;E(V),Z(b,y,V)},de=()=>{if(!c){if(b){const[g,V]=b.split("-").map(Number);j(new Date(g,V-1,1))}k(!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=W(i,go);typeof i=="string"&&(G.input.tw=z(G.input.tw,G.root.tw),G.root.tw="");const X=x({baseClassName:"relative inline-block",sxSlot:G.root}),B=x({baseClassName:z("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)]",N.inputPx,N.textSm,N.minW,c&&"bg-[var(--muted)] text-[var(--muted-foreground)] cursor-not-allowed"),className:h,style:p,sxSlot:G.input}),q=x({baseClassName:z("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)]",N.panelW),sxSlot:G.panel}),ae=x({baseClassName:"flex items-center justify-between h-10 mb-2",sxSlot:G.header}),ee=x({baseClassName:"flex flex-wrap",sxSlot:G.body}),se=x({baseClassName:"mt-2.5 pt-2.5 border-t border-[var(--border)]",sxSlot:G.footer});return o.jsxs("div",{className:X.className,style:X.style,ref:U,...C,children:[o.jsx("input",{type:"text",value:H,readOnly:!0,onClick:de,className:B.className,style:B.style,disabled:c,placeholder:f||(l?I.placeholderTime:I.placeholder),"aria-label":C["aria-label"]||f||(l?I.placeholderTime:I.placeholder),"aria-haspopup":"dialog","aria-expanded":O}),O&&!c&&o.jsxs("div",{className:q.className,style:q.style,role:"dialog","aria-label":"日期选择面板",children:[o.jsxs("div",{className:ae.className,style:ae.style,children:[o.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:()=>j(new Date(w.getFullYear(),w.getMonth()-1,1)),"aria-label":I.prevMonth,children:"<"}),o.jsx("div",{className:"text-sm font-semibold text-[var(--foreground)]",children:A}),o.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:()=>j(new Date(w.getFullYear(),w.getMonth()+1,1)),"aria-label":I.nextMonth,children:">"})]}),o.jsxs("div",{className:ee.className,style:ee.style,children:[I.weekDays.map(g=>o.jsx("div",{className:"w-[calc(100%/7)] text-center leading-[30px] text-xs text-[var(--muted-foreground)]",children:g},g)),F.map((g,V)=>{if(!g)return o.jsx("div",{className:"w-[calc(100%/7)] text-center leading-[30px]"},`empty-${V}`);const Q=K(g);return o.jsx("button",{type:"button",className:z("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&&o.jsxs("div",{className:se.className,style:se.style,children:[o.jsx("div",{className:"text-xs text-[var(--muted-foreground)] mb-2",children:I.timeLabel}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.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:y,onChange:J,"aria-label":"小时",children:ue.map(g=>o.jsx("option",{value:g,children:g},g))}),o.jsx("span",{className:"font-semibold text-[var(--muted-foreground)]",children:":"}),o.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:_,onChange:le,"aria-label":"分钟",children:pe.map(g=>o.jsx("option",{value:g,children:g},g))})]}),o.jsxs("div",{className:"mt-2.5 flex justify-end gap-2",children:[o.jsx(oe,{onClick:()=>k(!1),size:"small",type:"transparent",outline:!0,style:{backgroundColor:"var(--datepicker-cancel-bg)",color:"var(--datepicker-cancel-fg)"},children:I.cancel}),o.jsx(oe,{onClick:()=>k(!1),size:"small",style:{backgroundColor:"var(--datepicker-confirm-bg)",color:"var(--datepicker-confirm-fg)",borderColor:"var(--datepicker-confirm-bg)"},children:I.confirm})]})]})]})]})}We.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 ho=["overlay","container","header","title","closeBtn","content","footer"],ke={title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"},yo={right:"right",left:"left",top:"top",bottom:"bottom"},vo={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"},So={right:"translateX(100%)",left:"translateX(-100%)",top:"translateY(-100%)",bottom:"translateY(100%)"},No=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function Ze(e){const{children:s,title:r,okText:n,cancelText:c,open:l=!1,onClose:a=()=>{},onOk:i,type:p="right",width:h,height:u,sx:m={},style:f={},className:C="",maskClosable:L=!0,footerButtons:P,localeText:D={},...N}=e,{t:S}=re(),v=No(p,"right",yo),[T,b]=d.useState(!1),[y,M]=d.useState(!1);d.useEffect(()=>{if(l){b(!0);const R=setTimeout(()=>M(!0),30);return()=>clearTimeout(R)}if(T){M(!1);const R=setTimeout(()=>b(!1),300);return()=>clearTimeout(R)}},[l]),d.useEffect(()=>{if(T){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)}}},[T]);const _={};v==="left"||v==="right"?_.width=h||"320px":_.height=u||"300px";const E={title:r??S("drawer.title",ke.title),okText:n??S("drawer.okText",ke.okText),cancelText:c??S("drawer.cancelText",ke.cancelText),closeAriaLabel:S("drawer.closeAriaLabel",ke.closeAriaLabel),...D},O=W(m,ho),k=x({baseClassName:"fixed inset-0 z-[999] flex",sxSlot:O.overlay}),w={tw:z(O.root.tw,O.container.tw),css:{...O.root.css,...O.container.css}},j=x({baseClassName:z("fixed bg-[var(--card)] text-[var(--foreground)] flex flex-col transition-all duration-300 ease-in-out",vo[v]),className:C,style:{..._,transform:y?"translate(0, 0)":So[v],...f},sxSlot:w}),U=x({baseClassName:"flex items-center justify-between px-5 pt-5 pb-3 shrink-0",sxSlot:O.header}),I=x({baseClassName:"text-lg font-bold text-[var(--foreground)]",sxSlot:O.title}),$=x({baseClassName:"cursor-pointer p-1 rounded-md hover:bg-[var(--muted)] transition-colors text-[var(--muted-foreground)]",sxSlot:O.closeBtn}),A=x({baseClassName:"flex-1 overflow-auto overscroll-contain px-5 py-2 text-[var(--foreground)]",sxSlot:O.content}),F=x({baseClassName:"flex justify-end gap-2 px-5 py-4 border-t border-[var(--border)] shrink-0",sxSlot:O.footer}),H=R=>{L&&R.target===R.currentTarget&&a()},K=o.jsx("svg",{viewBox:"0 0 1024 1024",width:"20",height:"20",fill:"currentColor","aria-hidden":"true",children:o.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=P!=null&&P.length?P:[{key:"cancel",text:E.cancelText,onClick:a},{key:"ok",text:E.okText,onClick:i||a}];return T?o.jsx("div",{className:k.className,style:{...k.style,backgroundColor:"rgba(0, 0, 0, 0.5)",opacity:y?1:0,transition:"opacity 300ms ease-in-out"},onClick:H,role:"dialog","aria-modal":"true","aria-label":E.title,...N,children:o.jsxs("div",{className:j.className,style:j.style,children:[o.jsxs("div",{className:U.className,style:U.style,children:[o.jsx("h3",{className:I.className,style:I.style,children:E.title}),o.jsx("div",{className:$.className,style:$.style,onClick:a,role:"button",tabIndex:0,"aria-label":E.closeAriaLabel,onKeyDown:R=>{(R.key==="Enter"||R.key===" ")&&a()},children:K})]}),o.jsx("div",{className:A.className,style:A.style,children:s}),o.jsx("div",{className:F.className,style:F.style,children:Z.map(R=>{const J=R.key==="ok";return o.jsx(oe,{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}Ze.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 wo=["root","text"],Ct={small:"my-0.5",medium:"my-1.5",large:"my-2.5",huge:"my-4"};function Co(e,s){const{sx:r={},style:n={},className:c="",size:l="medium",children:a,...i}=e,p=W(r,wo),h=Ct[l]||Ct.medium,u=!!a,m=x({baseClassName:z("flex items-center justify-center relative w-full",h),className:c,sxSlot:p.root,baseStyle:{},style:n}),f=x({baseClassName:"px-2 whitespace-nowrap z-[1]",sxSlot:p.text});return o.jsxs("span",{ref:s,className:m.className,style:{...m.style,display:"flex",alignItems:"center",justifyContent:"center"},...i,children:[o.jsx("span",{className:`flex-1 h-px bg-[var(--line-color)] ${u?"mr-2.5":""}`}),u&&o.jsx("span",{className:f.className,style:f.style,children:a}),o.jsx("span",{className:`flex-1 h-px bg-[var(--line-color)] ${u?"ml-2.5":""}`})]})}const Ge=d.forwardRef(Co);Ge.displayName="Line";Ge.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 To=["root"],Tt={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 ko(e,s){const{sx:r={},style:n={},className:c="",color:l="default",beauty:a=!1,children:i,...p}=e,h=W(r,To),u=Tt[l]||Tt.default,m=x({baseClassName:z("inline-block",u,a?"px-2 py-1 rounded":""),className:c,sxSlot:h.root,baseStyle:{},style:n});return o.jsx("mark",{ref:s,className:m.className,style:m.style,...p,children:i})}const qe=d.forwardRef(ko);qe.displayName="Mark";qe.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 jo=["overlay","container","header","title","closeBtn","content","footer"],je={title:"基础标题",okText:"确定",cancelText:"取消",closeAriaLabel:"关闭"};function Xe(e){const{children:s,title:r,okText:n,cancelText:c,open:l=!1,onClose:a=()=>{},onOk:i,width:p,sx:h={},style:u={},className:m="",maskClosable:f=!0,footerButtons:C,localeText:L={},...P}=e,{t:D}=re(),[N,S]=d.useState(!1),[v,T]=d.useState(!1);d.useEffect(()=>{if(l){S(!0);const F=setTimeout(()=>T(!0),30);return()=>clearTimeout(F)}if(N){T(!1);const F=setTimeout(()=>S(!1),300);return()=>clearTimeout(F)}},[l]),d.useEffect(()=>{if(N){const F=parseInt(document.body.dataset.tangoScrollLock||"0",10);return F===0&&(document.body.dataset.tangoOriginalOverflow=document.body.style.overflow),document.body.dataset.tangoScrollLock=String(F+1),document.body.style.overflow="hidden",()=>{const H=parseInt(document.body.dataset.tangoScrollLock||"0",10);H<=1?(document.body.style.overflow=document.body.dataset.tangoOriginalOverflow||"",delete document.body.dataset.tangoOriginalOverflow,delete document.body.dataset.tangoScrollLock):document.body.dataset.tangoScrollLock=String(H-1)}}},[N]);const b={title:r??D("modal.title",je.title),okText:n??D("modal.okText",je.okText),cancelText:c??D("modal.cancelText",je.cancelText),closeAriaLabel:D("modal.closeAriaLabel",je.closeAriaLabel),...L},y=W(h,jo),M=x({baseClassName:"fixed inset-0 z-[999] flex justify-center items-center",sxSlot:y.overlay}),_={tw:z(y.root.tw,y.container.tw),css:{...y.root.css,...y.container.css}},E=x({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:m,style:{width:p||"520px",maxWidth:"90vw",minHeight:"200px",maxHeight:"80vh",transform:v?"scale(1)":"scale(0.8)",opacity:v?1:0,...u},sxSlot:_}),O=x({baseClassName:"flex items-center justify-between px-5 pt-5 pb-3 shrink-0",sxSlot:y.header}),k=x({baseClassName:"text-lg font-bold text-[var(--foreground)]",sxSlot:y.title}),w=x({baseClassName:"cursor-pointer p-1 rounded-md hover:bg-[var(--muted)] transition-colors text-[var(--muted-foreground)]",sxSlot:y.closeBtn}),j=x({baseClassName:"flex-1 overflow-auto overscroll-contain px-6 py-5 text-[var(--foreground)]",sxSlot:y.content}),U=x({baseClassName:"flex justify-end gap-2 px-5 py-4 border-t border-[var(--border)] shrink-0",sxSlot:y.footer}),I=F=>{f&&F.target===F.currentTarget&&a()},$=o.jsx("svg",{viewBox:"0 0 1024 1024",width:"20",height:"20",fill:"currentColor","aria-hidden":"true",children:o.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"})}),A=C!=null&&C.length?C:[{key:"cancel",text:b.cancelText,onClick:a},{key:"ok",text:b.okText,onClick:i||a}];return N?o.jsx("div",{className:M.className,style:{...M.style,backgroundColor:"rgba(0, 0, 0, 0.5)",opacity:v?1:0,transition:"opacity 300ms ease-in-out"},onClick:I,role:"dialog","aria-modal":"true","aria-label":b.title,...P,children:o.jsxs("div",{className:E.className,style:E.style,children:[o.jsxs("div",{className:O.className,style:O.style,children:[o.jsx("h3",{className:k.className,style:k.style,children:b.title}),o.jsx("div",{className:w.className,style:w.style,onClick:a,role:"button",tabIndex:0,"aria-label":b.closeAriaLabel,onKeyDown:F=>{(F.key==="Enter"||F.key===" ")&&a()},children:$})]}),o.jsx("div",{className:j.className,style:j.style,children:s}),o.jsx("div",{className:U.className,style:U.style,children:A.map(F=>{const H=F.key==="ok";return o.jsx(oe,{onClick:F.onClick,type:"default",outline:!H,size:"medium",style:H?{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:F.text},F.key)})})]})}):null}Xe.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 Lo=["root","input","button"],Po={small:"small",medium:"medium",large:"large",huge:"huge"},Oo={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"},_o={small:"small",medium:"small",large:"medium",huge:"medium"},kt={placeholder:"请输入内容",btnText:"搜索"},Ao=(e,s,r)=>Object.prototype.hasOwnProperty.call(r,e)?e:s;function Je(e){const{size:s="medium",sx:r={},style:n={},className:c="",onSearch:l,value:a,defaultValue:i,disabled:p=!1,placeholder:h,btnText:u,localeText:m,path:f="",...C}=e,{t:L}=re(),P=d.useRef(null),D=Ao(s,"medium",Po),N=a!==void 0,S=L("search.placeholder",kt.placeholder),v=L("search.btnText",kt.btnText),T=h??(m==null?void 0:m.placeholder)??S,b=u??(m==null?void 0:m.btnText)??v,y=W(r,Lo),M={tw:z(y.root.tw,y.input.tw),css:{...y.root.css,...y.input.css}},_=z("relative inline-flex",y.root.tw),E=z("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)]",p&&"bg-[var(--muted)] text-[var(--muted-foreground)] border-[var(--muted)] cursor-not-allowed shadow-none hover:border-[var(--muted)] focus:shadow-none",Oo[D]),O=x({baseClassName:E,className:c,style:n,sxSlot:M}),k=x({baseClassName:"absolute top-1/2 -translate-y-1/2",sxSlot:y.button,style:{right:"calc(var(--spacing) * 2)"}}),w={right:k.style.right},j={...k.style};delete j.right;const U=d.useCallback(()=>{var A;return N?a:((A=P.current)==null?void 0:A.value)??""},[N,a]),I=d.useCallback(()=>{l==null||l(U())},[l,U]),$=d.useCallback(A=>{A.key==="Enter"&&I()},[I]);return o.jsxs("div",{className:_,children:[o.jsx("input",{ref:N?void 0:P,className:O.className,style:O.style,onKeyDown:$,value:N?a:void 0,defaultValue:N?void 0:i??"",disabled:p||void 0,placeholder:T,type:"text",role:"searchbox","aria-label":T,...C}),o.jsx("div",{className:k.className,style:w,children:o.jsx(oe,{onClick:I,size:_o[D],disabled:p,"aria-label":b,style:j,children:f?o.jsx("img",{src:f,alt:"search-icon",style:{width:16,height:16,marginTop:2,marginBottom:-3}}):b})})]})}Je.propTypes={size:t.oneOf(["small","medium","large","huge"]),sx:t.oneOfType([t.object,t.string]),style:t.object,className:t.string,onSearch: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 Rt={default:"",inline:"inline-block",circle:"rounded-full",triangle:"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:"rounded-t-full rounded-b-none",fixed:"fixed",absolute:"absolute",relative:"relative"},Vt=Object.keys(Rt),Mo=["root"];function zo(e,s){const{sx:r={},style:n={},className:c="",type:l="default",children:a,...i}=e,p=Vt.includes(l)?l:"default",h=W(r,Mo),u=x({baseClassName:Rt[p],className:c,sxSlot:h.root}),m=p==="halfCircle"?{width:"var(--space-half-circle-w)",height:"var(--space-half-circle-h)",background:"var(--space-half-circle-color)"}:{};return o.jsx("div",{ref:s,className:u.className,style:{...m,...u.style,...n},...i,children:a})}const Qe=d.forwardRef(zo);Qe.propTypes={type:t.oneOf(Vt),sx:t.oneOfType([t.string,t.object]),style:t.object,className:t.string,children:t.node};Qe.displayName="Space";const Eo=["root","wrapper","thead","headerCell","body","row","cell","empty","pagination"],ge={empty:"暂无数据",prev:"上一页",next:"下一页",page:"页",total:"共 {total} 条",perPage:"条/页"},$o=10,Bo=[10,20,50,100],Le=(e,...s)=>typeof e=="function"?e(...s):e??{};function Yt(e){const{dataSource:s=[],columns:r=[],sx:n={},style:c={},className:l="",pagination:a=null,hide:i=[],rowClassName:p,rowStyle:h,cellClassName:u,cellStyle:m,hoverColor:f="",i18nKey:C=null,localeText:L={},"aria-label":P,...D}=e,{t:N}=re();s.length===0&&r.length===0&&console.warn("[Tango Table] dataSource 和 columns 不能同时为空,请至少提供一项。");const S={empty:N("table.empty",ge.empty),prev:N("table.prev",ge.prev),next:N("table.next",ge.next),page:N("table.page",ge.page),total:N("table.total",ge.total),perPage:N("table.perPage",ge.perPage),...L},v=Array.isArray(i)?i:typeof i=="string"?[i]:[],T=d.useMemo(()=>r.filter(X=>!X.hide&&!v.includes(X.dataIndex)),[r,v]),b=a!==null&&a!==!1,y=a&&a.placement||"bottom",M=a&&a.pageSize||$o,_=a&&a.pageSizeOptions||Bo,E=(a==null?void 0:a.showTotal)!==!1,O=(a==null?void 0:a.showSizeChanger)!==!1,[k,w]=d.useState(1),[j,U]=d.useState(M),I=s.length,$=Math.max(1,Math.ceil(I/j)),A=Math.min(k,$),F=d.useMemo(()=>{if(!b)return s;const X=(A-1)*j;return s.slice(X,X+j)},[s,A,j,b]),H=d.useCallback(X=>w(Math.max(1,Math.min(X,$))),[$]),K=W(n,Eo),Z=x({baseClassName:z("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:z(K.root.tw,K.wrapper.tw),css:{...K.root.css,...K.wrapper.css}}}),R=x({baseClassName:"bg-[var(--primary)] text-[var(--primary-foreground)] sticky top-0 z-10",sxSlot:K.thead}),J=x({baseClassName:"text-[var(--foreground)]",sxSlot:K.body}),le=x({baseClassName:"text-[var(--muted-foreground)] py-16 text-center",sxSlot:K.empty}),de=x({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?o.jsx("style",{children:`
7
7
  [data-tango-table-body] tr:hover {
8
- background-color: ${g} !important;
8
+ background-color: ${f} !important;
9
9
  transform: translateY(-1px);
10
10
  box-shadow: 0 2px 8px color-mix(in oklch, var(--foreground) 5%, transparent);
11
11
  }
12
- `}):null,te=()=>{if(!x)return null;const q=Array.from({length:F},(z,G)=>G+1);return o.jsxs("div",{className:de.className,style:de.style,children:[o.jsxs("div",{className:"flex items-center gap-3",children:[E&&o.jsx("span",{children:N.total.replace("{total}",String(B))}),L&&o.jsx("select",{value:T,onChange:z=>{U(Number(z.target.value)),w(1)},className:"rounded border border-[var(--border)] bg-[var(--background)] px-2 py-1 text-sm cursor-pointer","aria-label":N.perPage,children:O.map(z=>o.jsxs("option",{value:z,children:[z," ",N.perPage]},z))})]}),o.jsxs("div",{className:"flex items-center gap-1",children:[o.jsx("button",{onClick:()=>W($-1),disabled:$<=1,className:"px-2 py-1 rounded border border-[var(--border)] text-xs disabled:opacity-40 disabled:cursor-not-allowed hover:bg-[var(--accent)] transition-colors","aria-label":N.prev,children:N.prev}),q.length<=7?q.map(z=>o.jsx("button",{onClick:()=>W(z),className:`min-w-[28px] px-2 py-1 rounded text-xs transition-colors ${z===$?"bg-[var(--primary)] text-[var(--primary-foreground)] font-medium":"border border-[var(--border)] hover:bg-[var(--accent)]"}`,children:z},z)):o.jsxs(o.Fragment,{children:[o.jsx("button",{onClick:()=>W(1),className:`min-w-[28px] px-2 py-1 rounded text-xs ${$===1?"bg-[var(--primary)] text-[var(--primary-foreground)] font-medium":"border border-[var(--border)] hover:bg-[var(--accent)]"} transition-colors`,children:"1"}),$>3&&o.jsx("span",{className:"px-1 text-xs",children:"…"}),Array.from({length:F},(z,G)=>G+1).filter(z=>z>1&&z<F&&Math.abs(z-$)<=1).map(z=>o.jsx("button",{onClick:()=>W(z),className:`min-w-[28px] px-2 py-1 rounded text-xs ${z===$?"bg-[var(--primary)] text-[var(--primary-foreground)] font-medium":"border border-[var(--border)] hover:bg-[var(--accent)]"} transition-colors`,children:z},z)),$<F-2&&o.jsx("span",{className:"px-1 text-xs",children:"…"}),o.jsx("button",{onClick:()=>W(F),className:`min-w-[28px] px-2 py-1 rounded text-xs ${$===F?"bg-[var(--primary)] text-[var(--primary-foreground)] font-medium":"border border-[var(--border)] hover:bg-[var(--accent)]"} transition-colors`,children:F})]}),o.jsx("button",{onClick:()=>W($+1),disabled:$>=F,className:"px-2 py-1 rounded border border-[var(--border)] text-xs disabled:opacity-40 disabled:cursor-not-allowed hover:bg-[var(--accent)] transition-colors","aria-label":N.next,children:N.next})]})]})},Q=q=>o.jsxs("div",{className:Z.className,style:Z.style,children:[ue,o.jsxs("table",{className:"w-full border-collapse separate border-spacing-0 text-sm",role:"table",children:[o.jsx("thead",{className:R.className,style:R.style,children:o.jsx("tr",{children:P.map(z=>{const G=b({baseClassName:M("px-5 py-4 text-left font-semibold tracking-wide relative",K.headerCell.tw),baseStyle:z.width?{width:z.width}:{},sxSlot:{tw:"",css:K.headerCell.css}});return o.jsxs("th",{className:G.className,style:G.style,children:[z.title,o.jsx("span",{className:"absolute right-0 top-[20%] h-[60%] w-px bg-[var(--primary-foreground)]/15 last:hidden"})]},z.key||z.dataIndex)})})}),o.jsx("tbody",{className:ee.className,style:ee.style,"data-tango-table-body":!0,children:q.length===0?o.jsx("tr",{children:o.jsx("td",{colSpan:P.length,className:ne.className,style:ne.style,children:N.empty})}):q.map((z,G)=>{const J=G%2===0?"even":"odd",oe=M("transition-all duration-200",J==="even"?"bg-[color-mix(in_oklch,var(--table-hover)_6%,transparent)]":"","hover:bg-[color-mix(in_oklch,var(--table-hover)_20%,transparent)]",K.row.tw,Le(p,z,G,J)),le={...Le(h,z,G,J),...K.row.css};return o.jsx("tr",{className:oe,style:le,children:P.map((f,Y)=>{const X=Y%2===0?"even":"odd",pe=M("px-5 py-3.5 text-left relative","border-b border-[color-mix(in_oklch,var(--foreground)_5%,transparent)]",K.cell.tw,Le(u,z,f,G,Y,J,X)),ce={...f.width?{width:f.width}:{},...Le(m,z,f,G,Y,J,X),...K.cell.css};return o.jsxs("td",{className:pe,style:ce,children:[o.jsx("div",{className:"flex items-center min-h-5",children:f.render?f.render(z[f.dataIndex],z,G):z[f.dataIndex]}),o.jsx("span",{className:"absolute right-0 top-[20%] h-[60%] w-px bg-[color-mix(in_oklch,var(--foreground)_4%,transparent)] last:hidden"})]},f.key||f.dataIndex||Y)})},z.key||G)})})]})]});return o.jsxs("div",{role:"region","aria-label":_||"Table",...I,children:[x&&y==="top"&&te(),Q(D),x&&y==="bottom"&&te()]})}Vt.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 Io=["root","tooltip"],kt={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"},Fo={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 Do(e,s){const{children:r,title:n,placement:c="top",open:l,defaultOpen:a=!1,onOpenChange:i,disabled:p=!1,sx:h={},style:u={},className:m="",onMouseEnter:g,onMouseLeave:S,onFocus:j,onBlur:_,...I}=e,[C,N]=d.useState(a),v=l!==void 0,P=v?l:C,x=d.useCallback(T=>{v||N(T),i==null||i(T)},[v,i]),y=kt[c]?c:"top",A=H(h,Io),O=b({baseClassName:"relative inline-flex",sxSlot:A.root}),E=b({baseClassName:M("absolute z-50 whitespace-nowrap px-3 py-1.5 text-sm","bg-[var(--tooltip-background)] text-[var(--tooltip-foreground)]","shadow-[var(--tooltip-shadow)]",kt[y]),className:m,baseStyle:{borderRadius:"var(--tooltip-radius)"},sxSlot:A.tooltip,style:u}),L={position:"absolute",width:"10px",height:"10px",backgroundColor:"inherit",...Fo[y]},k=()=>!p&&x(!0),w=()=>!p&&x(!1);return o.jsxs("div",{ref:s,className:O.className,style:O.style,onMouseEnter:T=>{k(),g==null||g(T)},onMouseLeave:T=>{w(),S==null||S(T)},onFocus:T=>{k(),j==null||j(T)},onBlur:T=>{w(),_==null||_(T)},...I,children:[r,P&&n&&o.jsxs("div",{role:"tooltip",className:E.className,style:E.style,children:[o.jsx("span",{style:{position:"relative",zIndex:1},children:n}),o.jsx("span",{style:L})]})]})}const Be=d.forwardRef(Do);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};re.MaterialButton=_e;Ae.MaterialInput=Oe;se.Header=zt;se.Footer=Et;se.Sider=$t;se.Content=Bt;se.Toc=It;exports.Banner=Ke;exports.Button=re;exports.ColorPicker=Ue;exports.Content=Bt;exports.DateDisplay=He;exports.DatePicker=We;exports.Drawer=Ze;exports.Footer=Et;exports.Header=zt;exports.Input=Ae;exports.Layout=se;exports.Line=Ge;exports.Mark=qe;exports.MaterialButton=_e;exports.MaterialInput=Oe;exports.Modal=Xe;exports.Notice=Ne;exports.NoticeProvider=ds;exports.Search=Je;exports.Sider=$t;exports.Space=Qe;exports.Table=Vt;exports.TangoBanner=Ke;exports.TangoColorPicker=Ue;exports.TangoDate=He;exports.TangoDatePicker=We;exports.TangoDrawer=Ze;exports.TangoI18nProvider=fs;exports.TangoModal=Xe;exports.TangoNotice=Ne;exports.TangoSearch=Je;exports.TangoTooltip=Be;exports.ThemeProvider=qt;exports.Toc=It;exports.Tooltip=Be;exports.Upload=$e;exports.createSlotProps=b;exports.mergeTwClassNames=M;exports.normalizeSxSlots=H;exports.normalizeTangoLocale=Se;exports.useNotice=ps;exports.useTangoI18n=ae;exports.useTangoStyle=ve;exports.useTheme=Xt;
12
+ `}):null,pe=()=>{if(!b)return null;const X=Array.from({length:$},(B,q)=>q+1);return o.jsxs("div",{className:de.className,style:de.style,children:[o.jsxs("div",{className:"flex items-center gap-3",children:[E&&o.jsx("span",{children:S.total.replace("{total}",String(I))}),O&&o.jsx("select",{value:j,onChange:B=>{U(Number(B.target.value)),w(1)},className:"rounded border border-[var(--border)] bg-[var(--background)] px-2 py-1 text-sm cursor-pointer","aria-label":S.perPage,children:_.map(B=>o.jsxs("option",{value:B,children:[B," ",S.perPage]},B))})]}),o.jsxs("div",{className:"flex items-center gap-1",children:[o.jsx("button",{type:"button",onClick:()=>H(A-1),disabled:A<=1,className:"px-2 py-1 rounded border border-[var(--border)] text-xs disabled:opacity-40 disabled:cursor-not-allowed hover:bg-[var(--accent)] transition-colors","aria-label":S.prev,children:S.prev}),X.length<=7?X.map(B=>o.jsx("button",{type:"button",onClick:()=>H(B),className:`min-w-[28px] px-2 py-1 rounded text-xs transition-colors ${B===A?"bg-[var(--primary)] text-[var(--primary-foreground)] font-medium":"border border-[var(--border)] hover:bg-[var(--accent)]"}`,children:B},B)):o.jsxs(o.Fragment,{children:[o.jsx("button",{type:"button",onClick:()=>H(1),className:`min-w-[28px] px-2 py-1 rounded text-xs ${A===1?"bg-[var(--primary)] text-[var(--primary-foreground)] font-medium":"border border-[var(--border)] hover:bg-[var(--accent)]"} transition-colors`,children:"1"}),A>3&&o.jsx("span",{className:"px-1 text-xs",children:"…"}),Array.from({length:$},(B,q)=>q+1).filter(B=>B>1&&B<$&&Math.abs(B-A)<=1).map(B=>o.jsx("button",{type:"button",onClick:()=>H(B),className:`min-w-[28px] px-2 py-1 rounded text-xs ${B===A?"bg-[var(--primary)] text-[var(--primary-foreground)] font-medium":"border border-[var(--border)] hover:bg-[var(--accent)]"} transition-colors`,children:B},B)),A<$-2&&o.jsx("span",{className:"px-1 text-xs",children:"…"}),o.jsx("button",{type:"button",onClick:()=>H($),className:`min-w-[28px] px-2 py-1 rounded text-xs ${A===$?"bg-[var(--primary)] text-[var(--primary-foreground)] font-medium":"border border-[var(--border)] hover:bg-[var(--accent)]"} transition-colors`,children:$})]}),o.jsx("button",{type:"button",onClick:()=>H(A+1),disabled:A>=$,className:"px-2 py-1 rounded border border-[var(--border)] text-xs disabled:opacity-40 disabled:cursor-not-allowed hover:bg-[var(--accent)] transition-colors","aria-label":S.next,children:S.next})]})]})},G=X=>o.jsxs("div",{className:Z.className,style:Z.style,children:[ue,o.jsxs("table",{className:"w-full border-collapse separate border-spacing-0 text-sm",role:"table",children:[o.jsx("thead",{className:R.className,style:R.style,children:o.jsx("tr",{children:T.map(B=>{const q=x({baseClassName:z("px-5 py-4 text-left font-semibold tracking-wide relative",K.headerCell.tw),baseStyle:B.width?{width:B.width}:{},sxSlot:{tw:"",css:K.headerCell.css}});return o.jsxs("th",{className:q.className,style:q.style,children:[B.title,o.jsx("span",{className:"absolute right-0 top-[20%] h-[60%] w-px bg-[var(--primary-foreground)]/15 last:hidden"})]},B.key||B.dataIndex)})})}),o.jsx("tbody",{className:J.className,style:J.style,"data-tango-table-body":!0,children:X.length===0?o.jsx("tr",{children:o.jsx("td",{colSpan:T.length,className:le.className,style:le.style,children:S.empty})}):X.map((B,q)=>{const ae=q%2===0?"even":"odd",ee=z("transition-all duration-200",ae==="even"?"bg-[color-mix(in_oklch,var(--table-hover)_6%,transparent)]":"","hover:bg-[color-mix(in_oklch,var(--table-hover)_20%,transparent)]",K.row.tw,Le(p,B,q,ae)),se={...Le(h,B,q,ae),...K.row.css};return o.jsx("tr",{className:ee,style:se,children:T.map((g,V)=>{const Q=V%2===0?"even":"odd",ne=z("px-5 py-3.5 text-left relative","border-b border-[color-mix(in_oklch,var(--foreground)_5%,transparent)]",K.cell.tw,Le(u,B,g,q,V,ae,Q)),ce={...g.width?{width:g.width}:{},...Le(m,B,g,q,V,ae,Q),...K.cell.css};return o.jsxs("td",{className:ne,style:ce,children:[o.jsx("div",{className:"flex items-center min-h-5",children:g.render?g.render(B[g.dataIndex],B,q):B[g.dataIndex]}),o.jsx("span",{className:"absolute right-0 top-[20%] h-[60%] w-px bg-[color-mix(in_oklch,var(--foreground)_4%,transparent)] last:hidden"})]},g.key||g.dataIndex||V)})},B.key||q)})})]})]});return o.jsxs("div",{role:"region","aria-label":P||"Table",...D,children:[b&&y==="top"&&pe(),G(F),b&&y==="bottom"&&pe()]})}Yt.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 Io=["root","tooltip"],jt={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"},Fo={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 Do(e,s){const{children:r,title:n,placement:c="top",open:l,defaultOpen:a=!1,onOpenChange:i,disabled:p=!1,sx:h={},style:u={},className:m="",onMouseEnter:f,onMouseLeave:C,onFocus:L,onBlur:P,...D}=e,[N,S]=d.useState(a),v=l!==void 0,T=v?l:N,b=d.useCallback(j=>{v||S(j),i==null||i(j)},[v,i]),y=jt[c]?c:"top",M=W(h,Io),_=x({baseClassName:"relative inline-flex",sxSlot:M.root}),E=x({baseClassName:z("absolute z-50 whitespace-nowrap px-3 py-1.5 text-sm","bg-[var(--tooltip-background)] text-[var(--tooltip-foreground)]","shadow-[var(--tooltip-shadow)]",jt[y]),className:m,baseStyle:{borderRadius:"var(--tooltip-radius)"},sxSlot:M.tooltip,style:u}),O={position:"absolute",width:"10px",height:"10px",backgroundColor:"inherit",...Fo[y]},k=()=>!p&&b(!0),w=()=>!p&&b(!1);return o.jsxs("div",{ref:s,className:_.className,style:_.style,onMouseEnter:j=>{k(),f==null||f(j)},onMouseLeave:j=>{w(),C==null||C(j)},onFocus:j=>{k(),L==null||L(j)},onBlur:j=>{w(),P==null||P(j)},...D,children:[r,T&&n&&o.jsxs("div",{role:"tooltip",className:E.className,style:E.style,children:[o.jsx("span",{style:{position:"relative",zIndex:1},children:n}),o.jsx("span",{style:O})]})]})}const Be=d.forwardRef(Do);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};oe.MaterialButton=Oe;Ae.MaterialInput=_e;te.Header=Et;te.Footer=$t;te.Sider=Bt;te.Content=It;te.Toc=Ft;exports.Banner=Ke;exports.Button=oe;exports.ColorPicker=Ue;exports.Content=It;exports.DateDisplay=He;exports.DatePicker=We;exports.Drawer=Ze;exports.Footer=$t;exports.Header=Et;exports.Input=Ae;exports.Layout=te;exports.Line=Ge;exports.Mark=qe;exports.MaterialButton=Oe;exports.MaterialInput=_e;exports.Modal=Xe;exports.Notice=Ne;exports.NoticeProvider=us;exports.Search=Je;exports.Sider=Bt;exports.Space=Qe;exports.Table=Yt;exports.TangoBanner=Ke;exports.TangoColorPicker=Ue;exports.TangoDate=He;exports.TangoDatePicker=We;exports.TangoDrawer=Ze;exports.TangoI18nProvider=fs;exports.TangoModal=Xe;exports.TangoNotice=Ne;exports.TangoSearch=Je;exports.TangoTooltip=Be;exports.ThemeProvider=Xt;exports.Toc=Ft;exports.Tooltip=Be;exports.Upload=$e;exports.createSlotProps=x;exports.mergeTwClassNames=z;exports.normalizeSxSlots=W;exports.normalizeTangoLocale=Se;exports.useNotice=ms;exports.useTangoI18n=re;exports.useTangoStyle=ve;exports.useTheme=Jt;