@jerry-fd/ui 0.6.2 → 0.6.4
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/antd-data-filter.js +1 -1
- package/{button-DMIeJ1gB.d.ts → button-DxZ9iyob.d.ts} +7 -131
- package/chunk-MEOS5CC6.js +1 -0
- package/chunk-TL2HPXUT.js +2 -0
- package/chunk-WHQZDGBC.js +1 -0
- package/data-table.d.ts +16 -3
- package/data-table.js +2 -2
- package/index.d.ts +235 -31
- package/index.js +2 -2
- package/package.json +14 -3
- package/preset/badge.css +107 -0
- package/preset/index.css +2 -0
- package/preset/typography.css +141 -0
- package/source.css +6 -0
- package/styles/base.css +55 -0
- package/styles/index.css +1 -1
- package/styles/keyframes.css +61 -0
- package/theme/badge-tokens.css +95 -0
- package/theme/badge.css +3 -200
- package/theme/colors.css +1 -1
- package/theme/index.css +5 -7
- package/theme/shadows.css +1 -1
- package/theme/typography-tokens.css +120 -0
- package/theme/typography.css +3 -263
- package/chunk-2CZQBNNA.js +0 -2
- package/chunk-6IEX6NJ5.js +0 -1
- package/chunk-J3QLREON.js +0 -2
- package/chunk-NS7IV62X.js +0 -1
package/antd-data-filter.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import {h,a,g,f}from'./chunk-MEOS5CC6.js';export{b as DATE_FORMATS,d as formatDateRange,c as getDateDisplayFormat,e as getPickerInputFormat}from'./chunk-MEOS5CC6.js';import {c}from'./chunk-TL2HPXUT.js';import'./chunk-M7AD2PUT.js';import {ConfigProvider}from'antd';import {jsx,jsxs}from'react/jsx-runtime';function y({disabled:l,columns:e,filters:f$1,defaultFilters:s,className:c$1,onFiltersChange:D}){let[r,o]=h({filters:f$1,defaultFilters:s,onFiltersChange:D});return jsx(ConfigProvider,{theme:a,children:jsxs("div",{className:c("data-filter flex flex-wrap items-center gap-6",l&&"pointer-events-none [&_button]:opacity-65",c$1),children:[jsx(g,{columns:e,filters:r,actions:o,enableAutoBack:true}),jsx(f,{columns:e,filters:r,actions:o,enableAutoClose:true})]})})}export{y as DataFilter};
|
|
@@ -134,139 +134,15 @@ declare const buttonVariants: tailwind_variants.TVReturnType<{
|
|
|
134
134
|
overlay: string;
|
|
135
135
|
}, undefined, unknown, unknown, undefined>>;
|
|
136
136
|
type ButtonSharedProps = VariantProps<typeof buttonVariants>;
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
mode: {
|
|
144
|
-
filled: {};
|
|
145
|
-
stroke: {};
|
|
146
|
-
lighter: {};
|
|
147
|
-
ghost: {};
|
|
148
|
-
};
|
|
149
|
-
loading: {
|
|
150
|
-
true: {
|
|
151
|
-
root: string;
|
|
152
|
-
};
|
|
153
|
-
};
|
|
154
|
-
size: {
|
|
155
|
-
large: {
|
|
156
|
-
root: string;
|
|
157
|
-
overlay: string;
|
|
158
|
-
icon: string;
|
|
159
|
-
};
|
|
160
|
-
medium: {
|
|
161
|
-
root: string;
|
|
162
|
-
overlay: string;
|
|
163
|
-
icon: string;
|
|
164
|
-
};
|
|
165
|
-
small: {
|
|
166
|
-
root: string;
|
|
167
|
-
overlay: string;
|
|
168
|
-
icon: string;
|
|
169
|
-
};
|
|
170
|
-
xsmall: {
|
|
171
|
-
root: string;
|
|
172
|
-
overlay: string;
|
|
173
|
-
icon: string;
|
|
174
|
-
};
|
|
175
|
-
};
|
|
176
|
-
}, {
|
|
177
|
-
root: string[];
|
|
178
|
-
icon: string;
|
|
179
|
-
overlay: string;
|
|
180
|
-
}, undefined, {
|
|
181
|
-
variant: {
|
|
182
|
-
primary: {};
|
|
183
|
-
neutral: {};
|
|
184
|
-
error: {};
|
|
185
|
-
};
|
|
186
|
-
mode: {
|
|
187
|
-
filled: {};
|
|
188
|
-
stroke: {};
|
|
189
|
-
lighter: {};
|
|
190
|
-
ghost: {};
|
|
191
|
-
};
|
|
192
|
-
loading: {
|
|
193
|
-
true: {
|
|
194
|
-
root: string;
|
|
195
|
-
};
|
|
196
|
-
};
|
|
197
|
-
size: {
|
|
198
|
-
large: {
|
|
199
|
-
root: string;
|
|
200
|
-
overlay: string;
|
|
201
|
-
icon: string;
|
|
202
|
-
};
|
|
203
|
-
medium: {
|
|
204
|
-
root: string;
|
|
205
|
-
overlay: string;
|
|
206
|
-
icon: string;
|
|
207
|
-
};
|
|
208
|
-
small: {
|
|
209
|
-
root: string;
|
|
210
|
-
overlay: string;
|
|
211
|
-
icon: string;
|
|
212
|
-
};
|
|
213
|
-
xsmall: {
|
|
214
|
-
root: string;
|
|
215
|
-
overlay: string;
|
|
216
|
-
icon: string;
|
|
217
|
-
};
|
|
218
|
-
};
|
|
219
|
-
}, {
|
|
220
|
-
root: string[];
|
|
221
|
-
icon: string;
|
|
222
|
-
overlay: string;
|
|
223
|
-
}, tailwind_variants.TVReturnType<{
|
|
224
|
-
variant: {
|
|
225
|
-
primary: {};
|
|
226
|
-
neutral: {};
|
|
227
|
-
error: {};
|
|
228
|
-
};
|
|
229
|
-
mode: {
|
|
230
|
-
filled: {};
|
|
231
|
-
stroke: {};
|
|
232
|
-
lighter: {};
|
|
233
|
-
ghost: {};
|
|
234
|
-
};
|
|
235
|
-
loading: {
|
|
236
|
-
true: {
|
|
237
|
-
root: string;
|
|
238
|
-
};
|
|
239
|
-
};
|
|
240
|
-
size: {
|
|
241
|
-
large: {
|
|
242
|
-
root: string;
|
|
243
|
-
overlay: string;
|
|
244
|
-
icon: string;
|
|
245
|
-
};
|
|
246
|
-
medium: {
|
|
247
|
-
root: string;
|
|
248
|
-
overlay: string;
|
|
249
|
-
icon: string;
|
|
250
|
-
};
|
|
251
|
-
small: {
|
|
252
|
-
root: string;
|
|
253
|
-
overlay: string;
|
|
254
|
-
icon: string;
|
|
255
|
-
};
|
|
256
|
-
xsmall: {
|
|
257
|
-
root: string;
|
|
258
|
-
overlay: string;
|
|
259
|
-
icon: string;
|
|
260
|
-
};
|
|
261
|
-
};
|
|
262
|
-
}, {
|
|
263
|
-
root: string[];
|
|
264
|
-
icon: string;
|
|
265
|
-
overlay: string;
|
|
266
|
-
}, undefined, unknown, unknown, undefined>>> & Omit<React__default.ButtonHTMLAttributes<HTMLButtonElement>, "prefix"> & {
|
|
137
|
+
type ButtonProps = ButtonSharedProps & Omit<React__default.ButtonHTMLAttributes<HTMLButtonElement>, 'prefix'> & {
|
|
138
|
+
asChild?: boolean;
|
|
139
|
+
startContent?: React__default.ReactNode;
|
|
140
|
+
endContent?: React__default.ReactNode;
|
|
141
|
+
};
|
|
142
|
+
declare const Button: React__default.ForwardRefExoticComponent<ButtonSharedProps & Omit<React__default.ButtonHTMLAttributes<HTMLButtonElement>, "prefix"> & {
|
|
267
143
|
asChild?: boolean;
|
|
268
144
|
startContent?: React__default.ReactNode;
|
|
269
145
|
endContent?: React__default.ReactNode;
|
|
270
146
|
} & React__default.RefAttributes<HTMLButtonElement>>;
|
|
271
147
|
|
|
272
|
-
export { type
|
|
148
|
+
export { type ButtonProps as B, Button as a, type ButtonSharedProps as b, baseButtonStyle as c, buttonVariants as d };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import {C,c,S,P,i,U,w as w$1,x,y,A,k,T as T$1,F,G as G$1,H as H$1,z,B,N}from'./chunk-TL2HPXUT.js';import {Separator}from'radix-ui';import {jsxs,jsx,Fragment}from'react/jsx-runtime';import {Pin,X,ChevronRight,FunnelPlus,ArrowLeft,Ellipsis}from'lucide-react';import w from'react';import {DatePicker,Checkbox,Radio,Cascader,Input,InputNumber}from'antd';import {createPortal}from'react-dom';import {AnimatePresence,m}from'motion/react';function R(e,t){let n=e.find(o=>o.columnId===t);if(!n)throw new Error(`Column with id ${t} not found`);return n}function Re(e){return !e||e.length===0?[]:e.length===1?[e[0]]:e.length===2?ft(e):[e[0],e[1]]}function Ie(e){if(!e||e.length===0)return [];if(e.length===1)return [e[0]];if(e.length===2)return dt(e);throw new Error("Cannot create date filter value from more than 2 values")}function dt(e){let[t,n]=e,[o,a]=t.isBefore(n)?[t,n]:[n,t];return [o,a]}function ft(e){let t=0,n=0;if(!e||e.length===0)return [t,n];e.length===1?t=e[0]:(t=e[0],n=e[1]);let[o,a]=t<n?[t,n]:[n,t];return [o,a]}function Me(e){let t=new Map,n=[];for(let o of e){let a=fe(o);if(t.has(a)){let r=t.get(a),s=false;for(let i of r)if(ge(i,o)){s=true;break}s||(r.push(o),n.push(o));}else t.set(a,[o]),n.push(o);}return n}function fe(e,t=new WeakMap){if(e===null)return "null";if(e===void 0)return "undefined";let n=typeof e;if(n==="number"||n==="boolean"||n==="string")return `${n}:${e.toString()}`;if(n==="function")return `function:${e.toString()}`;if(n==="object"){if(t.has(e))return t.get(e);let o;return Array.isArray(e)?o=`array:[${e.map(a=>fe(a,t)).join(",")}]`:o=`object:{${Object.keys(e).sort().map(s=>`${s}:${fe(e[s],t)}`).join(",")}}`,t.set(e,o),o}return `${n}:${e.toString()}`}function ge(e,t){if(e===t)return true;if(typeof e!=typeof t||e===null||t===null||e===void 0||t===void 0)return false;if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return false;for(let n=0;n<e.length;n++)if(!ge(e[n],t[n]))return false;return true}if(typeof e=="object"){if(typeof t!="object")return false;let n=Object.keys(e).sort(),o=Object.keys(t).sort();if(n.length!==o.length)return false;for(let a=0;a<n.length;a++)if(n[a]!==o[a]||!ge(e[n[a]],t[o[a]]))return false;return true}return false}var Ae={date:{cn:{full:"YYYY\u5E74M\u6708D\u65E5",withoutYear:"M\u6708D\u65E5"},en:{full:"MMM D, YYYY",withoutYear:"MMM D"}},week:{cn:{full:"YYYY\u5E74 w\u5468",withoutYear:"w\u5468"},en:{full:"w[th], YYYY",withoutYear:"w[th]"}},month:{cn:{full:"YYYY\u5E74M\u6708",withoutYear:"M\u6708"},en:{full:"MMM, YYYY",withoutYear:"MMM"}},quarter:{cn:{full:"YYYY\u5E74 [Q]Q",withoutYear:"[Q]Q"},en:{full:"[Q]Q, YYYY",withoutYear:"[Q]Q"}},year:{cn:{full:"YYYY\u5E74",withoutYear:"YYYY\u5E74"},en:{full:"YYYY",withoutYear:"YYYY"}}};function Ce(e){if(!e)return null;if(typeof e=="string")return e;if(Array.isArray(e)){let t=e[0];return typeof t=="string"?t:null}return typeof e=="object"&&"format"in e?e.format:null}function Oe(e,t){let n=t.toLowerCase().includes("cn"),o=e?.picker??"date",a=Ce(e?.format);if(a)return {full:a,withoutYear:a,timeFormat:null};let r=Ae[o]??Ae.date,s=n?r.cn:r.en,i=null;return o==="date"&&e?.showTime&&(i=typeof e.showTime=="object"?e.showTime.format:"HH:mm:ss"),{...s,timeFormat:i}}function Be(e,t,n,o,a){let{full:r,withoutYear:s,timeFormat:i}=o,l=!!i;if(a==="year")return `${e.format(r)} - ${t.format(r)}`;if(a==="date"&&e.isSame(t,"day"))return l?n?`${e.format(r)} ${e.format(i)} - ${t.format(i)}`:`${e.format(r)}, ${e.format(i)} - ${t.format(i)}`:e.format(r);if(e.isSame(t,"year")){if(n){let c=l?`${r} ${i}`:r,g=l?`${s} ${i}`:s;return `${e.format(c)} - ${t.format(g)}`}let p=l?`${s}, ${i}`:s,m=l?`${s}, ${i}, YYYY`:`${s}, YYYY`;return `${e.format(p)} - ${t.format(m)}`}let u=n?l?`${r} ${i}`:r:l?`${r}, ${i}`:r;return `${e.format(u)} - ${t.format(u)}`}var Ye={date:"YYYY-MM-DD",month:"YYYY-MM",week:{cn:"YYYY-w [\u5468]",en:"YYYY-wo"},quarter:"YYYY-[Q]Q",year:"YYYY"};function E(e,t,n){let o=e??"date",a=Ye[o]??Ye.date,r=typeof a=="string"?a:t.toLowerCase().includes("cn")?a.cn:a.en;if(o==="date"&&n){let s=typeof n=="object"?n.format:"HH:mm:ss";return `${r} ${s}`}return r}var kn={components:{DatePicker:{activeBorderColor:"#d9d9d9",hoverBorderColor:"#d9d9d9",activeShadow:"none",cellHeight:32,cellWidth:32}}},W={popup:{root:{inset:"0 auto auto 0",padding:0},container:{userSelect:"none",boxShadow:"none"}}},H={root:"w-full",popup:{container:"[&_.ant-picker-panels]:gap-0",body:"px-10 py-0!"}};var G=({className:e,orientation:t="horizontal",decorative:n=true,...o})=>jsx(Separator.Root,{decorative:n,orientation:t,className:c("shrink-0 bg-stroke-soft",t==="horizontal"?"h-[1px] w-full":"h-full w-[1px]",e),...o});G.displayName=Separator.Root.displayName;function Le({title:e,onBack:t}){return jsxs("div",{className:"relative flex items-center justify-between border-b border-stroke-soft px-12 pt-6 pb-5",children:[jsx("button",{className:N({className:"-ml-2 size-24 shrink-0 rounded-xl border-0 text-text-sub hover:bg-bg-weak hover:text-text-strong focus-visible:outline-offset-0 active:bg-bg-weak"}),onClick:t,children:jsx(ArrowLeft,{className:"size-16"})}),jsx("span",{className:"text-label-sm",children:e}),jsx("span",{className:"w-24 shrink-0"})]})}function K({onEnter:e,...t}){let n=w.useCallback(o=>{o.key==="Enter"&&(o.target instanceof HTMLInputElement||o.target instanceof HTMLButtonElement)&&(o.preventDefault(),e?.());},[e]);return jsx(w$1,{onKeyDown:n,...t})}function T({onClick:e,disabled:t}){let n=S();return jsxs(Fragment,{children:[jsx("div",{className:"h-px bg-bg-soft"}),jsx("div",{className:"p-4",children:jsx(P,{variant:"neutral",mode:"ghost",onClick:e,disabled:t,className:"w-full disabled:text-text-disabled",children:n("apply")})})]})}var Pt={"--ant-cascader-option-selected-bg":"var(--color-bg-weak)","--ant-cascader-option-selected-color":"var(--color-primary-base)","--ant-color-icon":"var(--color-text-strong)"};function ze({actions:e,filter:t,column:n,onApply:o}){let a=w.useRef(t?.values??[]),[r,s]=T$1({defaultValue:a.current.length>0?a.current:void 0}),i=w.useCallback(()=>{r&&r.length>0&&(e.setFilterValue(n,r),o?.());},[e,n,r,o]),l=w.useCallback(p=>{if(p&&p.length>0){let m=p.filter(c=>typeof c=="string"||typeof c=="number").map(String);s(m.length>0?m:void 0);}else s(void 0);},[s]),u=w.useMemo(()=>{let p=t?.values??[];return !r||r.length===0?false:p.length!==r.length?true:!p.every((m,c)=>m===r[c])},[t?.values,r]);return jsxs(Fragment,{children:[jsx(K,{onEnter:i,children:jsx(y,{className:"max-h-fit",children:jsx(A,{children:jsx(C,{className:"hover:bg-transparent aria-selected:bg-transparent data-[selected=true]:bg-transparent data-[selected=true]:text-text-sub [&_.ant-cascader-menus]:w-full",children:jsx(Cascader.Panel,{className:"w-full min-w-fit",value:r,options:n.options,onChange:l,changeOnSelect:n.cascaderConfig?.changeOnSelect??true,fieldNames:n.cascaderConfig?.fieldNames,loadData:n.cascaderConfig?.loadData,style:Pt})})})})}),jsx(T,{onClick:i,disabled:!u})]})}var Nt=DatePicker._InternalPanelDoNotUseOrYouWillBeFired,St=DatePicker._InternalRangePanelDoNotUseOrYouWillBeFired,wt={width:280,height:395},Vt={width:540,height:395},_e="date-panel-sizes";function je(e,t){return JSON.stringify({mode:e??"single",showTime:t?.showTime??false,picker:t?.picker??"date",hasPresets:Array.isArray(t?.presets)&&t.presets.length>0,multiple:t&&"multiple"in t?t.multiple:false})}function he(){try{let e=sessionStorage.getItem(_e);if(e)return JSON.parse(e)}catch{}return null}function At(e){try{sessionStorage.setItem(_e,JSON.stringify(e));}catch{}}function We(e){let t=je(e.mode,e.datePickerConfig);return he()?.[t]??(e.mode==="range"?Vt:wt)}function Yt(e){let t=he(),n=new Set,o=[];for(let a of e){if(a.type!=="date")continue;let r=a.mode??"single",s=a.datePickerConfig,i=je(r,s);n.has(i)||t?.[i]||(n.add(i),o.push({key:i,mode:r,config:s}));}return o}function Rt({item:e,onMeasure:t}){let[n]=k(),o=E(e.config?.picker,n,e.config?.showTime),a=w.useRef(null),r=w.useRef(false);return w.useEffect(()=>{if(!a.current||r.current)return;let s=setTimeout(()=>{!a.current||r.current||(r.current=true,t(e.key,{width:a.current.clientWidth,height:a.current.clientHeight}));},500);return ()=>clearTimeout(s)},[e.key,t]),jsx("div",{ref:a,className:"w-fit px-6 pt-6 pb-0",children:e.mode==="range"?jsx(St,{format:o,...e.config,inputReadOnly:true,allowClear:false,needConfirm:false,previewValue:false,suffixIcon:null,classNames:H,styles:W}):jsx(Nt,{format:o,...e.config,showToday:false,inputReadOnly:true,needConfirm:false,allowClear:false,suffixIcon:null,classNames:H,styles:W})})}function He({columns:e}){let[t,n]=w.useState(false),o=w.useMemo(()=>Yt(e),[e]),[a,r]=w.useState(0),s=w.useRef({}),i=w.useCallback((u,p)=>{if(s.current[u]=p,Object.keys(s.current).length===o.length){let m={...he(),...s.current};At(m);}r(m=>m+1);},[o.length]);if(w.useEffect(()=>{n(true);},[]),!t||o.length===0||a>=o.length)return null;let l=o[a];return createPortal(jsx("div",{id:"measure-sizer",className:"pointer-events-none invisible fixed -top-9999 -left-9999 z-1",children:jsx(Rt,{item:l,onMeasure:i},l.key)}),document.body)}var It=DatePicker._InternalPanelDoNotUseOrYouWillBeFired,Mt=DatePicker._InternalRangePanelDoNotUseOrYouWillBeFired;function Ue({actions:e,filter:t,column:n,onApply:o}){let a=w.useRef(t?.values),[r,s]=w.useState(()=>Array.isArray(t?.values)?t.values:n.mode==="single"?[null]:[null,null]),i=w.useCallback(m=>{m&&s(m);},[]),l=w.useCallback(()=>{a.current=r,e.setFilterValue(n,r),o?.();},[e,n,r,o]),u=w.useMemo(()=>{let m=r.filter(Boolean);if(!a.current)return n.mode==="single"?m.length===1:n.mode==="range"?m.length===2:false;let c=a.current.filter(Boolean);return n.mode==="range"&&m.length<2?false:m.length!==c.length?true:m.some((g,y)=>{let v=c[y];return v&&!v.isSame(g)})},[n.mode,r]),p=We(n);return jsxs(Fragment,{children:[jsx(w$1,{children:jsx(y,{className:"max-h-fit",children:jsxs(A,{className:"px-6 pt-6 pb-0",style:p,children:[n.mode==="single"&&jsx(Ot,{value:r,onChange:i,column:n}),n.mode==="range"&&jsx(Bt,{value:r,onChange:i,column:n})]})})}),jsx(T,{onClick:l,disabled:!u})]})}function Ot({value:e,column:t,onChange:n}){let[o]=k(),a=t.datePickerConfig,r=E(a?.picker,o,a?.showTime),s=w.useCallback(i=>{i&&n([i]);},[n]);return jsx(It,{format:r,...t.datePickerConfig,showToday:false,inputReadOnly:true,needConfirm:false,allowClear:false,value:e?.[0],onCalendarChange:s,suffixIcon:null,classNames:H,styles:W})}function Bt({value:e,column:t,onChange:n}){let[o]=k(),a=t.datePickerConfig,r=E(a?.picker,o,a?.showTime),[s,i]=e,l=w.useCallback(u=>{!u||u?.filter(Boolean).length!==2||n(u);},[n]);return jsx(Mt,{format:r,previewValue:false,...t.datePickerConfig,value:[s,i],onCalendarChange:l,inputReadOnly:true,allowClear:false,needConfirm:false,suffixIcon:null,classNames:H,styles:W})}var De=w.memo(function({option:t,onToggle:n}){let{value:o,label:a,icon:r,selected:s}=t,i=w.useCallback(()=>{n(o,!s);},[n,o,s]);return jsxs(C,{onSelect:i,className:"group flex items-center gap-6",children:[jsx(Checkbox,{tabIndex:-1,checked:s,className:c("mr-4 opacity-0 group-data-[selected=true]:opacity-100 data-[state=checked]:opacity-100",s&&"opacity-100")}),r,jsx("span",{children:a})]})});function ue({options:e,initialValues:t,pendingValues:n}){let o=w.useRef(t),{selectedOptions:a,unselectedOptions:r}=w.useMemo(()=>{let l=new Set(o.current),u=[],p=[];for(let m of e)l.has(m.value)?u.push(m):p.push(m);return {selectedOptions:u,unselectedOptions:p}},[e]),{selectedOptionsWithState:s,unselectedOptionsWithState:i}=w.useMemo(()=>{let l=new Set(Array.isArray(n)?n:[n]),u=a.map(m=>({...m,selected:l.has(m.value),initialSelected:true})),p=r.map(m=>({...m,selected:l.has(m.value),initialSelected:false}));return {selectedOptionsWithState:u,unselectedOptionsWithState:p}},[a,r,n]);return {selectedOptions:s,unselectedOptions:i}}function Je({column:e,filter:t,actions:n,onApply:o}){let a=S(),[r,s]=w.useState(()=>t?.values??[]),{selectedOptions:i,unselectedOptions:l}=ue({options:e.options,initialValues:t?.values??[],pendingValues:r}),u=w.useCallback((c,g)=>{s(y=>g?y.includes(c)?y:[...y,c]:y.filter(v=>v!==c));},[]),p=w.useCallback(()=>{n.setFilterValue(e,r),o?.();},[n,e,r,o]),m=w.useMemo(()=>{let c=new Set(t?.values??[]),g=new Set(r);if(c.size!==g.size)return true;for(let y of g)if(!c.has(y))return true;return false},[t?.values,r]);return jsxs(Fragment,{children:[jsxs(w$1,{children:[jsx(x,{autoFocus:true,placeholder:"Search..."}),jsx(z,{children:a("no_results")}),jsxs(y,{className:"max-h-256",children:[jsx(A,{className:c(i.length===0&&"hidden"),children:i.map(c=>jsx(De,{option:c,onToggle:u},c.value))}),jsx(B,{className:c((i.length===0||l.length===0)&&"hidden")}),jsx(A,{className:c(l.length===0&&"hidden"),children:l.map(c=>jsx(De,{option:c,onToggle:u},c.value))})]})]}),jsx(T,{onClick:p,disabled:!m})]})}function Xe({actions:e,filter:t,column:n,onApply:o}){let a=w.useRef(t?.values),[r,s]=w.useState(()=>Array.isArray(t?.values)?t.values:n.mode==="single"?[null]:[null,null]),i=w.useCallback(()=>{Ze(r)&&(a.current=r,e.setFilterValue(n,r),o?.());},[e,n,r,o]),l=w.useMemo(()=>{if(!Ze(r))return false;let p=a.current;return !Array.isArray(p)||p.length!==r.length?true:p.some((m,c)=>m!==r[c])},[r]),u=n.mode==="range";return jsxs(Fragment,{children:[jsx(K,{onEnter:i,className:c(u&&"min-w-lg"),children:jsx(y,{className:"max-h-fit",children:jsx(A,{children:jsx("div",{className:"p-6 pb-8",children:u?jsx(jt,{value:r,column:n,onChange:s}):jsx(_t,{column:n,value:r,onChange:s})})})})}),jsx(T,{onClick:i,disabled:!l})]})}function _t({column:e,value:t,onChange:n,ref:o}){let a=S();return jsx(InputNumber,{ref:o,className:"w-full max-w-2xs",placeholder:a("input_number"),value:t[0],min:e.inputNumberConfig?.min,max:e.inputNumberConfig?.max,step:e.inputNumberConfig?.step,mode:"spinner",onChange:r=>{Q(r)&&n([r]);},autoFocus:true})}function jt({column:e,value:t,onChange:n}){let o=S(),a=w.useId(),r=w.useId(),s=w.useCallback(l=>{if(!Q(l))return;let u=[l,t[1]];n?.(u);},[t,n]),i=w.useCallback(l=>{if(!Q(l))return;let u=[t[0],l];n?.(u);},[t,n]);return jsxs("div",{className:"flex w-full max-w-xl gap-12",children:[jsxs("div",{className:"flex flex-col gap-6",children:[jsx("label",{className:"text-label-sm select-none",htmlFor:a,children:o("min")}),jsx(InputNumber,{id:a,mode:"spinner",placeholder:"min",autoFocus:true,value:t[0],min:e.inputNumberConfig?.min,max:Q(t[1])?t[1]-1:e.inputNumberConfig?.max?e.inputNumberConfig.max-1:void 0,step:e.inputNumberConfig?.step,onChange:s})]}),jsxs("div",{className:"flex flex-col gap-6",children:[jsx("label",{className:"text-label-sm select-none",htmlFor:r,children:o("max")}),jsx(InputNumber,{id:r,mode:"spinner",placeholder:"max",value:t[1],min:Q(t[0])?t[0]+1:e.inputNumberConfig?.min?e.inputNumberConfig.min+1:void 0,max:e.inputNumberConfig?.max,step:e.inputNumberConfig?.step,onChange:i})]})]})}function Ze(e){return e.every(Q)}function Q(e){return typeof e=="number"&&Number.isFinite(e)}var Pe=w.memo(function({option:t,onSelect:n}){let{value:o,label:a,icon:r,selected:s}=t,i=w.useCallback(()=>{n(o);},[n,o]);return jsxs(C,{value:o,onSelect:i,className:"group flex items-center gap-6",children:[jsx(Radio,{tabIndex:-1,className:c("mr-4 opacity-0 group-data-[selected=true]:opacity-100 data-[state=checked]:opacity-100",s&&"opacity-100"),checked:s,value:o,id:o}),r,jsx("span",{children:a})]})});function nt({column:e,filter:t,actions:n,onApply:o}){let a=S(),[r,s]=w.useState(()=>t?.values[0]??""),{selectedOptions:i,unselectedOptions:l}=ue({options:e.options,initialValues:t?.values??[],pendingValues:r??""}),u=w.useCallback(c=>{s(c);},[]),p=w.useCallback(()=>{r&&(n.setFilterValue(e,[r]),o?.());},[n,e,r,o]),m=w.useMemo(()=>t?.values[0]!==r,[t?.values,r]);return jsxs(Fragment,{children:[jsxs(w$1,{children:[jsx(x,{autoFocus:true,placeholder:"Search..."}),jsx(z,{children:a("no_results")}),jsxs(y,{className:"max-h-256",children:[jsx(A,{className:c(i.length===0&&"hidden"),children:i.map(c=>jsx(Pe,{option:c,onSelect:u},c.value))}),jsx(B,{className:c((i.length===0||l.length===0)&&"hidden")}),jsx(A,{className:c(l.length===0&&"hidden"),children:l.map(c=>jsx(Pe,{option:c,onSelect:u},c.value))})]})]}),jsx(T,{onClick:p,disabled:!m})]})}function rt({actions:e,filter:t,column:n,onApply:o}){let a=S(),r=w.useRef(t?.values[0]??""),[s,i]=T$1({defaultValue:r.current}),l=w.useCallback(()=>{e.setFilterValue(n,[s]),o?.();},[e,n,s,o]),u=r.current===s;return jsxs(Fragment,{children:[jsx(K,{onEnter:l,children:jsx(y,{className:"max-h-fit",children:jsx(A,{children:jsx(C,{children:jsx(Input,{rootClassName:"w-ful min-w-220",placeholder:a("search_keywords"),autoFocus:true,value:s,onChange:p=>i(p.target.value)})})})})}),jsx(T,{onClick:l,disabled:u})]})}function de({enableHeader:e,column:t,filter:n,actions:o,onApply:a,onBack:r}){let s=w.useMemo(()=>{switch(t.type){case "text":return jsx(rt,{filter:n,actions:o,column:t,onApply:a});case "option":return jsx(nt,{filter:n,actions:o,column:t,onApply:a});case "multiOption":return jsx(Je,{filter:n,actions:o,column:t,onApply:a});case "number":return jsx(Xe,{filter:n,actions:o,column:t,onApply:a});case "date":return jsx(Ue,{filter:n,actions:o,column:t,onApply:a});case "cascader":return jsx(ze,{filter:n,actions:o,column:t,onApply:a});default:return null}},[o,t,n,a]);return jsxs(Fragment,{children:[e&&jsx(Le,{title:t.displayName,onBack:r}),s]})}function it({column:e,filter:t,actions:n,disabled:o,enableAutoClose:a}){let[r,s]=w.useState(false),i=w.useCallback(()=>{a&&setTimeout(()=>{s(false);},120);},[a]);return jsxs(F,{open:r,onOpenChange:s,children:[jsx(G$1,{asChild:true,children:jsx(P,{mode:"ghost",variant:"neutral",size:"xsmall",disabled:o,className:c("z-1 h-full w-fit rounded-none px-4 text-label-sm",r&&"active"),children:jsx(en,{filter:t,column:e})})}),jsx(H$1,{align:"start",side:"bottom",arrow:false,className:"w-fit rounded-xl p-0",sideOffset:6,children:jsx(de,{enableHeader:false,column:e,filter:t,actions:n,onApply:i})})]})}function en({filter:e,column:t}){switch(t.type){case "text":return jsx(nn,{filter:e});case "number":return jsx(on,{filter:e,mode:t.mode});case "date":return jsx(tn,{filter:e,column:t});case "option":return jsx(rn,{filter:e,column:t});case "multiOption":return jsx(an,{filter:e,column:t});case "cascader":return jsx(ln,{filter:e,column:t});default:return null}}function tn({filter:e,column:t}){let[n]=k();if(!e)return null;if(e.values.length===0)return jsx(Ellipsis,{className:"size-16"});let o=n.toLowerCase().includes("cn"),a=t.datePickerConfig?.picker??"date",r=Oe(t.datePickerConfig,n);if(e.values.length===1){let s=e.values[0],i=r.timeFormat?o?`${r.full} ${r.timeFormat}`:`${r.full}, ${r.timeFormat}`:r.full;return jsx("span",{children:s.format(i)})}return jsx("span",{children:Be(e.values[0],e.values[1],o,r,a)})}function nn({filter:e}){if(!e)return null;if(e.values.length===0||e.values[0].trim()==="")return jsx(Ellipsis,{className:"size-16"});let t=e.values[0];return jsx("span",{children:t})}function on({filter:e,mode:t}){let n=S();if(!e||!e.values||e.values.length===0)return jsx(Ellipsis,{className:"size-16"});let[o,a]=e.values;return t&&t==="range"&&a!==void 0?jsxs("span",{className:"tracking-tight tabular-nums",children:[o," ",n("to")," ",a]}):jsx("span",{className:"tracking-tight tabular-nums",children:o})}function rn({filter:e,column:t}){let n=t.options.filter(o=>e?.values.includes(o.value));if(n.length===1){let{label:o,icon:a}=n[0];return jsxs("span",{className:"inline-flex items-center gap-4",children:[a&&a,jsx("span",{children:o})]})}return null}function an({filter:e,column:t}){let n=t.options.filter(l=>e?.values.includes(l.value));if(n.length===0)return jsx(Ellipsis,{className:"size-16"});if(n.length===1){let{label:l,icon:u}=n[0];return jsxs("span",{className:"inline-flex items-center gap-4",children:[u&&u,jsx("span",{children:l})]})}let o=sn(n,3),a=n.length-o.length;if(!o.some(l=>!!l.icon))return jsxs("div",{className:"inline-flex items-center gap-4",children:[jsx("span",{children:o.map(l=>l.label).join(", ")}),a>0&&jsxs("span",{className:"inline-flex items-center leading-16",style:{letterSpacing:"-1px"},children:["+ ",a," ..."]})]});let s=[],i=[];return o.forEach(({value:l,icon:u,label:p})=>{u?s.push(jsx("span",{className:"inline-flex shrink-0",children:u},l)):i.push(p);}),jsxs("div",{className:"inline-flex items-center gap-4",children:[jsxs("div",{className:"inline-flex items-center gap-2",children:[s,s.length>0&&i.length>0&&jsx(G,{orientation:"vertical",className:"mx-4 h-26 opacity-50"}),i.length>0&&jsx("span",{className:"text-text-sub",children:i.join(", ")})]}),a>0&&jsxs("span",{className:"inline-flex items-center leading-16",style:{letterSpacing:"-1px"},children:["+ ",a," ..."]})]})}function sn(e,t){return e.slice(0,t)}function ln({filter:e,column:t}){if(!e||!e.values||e.values.length===0)return jsx(Ellipsis,{className:"size-16"});let n=t.cascaderConfig?.fieldNames?.label??"label",o=t.cascaderConfig?.fieldNames?.value??"value",a=t.cascaderConfig?.fieldNames?.children??"children",r=[],s=t.options;for(let i of e.values){let l=s?.find(u=>String(u[o])===String(i));if(l)r.push(String(l[n])),s=l[a];else break}return r.length===0?jsx(Ellipsis,{className:"size-16"}):jsx("span",{children:r.join(" / ")})}function Ur({columns:e,filters:t,actions:n,enableAutoClose:o,className:a,disabled:r}){let s=S();return jsxs("div",{className:a,children:[[...t].sort((i,l)=>{let u=R(e,i.columnId).pin?1:0;return (R(e,l.columnId).pin?1:0)-u}).map(i=>{let l=R(e,i.columnId);return i.values?jsx(cn,{filter:i,column:l,actions:n,enableAutoClose:o,disabled:r},`active-filter-${i.columnId}`):null}),t.some(i=>!R(e,i.columnId).pin)&&jsx(P,{mode:"ghost",size:"xsmall",disabled:r,className:"bg-transparent! text-primary-base hover:underline",onClick:()=>r?null:n.removeAllFilters(),children:s("clear_all")})]})}function cn({column:e,filter:t,actions:n,disabled:o,enableAutoClose:a}){let r=S();return jsxs("div",{className:"flex h-28 items-center rounded-full border border-stroke-soft bg-bg-white ring-1 ring-primary-alpha-10 ring-offset-1",children:[jsx(pn,{column:e}),jsx(G,{orientation:"vertical"}),jsx(it,{disabled:o,column:e,filter:t,actions:n,enableAutoClose:a}),jsx(G,{orientation:"vertical"}),jsx(i,{size:"small",delayDuration:300,content:r(e.pin?"pinned":"delete"),children:jsx(P,{className:c("z-1 h-full w-28 rounded-none rounded-r-full",(o||e.pin)&&"cursor-auto opacity-50"),variant:"neutral",mode:"ghost",size:"xsmall",onClick:()=>o||e.pin?null:n.removeFilter(t.columnId),children:e.pin?jsx(Pin,{className:"size-16 -translate-x-1"}):jsx(X,{className:"size-16 -translate-x-1"})})})]})}function pn({column:e}){return jsxs("span",{className:"flex h-full items-center gap-4 ps-10 pe-6 text-label-sm whitespace-nowrap text-text-sub select-none",children:[e.icon&&jsx(U,{size:16,as:e.icon}),jsx("span",{children:e.displayName})]})}var Cn={ease:[.26,.08,.25,1],duration:.27},yn={initial:{opacity:0},visible:{opacity:1},hidden:{opacity:0}};function lt({side:e="bottom",align:t="start",size:n="small",className:o,children:a,activeType:r,disabled:s,onOpenChange:i,onEscapeKeyDown:l}){let u=S(),[p,m$1]=w.useState(false),c$1=w.useCallback(g=>{m$1(g),i?.(g);},[i]);return jsxs(F,{open:p,onOpenChange:c$1,children:[jsx(G$1,{asChild:true,children:jsx(P,{className:c(p&&"active",o),variant:"neutral",mode:"stroke",startContent:jsx(FunnelPlus,{}),size:n,disabled:s,children:u("filter")})}),jsx(H$1,{className:"w-fit min-w-3xs p-0",side:e,align:t,sideOffset:6,arrow:false,onEscapeKeyDown:l,children:jsx(AnimatePresence,{mode:"wait",children:jsx(m.div,{initial:"hidden",animate:"visible",exit:"hidden",variants:yn,transition:Cn,layout:true,children:a})},r)})]})}function ya({columns:e,filters:t,actions:n,side:o,size:a,className:r,align:s,enableAutoBack:i,disabled:l}){let u=w.useRef(void 0),p=w.useRef(null),[m,c]=w.useState(void 0),g=m?R(e,m):void 0,y=m?t.find(x=>x.columnId===m):void 0,v=w.useCallback(()=>{c(void 0);},[]),B=w.useCallback(()=>{i&&c(void 0);},[i]),mt=w.useCallback(x=>{x||setTimeout(()=>{u.current=void 0,c(void 0);},180);},[]),ct=w.useCallback(x=>{m!==void 0&&(x.preventDefault(),v(),setTimeout(()=>{p.current?.focus();},200));},[m,v]),xe=w.useCallback(x=>{u.current=x,c(x);},[]),Ne=w.useCallback(()=>{n.removeAllFilters();},[n]),Se=!t.some(x=>!R(e,x.columnId).pin)||!t.length,pt=w.useMemo(()=>g&&m?jsx(de,{enableHeader:true,column:g,filter:y,actions:n,onApply:B,onBack:v}):jsx(bn,{defaultValue:u.current,onSelect:xe,onClean:Ne,disableClean:Se,columns:e,ref:p}),[g,m,y,n,B,v,xe,Ne,Se,e]);return jsxs(Fragment,{children:[jsx(He,{columns:e}),jsx(lt,{side:o,size:a,align:s,className:r,activeType:m,menuCount:e.length,disabled:l,onOpenChange:mt,onEscapeKeyDown:ct,children:pt})]})}function bn({defaultValue:e,columns:t,disableClean:n,onSelect:o,onClean:a,ref:r}){let s=S(),i=t.some(l=>!!l.icon);return jsxs(Fragment,{children:[jsxs(w$1,{loop:true,defaultValue:e,shouldFilter:false,children:[jsx(x,{placeholder:"Search...",className:"sr-only",ref:r}),jsx(y,{className:"max-h-fit",children:jsx(A,{children:t.map(l=>jsx(C,{className:"group",value:l.columnId,keywords:[l.displayName],onSelect:o,children:jsxs("div",{className:"flex w-full items-center justify-between",children:[jsxs("div",{className:"inline-flex items-center gap-6",children:[l.icon&&jsx(U,{size:16,as:l.icon}),!l.icon&&i&&jsx("span",{className:"size-16"}),jsx("span",{className:"text-label-sm",children:l.displayName})]}),jsx(ChevronRight,{className:"-mr-4 size-18 text-text-soft group-aria-selected:text-text-sub"})]})},l.columnId))})})]}),jsx("div",{className:"h-px bg-bg-soft"}),jsx("div",{className:"p-4",children:jsx(P,{variant:"neutral",mode:"ghost",onClick:a,disabled:n,className:"w-full disabled:text-text-disabled",children:s("clear")})})]})}function Tn(e,t){if(e.type!=="date")return;let n=e.datePickerConfig;return Ce(n?.format)??E(n?.picker,t,n?.showTime)}function ka({defaultFilters:e=[],filters:t,onFiltersChange:n}={}){let[o]=k(),[a,r]=T$1({value:t,defaultValue:e,onChange:n}),s=w.useMemo(()=>({setFilterValue:(i,l)=>{r(u=>{let p=u.find(B=>B.columnId===i.columnId),m=p&&p.values.length>0,c=i.type==="number"?Re(l):i.type==="date"?Ie(l):Me(l);if(c.length===0)return u;let g=Tn(i,o),y=i.pin||void 0;if(!m)return [...u,{columnId:i.columnId,type:i.type,values:c,...g&&{dateFormat:g},...y&&{pin:y}}];let v={columnId:i.columnId,type:i.type,values:c,...g&&{dateFormat:g},...y&&{pin:y}};return u.map(B=>B.columnId===i.columnId?v:B)});},removeFilter:i=>{r(l=>l.filter(u=>u.columnId!==i||u.pin));},removeAllFilters:()=>{r(i=>i.filter(l=>l.pin));}}),[r,o]);return [a,s]}export{kn as a,Ae as b,Oe as c,Be as d,E as e,Ur as f,ya as g,ka as h};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a as a$1}from'./chunk-M7AD2PUT.js';import {extendTailwindMerge}from'tailwind-merge';import {createTV,cn}from'tailwind-variants';import {Tooltip,Popover,Slot}from'radix-ui';import {jsx,jsxs}from'react/jsx-runtime';import*as _ from'react';import ___default from'react';import {Command}from'cmdk';import {SearchIcon}from'lucide-react';var fe={title:["h1","h2","h3","h4","h5","h6"],label:["xl","lg","md","sm","xs"],paragraph:["xl","lg","md","sm","xs"],subheading:["md","sm","xs","2xs"],text:["xs","11","sm","13","md","15","lg","xl","2xl","3xl"]},be=["slate","red","orange","amber","yellow","lime","green","emerald","teal","cyan","sky","blue","indigo","violet","purple","fuchsia","pink","rose"],ge=Object.entries(fe).flatMap(([e,t])=>t.map(o=>e==="text"?o:`${e}-${o}`)),xe=be.map(e=>`badge-${e}`),F={extend:{classGroups:{"font-size":[{text:ge}],"ui-badge":[{ui:xe}]},conflictingClassGroups:{"ui-badge":["bg-color","text-color","border-color"]}}},ve=extendTailwindMerge(F),m=createTV({twMergeConfig:F}),a=(...e)=>ve(cn(...e));var ye=Tooltip.Root,Ce=Tooltip.Trigger,he=Tooltip.Arrow,Pe=m({slots:{contentClassnames:["z-10 leading-20 shadow-tooltip","animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95","data-[side=left]:slide-in-from-right-6","data-[side=right]:slide-in-from-left-6","data-[side=bottom]:slide-in-from-top-6","data-[side=top]:slide-in-from-bottom-6"],arrowClassnames:"-translate-y-1/2 -rotate-45 rounded-bl-xs border [clip-path:polygon(0_100%,0_0,100%_100%)]"},variants:{size:{large:{contentClassnames:"rounded-lg px-6 py-1 text-[15px]"},medium:{contentClassnames:"rounded-md px-5 py-1 text-[14px]"},small:{contentClassnames:"rounded-md px-5 py-1 text-[13px]"},xsmall:{contentClassnames:"rounded-md px-4 py-1 text-[12px]"}},variant:{dark:{contentClassnames:"bg-stroke-strong text-text-white",arrowClassnames:"border-stroke-strong bg-bg-strong"},light:{contentClassnames:"bg-bg-white text-text-strong ring-1 ring-stroke-soft",arrowClassnames:"border-stroke-soft bg-bg-white"}}},compoundVariants:[{size:["xsmall"],class:{arrowClassnames:"size-5"}},{size:["small"],class:{arrowClassnames:"size-6"}},{size:["medium"],class:{arrowClassnames:"size-7"}},{size:["large"],class:{arrowClassnames:"size-7"}}],defaultVariants:{size:"small",variant:"dark"}});function wt({delayDuration:e=350,skipDelayDuration:t=0,...o}){return jsx(Tooltip.Provider,{"data-slot":"tooltip-provider",delayDuration:e,skipDelayDuration:t,...o})}var Tt=({content:e,children:t,open:o,defaultOpen:r,delayDuration:s,arrow:d=true,sideOffset:i=4,collisionPadding:n=4,className:p,size:c,variant:l,ref:b,hidden:C,asChild:h=true,onOpenChange:x,...v})=>{let{contentClassnames:T,arrowClassnames:f}=Pe({size:c,variant:l});return C?t:jsxs(ye,{open:o,defaultOpen:r,delayDuration:s,onOpenChange:x,children:[jsx(Ce,{asChild:h,children:t}),jsx(Tooltip.Portal,{children:jsxs(Tooltip.Content,{ref:b,sideOffset:i,collisionPadding:n,className:T({class:p}),...v,children:[e,d&&jsx(he,{asChild:true,children:jsx("div",{className:f()})})]})})]})};var De={};a$1(De,{Card:()=>K,CardContent:()=>Ne,CardDescription:()=>Be,CardExtra:()=>Le,CardFooter:()=>ze,CardHeader:()=>ke,CardHeading:()=>Ve,CardIcon:()=>Ee,CardTable:()=>Se,CardTitle:()=>Me,CardToolbar:()=>Ie,Root:()=>K});var $=___default.createContext({variant:"default"}),L=()=>{let e=___default.useContext($);if(!e)throw new Error("useCardContext must be used within a Card component");return e},we=m({base:"flex flex-col items-stretch rounded-xl text-paragraph-sm",variants:{variant:{default:"border border-stroke-antd bg-bg-white",accent:"border border-stone-50 bg-bg-weak p-4"}},defaultVariants:{variant:"default"}}),Te=m({base:"flex flex-wrap items-center justify-between gap-10 p-16",variants:{variant:{default:"border-b border-stroke-antd",accent:""}},defaultVariants:{variant:"default"}}),G=m({base:"grow",variants:{variant:{default:"p-16",accent:"rounded-t-xl bg-bg-white p-16 last:rounded-b-xl"}},defaultVariants:{variant:"default"}}),Re=m({base:"grid grow",variants:{variant:{default:"",accent:"rounded-xl bg-bg-white"}},defaultVariants:{variant:"default"}}),_e=m({base:"flex min-h-56 items-center px-16",variants:{variant:{default:"border-t border-stroke-antd",accent:"mt-2 rounded-b-xl bg-bg-white"}},defaultVariants:{variant:"default"}}),K=___default.forwardRef(({className:e,variant:t="default",...o},r)=>jsx($.Provider,{value:{variant:t},children:jsx("div",{"data-slot":"card",ref:r,className:a(we({variant:t}),e),...o})}));K.displayName="Card";function ke({className:e,...t}){let{variant:o}=L();return jsx("div",{"data-slot":"card-header",className:a(Te({variant:o}),e),...t})}function Ne({className:e,...t}){let{variant:o}=L();return jsx("div",{"data-slot":"card-content",className:a(G({variant:o}),e),...t})}function Le({className:e,...t}){let{variant:o}=L();return jsx("div",{"data-slot":"card-extra",className:a(G({variant:o}),e),...t})}function Se({className:e,...t}){let{variant:o}=L();return jsx("div",{"data-slot":"card-table",className:a(Re({variant:o}),e),...t})}function ze({className:e,...t}){let{variant:o}=L();return jsx("div",{"data-slot":"card-footer",className:a(_e({variant:o}),e),...t})}function Ve({className:e,...t}){return jsx("div",{"data-slot":"card-heading",className:a("space-y-4",e),...t})}function Ie({as:e,className:t,...o}){return jsx(e||"div",{"data-slot":"card-toolbar",className:a("flex items-center gap-10",t),...o})}function Me({className:e,...t}){return jsx("h3",{"data-slot":"card-title",className:a("m-0 text-[16px] font-semibold tracking-tight",e),...t})}function Ee({className:e,...t}){return jsx("div",{"data-slot":"card-icon",className:a("m-0 flex w-32 shrink-0 items-center justify-center rounded-xl bg-bg-weak text-text-strong [&_svg]:size-18",e),...t})}function Be({className:e,...t}){return jsx("div",{"data-slot":"card-description",className:a("text-md leading-none text-text-soft",e),...t})}var je={};a$1(je,{Command:()=>He,CommandEmpty:()=>Fe,CommandGroup:()=>We,CommandInput:()=>Oe,CommandItem:()=>Ge,CommandList:()=>Ue,CommandSeparator:()=>$e,CommandShortcut:()=>Ke,Root:()=>He});function He({className:e,...t}){return jsx(Command,{"data-slot":"command",className:a("flex h-full w-full flex-col overflow-hidden rounded-2xl bg-bg-white",e),...t})}function Oe({className:e,...t}){return jsxs("div",{"data-slot":"command-input-wrapper",className:a("flex h-36 items-center gap-8 border-b border-stroke-soft px-12",e),children:[jsx(SearchIcon,{className:"size-16 shrink-0 opacity-50"}),jsx(Command.Input,{"data-slot":"command-input",className:a("flex h-40 w-full rounded-2xl border-none bg-transparent py-12 text-label-sm outline-none disabled:cursor-not-allowed disabled:opacity-50"),...t})]})}function Ue({className:e,...t}){return jsx(Command.List,{"data-slot":"command-list",className:a("max-h-300 scroll-py-4 overflow-x-hidden overflow-y-auto outline-0",e),...t})}function Fe({...e}){return jsx(Command.Empty,{"data-slot":"command-empty",className:"py-24 text-center text-paragraph-sm",...e})}function We({className:e,...t}){return jsx(Command.Group,{"data-slot":"command-group",className:a("overflow-hidden p-4 text-text-sub **:[[cmdk-group-heading]]:px-8 **:[[cmdk-group-heading]]:py-6 **:[[cmdk-group-heading]]:text-label-xs **:[[cmdk-group-heading]]:text-text-soft",e),...t})}function $e({className:e,...t}){return jsx(Command.Separator,{"data-slot":"command-separator",className:a("-mx-4 h-px bg-bg-soft",e),...t})}function Ge({className:e,...t}){return jsx(Command.Item,{"data-slot":"command-item",className:a("relative flex items-center gap-8 rounded-lg px-8 py-6 outline-0 select-none","data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50","data-[selected=true]:bg-bg-weak data-[selected=true]:text-text-strong","text-label-sm [&_svg]:pointer-events-none [&_svg]:shrink-0",e),...t})}function Ke({className:e,...t}){return jsx("span",{"data-slot":"command-shortcut",className:a("ml-auto tracking-widest text-text-soft",e),...t})}var at={};a$1(at,{Popover:()=>Xe,PopoverAnchor:()=>tt,PopoverClose:()=>et,PopoverContent:()=>Ze,PopoverOverlay:()=>ot,PopoverTrigger:()=>Ye,Root:()=>Xe});function j({className:e}){return jsx("div",{className:a("size-11 -translate-y-[50%] rounded-bl-[3px] border border-stroke-soft bg-bg-white",e,"-rotate-45 [clip-path:polygon(0_100%,0_0,100%_100%)]")})}var Xe=Popover.Root;function Ye({asChild:e=true,...t}){return jsx(Popover.Trigger,{asChild:e,...t})}function Ze({children:e,className:t,align:o="center",sideOffset:r=4,collisionPadding:s=12,arrowPadding:d=12,arrow:i=true,unstyled:n,arrowClassName:p,ref:c,...l}){return jsx(Popover.Portal,{children:jsxs(Popover.Content,{ref:c,align:o,sideOffset:r,collisionPadding:s,arrowPadding:d,className:a([!n&&"w-max rounded-2xl bg-bg-white p-20 shadow-regular-md ring-1 ring-stroke-soft"],"relative z-50 outline-0","data-[state=closed]:animate-out data-[state=open]:animate-in","data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...l,children:[jsx(Slot.Slottable,{children:e}),i&&jsx(Popover.Arrow,{asChild:true,children:jsx(j,{className:p})})]})})}function et({className:e,unstyled:t,...o}){return jsx(Popover.Close,{className:a([!t&&"absolute top-16 right-16"],e),...o})}function tt({...e}){return jsx(Popover.Anchor,{"data-slot":"popover-anchor",...e})}function ot({as:e,className:t,...o}){return jsx(e||"div",{"data-slot":"popover-overlay",className:a("fixed inset-0 z-10",t),...o})}function z(){return ___default.useCallback(t=>(t.preventDefault(),false),[])}function J({stroke:e="2",className:t}){return jsx("svg",{className:t,width:"24",height:"24",stroke:"currentColor",viewBox:"0 0 24 24",strokeWidth:e,fill:"none",strokeLinecap:"round",strokeLinejoin:"round",xmlns:"http://www.w3.org/2000/svg",children:jsxs("g",{children:[jsxs("circle",{cx:"12",cy:"12",r:"9.5",children:[jsx("animate",{attributeName:"stroke-dasharray",dur:"1.5s",calcMode:"spline",values:"0 150;42 150;42 150;42 150",keyTimes:"0;0.475;0.95;1",keySplines:"0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1",repeatCount:"indefinite"}),jsx("animate",{attributeName:"stroke-dashoffset",dur:"1.5s",calcMode:"spline",values:"0;-16;-59;-59",keyTimes:"0;0.475;0.95;1",keySplines:"0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1",repeatCount:"indefinite"})]}),jsx("animateTransform",{attributeName:"transform",type:"rotate",dur:"2s",values:"0 12 12;360 12 12",repeatCount:"indefinite"})]})})}function I({loading:e,fillSpinnerClassname:t=false,startContent:o,endContent:r,iconClassName:s}){let d=jsx(J,{className:t?s:void 0}),i="none";e&&(o?i="startContent":r?i="endContent":i="overlay");let n=(l,b)=>jsx("span",{className:s,children:l},b);return {showSpinnerAt:i,renderStartContent:()=>i==="startContent"?n(d,"startContent"):o?n(o,"startContent"):null,renderEndContent:()=>i==="endContent"?n(d,"endContent"):r?n(r,"endContent"):null,loadingSpinner:d}}var M=m({base:["relative inline-flex items-center justify-center bg-transparent whitespace-nowrap outline-0 select-none","transition duration-200 ease-out","active:scale-[0.98] data-[state=open]:scale-[0.98]","focus-visible:ring-2 focus-visible:ring-primary-base focus-visible:ring-offset-1","disabled:pointer-events-none disabled:cursor-not-allowed disabled:ring-transparent data-disabled:ring-transparent"]}),Y=m({slots:{root:[M(),"disabled:opacity-50 data-disabled:opacity-50","group border border-transparent"],icon:"flex shrink-0 items-center justify-center",overlay:"absolute inset-0 flex items-center justify-center"},variants:{variant:{primary:{},neutral:{},error:{}},mode:{filled:{},stroke:{},lighter:{},ghost:{}},loading:{true:{root:"cursor-not-allowed"}},size:{large:{root:"h-40 gap-6 rounded-2xl px-16 text-label-md",overlay:"rounded-2xl",icon:'[&_svg:not([class*="size-"])]:size-16'},medium:{root:"h-36 gap-6 rounded-2xl px-14 text-label-md",overlay:"rounded-2xl",icon:'[&_svg:not([class*="size-"])]:size-16'},small:{root:"h-32 gap-4 rounded-[7px] px-12 text-label-sm",overlay:"rounded-[7px]",icon:'[&_svg:not([class*="size-"])]:size-14'},xsmall:{root:"h-28 gap-4 rounded-[7px] px-10 text-label-sm",overlay:"rounded-[7px]",icon:'[&_svg:not([class*="size-"])]:size-14'}}},compoundVariants:[{variant:"primary",mode:"filled",class:{root:["bg-primary-base text-static-white","hover:bg-primary-darker","active:bg-primary-darker data-[state=open]:bg-primary-darker"],overlay:"text-static-white"}},{variant:"primary",mode:"stroke",class:{root:["border-primary-base","bg-bg-white text-primary-base","hover:bg-primary-alpha-10 hover:ring-transparent","active:bg-primary-alpha-10 active:ring-transparent data-[state=open]:bg-primary-alpha-10 data-[state=open]:ring-transparent"],overlay:"text-primary-base"}},{variant:"primary",mode:"lighter",class:{root:["bg-primary-alpha-10 text-primary-base","hover:border-primary-alpha-16","active:border-primary-alpha-16 data-[state=open]:border-primary-alpha-16"],overlay:"text-primary-base"}},{variant:"primary",mode:"ghost",class:{root:["bg-transparent text-primary-base ring-transparent","hover:bg-primary-alpha-10","active:bg-primary-alpha-10 data-[state=open]:bg-primary-alpha-10"],overlay:"text-primary-base"}},{variant:"neutral",mode:"filled",class:{root:["bg-bg-strong text-text-white","hover:bg-bg-surface","active:bg-bg-surface data-[state=open]:bg-bg-surface"],overlay:"text-text-white"}},{variant:"neutral",mode:"stroke",class:{root:["border-stroke-soft bg-bg-white text-text-strong","hover:bg-bg-weak","active:bg-bg-weak data-[state=open]:bg-bg-weak","focus-visible:text-text-strong"],overlay:"text-text-strong"}},{variant:"neutral",mode:"lighter",class:{root:["bg-bg-weak text-text-strong","hover:border-stroke-soft","active:border-stroke-soft data-[state=open]:border-stroke-soft"],overlay:"text-text-strong"}},{variant:"neutral",mode:"ghost",class:{root:["bg-transparent text-text-strong ring-transparent","hover:bg-bg-weak","active:bg-bg-weak data-[state=open]:bg-bg-weak","focus-visible:bg-bg-white"],overlay:"text-text-strong"}},{variant:"error",mode:"filled",class:{root:["bg-error-base text-static-white","hover:bg-red-700","active:bg-red-700 data-[state=open]:bg-red-700"],overlay:"text-static-white"}},{variant:"error",mode:"stroke",class:{root:["border-error-base bg-bg-white text-error-base","hover:bg-red-alpha-10","active:bg-red-alpha-10 data-[state=open]:bg-red-alpha-10"],overlay:"text-error-base"}},{variant:"error",mode:"lighter",class:{root:["bg-red-alpha-10 text-error-base","hover:border-error-light","active:border-error-light data-[state=open]:border-error-light"],overlay:"text-error-base"}},{variant:"error",mode:"ghost",class:{root:["bg-transparent text-error-base","hover:bg-red-alpha-10","active:bg-red-alpha-10 data-[state=open]:bg-red-alpha-10"],overlay:"text-error-base"}}],defaultVariants:{variant:"primary",mode:"filled",size:"small"}}),Z=___default.forwardRef((e,t)=>{let{children:o,variant:r,mode:s,size:d,startContent:i,endContent:n,asChild:p=false,className:c,loading:l=false,disabled:b,onClick:C,...h}=e,x=z(),v=p?Slot.Root:"button",{root:T,icon:f,overlay:E}=Y({variant:r,mode:s,size:d,loading:l}),{showSpinnerAt:S,renderStartContent:B,renderEndContent:k,loadingSpinner:pe}=I({loading:l,startContent:i,endContent:n,iconClassName:f()}),D=b||l;return jsxs(v,{ref:t,onContextMenu:x,onClick:D?void 0:C,className:T({className:c}),disabled:p?void 0:D,"data-state":l?"loading":"idle","data-disabled":D?"":void 0,...h,children:[B(),jsx(Slot.Slottable,{children:o&&jsx("span",{className:a("inline-flex justify-center",S==="overlay"&&"text-transparent"),children:o})}),k(),S==="overlay"&&jsx("span",{className:a(E(),f()),children:pe})]})});Z.displayName="ButtonRoot";var oe=m({slots:{root:[M(),"group border-none","disabled:opacity-90"],contentIcon:"flex shrink-0 items-center justify-center",overlay:"absolute inset-0 flex items-center justify-center"},variants:{variant:{neutral:{root:"bg-bg-strong text-text-white shadow-fancy-buttons-neutral"},primary:{root:"bg-primary-base text-static-white shadow-fancy-buttons-primary"},error:{root:"bg-error-base text-static-white shadow-fancy-buttons-error"},basic:{root:["bg-bg-weak bg-linear-to-b from-neutral-50 to-neutral-200 text-text-sub shadow-fancy-buttons-stroke","hover:text-text-strong"]}},size:{large:{root:"h-40 gap-6 rounded-2xl px-16 text-label-md",contentIcon:"size-16"},medium:{root:"h-36 gap-6 rounded-2xl px-14 text-label-md",contentIcon:"size-16"},small:{root:"h-32 gap-4 rounded-[7px] px-12 text-label-sm",contentIcon:"size-14"},xsmall:{root:"h-28 gap-4 rounded-[7px] px-10 text-label-sm",contentIcon:"size-14"}},loading:{true:{root:"cursor-not-allowed"}}},compoundVariants:[{variant:["neutral","primary","error"],class:{root:["before:pointer-events-none before:absolute before:inset-0 before:z-10 before:rounded-[inherit]","before:bg-linear-to-b before:p-px","before:from-static-white/12 before:to-transparent","before:mask-[linear-gradient(#fff_0_0),linear-gradient(#fff_0_0)] before:mask-exclude before:[mask-clip:content-box,border-box]","after:absolute after:inset-0 after:rounded-[inherit] after:bg-linear-to-b after:from-static-white after:to-transparent","after:pointer-events-none after:opacity-[.16] after:transition after:duration-200 after:ease-out","hover:after:opacity-[.24]","active:after:opacity-[.24] data-[state=open]:after:opacity-[.24]"]}}],defaultVariants:{variant:"neutral",size:"small"}}),ae=_.forwardRef(({asChild:e,children:t,variant:o,size:r,className:s,startContent:d,endContent:i,loading:n=false,disabled:p,onClick:c,...l},b)=>{let C=z(),h=e?Slot.Root:"button",{root:x,contentIcon:v,overlay:T}=oe({variant:o,size:r,loading:n}),{showSpinnerAt:f,renderStartContent:E,renderEndContent:S,loadingSpinner:B}=I({loading:n,startContent:d,endContent:i,iconClassName:v(),fillSpinnerClassname:true}),k=p||!!n;return jsxs(h,{ref:b,onContextMenu:C,onClick:k?void 0:c,className:x({class:s}),disabled:e?void 0:k,"data-state":n?"loading":"idle","data-disabled":k?"":void 0,...l,children:[E(),t&&jsx("span",{className:a("inline-flex justify-center",f==="overlay"&&"text-transparent"),children:t}),S(),f==="overlay"&&jsx("span",{className:T(),children:B})]})});ae.displayName="FancyButtonRoot";var re={filter:"Add Filters",search_keywords:"Search...",no_results:"No results",to:"to",input_number:"Input Number",min:"Min",max:"Max",apply:"Apply Filter",clear:"Clear Filter",clear_all:"Clear",pagination_total:"Total {total} items",refresh:"Refresh",column_set:"Table Settings",density:"Density",large:"Large",middle:"Middle",compact:"Compact",pinned:"Pinned",delete:"Delete",cancel:"Cancel",continue:"Continue",submit:"Submit",data_export:"Export Data",data_import:"Import Data",ok:"Ok",close:"Close",copy:"Copy",copied:"Copied",drop_file_hint:"Drop file here to upload",file_support_all:"All file formats are supported",file_support_list:"Supported formats: {formats}",file_type_rejected:"This file type is not supported",import_tooltip:"Drag and drop files into the table area to import",pending:"Pending",importing:"Importing",exporting:"Exporting",import_failed:"Import Failed",import_done:"Done",done:"Done",alert_dialog_default_success_message:"Action completed successfully.",alert_dialog_default_error_message:"Something went wrong. Please try again.",alert_dialog_auto_close_in_seconds:"Auto close in {seconds} seconds"};var ne={filter:"\u6570\u636E\u7B5B\u9009",search_keywords:"\u641C\u7D22\u5173\u952E\u5B57...",no_results:"\u6CA1\u6709\u7ED3\u679C",to:"\u81F3",input_number:"\u8F93\u5165\u6570\u5B57",min:"\u6700\u5C0F\u503C",max:"\u6700\u5927\u503C",apply:"\u5E94\u7528\u7B5B\u9009",clear:"\u6E05\u7A7A\u7B5B\u9009",clear_all:"\u6E05\u7A7A",pagination_total:"\u5171 {total} \u6761\u8BB0\u5F55",refresh:"\u5237\u65B0",column_set:"\u5217\u8BBE\u7F6E",density:"\u5BC6\u5EA6",large:"\u5BBD\u677E",middle:"\u4E2D\u7B49",compact:"\u7D27\u51D1",pinned:"\u5DF2\u56FA\u5B9A",delete:"\u5220\u9664",cancel:"\u53D6\u6D88",continue:"\u7EE7\u7EED",submit:"\u63D0\u4EA4",data_export:"\u5BFC\u51FA\u6570\u636E",data_import:"\u5BFC\u5165\u6570\u636E",ok:"\u786E\u5B9A",close:"\u5173\u95ED",copy:"\u590D\u5236",copied:"\u5DF2\u590D\u5236",drop_file_hint:"\u62D6\u62FD\u6587\u4EF6\u5230\u6B64\u5904\u4E0A\u4F20",file_support_all:"\u652F\u6301\u4E0A\u4F20\u6240\u6709\u7684\u6587\u4EF6\u7C7B",file_support_list:"\u5141\u8BB8\u7684\u6587\u4EF6\u7C7B\u578B: {formats}",file_type_rejected:"\u4E0D\u652F\u6301\u8BE5\u6587\u4EF6\u7C7B\u578B",import_tooltip:"\u652F\u6301\u62D6\u62FD\u6587\u4EF6\u5230\u8868\u683C\u533A\u57DF\u5FEB\u901F\u5BFC\u5165",pending:"\u7B49\u5F85\u4E2D",importing:"\u5BFC\u5165\u4E2D",exporting:"\u5BFC\u51FA\u4E2D",import_failed:"\u5BFC\u5165\u5931\u8D25",import_done:"\u5DF2\u5BFC\u5165",done:"\u5DF2\u5B8C\u6210",alert_dialog_default_success_message:"\u64CD\u4F5C\u5DF2\u6210\u529F\u5B8C\u6210\u3002",alert_dialog_default_error_message:"\u53D1\u751F\u9519\u8BEF\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",alert_dialog_auto_close_in_seconds:"\u81EA\u52A8\u5173\u95ED ({seconds}s)"};var mt=["en-US","zh-CN"],se=___default.createContext(null),bo=({locale:e,defaultLocale:t,onLocaleChange:o,children:r})=>{let s=e!==void 0,[d,i]=___default.useState(()=>e??t??le());___default.useEffect(()=>{e!==void 0&&i(e);},[e]);let n=s?e:d,p=___default.useCallback(l=>{if(!s){i(l),o?.(l);return}o?.(l);},[s,o]),c=___default.useMemo(()=>({locale:n,setLocale:p}),[n,p]);return jsx(se.Provider,{value:c,children:r})},ut=e=>{};function ie(){let e=___default.useContext(se);return e?[e.locale,e.setLocale]:[le(),ut]}function le(e="en-US"){if(typeof navigator>"u")return e;for(let t of navigator.languages??[]){let o=mt.find(r=>t.toLowerCase().startsWith(r.toLowerCase().split("-")[0]));if(o)return o}return e}var gt={"zh-CN":ne,"en-US":re};function Po(){let[e]=ie();return ___default.useCallback((o,r)=>{let s=gt[e][o]??o;return r?s.replace(/\{(\w+)\}/g,(d,i)=>String(r[i]??`{${i}}`)):s},[e])}function Ro(e){let{value:t,defaultValue:o,onChange:r}=e,s=t!==void 0,[d,i]=___default.useState(o),n=s?t:d,p=___default.useRef({value:t,state:d,isControlled:s,onChange:r});p.current={value:t,state:d,isControlled:s,onChange:r};let c=___default.useCallback((l,...b)=>{let{value:C,state:h,isControlled:x,onChange:v}=p.current,f=typeof l=="function"?l(x?C:h):l;x||i(f),v&&v(f,...b);},[]);return [n,c]}function No(e){let{as:t,size:o,className:r,...s}=e;if(___default.isValidElement(t)){let n=t.props,p=n.className&&r?`${n.className} ${r}`:r??n.className,c=n.size??o,l={...n,...s,...c!==void 0?{size:c}:{},...p?{className:p}:{}};return ___default.cloneElement(t,l)}let d=t,i={...s,...o!==void 0?{size:o}:{},...r?{className:r}:{}};return jsx(d,{...i})}
|
|
2
|
+
export{We as A,$e as B,Ge as C,je as D,j as E,Xe as F,Ye as G,Ze as H,et as I,ot as J,at as K,z as L,J as M,M as N,Y as O,Z as P,oe as Q,ae as R,Po as S,Ro as T,No as U,F as a,m as b,a as c,ye as d,Ce as e,he as f,Pe as g,wt as h,Tt as i,bo as j,ie as k,K as l,ke as m,Ne as n,Le as o,ze as p,Ve as q,Ie as r,Me as s,Ee as t,Be as u,De as v,He as w,Oe as x,Ue as y,Fe as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import {b,c,h,j,E,U}from'./chunk-TL2HPXUT.js';import {a}from'./chunk-M7AD2PUT.js';import G,{useState,useCallback}from'react';import {LazyMotion}from'motion/react';import {jsx,Fragment,jsxs}from'react/jsx-runtime';import {Tabs,DropdownMenu,Switch}from'radix-ui';import {Loader2,Circle,Check,ChevronRight}from'lucide-react';var De=()=>import('./motion-features-BVPA56CL.js').then(e=>e.default),ie=G.createContext(false);function de({children:e}){return G.useContext(ie)?jsx(Fragment,{children:e}):jsx(ie.Provider,{value:true,children:jsx(LazyMotion,{features:De,strict:true,children:e})})}var W=Symbol.for("@@jerry-fe/ui/UIProviderContext");function Ie(){if(!globalThis[W]){let e=G.createContext(null);globalThis[W]=e;}return globalThis[W]}var le=Ie(),Te={hideOnSinglePage:false,showSizeChanger:true,pageSizeOptions:[10,20,30,50]},ke=({locale:e="zh-CN",tableStateStorageKey:t="APP_UI_TABLE_CONFIG",pagination:o=Te,children:a})=>{let n=G.useMemo(()=>({tableStateStorageKey:t,pagination:o}),[t,o]);return jsx(de,{children:jsx(h,{children:jsx(le.Provider,{value:n,children:jsx(j,{locale:e,children:a})})})})};ke.displayName="UIProvider";function at(){let e=G.useContext(le);if(!e)throw new Error("useUiState must be used within UIProvider");return e}function it(e,t,o=true,a=true){let n,p=(...u)=>{n?(clearTimeout(n),n=void 0):o&&e(...u),n=self.setTimeout(()=>{a&&e(...u),n=void 0;},t);};return p.cancel=()=>{n&&(clearTimeout(n),n=void 0);},p}function st(e,t,o=true){let a,n,p,u=(...x)=>{n=true,p=x,a||(o&&(n=false,e(...p)),a=self.setInterval(()=>{if(!n){self.clearInterval(a),a=void 0;return}n=false,e(...p);},t));};return u.cancel=()=>{a&&(self.clearInterval(a),a=void 0),n=false;},u}function lt(e){return t=>{e.forEach(o=>{typeof o=="function"?o(t):o!=null&&(o.current=t);});}}var _e={};a(_e,{Root:()=>Fe,Tabs:()=>Fe,TabsContent:()=>Oe,TabsList:()=>Ae,TabsTrigger:()=>Le});var ze=b({base:"flex w-fit shrink-0 items-center",variants:{variant:{default:"bg-bg-antd p-4",button:"bg-transparent",line:"border-b border-stroke-antd"},shape:{default:"",pill:""},size:{large:"gap-10",medium:"gap-8",small:"gap-4"}},compoundVariants:[{variant:"default",size:"large",className:"gap-6 p-4"},{variant:"default",size:"medium",className:"gap-4 p-4"},{variant:"default",size:"small",className:"gap-4 p-4"},{variant:"default",shape:"default",size:"large",className:"rounded-[12px]"},{variant:"default",shape:"default",size:"medium",className:"rounded-2xl"},{variant:"default",shape:"default",size:"small",className:"rounded-xl"},{variant:"line",size:"large",className:"gap-20"},{variant:"line",size:"medium",className:"gap-20"},{variant:"line",size:"small",className:"gap-14"},{variant:"default",shape:"pill",className:"rounded-full **:[[role=tab]]:rounded-full"},{variant:"button",shape:"pill",className:"rounded-full **:[[role=tab]]:rounded-full"}],defaultVariants:{variant:"default",size:"medium"}}),Se=b({base:"inline-flex shrink-0 cursor-pointer items-center justify-center border-0 bg-transparent font-medium whitespace-nowrap ring-offset-1 transition-colors select-none focus-visible:ring-2 focus-visible:ring-primary-base focus-visible:ring-offset-2 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:shrink-0 [&_svg]:text-text-soft [&:hover_svg]:text-primary-base [&[data-state=active]_svg]:text-primary-base",variants:{variant:{default:"text-text-sub hover:text-text-strong data-[state=active]:bg-bg-white data-[state=active]:text-primary-base",button:"rounded-lg text-text-sub hover:text-text-strong focus-visible:ring-2 focus-visible:ring-primary-base focus-visible:ring-offset-1 data-[state=active]:bg-primary-alpha-16 data-[state=active]:text-primary-base",line:"border-b-2 border-transparent text-text-sub hover:text-text-strong data-[state=active]:border-primary-base data-[state=active]:text-primary-base"},size:{large:"gap-8 text-label-md leading-20! [&_svg]:size-18",medium:"gap-6 text-label-sm [&_svg]:size-16",small:"gap-4 text-label-xs [&_svg]:size-14"}},compoundVariants:[{variant:"default",size:"large",className:"rounded-[8px] px-12 py-6"},{variant:"default",size:"medium",className:"rounded-[6px] px-10 py-4"},{variant:"default",size:"small",className:"rounded-[4px] px-8 py-4"},{variant:"button",size:"large",className:"rounded-[8px] px-12 py-6"},{variant:"button",size:"medium",className:"rounded-[6px] px-12 py-6"},{variant:"button",size:"small",className:"rounded-[4px] px-10 py-6"},{variant:"line",size:"large",className:"py-10"},{variant:"line",size:"medium",className:"py-7"},{variant:"line",size:"small",className:"py-7"}],defaultVariants:{variant:"default",size:"small"}}),Ve=b({base:"focus-visible:ring-ring mt-10 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-hidden",variants:{variant:{default:""}},defaultVariants:{variant:"default"}}),ue=G.createContext({variant:"default",size:"medium"});function Fe({className:e,...t}){return jsx(Tabs.Root,{"data-slot":"tabs",className:c("",e),...t})}function Ae({className:e,variant:t="default",shape:o="default",size:a="medium",...n}){return jsx(ue.Provider,{value:{variant:t,size:a},children:jsx(Tabs.List,{"data-slot":"tabs-list",className:c(ze({variant:t,shape:o,size:a}),e),...n})})}function Le({className:e,...t}){let{variant:o,size:a}=G.useContext(ue);return jsx(Tabs.Trigger,{"data-slot":"tabs-trigger",className:c(Se({variant:o,size:a}),e),...t})}function Oe({className:e,variant:t,...o}){return jsx(Tabs.Content,{"data-slot":"tabs-content",className:c(Ve({variant:t}),e),...o})}function me({className:e,size:t="default",disabled:o,loading:a,onChange:n,...p}){return jsxs(Switch.Root,{"data-slot":"switch","data-size":t,onCheckedChange:n,className:c("peer group/switch relative inline-flex shrink-0 items-center rounded-full border border-transparent p-0 transition-all outline-none","focus-visible:ring-2 focus-visible:ring-primary-base focus-visible:ring-offset-1 data-disabled:cursor-not-allowed data-disabled:opacity-50 data-[state=checked]:bg-primary-base data-[state=unchecked]:bg-bg-sub","data-[size=default]:h-20 data-[size=default]:w-38 data-[size=small]:h-18 data-[size=small]:w-32","aria-invalid:border-error-base aria-invalid:ring-3 aria-invalid:ring-error-light","after:absolute after:-inset-x-12 after:-inset-y-8",e),disabled:o||a,...p,children:[jsx(Switch.Thumb,{"data-slot":"switch-thumb",className:c("pointer-events-none block rounded-full bg-bg-white ring-0 transition-transform duration-250","group-data-[size=default]/switch:size-16 group-data-[size=default]/switch:data-[state=checked]:translate-x-19","group-data-[size=default]/switch:data-[state=unchecked]:translate-x-1","group-data-[size=small]/switch:size-14 group-data-[size=small]/switch:data-[state=checked]:translate-x-15","group-data-[size=small]/switch:data-[state=unchecked]:translate-x-1")}),a&&jsx("span",{"data-slot":"switch-loader",className:c("absolute inset-y-0 left-0 m-auto flex items-center justify-center text-text-soft transition-transform","group-data-[size=default]/switch:size-16 group-data-[size=default]/switch:group-data-[state=checked]/switch:translate-x-19","group-data-[size=default]/switch:group-data-[state=unchecked]/switch:translate-x-1","group-data-[size=small]/switch:size-14 group-data-[size=small]/switch:group-data-[state=checked]/switch:translate-x-15","group-data-[size=small]/switch:group-data-[state=unchecked]/switch:translate-x-1"),children:jsx(Loader2,{className:"animate-spin group-data-[size=default]/switch:size-14 group-data-[size=small]/switch:size-12",strokeWidth:"1"})})]})}function wt({className:e,...t}){return jsx("div",{className:c("animate-pulse rounded-sm bg-bg-soft",e),...t})}var We=b({slots:{content:["z-50 rounded-2xl bg-bg-white p-8 shadow-regular-md ring-1 ring-stroke-soft ring-inset","flex flex-col gap-4 text-label-sm text-text-sub","data-[side=bottom]:origin-top data-[side=left]:origin-right data-[side=right]:origin-left data-[side=top]:origin-bottom","data-[state=open]:animate-in data-[state=open]:fade-in-0","data-[state=closed]:animate-out data-[state=closed]:fade-out-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2"],trigger:["relative cursor-pointer rounded-lg px-8 py-6 outline-none select-none [&_svg]:pointer-events-none [&_svg]:shrink-0","flex items-center gap-8","data-highlighted:bg-bg-weak data-[state=open]:bg-bg-weak","data-disabled:pointer-events-none data-disabled:text-text-disabled"],item:["group/item relative cursor-pointer rounded-lg px-8 py-6 outline-none select-none data-highlighted:bg-bg-weak","flex items-center gap-8","transition duration-200 ease-out","data-disabled:pointer-events-none data-disabled:text-text-disabled"],checkbox:["relative flex cursor-default items-center gap-6 rounded-lg py-6 pr-6 transition-colors outline-none select-none","cursor-pointer data-disabled:pointer-events-none data-disabled:text-text-disabled","data-highlighted:bg-bg-weak","pl-34"],label:"px-8 py-2 text-label-sm text-text-soft",separator:"-mx-1 my-2 h-px bg-stroke-soft/90",shortcut:"ml-auto rounded-[4px] border border-stroke-soft px-4 py-3 text-sm leading-none text-text-sub group-data-disabled/item:text-text-disabled",extra:"ml-auto rounded-[4px] border border-stroke-soft px-4 py-3 text-sm leading-none text-text-sub group-data-disabled/item:text-text-disabled",arrow:"-mr-2 ml-auto size-14 text-text-soft",icon:"size-16",check:"absolute top-1/2 left-10 size-16 -translate-y-1/2"},variants:{inset:{true:{trigger:"pl-34",item:"pl-34",label:"pl-34"}},destructive:{true:{item:"text-error-base focus-visible:ring-error-base data-highlighted:bg-red-50"}}}}),l=We();var fe=DropdownMenu.Root,be=DropdownMenu.Trigger,ge=DropdownMenu.Group,he=DropdownMenu.Portal,xe=DropdownMenu.Sub,ve=DropdownMenu.RadioGroup,ye=DropdownMenu.Arrow,$=({className:e,inset:t,hasExtra:o,children:a,...n})=>jsxs(DropdownMenu.SubTrigger,{className:l.trigger({inset:t,className:e}),...n,children:[a,!o&&jsx(ChevronRight,{className:l.arrow()})]});$.displayName=DropdownMenu.SubTrigger.displayName;var K=({className:e,...t})=>jsx(DropdownMenu.SubContent,{className:l.content({className:c("min-w-120",e)}),...t});K.displayName=DropdownMenu.SubContent.displayName;var q=({className:e,sideOffset:t=4,...o})=>jsx(DropdownMenu.Portal,{children:jsx(DropdownMenu.Content,{sideOffset:t,className:l.content({className:c("min-w-xs",e)}),...o})});q.displayName=DropdownMenu.Content.displayName;var V=({className:e,inset:t,destructive:o,...a})=>jsx(DropdownMenu.Item,{className:l.item({inset:t,destructive:o,className:e}),...a});V.displayName=DropdownMenu.Item.displayName;var X=({className:e,children:t,checked:o,...a})=>jsxs(DropdownMenu.CheckboxItem,{className:l.checkbox({className:e}),checked:o,...a,children:[jsx(DropdownMenu.ItemIndicator,{className:l.check(),asChild:true,children:jsx(Check,{})}),t]});X.displayName=DropdownMenu.CheckboxItem.displayName;var Y=({className:e,children:t,...o})=>jsxs(DropdownMenu.RadioItem,{className:l.checkbox({className:e}),...o,children:[jsx(DropdownMenu.ItemIndicator,{className:l.check({className:"left-14 size-6 rounded-full fill-current"}),asChild:true,children:jsx(Circle,{})}),t]});Y.displayName=DropdownMenu.RadioItem.displayName;var D=({className:e,inset:t,...o})=>jsx(DropdownMenu.Label,{className:l.label({inset:t,className:e}),...o});D.displayName=DropdownMenu.Label.displayName;var y=({className:e,...t})=>jsx(DropdownMenu.Separator,{className:l.separator({className:e}),...t});y.displayName=DropdownMenu.Separator.displayName;var J=({className:e,...t})=>jsx("span",{className:l.shortcut({className:e}),...t});J.displayName="DropdownMenuShortcut";var Q=({className:e,...t})=>jsx("span",{className:l.extra({className:e}),...t});Q.displayName="DropdownMenuExtra";var R=({className:e,...t})=>jsx(U,{className:l.icon({className:e}),...t});R.displayName="DropdownMenuIcon";var we=({open:e,defaultOpen:t,modal:o,menuLabel:a,header:n,footer:p,children:u,items:x,disabled:M,className:h,asChild:v=true,arrow:I,sideOffset:te=6,collisionPadding:T=12,separatorClassName:f,renderItem:k,onOpenChange:s,onAction:b,...L})=>{let C=G.useCallback((g,P,B)=>Me(g,P,B,f),[f]),[O,_]=G.useState(e??t??false),E$1=G.useCallback(g=>{_(g),s?.(g);},[s]);return jsxs(fe,{open:e,defaultOpen:t,modal:o,onOpenChange:E$1,children:[jsx(be,{disabled:M,asChild:v,className:c(O&&"active"),children:u}),jsxs(q,{sideOffset:te,collisionPadding:T,className:c(h,"origin-(--radix-dropdown-menu-content-transform-origin)"),...L,children:[a&&jsxs(Fragment,{children:[jsx(D,{children:a}),jsx(y,{className:f})]}),n&&jsxs(Fragment,{children:[jsx("div",{className:"px-8",children:n}),jsx(y,{className:f})]}),Array.isArray(x)&&x.map((g,P)=>(k??C)(g,P,b)),p&&jsx("div",{className:"px-8",children:p}),I&&jsx(ye,{asChild:true,children:jsx(E,{className:"-translate-y-6.5"})})]})]})};we.displayName="DropdownMenu";function Me(e,t,o,a){if(e.separator)return jsx(y,{className:e.separatorClassName??a},e.key||`separator-${t}`);let{key:n,groupType:p,label:u,shortcut:x,extra:M,icon:h,inset:v,onValueChange:I,defaultValue:te,...T}=e,f=n??t,k=Array.isArray(e.items)?e.items:void 0;if(p==="switch"){let s=e.htmlFor??`${f}-switch`;return jsxs(V,{inset:v,className:"relative",onClick:b=>b.preventDefault(),...T,children:[h&&jsx(R,{as:h}),jsx("label",{htmlFor:s,className:"cursor-pointer before:absolute before:inset-0 before:content-['']",onClick:b=>b.stopPropagation(),children:u}),jsx(ee,{extra:jsx(me,{id:s,size:"small",checked:e.checked,defaultChecked:e.defaultChecked,disabled:e.disabled,onChange:I}),className:"border-none p-0"})]},f)}return p==="radio"&&e.options?jsxs(ve,{value:e.value!==void 0?String(e.value):void 0,onValueChange:I,children:[u&&jsxs(Fragment,{children:[jsx(D,{inset:v,children:u}),jsx(y,{className:a})]}),e.options.map(s=>jsxs(Y,{disabled:s.disabled||e.disabled,value:String(s.value),children:[s.icon,s.label]},s.key||s.value))]},f):p==="checkbox"&&e.options?jsxs(ge,{children:[u&&jsxs(Fragment,{children:[jsx(D,{inset:v,children:u}),jsx(y,{className:a})]}),e.options.map(({key:s,label:b,icon:L,value:C,disabled:O},_)=>jsxs(X,{disabled:O||e.disabled,checked:e.value!==void 0?String(e.value).includes(String(C)):void 0,onCheckedChange:E=>{let g=e.value??[],P=E?[...g,C]:g.filter(B=>B!==C);e.onValueChange?.(P);},children:[L,b]},s||_))]},f):k?jsxs(xe,{children:[jsxs($,{inset:v,disabled:e.disabled,hasExtra:!!M,children:[h&&jsx(R,{as:h}),u,jsx(ee,{extra:M,shortcut:x})]}),jsx(he,{children:jsx(K,{className:e.className,children:k.map((s,b)=>Me(s,`${f}-${b}`,o))})})]},f):jsxs(V,{inset:v,onClick:s=>o?.(e,s),...T,children:[h&&jsx(R,{as:h}),u,jsx(ee,{extra:M,shortcut:x})]},f)}function ee({extra:e,shortcut:t,className:o}){return e?jsx(Q,{className:o,children:e}):t?jsx(J,{className:o,children:t}):null}var Ht=(e=false)=>{let[t,o]=useState(e),a=useCallback(()=>{o(true);},[]),n=useCallback(()=>{o(false);},[]);return [t,a,n]};function A(e){return {variants:e,initial:"initial",animate:"animate",exit:"exit"}}function qe({y:e=24}={}){return A({initial:{opacity:0,y:e},animate:{opacity:1,y:0},exit:{opacity:0,y:-e}})}function Xe({y:e=24,scale:t=.98}={}){return A({initial:{opacity:0,y:e,scale:t},animate:{opacity:1,y:0,scale:1},exit:{opacity:0,y:-e,scale:t}})}var Kt=A({initial:{opacity:0},animate:{opacity:1},exit:{opacity:0}}),qt=A({initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0}}),Xt=qe();Xe();export{de as a,ke as b,at as c,it as d,st as e,lt as f,Fe as g,Ae as h,Le as i,_e as j,Xe as k,Kt as l,qt as m,Xt as n,me as o,wt as p,l as q,we as r,Ht as s};
|
package/data-table.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
|
2
2
|
import { g as FiltersState, F as FilterColumnDef, k as ColumnDataTypes } from './helpers-CG-PU28c.js';
|
|
3
3
|
export { C as CascaderConfig, a as CascaderFieldNames, b as CascaderOption, c as DATE_FORMATS, d as DateDisplayFormat, e as DatePickerConfig, f as FilterColumnOption, I as InputNumberConfig, P as PickerType, R as RangeDatePickerConfig, S as SingleDatePickerConfig, h as formatDateRange, i as getDateDisplayFormat, j as getPickerInputFormat } from './helpers-CG-PU28c.js';
|
|
4
4
|
import { I as IconType } from './icon-BmaneZ4I.js';
|
|
5
|
-
import { a as Button } from './button-
|
|
5
|
+
import { a as Button } from './button-DxZ9iyob.js';
|
|
6
6
|
import React__default, { ReactNode, Dispatch, SetStateAction } from 'react';
|
|
7
7
|
import * as antd from 'antd';
|
|
8
8
|
import { TableProps } from 'antd';
|
|
@@ -308,6 +308,8 @@ type TabMeta = Pick<TabConfig, 'id' | 'label' | 'value'>;
|
|
|
308
308
|
type NamedClass = 'root' | 'cardHeader' | 'cardHeading' | 'cardIcon' | 'cardToolbar' | 'cardContent' | 'cardSummary' | 'cardFooter' | 'tableSummary';
|
|
309
309
|
type DataTableProps<TData extends BaseRecord = BaseRecord> = UseDataTableProps<TData> & {
|
|
310
310
|
ref?: React.Ref<HTMLDivElement>;
|
|
311
|
+
/** 给 dialog drawer等元素定位用的容器 */
|
|
312
|
+
anchorRef?: React.Ref<HTMLDivElement>;
|
|
311
313
|
size?: TableProps['size'];
|
|
312
314
|
variant?: 'default' | 'accent';
|
|
313
315
|
cardTitle?: React.ReactNode;
|
|
@@ -320,7 +322,7 @@ type DataTableProps<TData extends BaseRecord = BaseRecord> = UseDataTableProps<T
|
|
|
320
322
|
classNames?: Partial<Record<NamedClass, string>>;
|
|
321
323
|
slots?: Partial<Record<'cardSummary' | 'cardFooter' | 'tableSummary', React.ReactNode>>;
|
|
322
324
|
};
|
|
323
|
-
type ToolbarBuiltInActionType = 'data_refresh' | 'size_setting' | 'column_setting' | 'data_export' | 'data_import' | 'filter_btn';
|
|
325
|
+
type ToolbarBuiltInActionType = 'data_refresh' | 'size_setting' | 'column_setting' | 'data_export' | 'data_import' | 'filter_btn' | 'close_drawer';
|
|
324
326
|
/** 内置 toolbar item 配置 (data_import 专属字段在其他 type 下会被忽略) */
|
|
325
327
|
type BuiltInToolbarItem = {
|
|
326
328
|
type: Exclude<ToolbarBuiltInActionType, 'data_import'>;
|
|
@@ -392,6 +394,8 @@ var large = "Large";
|
|
|
392
394
|
var middle = "Middle";
|
|
393
395
|
var compact = "Compact";
|
|
394
396
|
var pinned = "Pinned";
|
|
397
|
+
var cancel = "Cancel";
|
|
398
|
+
var submit = "Submit";
|
|
395
399
|
var data_export = "Export Data";
|
|
396
400
|
var data_import = "Import Data";
|
|
397
401
|
var ok = "Ok";
|
|
@@ -409,6 +413,9 @@ var exporting = "Exporting";
|
|
|
409
413
|
var import_failed = "Import Failed";
|
|
410
414
|
var import_done = "Done";
|
|
411
415
|
var done = "Done";
|
|
416
|
+
var alert_dialog_default_success_message = "Action completed successfully.";
|
|
417
|
+
var alert_dialog_default_error_message = "Something went wrong. Please try again.";
|
|
418
|
+
var alert_dialog_auto_close_in_seconds = "Auto close in {seconds} seconds";
|
|
412
419
|
var enUS = {
|
|
413
420
|
filter: filter,
|
|
414
421
|
search_keywords: search_keywords,
|
|
@@ -429,6 +436,9 @@ var enUS = {
|
|
|
429
436
|
compact: compact,
|
|
430
437
|
pinned: pinned,
|
|
431
438
|
"delete": "Delete",
|
|
439
|
+
cancel: cancel,
|
|
440
|
+
"continue": "Continue",
|
|
441
|
+
submit: submit,
|
|
432
442
|
data_export: data_export,
|
|
433
443
|
data_import: data_import,
|
|
434
444
|
ok: ok,
|
|
@@ -445,7 +455,10 @@ var enUS = {
|
|
|
445
455
|
exporting: exporting,
|
|
446
456
|
import_failed: import_failed,
|
|
447
457
|
import_done: import_done,
|
|
448
|
-
done: done
|
|
458
|
+
done: done,
|
|
459
|
+
alert_dialog_default_success_message: alert_dialog_default_success_message,
|
|
460
|
+
alert_dialog_default_error_message: alert_dialog_default_error_message,
|
|
461
|
+
alert_dialog_auto_close_in_seconds: alert_dialog_auto_close_in_seconds
|
|
449
462
|
};
|
|
450
463
|
|
|
451
464
|
type LocaleKey = keyof typeof enUS;
|
package/data-table.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
`).reduce((y,x)=>{let H=x.indexOf(": ");return H!==-1&&(y[x.slice(0,H).toLowerCase()]=x.slice(H+2)),y},{});function O(y){if(b){b.cancel();let x=y instanceof Blob?y.size:y instanceof ArrayBuffer?y.byteLength:typeof y=="string"?y.length:0;r.onDownloadProgress?.({loaded:x,total:x,lengthComputable:true,percentage:100});}r.withResponseHeaders?a({data:y,status:v,headers:Y}):a(y);}if(v>=200&&v<300)if(l==="json"){let y=w;try{let x=y!==""?JSON.parse(y):null;if(!(f?.(x)??!0))throw new D("invalid response");O(x);}catch(x){e(x);}}else f?.(w)??true?O(w):e(new D("invalid response"));else {let y=null;if(!V)if(_.includes("application/json"))try{y=w!==""?JSON.parse(w):null;}catch{}else y=w||null;e(new D("Xhr Request failed",v,y));}g(),m=null;},m.onabort=function(){m&&(b?.cancel(),u?.cancel(),e(new D(D.ECONNABORTED)),g(),m=null);},m.onerror=function(){b?.cancel(),u?.cancel(),e(new D("Network Error",D.ERR_NETWORK)),g(),m=null;},m.ontimeout=function(){b?.cancel(),u?.cancel(),e(new D("Timeout exceeded",D.ETIMEDOUT)),g(),m=null;},typeof p=="object"&&Object.keys(p).forEach(R=>{m?.setRequestHeader(R,p[R]);}),i==null&&m.setRequestHeader("Content-Type",""),l&&l!=="json"&&(m.responseType=l),r.onDownloadProgress&&(b=Ee(r.onDownloadProgress),m.addEventListener("progress",b)),r.onUploadProgress&&m.upload&&(u=Ee(r.onUploadProgress),m.upload.addEventListener("progress",u),m.upload.addEventListener("loadend",R=>{u?.cancel(),r.onUploadProgress?.({loaded:R.loaded,total:R.loaded,lengthComputable:true,percentage:100});})),r.signal&&(h=()=>{m&&(e(new D(D.REQUEST_CANCELED,D.REQUEST_CANCELED)),m.abort(),m=null);},r.signal.aborted?h():r.signal.addEventListener("abort",h)),m.send(i??null);})}function Ee(t){return e(a=>{t({loaded:a.loaded,total:a.lengthComputable?a.total:0,lengthComputable:a.lengthComputable,percentage:a.lengthComputable&&a.total>0?Math.round(a.loaded/a.total*100):null});},250)}var D=class extends Error{constructor(a,e,o){super(a);b(this,"message");b(this,"code");b(this,"data");this.name="RequestError",this.message=a,e&&(this.code=e),o!==void 0&&(this.data=o);}};b(D,"ETIMEDOUT","ETIMEDOUT"),b(D,"ERR_NETWORK","ERR_NETWORK"),b(D,"ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION_VALUE"),b(D,"ERR_BAD_OPTION","ERR_BAD_OPTION"),b(D,"ECONNABORTED","ECONNABORTED"),b(D,"ERR_FR_TOO_MANY_REDIRECTS","ERR_FR_TOO_MANY_REDIRECTS"),b(D,"ERR_DEPRECATED","ERR_DEPRECATED"),b(D,"ERR_BAD_RESPONSE","ERR_BAD_RESPONSE"),b(D,"ERR_BAD_REQUEST","ERR_BAD_REQUEST"),b(D,"ERR_CANCELED","ERR_CANCELED"),b(D,"REQUEST_CANCELED","REQUEST_CANCELED"),b(D,"ERR_NOT_SUPPORT","ERR_NOT_SUPPORT"),b(D,"ERR_INVALID_URL","ERR_INVALID_URL");var ke=150,yt={ease:[.26,.08,.25,1],duration:.25},Ea={initial:{opacity:0,scale:.95},visible:{opacity:1,scale:1,transition:{...yt,when:"beforeChildren"}},hidden:{opacity:0,scale:1.05,transition:{...yt,when:"afterChildren"}}},Pa={initial:{y:10,opacity:0},visible:{y:0,opacity:1,transition:yt},hidden:{y:-10,opacity:0,transition:yt}};function Ae({containerRef:t,accept:n,acceptHint:a,onFileSelect:e}){let o=k.useRef(null),r=k.useRef(null),[s,c,l]=r$1(false),p=k.useCallback(g=>{g.stopPropagation();let{target:m,relatedTarget:b}=g;m.matches(".data-drop-target, .data-drop-area")&&(!b||!b.matches(".data-drop-target, .data-drop-area"))&&(o.current=window.setTimeout(()=>{l();},ke));},[l]),i=k.useCallback(()=>{o.current&&window.clearTimeout(o.current);},[]),f=k.useCallback(()=>{o.current&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{l();},ke);},[l]),h=k.useEffectEvent(async g=>{let{dataTransfer:m}=g,b=[];m.files&&m.files.length>0&&(b=b.concat(Array.from(m.files))),b.length&&(r.current&&window.clearTimeout(r.current),r.current=window.setTimeout(()=>{e?.(b);},600));});return mt(()=>{if(!t?.current)return;let g=t.current;return g.addEventListener("dragenter",c),()=>{g.removeEventListener("dragenter",c),o.current&&window.clearTimeout(o.current),r.current&&window.clearTimeout(r.current);}}),jsx(Portal.Root,{container:t?.current,asChild:true,children:jsx(AnimatePresence,{children:s&&jsx(m$1.div,{className:"data-drop-area absolute inset-0 bottom-8 z-10 flex items-center justify-center select-none",onDragLeave:p,onDragOver:i,onDrop:f,initial:"hidden",animate:"visible",exit:"hidden",variants:Ea,children:jsx(ka,{accept:n,acceptHint:a,onFileSelect:h})})})})}function ka({accept:t,acceptHint:n,onFileSelect:a}){let e=S(),[o,r]=k.useState(false),s=k.useCallback(p=>{if(!t||!p.dataTransfer.items.length){r(false);return}let i=[...p.dataTransfer.items].every(f=>wa(f.type,t));r(!i);},[t]),c$1=k.useCallback(p=>{let{relatedTarget:i,currentTarget:f}=p;i&&f.contains(i)&&p.stopPropagation();},[]),l=k.useCallback(p=>{if(o){p.preventDefault();return}a(p);},[o,a]);return jsxs("div",{"data-dropzone":true,onDragEnter:s,onDrop:l,onDragLeave:c$1,className:"data-drop-target relative flex h-full w-full items-center justify-center rounded-[8px] bg-bg-weak p-16",children:[jsx("svg",{className:c("pointer-events-none absolute top-16 left-16 h-[calc(100%-32px)] w-[calc(100%-32px)] overflow-visible",o?"text-error-base":"text-primary-base"),children:jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",rx:"8",fill:"none",stroke:"currentColor",strokeDasharray:"11, 8",strokeDashoffset:"0",strokeLinecap:"round",strokeWidth:"2",children:jsx("animate",{attributeName:"stroke-dashoffset",from:"0",to:"-19",dur:"0.5s",repeatCount:"indefinite"})})}),jsxs(m$1.div,{className:c("pointer-events-none flex flex-col items-center gap-4",o?"text-error-base":"text-primary-base"),variants:Pa,children:[jsxs("div",{className:"flex flex-col items-center",children:[jsx(FolderUp,{className:"size-48"}),jsx("strong",{className:"text-title-h6",children:e(o?"file_type_rejected":"drop_file_hint")})]}),jsx("span",{className:"text-text-soft",children:n?e("file_support_list",{formats:n}):e("file_support_all")})]})]})}function wa(t,n,a=""){if(!n||n==="*")return true;if(!t&&!a)return false;let e=n.split(",").map(s=>s.trim().toLowerCase()),o=(t||"").toLowerCase(),r=(a||"").toLowerCase();return e.some(s=>{if(s.startsWith("."))return r.endsWith(s);if(s.endsWith("/*")){let c=s.slice(0,-1);return o.startsWith(c)}return o===s})}function Ne(t=""){return `${t}-${Date.now().toString(36)+Math.random().toString(36).slice(2)}`}function _e(t){return t?t.filter(n=>n.filter!==void 0).map(n=>{let{filter:a,dataIndex:e,title:o}=n,r=Array.isArray(e)?e.join("."):e,s=a.displayName??(typeof o=="string"?o:r);return {...a,columnId:r,displayName:s}}):[]}function Le(t){return t.key?String(t.key):Array.isArray(t.dataIndex)?t.dataIndex.join("."):String(t.dataIndex)}function Aa(t){return typeof t=="string"&&t.length>0}function Oe(t){return [Array.isArray(t.dataIndex)?t.dataIndex.join(" "):typeof t.dataIndex=="string"?t.dataIndex:null,typeof t.title=="string"?t.title:null,t.key!==null?String(t.key):null].filter(Aa)}function Be(t,n=22){if(!t)return "";if(t.length<=n)return t;let a=Math.floor(n/2.5),e=t.lastIndexOf("."),o,r;if(e>0?(o=t.substring(0,e),r=t.substring(e)):(o=t,r=""),o.length<=a*2)return t;let s=o.substring(0,a),c=o.substring(o.length-a);return `${s}\u2026${c}${r}`}function Me(t,n){return {type:"import",localTaskId:Ne(n?`import-file-${n}`:"import-file"),status:"pending",progress:0,file:t}}function Fe({tooltip:t,btnProps:n,disabled:a,loading:e,containerRef:o,accept:r,acceptHint:s,requestConfig:c,onBeforeUpload:l}){let p=S(),i=k.useId(),f=tt(b=>b.addTask),h=tt(b=>b.updateTask),g=a||e,m=k.useCallback(async b=>{if(b=[b[0]],l&&typeof l=="function"){let u=await l(b);if(u===false)return;Array.isArray(u)&&(b=u);}b.forEach((u,R)=>{let v=new AbortController,_={...Me(u,R),abortController:v};if(f(_),!c)throw Error("requestConfig is required.");let{url:V,method:w="POST",fieldName:Y="file",body:O,onSuccess:y,onFailed:x,onUploadProgress:H,...W}=c,M=new FormData;M.append(Y,u),O instanceof FormData?O.forEach((L,$)=>M.append($,L)):O&&Object.keys(O).forEach(L=>{M.append(L,O[L]);}),Pe(V,{...W,onUploadProgress:L=>{H?.(L),h(_.localTaskId,{status:"importing",progress:L.percentage??0});},method:w,body:M,signal:v.signal}).then(L=>{y?.(L),h(_.localTaskId,{status:"done"});}).catch(L=>{x?.(L),h(_.localTaskId,{status:"failed"});});});},[c,l,f,h]);return jsxs(Fragment,{children:[jsx(Ae,{containerRef:o,onFileSelect:m,accept:r,acceptHint:s}),jsx("input",{type:"file",id:i,accept:r,multiple:false,onChange:b=>{let u=Array.from(b.target.files??[]);u.length&&(m(u),b.target.value="");},className:"invisible absolute -top-9999 -left-9999"}),jsx(i$1,{content:t??p("import_tooltip"),children:jsx("label",{htmlFor:i,className:"m-0 inline-flex cursor-pointer p-0 leading-none",children:jsx(P,{variant:"neutral",mode:"stroke",loading:e,startContent:jsx(Upload,{}),disabled:g,className:"pointer-events-none",...n,children:p("data_import")})})})]})}function He({disabled:t,columns:n}){let a=S(),{alwaysShowingColumns:e}=rt(),[o,r]=k.useState(false),s=Se(),c$1=Z(p=>p.setColumnVisibilityState),l=k.useCallback((p,i)=>{c$1(f=>({...f,[p]:i}));},[c$1]);return jsxs(F,{open:o,onOpenChange:r,children:[jsx(G,{asChild:true,children:jsx(P,{mode:"stroke",variant:"neutral",size:"small",className:c("relative gap-0 px-9"),disabled:t,startContent:jsx(Settings2,{}),children:jsx(i$1,{content:a("column_set"),children:jsx("div",{className:"absolute inset-0"})})})}),jsx(H,{align:"end",side:"bottom",arrow:false,className:"w-fit rounded-xl p-0",sideOffset:6,children:jsxs(w,{children:[jsx(x,{autoFocus:true,placeholder:"Search..."}),jsx(z,{children:a("no_results")}),jsx(y,{className:"max-h-256",children:jsx(A,{children:n.map(p=>{let i=Le(p),f=s[i]!==false,h=typeof p.title=="string"&&p.title?.trim()==="",g=h?p.key:p.title;return jsxs(C,{keywords:Oe(p),onSelect:()=>l(i,!f),className:"group flex items-center gap-6",value:i,disabled:e?.includes(i),children:[jsx(Checkbox,{checked:f,tabIndex:-1,className:c("mr-4 opacity-100")}),jsx("span",{className:c(h&&"capitalize"),children:g})]},i)})})})]})})]})}var $e=["data_refresh","size_setting","column_setting","filter_btn"];function Va({btnProps:t,disabled:n,loading:a,onAction:e}){let o=S();return jsx(P,{variant:"primary",startContent:jsx(Download,{}),loading:a,disabled:n||a,onClick:()=>e({action:"data_export"}),...t,children:o("data_export")})}var Ha={initial:{opacity:0,scale:.85,x:10,originX:1},animate:{opacity:1,scale:1,x:0,originX:1},exit:{opacity:0,scale:.85,x:10,originX:1}},Ua={ease:[.26,.08,.25,1],duration:.25};function Xe({containerRef:t,columns:n,filter:a,items:e=$e,className:o,onAction:r,...s}){let{loading:c$1,syncing:l,exporting:p,disabled:i}=De(),f=k.useMemo(()=>e.map(u=>Xa(u)),[e]),h=k.useMemo(()=>f.filter(u=>!u.hidden),[f]),g=k.useCallback(u=>{r?.(u);},[r]),m=k.useMemo(()=>({disabled:i,loading:c$1,syncing:l,exporting:p,columns:n,onAction:g}),[i,c$1,p,l,n,g]),b=u=>{let R={btnProps:u.btnProps,tooltip:u.tooltip,disabled:i||l||c$1,loading:c$1,onAction:g};switch(u.type){case "data_refresh":return jsx($a,{...R,syncing:l});case "size_setting":return jsx(Re,{...u.btnProps});case "column_setting":return jsx(He,{...u.btnProps,columns:n});case "data_export":return jsx(Va,{...R,loading:p});case "data_import":return jsx(Fe,{...R,loading:p,containerRef:t,requestConfig:u.requestConfig,onBeforeUpload:u.onBeforeUpload,acceptHint:u.acceptHint,accept:u.accept});case "custom":return u.render?.(m);case "filter_btn":return a;default:return null}};return jsx(m$1.div,{"data-slot":"data-table-toolbar",className:c("flex items-center gap-8 transition-opacity",o),...s,children:jsx(AnimatePresence,{mode:"popLayout",initial:false,children:h.map(u=>jsx(m$1.div,{layout:true,variants:Ha,initial:"initial",animate:"animate",exit:"exit",className:"leading-none",transition:Ua,children:b(u)},u.key))})})}function $a({btnProps:t,tooltip:n,disabled:a,loading:e,syncing:o,onAction:r}){let s=S(),c=n??s("refresh");return jsx(i$1,{content:c,children:jsx(P,{mode:"stroke",variant:"neutral",startContent:jsx(RefreshCw,{}),loading:o||e,disabled:a||e||o,className:"gap-0 px-9",onClick:()=>r({action:"data_refresh"}),...t})})}function Xa(t){return typeof t=="string"?{type:t,key:t}:t.type==="custom"?{type:"custom",key:t.key,hidden:t.hidden,render:t.render}:t.type==="data_import"?{type:"data_import",key:t.key??t.type,hidden:t.hidden,btnProps:t.btnProps,tooltip:t.tooltip,accept:t.accept,acceptHint:t.acceptHint,requestConfig:t.requestConfig,onBeforeUpload:t.onBeforeUpload}:{type:t.type,key:t.key??t.type,hidden:t.hidden,btnProps:t.btnProps,tooltip:t.tooltip}}function qe({className:t,value:n,...a}){return jsx(Progress.Root,{"data-slot":"progress",className:c("relative flex h-4 w-full items-center overflow-x-hidden rounded-full bg-bg-soft",t),...a,children:jsx(Progress.Indicator,{"data-slot":"progress-indicator",className:"size-full flex-1 bg-primary-base transition-all",style:{transform:`translateX(-${100-(n||0)}%)`}})})}function je({onAction:t,...n}){let a=gt();return jsx(m$1.div,{"data-slot":"data-table-taskbar",className:"w-fit items-center justify-center bg-bg-white select-none",...n,children:a.map(e=>e.type==="import"?jsx(qa,{...e,onSuccess:()=>{t?.({action:"import_done"});}},e.localTaskId):jsx(ja,{...e},e.localTaskId))})}function qa(t){let n=S(),a=tt(s=>s.removeTask),e=t.status==="failed",o=t.status==="done";return jsxs("div",{className:"flex h-full items-center gap-8",children:[jsxs("span",{className:c("truncate text-md font-medium",o?"text-success-base":e?"text-error-base":"text-text-strong"),children:[n(e?"import_failed":o?"import_done":t.status)," ",Be(t.file.name)]}),jsxs("span",{className:"min-w-34 shrink-0 text-right text-sm text-text-sub",children:[t.progress,"%"]}),jsx(P,{variant:"neutral",mode:"ghost",size:"xsmall",className:"min-w-28 rounded-full px-0",onClick:()=>{t.abortController?.signal.aborted===false&&!e&&!o&&t.abortController?.abort("User canceled"),a(t.localTaskId),o&&t.onSuccess?.(t.localTaskId);},startContent:o?jsx(Check,{className:"text-success-base"}):jsx(Ga,{})})]})}function ja(t){return jsxs("div",{className:"flex w-fit min-w-220 flex-col justify-center gap-6",children:[jsxs("div",{className:"lable flex items-center justify-center gap-12",children:[jsx("span",{className:"font-medium text-text-strong",children:"Task Name"}),jsx("span",{className:"ml-auto text-sm text-text-sub",children:t.progress})]}),jsx(qe,{value:66})]})}function Ga(){return jsxs("svg",{width:"0.8em",height:"0.8em",viewBox:"0 0 12 12",fill:"none",children:[jsx("path",{d:"M10.4854 1.99998L2.00007 10.4853",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),jsx("path",{d:"M10.4854 10.4844L2.00007 1.99908",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}var Ge={initial:{y:10,opacity:0},animate:{y:0,opacity:1},exit:{y:-10,opacity:0}},Ye={ease:[.26,.08,.25,1],duration:.25};function Qe({containerRef:t,items:n,filter:a,columns:e,onAction:o}){let r=gt();return jsx(AnimatePresence,{initial:false,mode:"popLayout",children:r.length?jsx(je,{variants:Ge,initial:"initial",animate:"animate",exit:"exit",transition:Ye,onAction:o},"task-bar"):jsx(Xe,{variants:Ge,initial:"initial",animate:"animate",exit:"exit",transition:Ye,containerRef:t,onAction:o,filter:a,columns:e,items:n},"toolbar")})}var Qa=26,Je=44,Ja=200,Za=250,to={},eo=t=>t.querySelector(".ant-table-thead")?.offsetHeight??Je,kt=(t,n)=>{if(!t)return 0;let a=t.querySelectorAll(':scope [data-id^="data-table-card-"]'),e=0;return a.forEach(o=>{let r=o.getAttribute("data-id")==="data-table-card-content";e+=r?0:o.clientHeight;}),document.documentElement.clientHeight-n-window.scrollY-Qa-eo(t)-e-3};function Ze(t,n,{x:a,y:e,...o}=to,r,s,c){let[l,p]=k.useState(e),i=k.useRef(0),f=k.useRef(null);if(k.useLayoutEffect(()=>{if(!s)return;i.current=t.current?.offsetTop??0,f.current||(f.current=d(()=>{i.current=t.current?.offsetTop??0,p(kt(t.current,i.current));},Ja,false,true)),window.addEventListener("resize",f.current);let g=null;return t.current&&(g=new MutationObserver(f.current),g.observe(t.current,{childList:true,subtree:true,attributes:true,attributeFilter:["style","class","hidden"]})),()=>{f.current&&(window.removeEventListener("resize",f.current),f.current.cancel()),g?.disconnect();}},[t,s]),k.useEffect(()=>{if(!s||e!==void 0)return;p(kt(t.current,i.current));let g=setTimeout(()=>{p(kt(t.current,i.current));},Za);return ()=>{clearTimeout(g);}},[e,n,t,s]),!s)return {x:a,y:e,...o};let h=l&&typeof l=="number"?l+(r?Je:0):l;return {x:c&&!a?1280:a??"max-content",y:c&&!h?620:h,...o}}var ro={ease:[.26,.08,.25,1],duration:.3},no={},so={root:"m-0 flex w-full [&_.ant-pagination-total-text]:ps-6 [&_.ant-pagination-total-text]:mr-auto"};function io(t){let{store:n,tabList:a,alwaysShowingColumns:e,...o}=t;return mt(()=>{let r=document.body,s=l=>{l.preventDefault(),l.dataTransfer&&(l.target.closest("[data-dropzone]")?l.dataTransfer.dropEffect="copy":l.dataTransfer.dropEffect="none");},c=l=>{l.preventDefault();};return r.addEventListener("drop",c),r.addEventListener("dragover",s),r.addEventListener("dragenter",s),()=>{r.removeEventListener("drop",c),r.removeEventListener("dragover",s),r.removeEventListener("dragenter",s);}}),jsx(Ce,{store:n,tabList:a,alwaysShowingColumns:e,children:jsx(lo,{...o})})}function lo(t$1){let{ref:n$1,activeTabId:a,variant:e,style:o$1,cardTitle:r$1,cardIcon:s$1,cardDescription:c$1,classNames:l$2,enableTableAutoScrollSizer:p$1,slots:i,columns:f$2,filterColumns:h$1,tableColumns:g$1,defaultFilters:m$3,tableProps:b,paginationProps:u$1,toolbarItems:R,isCustomTab:v,tabRenderCtx:_,customRender:V,onToolbarAction:w,onFiltersChange:Y}=t$1,O=S(),y=k.useRef(null),x=k.useRef(null),{tabList:H}=rt(),{syncing:W,loading:M}=ve(),L=tt(P=>P.updateTableId),[$,ut]=h({filters:m$3,onFiltersChange:Y});k.useEffect(()=>{L(a);},[a]);let{current:et}=u$1;k.useEffect(()=>{let P=setTimeout(()=>{if(p$1&&!b.virtual){let q=y.current?.querySelector(".ant-table-body");q&&(q.scrollTop=0);}else y.current?.scrollIntoView({block:"start"});},350);return ()=>clearTimeout(P)},[et]);let Dt=$&&$.length!==0,ht=!!(M&&g$1.some(P=>P.skeleton)),St=Math.min(u$1.pageSize,15),vt=k.useCallback(P=>O("pagination_total").replace("{total}",String(P)),[O]),d=Ze(x,`${$?.length}-${a}`,b.scroll,v,p$1,b.virtual),T=ht?jsx(me,{id:`${a}-skeleton`,columns:g$1,size:b.size,count:St,scroll:d}):jsx(Table,{id:`${a}-data-table`,columns:g$1,loading:M,showSorterTooltip:false,...b,scroll:d}),E=!!u$1.total&&(u$1.hideOnSinglePage!==true||u$1.total>u$1.pageSize);return jsxs(l,{ref:f$1([x,n$1]),style:o$1,className:c("relative rounded-[16px]",p$1&&"h-full max-h-[calc(100vh-var(--offset-top))] overflow-hidden",l$2?.root),variant:e,children:[jsxs(m,{"data-id":"data-table-card-header",className:c("data-table-card-header relative min-h-56 grow-0 px-14 pt-12 pb-10",e==="accent"&&"pt-10",H&&H?.length>1&&"border-b-0",l$2?.cardHeader),children:[jsxs(q,{className:c("flex items-center gap-12",l$2?.cardHeading),children:[s$1&&jsx(t,{className:c("size-32 border border-stone-200 bg-stone-100 text-text-sub",!!(r$1&&c$1)&&"size-44 [&_svg]:size-24",l$2?.cardIcon),children:s$1}),r$1&&jsxs("div",{className:c(c$1&&"flex flex-col gap-4"),children:[jsx(s,{children:r$1}),c$1&&jsx(u,{children:c$1})]})]}),jsx(AnimatePresence,{initial:false,children:R!==false&&jsx(r,{as:m$1.div,className:l$2?.cardToolbar,...k$1,children:jsx(Qe,{containerRef:y,items:R,columns:f$2,onAction:w,filter:h$1.length!==0&&jsx(g,{columns:h$1,filters:$,actions:ut,disabled:M||W,align:"end",enableAutoBack:true},`${a}-filter`)})})})]}),i?.cardSummary&&jsx(o,{"data-id":"data-table-card-summary",className:c("grow-0 p-12",l$2?.cardSummary),children:i.cardSummary}),jsx(xe,{"data-id":"data-table-card-tabs",className:"grow-0 p-0"}),jsx(AnimatePresence,{initial:false,children:Dt&&jsx(m$1.div,{"data-id":"data-table-card-filter-values",...l$1,children:jsx(o,{className:"p-0",children:jsx(f,{columns:h$1,filters:$,actions:ut,"data-id":"data-table-active-filters",className:"flex flex-wrap gap-10 px-12 pt-16",disabled:W||M,enableAutoClose:true})})},a)}),jsxs(n,{"data-id":"data-table-card-content",className:c("relative grow p-12 pb-0",(W||M)&&"pointer-events-none",p$1&&"overflow-hidden",l$2?.cardContent),children:[i?.tableSummary&&jsx(o,{"data-id":"data-table-card-table-summary",className:c("grow-0 p-0 pb-12",l$2?.tableSummary),children:i.tableSummary}),jsx(AnimatePresence,{mode:"popLayout",initial:false,children:jsx(m$1.div,{ref:y,className:c("relative w-full",v&&p$1&&"overflow-auto"),style:v&&p$1?{maxHeight:d.y}:no,...m$2,transition:ro,children:v?V?.(_):T},a)})]}),E&&jsx(p,{"data-id":"data-table-card-pager",className:"flex min-h-44 w-full grow-0 items-center justify-between",children:jsx(Pagination,{classNames:so,disabled:M||W,size:"small",showTotal:vt,...u$1})}),i?.cardFooter&&jsx(p,{"data-id":"data-table-card-footer",className:c("grow-0 px-16 py-12",l$2?.cardFooter),children:i.cardFooter})]})}function po(t){let{tabList:n,fireOnMount:a=true,storageKey:e,onTabChange:o,onTableChange:r,onToolbarAction:s}=t,{pagination:c,tableStateStorageKey:l}=c$1(),p=k.useRef(new Set),[i]=k.useState(()=>{let d=be(n[0].id,e??l);for(let T of n)d.getState().initTab(T.id,ea(T)),p.current.add(T.id);return d}),f=k.useRef({onTabChange:o,onTableChange:r,onToolbarAction:s});f.current={onTabChange:o,onTableChange:r,onToolbarAction:s};let h=k.useRef(new Map);h.current=new Map(n.map(d=>[d.id,d]));let g=n.map(d=>d.id).join(),m=k.useRef(true);k.useEffect(()=>{if(m.current){m.current=false;return}for(let d of n)p.current.has(d.id)||(i.getState().initTab(d.id,ea(d)),p.current.add(d.id));},[i,g]);let b=n.map(d=>`${d.id}:${d.loading}:${d.syncing}:${d.exporting}:${d.disabled}`).join();k.useEffect(()=>{let{syncTabExternal:d}=i.getState();for(let T of n)d(T.id,{loading:T.loading,syncing:T.syncing,exporting:T.exporting,disabled:T.disabled});},[i,b]),k.useEffect(()=>{let d=i.getState().stateVersion;return i.subscribe(T=>{if(T.stateVersion===d)return;d=T.stateVersion;let E=T.activeTabId,P=T.tabs[E];if(!P)return;let q={pagination:P.pagination,filters:P.filters,sorter:P.sorter},Nt=T.changeReason;Nt==="tab_switch"&&f.current.onTabChange?.(E),f.current.onTableChange?.(q,Nt,E);})},[i]);let u=k.useRef(false);k.useEffect(()=>{if(u.current||(u.current=true,!a))return;let d=i.getState(),T=d.activeTabId,E=d.tabs[T];E&&f.current.onTableChange?.(E,"mount",T);},[i,a]);let R=useStore(i,d=>d.activeTabId),v=useStore(i,useShallow(d=>d.tabs[d.activeTabId]??B)),_=h.current.get(R),V=_?.type==="custom",w=V?void 0:_,Y=V?_:void 0,{columnVisibility:O,pagination:y}=v,x=w?.columns,H=Y?.filterColumns,W=k.useMemo(()=>x?x.filter(d=>!d.hidden):[],[x]),M=k.useMemo(()=>V?H??[]:_e(x),[V,H,x]),L=k.useMemo(()=>W.filter(d=>{let T=d.key??d.dataIndex;return !T||O[T]!==false}),[W,O]),$=k.useCallback(d=>{let T=i.getState(),E=T.activeTabId,P=T.tabs[E]?.filters??[],q=typeof d=="function"?d(P):d;T.setFilters(E,q);},[i]),ut=k.useCallback((d,T,E,P)=>{let q=i.getState().activeTabId;i.getState().setTableChange(q,E,P);},[i]),et=k.useCallback((d,T)=>{let E=i.getState().activeTabId;i.getState().setPagination(E,d,T);},[i]),Dt=k.useCallback(d=>{let T=i.getState(),E=T.activeTabId,P=T.tabs[E],q={pagination:P?.pagination??B.pagination,filters:P?.filters??B.filters,sorter:P?.sorter??B.sorter};d.tableState=q,f.current.onToolbarAction?.(d,E);},[i]),ht=k.useMemo(()=>({...c,current:y.current,pageSize:y.pageSize,total:_?.total,onChange:et,onShowSizeChange:et}),[c,y,_?.total,et]),St=k.useMemo(()=>({loading:v.loading,syncing:v.syncing,exporting:v.exporting,disabled:v.disabled,filters:v.filters,pagination:y,onFiltersChange:$,onPaginationChange:et}),[v,y,$,et]),vt=k.useMemo(()=>n.map(({id:d,label:T,value:E})=>({id:d,label:T,value:E})),[g]);return {store:i,activeTabId:R,tabList:vt,columns:W,filterColumns:M,tableColumns:L,tableProps:{dataSource:w?.dataSource,rowKey:w?.rowKey,size:v.tableSize,pagination:false,scroll:w?.scroll,virtual:w?.virtual,onChange:ut},paginationProps:ht,defaultFilters:v.filters,onFiltersChange:$,toolbarItems:_?.toolbarItems,onToolbarAction:Dt,isCustomTab:V,customRender:Y?.render,tabRenderCtx:St,enableTableAutoScrollSizer:w?.enableTableAutoScrollSizer??Y?.enableTableAutoScrollSizer??true}}function ea(t){return {pagination:t.defaultPagination,filters:t.defaultFilters,sorter:t.type!=="custom"?t.defaultSorter:void 0,loading:t.loading,syncing:t.syncing,exporting:t.exporting,disabled:t.disabled}}export{$e as DEFAULT_TOOLBAR_ITEMS,io as DataTable,po as useDataTable};
|
|
1
|
+
import {l as l$1,m as m$2,n as n$1,f as f$1,a,c as c$1,d,p as p$1,g as g$1,h as h$1,i,r as r$1,s as s$1,e}from'./chunk-WHQZDGBC.js';import {h,g,f}from'./chunk-MEOS5CC6.js';export{b as DATE_FORMATS,d as formatDateRange,c as getDateDisplayFormat,e as getPickerInputFormat}from'./chunk-MEOS5CC6.js';import {S,l,m,q,t,c,s,u,r,o,n,p,P,i as i$1,F,G,H,w,x,z,y,A,C}from'./chunk-TL2HPXUT.js';export{S as useTransition}from'./chunk-TL2HPXUT.js';import {b}from'./chunk-M7AD2PUT.js';import {Table,Pagination,Checkbox}from'antd';import {AnimatePresence,m as m$1}from'motion/react';import k from'react';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import {create,useStore,createStore}from'zustand';import {useShallow}from'zustand/react/shallow';import {persist}from'zustand/middleware';import {immer}from'zustand/middleware/immer';import {Check,XIcon,Upload,Download,Settings2,RefreshCw,FolderUp}from'lucide-react';import {Progress,Portal}from'radix-ui';function fe(e){k.useEffect(e,[]);}var da={small:"min-h-22",medium:"min-h-26",middle:"min-h-30",large:"min-h-38"};function Tt({count:e,size:n="small",classNames:a,columns:t,scroll:o}){let r=k.useCallback(()=>ua(t,da[n]),[t,n]);return jsx(Table,{rowKey:"id",size:n,rowHoverable:false,classNames:a,dataSource:Array.from({length:e},(s,c)=>({id:c})),pagination:false,scroll:o,children:t.map((s,c)=>jsx(Table.Column,{dataIndex:s.dataIndex,width:s.width,title:jsx(p$1,{className:"h-22 w-full animate-none bg-bg-antd"}),render:r,onCell:()=>c===0?{colSpan:t.length}:{colSpan:0}},s.key||s.dataIndex))})}var ft=16;function ua(e,n){let a=e.length,o=`calc((100% - ${ft*(a-1)}px) / ${a})`,r=e.some(s=>s.skeleton==="avatar"||s.skeleton==="double-line");return jsx("div",{className:c("flex items-center",n),style:{gap:`${ft}px`},children:e.map((s,c)=>{let l=s?.key??c;return jsx("div",{style:{width:o},children:pa(s.skeleton,r)},l)})})}function pa(e,n){switch(e){case "avatar":return jsx(ba,{});case "double-line":return jsx(fa,{});case "group":return jsx(Ta,{needAlignment:n});default:return jsx(ma,{needAlignment:n})}}function ma({needAlignment:e}){return jsxs("div",{className:"grid h-full gap-4",children:[e&&jsx("div",{className:"h-12 w-1"}),jsx(p$1,{className:"h-10"})]})}function ba(){return jsxs("div",{className:"flex w-full items-center gap-6",children:[jsx(p$1,{className:"shrink-0 rounded-full",style:{width:"var(--avatar-size, 32px)",height:"var(--avatar-size, 32px)"}}),jsxs("div",{className:"grid flex-1 gap-4",children:[jsx(p$1,{className:"h-12 w-[60%]"}),jsx(p$1,{className:"h-10"})]})]})}function fa(){return jsxs("div",{className:"grid h-full w-full gap-4 py-4",children:[jsx(p$1,{className:"h-12 w-[60%]"}),jsx(p$1,{className:"h-10"})]})}function Ta({needAlignment:e}){return jsxs("div",{className:"grid h-full gap-4",children:[e&&jsx("div",{className:"h-12 w-1"}),jsxs("div",{className:"flex w-full items-center gap-4",children:[jsx(p$1,{className:"h-10 w-[20%]"}),jsx(p$1,{className:"h-10 w-[20%]"}),jsx(p$1,{className:"h-10 w-[20%]"}),jsx(p$1,{className:"h-10 w-[20%]"}),jsx(p$1,{className:"h-10 w-[20%]"})]})]})}var B={pagination:{current:1,pageSize:10},filters:[],sorter:{},extra:{action:"paginate",currentDataSource:[]},tableSize:"small",columnVisibility:{},exporting:false,loading:false,syncing:false,disabled:false},J=(e,n)=>(e.tabs[n]||(e.tabs[n]={...B}),e.tabs[n]),Da="APP_UI_TABLE_CONFIG",ha=(e,n)=>({activeTabId:n,tabs:{},stateVersion:0,changeReason:"mount",setActiveTab:a=>e(t=>{t.activeTabId=a,J(t,a),t.changeReason="tab_switch",t.stateVersion++;}),syncTabExternal:(a,t)=>e(o=>{let r=o.tabs[a];r&&(r.loading=t.loading,r.syncing=t.syncing,r.exporting=t.exporting,r.disabled=t.disabled);}),initTab:(a,t)=>e(o=>{let r=o.tabs[a];r?(t.pagination&&(r.pagination=t.pagination),t.filters&&(r.filters=t.filters),t.sorter&&(r.sorter=t.sorter),r.loading=t.loading,r.syncing=t.syncing,r.exporting=t.exporting,r.disabled=t.disabled):o.tabs[a]={...B,...t};}),setFilters:(a,t)=>e(o=>{let r=J(o,a);r.filters=t,r.pagination.current=1,o.changeReason="filter",o.stateVersion++;}),setPagination:(a,t,o)=>e(r=>{let s=J(r,a);s.pagination={current:t,pageSize:o},r.changeReason="paginate",r.stateVersion++;}),setTableChange:(a,t,o)=>e(r=>{let s=J(r,a);s.sorter=t,s.extra=o,r.changeReason="sort",r.stateVersion++;}),setTableSize:a=>e(t=>{J(t,t.activeTabId).tableSize=a;}),setColumnVisibility:(a,t)=>e(o=>{J(o,o.activeTabId).columnVisibility[a]=t;}),setColumnVisibilityState:a=>e(t=>{let o=J(t,t.activeTabId);o.columnVisibility=typeof a=="function"?a(o.columnVisibility):a;}),toggleColumnVisibility:a=>e(t=>{let o=J(t,t.activeTabId);o.columnVisibility[a]=!o.columnVisibility[a];}),resetTabUIState:a=>e(t=>{let o=a??t.activeTabId,r=t.tabs[o];r&&(r.tableSize=B.tableSize,r.columnVisibility={});})}),gt=(e,n=Da)=>createStore()(persist(immer(a=>ha(a,e)),{name:n,partialize:a=>({tableUIStatus:Object.fromEntries(Object.entries(a.tabs).map(([t,o])=>[t,{tableSize:o.tableSize,columnVisibility:o.columnVisibility}]))}),merge:(a,t)=>{let o=a,r={...t};if(!o?.tableUIStatus)return r;for(let[s,c]of Object.entries(o.tableUIStatus)){let l=r.tabs[s];l?(c.tableSize&&(l.tableSize=c.tableSize),c.columnVisibility&&(l.columnVisibility=c.columnVisibility)):r.tabs[s]={...B,tableSize:c.tableSize??B.tableSize,columnVisibility:c.columnVisibility??{}};}return r}}));var Ct=k.createContext(null),Dt=["id","action","actions"],ht=k.createContext({alwaysShowingColumns:Dt});function St({store:e,tabList:n,alwaysShowingColumns:a,children:t}){let o=k.useMemo(()=>({tabList:n,alwaysShowingColumns:a??Dt}),[n,a]);return jsx(ht.Provider,{value:o,children:jsx(Ct.Provider,{value:e,children:t})})}function ge(){let e=k.useContext(Ct);if(!e)throw new Error("useDataTableStoreApi must be used within DataTableProvider");return e}function Z(e){let n=ge();return useStore(n,e)}function vt(){let e=ge();return useStore(e,useShallow(n=>n.tabs[n.activeTabId]??B))}function xt(){return Z(e=>e.tabs[e.activeTabId]?.tableSize??B.tableSize)}function It(){let e=ge();return useStore(e,useShallow(n=>n.tabs[n.activeTabId]?.columnVisibility??B.columnVisibility))}function Rt(){let e=ge();return useStore(e,useShallow(n=>{let a=n.tabs[n.activeTabId];return {loading:a?.loading??false,syncing:a?.syncing??false,exporting:a?.exporting??false,disabled:a?.disabled??false}}))}function se(){return k.useContext(ht)}function Et(e){let{tabList:n}=se(),a=Z(o=>o.activeTabId),t=Z(o=>o.setActiveTab);return !n||!n?.length||n.length===1?null:jsx(o,{...e,children:jsx(g$1,{className:"w-full",value:a,onValueChange:t,children:jsx(h$1,{variant:"line",size:"medium",className:"w-full px-12",children:n.map(o=>jsx(i,{value:o.value,className:"px-8 py-8",children:o.label},o.id))})})})}var ee=create((e,n)=>({activeTableId:"",tasks:{},updateTableId:a=>e(()=>({activeTableId:a})),addTask:a=>e(t=>{let o=t.activeTableId;return {tasks:{...t.tasks,[o]:[...t.tasks[o]??[],a]}}}),removeTask:a=>e(t=>{let o=t.activeTableId;return {tasks:{...t.tasks,[o]:(t.tasks[o]??[]).filter(r=>r.localTaskId!==a)}}}),updateTask:(a,t)=>e(o=>{let r=o.activeTableId;return {tasks:{...o.tasks,[r]:(o.tasks[r]??[]).map(s=>s.localTaskId===a?{...s,...t}:s)}}}),getTasks:()=>{let a=n();return a.tasks[a.activeTableId]??[]}})),Ce=()=>ee(useShallow(e=>e.tasks[e.activeTableId]??[]));function kt({className:e,...n}){let a=S(),[t,o]=k.useState(false),r=Z(l=>l.setTableSize),s=xt(),c$1=k.useMemo(()=>[{groupType:"radio",value:s,options:[{label:a("large"),value:"large"},{label:a("middle"),value:"middle"},{label:a("compact"),value:"small"}],onValueChange:r}],[r,a,s]);return jsx(r$1,{side:"bottom",align:"end",collisionPadding:6,items:c$1,className:"min-w-100",open:t,onOpenChange:o,children:jsxs(P,{mode:"stroke",variant:"neutral",size:"small",className:c("gap-0 px-9",e),...n,children:[jsx(i$1,{content:a("density"),size:"small",children:jsx("div",{className:"absolute inset-0"})}),jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"size-16",viewBox:"0 0 1024 1024",children:jsx("path",{d:"M840 836H184c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h656c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zm0-724H184c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h656c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zM610.8 378c6 0 9.4-7 5.7-11.7L515.7 238.7a7.14 7.14 0 0 0-11.3 0L403.6 366.3a7.23 7.23 0 0 0 5.7 11.7H476v268h-62.8c-6 0-9.4 7-5.7 11.7l100.8 127.5c2.9 3.7 8.5 3.7 11.3 0l100.8-127.5c3.7-4.7.4-11.7-5.7-11.7H548V378h62.8z"})})]})})}function At(e,n){return new Promise((a,t)=>{let r=Object.assign({},{method:"GET",responseType:"json"},n),{method:s,timeout:c,responseType:l,headers:d,body:i,validateResponse:b}=r,v;function g(){r.signal&&r.signal.removeEventListener("abort",v);}if(r.signal&&r.signal.aborted)return t(new D("Aborted"));let p=new XMLHttpRequest,T=null,m=null;p.open(s.toUpperCase(),e,true),p.timeout=c||0,p.withCredentials=r.withCredentials===true,p.onloadend=function(){if(!p)return;let R=p.status,w=p.getResponseHeader("Content-Type")??"",F=l&&l!=="text"&&l!=="json",A=F?p.response:p.responseText,G=p.getAllResponseHeaders().split(`\r
|
|
2
|
+
`).reduce((y,x)=>{let V=x.indexOf(": ");return V!==-1&&(y[x.slice(0,V).toLowerCase()]=x.slice(V+2)),y},{});function z(y){if(T){T.cancel();let x=y instanceof Blob?y.size:y instanceof ArrayBuffer?y.byteLength:typeof y=="string"?y.length:0;r.onDownloadProgress?.({loaded:x,total:x,lengthComputable:true,percentage:100});}r.withResponseHeaders?a({data:y,status:R,headers:G}):a(y);}if(R>=200&&R<300)if(l==="json"){let y=A;try{let x=y!==""?JSON.parse(y):null;if(!(b?.(x)??!0))throw new D("invalid response");z(x);}catch(x){t(x);}}else b?.(A)??true?z(A):t(new D("invalid response"));else {let y=null;if(!F)if(w.includes("application/json"))try{y=A!==""?JSON.parse(A):null;}catch{}else y=A||null;t(new D("Xhr Request failed",R,y));}g(),p=null;},p.onabort=function(){p&&(T?.cancel(),m?.cancel(),t(new D(D.ECONNABORTED)),g(),p=null);},p.onerror=function(){T?.cancel(),m?.cancel(),t(new D("Network Error",D.ERR_NETWORK)),g(),p=null;},p.ontimeout=function(){T?.cancel(),m?.cancel(),t(new D("Timeout exceeded",D.ETIMEDOUT)),g(),p=null;},typeof d=="object"&&Object.keys(d).forEach(h=>{p?.setRequestHeader(h,d[h]);}),i==null&&p.setRequestHeader("Content-Type",""),l&&l!=="json"&&(p.responseType=l),r.onDownloadProgress&&(T=wt(r.onDownloadProgress),p.addEventListener("progress",T)),r.onUploadProgress&&p.upload&&(m=wt(r.onUploadProgress),p.upload.addEventListener("progress",m),p.upload.addEventListener("loadend",h=>{m?.cancel(),r.onUploadProgress?.({loaded:h.loaded,total:h.loaded,lengthComputable:true,percentage:100});})),r.signal&&(v=()=>{p&&(t(new D(D.REQUEST_CANCELED,D.REQUEST_CANCELED)),p.abort(),p=null);},r.signal.aborted?v():r.signal.addEventListener("abort",v)),p.send(i??null);})}function wt(e$1){return e(a=>{e$1({loaded:a.loaded,total:a.lengthComputable?a.total:0,lengthComputable:a.lengthComputable,percentage:a.lengthComputable&&a.total>0?Math.round(a.loaded/a.total*100):null});},250)}var D=class extends Error{constructor(a,t,o){super(a);b(this,"message");b(this,"code");b(this,"data");this.name="RequestError",this.message=a,t&&(this.code=t),o!==void 0&&(this.data=o);}};b(D,"ETIMEDOUT","ETIMEDOUT"),b(D,"ERR_NETWORK","ERR_NETWORK"),b(D,"ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION_VALUE"),b(D,"ERR_BAD_OPTION","ERR_BAD_OPTION"),b(D,"ECONNABORTED","ECONNABORTED"),b(D,"ERR_FR_TOO_MANY_REDIRECTS","ERR_FR_TOO_MANY_REDIRECTS"),b(D,"ERR_DEPRECATED","ERR_DEPRECATED"),b(D,"ERR_BAD_RESPONSE","ERR_BAD_RESPONSE"),b(D,"ERR_BAD_REQUEST","ERR_BAD_REQUEST"),b(D,"ERR_CANCELED","ERR_CANCELED"),b(D,"REQUEST_CANCELED","REQUEST_CANCELED"),b(D,"ERR_NOT_SUPPORT","ERR_NOT_SUPPORT"),b(D,"ERR_INVALID_URL","ERR_INVALID_URL");var Nt=150,De={ease:[.26,.08,.25,1],duration:.25},ka={initial:{opacity:0,scale:.95},visible:{opacity:1,scale:1,transition:{...De,when:"beforeChildren"}},hidden:{opacity:0,scale:1.05,transition:{...De,when:"afterChildren"}}},wa={initial:{y:10,opacity:0},visible:{y:0,opacity:1,transition:De},hidden:{y:-10,opacity:0,transition:De}};function Lt({containerRef:e,accept:n,acceptHint:a,onFileSelect:t}){let o=k.useRef(null),r=k.useRef(null),[s,c,l]=s$1(false),d=k.useCallback(g=>{g.stopPropagation();let{target:p,relatedTarget:T}=g;p.matches(".data-drop-target, .data-drop-area")&&(!T||!T.matches(".data-drop-target, .data-drop-area"))&&(o.current=window.setTimeout(()=>{l();},Nt));},[l]),i=k.useCallback(()=>{o.current&&window.clearTimeout(o.current);},[]),b=k.useCallback(()=>{o.current&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{l();},Nt);},[l]),v=k.useEffectEvent(async g=>{let{dataTransfer:p}=g,T=[];p.files&&p.files.length>0&&(T=T.concat(Array.from(p.files))),T.length&&(r.current&&window.clearTimeout(r.current),r.current=window.setTimeout(()=>{t?.(T);},600));});return fe(()=>{if(!e?.current)return;let g=e.current;return g.addEventListener("dragenter",c),()=>{g.removeEventListener("dragenter",c),o.current&&window.clearTimeout(o.current),r.current&&window.clearTimeout(r.current);}}),jsx(Portal.Root,{container:e?.current,asChild:true,children:jsx(AnimatePresence,{children:s&&jsx(m$1.div,{className:"data-drop-area absolute inset-0 bottom-8 z-10 flex items-center justify-center select-none",onDragLeave:d,onDragOver:i,onDrop:b,initial:"hidden",animate:"visible",exit:"hidden",variants:ka,children:jsx(Aa,{accept:n,acceptHint:a,onFileSelect:v})})})})}function Aa({accept:e,acceptHint:n,onFileSelect:a}){let t=S(),[o,r]=k.useState(false),s=k.useCallback(d=>{if(!e||!d.dataTransfer.items.length){r(false);return}let i=[...d.dataTransfer.items].every(b=>Na(b.type,e));r(!i);},[e]),c$1=k.useCallback(d=>{let{relatedTarget:i,currentTarget:b}=d;i&&b.contains(i)&&d.stopPropagation();},[]),l=k.useCallback(d=>{if(o){d.preventDefault();return}a(d);},[o,a]);return jsxs("div",{"data-dropzone":true,onDragEnter:s,onDrop:l,onDragLeave:c$1,className:"data-drop-target relative flex h-full w-full items-center justify-center rounded-[8px] bg-bg-weak p-16",children:[jsx("svg",{className:c("pointer-events-none absolute top-16 left-16 h-[calc(100%-32px)] w-[calc(100%-32px)] overflow-visible",o?"text-error-base":"text-primary-base"),children:jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",rx:"8",fill:"none",stroke:"currentColor",strokeDasharray:"11, 8",strokeDashoffset:"0",strokeLinecap:"round",strokeWidth:"2",children:jsx("animate",{attributeName:"stroke-dashoffset",from:"0",to:"-19",dur:"0.5s",repeatCount:"indefinite"})})}),jsxs(m$1.div,{className:c("pointer-events-none flex flex-col items-center gap-4",o?"text-error-base":"text-primary-base"),variants:wa,children:[jsxs("div",{className:"flex flex-col items-center",children:[jsx(FolderUp,{className:"size-48"}),jsx("strong",{className:"text-title-h6",children:t(o?"file_type_rejected":"drop_file_hint")})]}),jsx("span",{className:"text-text-soft",children:n?t("file_support_list",{formats:n}):t("file_support_all")})]})]})}function Na(e,n,a=""){if(!n||n==="*")return true;if(!e&&!a)return false;let t=n.split(",").map(s=>s.trim().toLowerCase()),o=(e||"").toLowerCase(),r=(a||"").toLowerCase();return t.some(s=>{if(s.startsWith("."))return r.endsWith(s);if(s.endsWith("/*")){let c=s.slice(0,-1);return o.startsWith(c)}return o===s})}function Ot(e=""){return `${e}-${Date.now().toString(36)+Math.random().toString(36).slice(2)}`}function Bt(e){return e?e.filter(n=>n.filter!==void 0).map(n=>{let{filter:a,dataIndex:t,title:o}=n,r=Array.isArray(t)?t.join("."):t,s=a.displayName??(typeof o=="string"?o:r);return {...a,columnId:r,displayName:s}}):[]}function zt(e){return e.key?String(e.key):Array.isArray(e.dataIndex)?e.dataIndex.join("."):String(e.dataIndex)}function _a(e){return typeof e=="string"&&e.length>0}function Mt(e){return [Array.isArray(e.dataIndex)?e.dataIndex.join(" "):typeof e.dataIndex=="string"?e.dataIndex:null,typeof e.title=="string"?e.title:null,e.key!==null?String(e.key):null].filter(_a)}function Ft(e,n=22){if(!e)return "";if(e.length<=n)return e;let a=Math.floor(n/2.5),t=e.lastIndexOf("."),o,r;if(t>0?(o=e.substring(0,t),r=e.substring(t)):(o=e,r=""),o.length<=a*2)return e;let s=o.substring(0,a),c=o.substring(o.length-a);return `${s}\u2026${c}${r}`}function Vt(e,n){return {type:"import",localTaskId:Ot(n?`import-file-${n}`:"import-file"),status:"pending",progress:0,file:e}}function Ut({tooltip:e,btnProps:n,disabled:a,loading:t,containerRef:o,accept:r,acceptHint:s,requestConfig:c,onBeforeUpload:l}){let d=S(),i=k.useId(),b=ee(T=>T.addTask),v=ee(T=>T.updateTask),g=a||t,p=k.useCallback(async T=>{if(T=[T[0]],l&&typeof l=="function"){let m=await l(T);if(m===false)return;Array.isArray(m)&&(T=m);}T.forEach((m,h)=>{let R=new AbortController,w={...Vt(m,h),abortController:R};if(b(w),!c)throw Error("requestConfig is required.");let{url:F,method:A="POST",fieldName:G="file",body:z,onSuccess:y,onFailed:x,onUploadProgress:V,...Y}=c,$=new FormData;$.append(G,m),z instanceof FormData?z.forEach((E,te)=>$.append(te,E)):z&&Object.keys(z).forEach(E=>{$.append(E,z[E]);}),At(F,{...Y,onUploadProgress:E=>{V?.(E),v(w.localTaskId,{status:"importing",progress:E.percentage??0});},method:A,body:$,signal:R.signal}).then(E=>{y?.(E),v(w.localTaskId,{status:"done"});}).catch(E=>{x?.(E),v(w.localTaskId,{status:"failed"});});});},[c,l,b,v]);return jsxs(Fragment,{children:[jsx(Lt,{containerRef:o,onFileSelect:p,accept:r,acceptHint:s}),jsx("input",{type:"file",id:i,accept:r,multiple:false,onChange:T=>{let m=Array.from(T.target.files??[]);m.length&&(p(m),T.target.value="");},className:"invisible absolute -top-9999 -left-9999"}),jsx(i$1,{content:e??d("import_tooltip"),children:jsx("label",{htmlFor:i,className:"m-0 inline-flex cursor-pointer p-0 leading-none",children:jsx(P,{size:"small",variant:"neutral",mode:"stroke",loading:t,startContent:jsx(Upload,{}),disabled:g,className:"pointer-events-none",...n,children:d("data_import")})})})]})}function Xt({disabled:e,columns:n}){let a=S(),{alwaysShowingColumns:t}=se(),[o,r]=k.useState(false),s=It(),c$1=Z(d=>d.setColumnVisibilityState),l=k.useCallback((d,i)=>{c$1(b=>({...b,[d]:i}));},[c$1]);return jsxs(F,{open:o,onOpenChange:r,children:[jsx(G,{asChild:true,children:jsx(P,{mode:"stroke",variant:"neutral",size:"small",className:c("relative gap-0 px-9"),disabled:e,startContent:jsx(Settings2,{}),children:jsx(i$1,{content:a("column_set"),children:jsx("div",{className:"absolute inset-0"})})})}),jsx(H,{align:"end",side:"bottom",arrow:false,className:"w-fit rounded-xl p-0",sideOffset:6,children:jsxs(w,{children:[jsx(x,{autoFocus:true,placeholder:"Search..."}),jsx(z,{children:a("no_results")}),jsx(y,{className:"max-h-256",children:jsx(A,{children:n.map(d=>{let i=zt(d),b=s[i]!==false,v=typeof d.title=="string"&&d.title?.trim()==="",g=v?d.key:d.title;return jsxs(C,{keywords:Mt(d),onSelect:()=>l(i,!b),className:"group flex items-center gap-6",value:i,disabled:t?.includes(i),children:[jsx(Checkbox,{checked:b,tabIndex:-1,className:c("mr-4 opacity-100")}),jsx("span",{className:c(v&&"capitalize"),children:g})]},i)})})})]})})]})}var Wt=["data_refresh","size_setting","column_setting","filter_btn"],$a={initial:{opacity:0,scale:.85,x:10,originX:1},animate:{opacity:1,scale:1,x:0,originX:1},exit:{opacity:0,scale:.85,x:10,originX:1}},Xa={ease:[.26,.08,.25,1],duration:.25};function qt({containerRef:e,columns:n,filter:a,items:t=Wt,className:o,onAction:r,...s}){let{loading:c$1,syncing:l,exporting:d,disabled:i}=vt(),b=k.useMemo(()=>t.map(m=>Ga(m)),[t]),v=k.useMemo(()=>b.filter(m=>!m.hidden),[b]),g=k.useCallback(m=>{r?.(m);},[r]),p=k.useMemo(()=>({disabled:i,loading:c$1,syncing:l,exporting:d,columns:n,onAction:g}),[i,c$1,d,l,n,g]),T=m=>{let h={btnProps:m.btnProps,tooltip:m.tooltip,disabled:i||l||c$1,loading:c$1,onAction:g};switch(m.type){case "data_refresh":return jsx(Wa,{...h,syncing:l});case "size_setting":return jsx(kt,{...m.btnProps});case "column_setting":return jsx(Xt,{...m.btnProps,columns:n});case "data_export":return jsx(qa,{...h,loading:d});case "data_import":return jsx(Ut,{...h,loading:d,containerRef:e,requestConfig:m.requestConfig,onBeforeUpload:m.onBeforeUpload,acceptHint:m.acceptHint,accept:m.accept});case "custom":return m.render?.(p);case "filter_btn":return a;case "close_drawer":return jsx(Ka,{...h});default:return null}};return jsx(m$1.div,{"data-slot":"data-table-toolbar",className:c("flex items-center gap-8 transition-opacity",o),...s,children:jsx(AnimatePresence,{mode:"popLayout",initial:false,children:v.map(m=>jsx(m$1.div,{layout:true,variants:$a,initial:"initial",animate:"animate",exit:"exit",className:"leading-none",transition:Xa,children:T(m)},m.key))})})}function Ka({btnProps:e,tooltip:n,disabled:a,loading:t,syncing:o,onAction:r}){let s=S(),c=n??s("close");return jsx(i$1,{content:c,children:jsx(P,{mode:"stroke",size:"small",variant:"neutral",startContent:jsx(XIcon,{className:"size-16"}),disabled:a||t||o,className:"gap-0 px-7",onClick:()=>r({action:"close_drawer"}),...e})})}function Wa({btnProps:e,tooltip:n,disabled:a,loading:t,syncing:o,onAction:r}){let s=S(),c=n??s("refresh");return jsx(i$1,{content:c,children:jsx(P,{mode:"stroke",size:"small",variant:"neutral",startContent:jsx(RefreshCw,{}),loading:o||t,disabled:a||t||o,className:"gap-0 px-8",onClick:()=>r({action:"data_refresh"}),...e})})}function qa({btnProps:e,disabled:n,loading:a,onAction:t}){let o=S();return jsx(P,{size:"small",variant:"primary",startContent:jsx(Download,{}),loading:a,disabled:n||a,onClick:()=>t({action:"data_export"}),...e,children:o("data_export")})}function Ga(e){return typeof e=="string"?{type:e,key:e}:e.type==="custom"?{type:"custom",key:e.key,hidden:e.hidden,render:e.render}:e.type==="data_import"?{type:"data_import",key:e.key??e.type,hidden:e.hidden,btnProps:e.btnProps,tooltip:e.tooltip,accept:e.accept,acceptHint:e.acceptHint,requestConfig:e.requestConfig,onBeforeUpload:e.onBeforeUpload}:{type:e.type,key:e.key??e.type,hidden:e.hidden,btnProps:e.btnProps,tooltip:e.tooltip}}function Yt({className:e,value:n,...a}){return jsx(Progress.Root,{"data-slot":"progress",className:c("relative flex h-4 w-full items-center overflow-x-hidden rounded-full bg-bg-soft",e),...a,children:jsx(Progress.Indicator,{"data-slot":"progress-indicator",className:"size-full flex-1 bg-primary-base transition-all",style:{transform:`translateX(-${100-(n||0)}%)`}})})}function Qt({onAction:e,...n}){let a=Ce();return jsx(m$1.div,{"data-slot":"data-table-taskbar",className:"w-fit items-center justify-center bg-bg-white select-none",...n,children:a.map(t=>t.type==="import"?jsx(Qa,{...t,onSuccess:()=>{e?.({action:"import_done"});}},t.localTaskId):jsx(Ja,{...t},t.localTaskId))})}function Qa(e){let n=S(),a=ee(s=>s.removeTask),t=e.status==="failed",o=e.status==="done";return jsxs("div",{className:"flex h-full items-center gap-8",children:[jsxs("span",{className:c("truncate text-md font-medium",o?"text-success-base":t?"text-error-base":"text-text-strong"),children:[n(t?"import_failed":o?"import_done":e.status)," ",Ft(e.file.name)]}),jsxs("span",{className:"min-w-34 shrink-0 text-right text-sm text-text-sub",children:[e.progress,"%"]}),jsx(P,{variant:"neutral",mode:"ghost",size:"xsmall",className:"min-w-28 rounded-full px-0",onClick:()=>{e.abortController?.signal.aborted===false&&!t&&!o&&e.abortController?.abort("User canceled"),a(e.localTaskId),o&&e.onSuccess?.(e.localTaskId);},startContent:o?jsx(Check,{className:"text-success-base"}):jsx(Za,{})})]})}function Ja(e){return jsxs("div",{className:"flex w-fit min-w-220 flex-col justify-center gap-6",children:[jsxs("div",{className:"lable flex items-center justify-center gap-12",children:[jsx("span",{className:"font-medium text-text-strong",children:"Task Name"}),jsx("span",{className:"ml-auto text-sm text-text-sub",children:e.progress})]}),jsx(Yt,{value:66})]})}function Za(){return jsxs("svg",{width:"0.8em",height:"0.8em",viewBox:"0 0 12 12",fill:"none",children:[jsx("path",{d:"M10.4854 1.99998L2.00007 10.4853",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),jsx("path",{d:"M10.4854 10.4844L2.00007 1.99908",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}var Jt={initial:{y:10,opacity:0},animate:{y:0,opacity:1},exit:{y:-10,opacity:0}},Zt={ease:[.26,.08,.25,1],duration:.25};function ea({containerRef:e,items:n,filter:a,columns:t,onAction:o}){let r=Ce();return jsx(AnimatePresence,{initial:false,mode:"popLayout",children:r.length?jsx(Qt,{variants:Jt,initial:"initial",animate:"animate",exit:"exit",transition:Zt,onAction:o},"task-bar"):jsx(qt,{variants:Jt,initial:"initial",animate:"animate",exit:"exit",transition:Zt,containerRef:e,onAction:o,filter:a,columns:t,items:n},"toolbar")})}var to=26,ao=44,oo=40,ro=200,no=250,so={},io=e=>e.querySelector(".ant-table-thead")?.offsetHeight??ao,Ae=(e,n)=>{if(!e)return 0;let a=e.querySelectorAll(':scope [data-id^="data-table-card-"]'),t=0;return a.forEach(o=>{let r=o.getAttribute("data-id")==="data-table-card-content";t+=r?0:o.clientHeight;}),document.documentElement.clientHeight-n-to-io(e)-t-3};function ta(e,n,{x:a,y:t,...o}=so,r,s,c){let[l,d$1]=k.useState(t),i=k.useRef(0),b=k.useRef(null);if(k.useLayoutEffect(()=>{if(!s)return;i.current=e.current?.getBoundingClientRect().top??0,b.current||(b.current=d(()=>{i.current=e.current?.getBoundingClientRect().top??0,d$1(Ae(e.current,i.current));},ro,false,true)),window.addEventListener("resize",b.current);let g=null;return e.current&&(g=new MutationObserver(b.current),g.observe(e.current,{childList:true,subtree:true,attributes:true,attributeFilter:["style","class","hidden"]})),()=>{b.current&&(window.removeEventListener("resize",b.current),b.current.cancel()),g?.disconnect();}},[e,s]),k.useEffect(()=>{if(!s||t!==void 0)return;d$1(Ae(e.current,i.current));let g=setTimeout(()=>{d$1(Ae(e.current,i.current));},no);return ()=>{clearTimeout(g);}},[t,n,e,s]),!s)return {x:a,y:t,...o};let v=l&&typeof l=="number"?l+(r?oo:0):l;return {x:c&&!a?1280:a??"max-content",y:c&&!v?620:v,...o}}var uo={ease:[.26,.08,.25,1],duration:.3},po={},mo={root:"m-0 flex w-full [&_.ant-pagination-total-text]:ps-6 [&_.ant-pagination-total-text]:mr-auto"};function bo(e){let{store:n,tabList:a,alwaysShowingColumns:t,...o}=e;return fe(()=>{let r=document.body,s=l=>{l.preventDefault(),l.dataTransfer&&(l.target.closest("[data-dropzone]")?l.dataTransfer.dropEffect="copy":l.dataTransfer.dropEffect="none");},c=l=>{l.preventDefault();};return r.addEventListener("drop",c),r.addEventListener("dragover",s),r.addEventListener("dragenter",s),()=>{r.removeEventListener("drop",c),r.removeEventListener("dragover",s),r.removeEventListener("dragenter",s);}}),jsx(St,{store:n,tabList:a,alwaysShowingColumns:t,children:jsx(fo,{...o})})}function fo(e){let{ref:n$2,anchorRef:a$1,activeTabId:t$1,variant:o$1,style:r$1,cardTitle:s$1,cardIcon:c$1,cardDescription:l$2,classNames:d,enableTableAutoScrollSizer:i,slots:b,columns:v,filterColumns:g$1,tableColumns:p$1,defaultFilters:T,tableProps:m$3,paginationProps:h$1,toolbarItems:R,isCustomTab:w,tabRenderCtx:F,customRender:A,onToolbarAction:G,onFiltersChange:z}=e,y=S(),x=k.useRef(null),V=k.useRef(null),{tabList:Y}=se(),{syncing:$,loading:E}=Rt(),te=ee(oe=>oe.updateTableId),[ae,Q]=h({filters:T,onFiltersChange:z});k.useEffect(()=>{te(t$1);},[t$1]);let{current:Se}=h$1;k.useEffect(()=>{let oe=setTimeout(()=>{if(i&&!m$3.virtual){let Le=x.current?.querySelector(".ant-table-body");Le&&(Le.scrollTop=0);}else x.current?.scrollIntoView({block:"start"});},350);return ()=>clearTimeout(oe)},[Se]);let ve=ae&&ae.length!==0,xe=!!(E&&p$1.some(oe=>oe.skeleton)),Ie=Math.min(h$1.pageSize,15),u$1=k.useCallback(oe=>y("pagination_total").replace("{total}",String(oe)),[y]),f$2=ta(V,`${ae?.length}-${t$1}`,m$3.scroll,w,i,m$3.virtual),P=xe?jsx(Tt,{id:`${t$1}-skeleton`,columns:p$1,size:m$3.size,count:Ie,scroll:f$2}):jsx(Table,{id:`${t$1}-data-table`,columns:p$1,loading:E,showSorterTooltip:false,...m$3,scroll:f$2}),O=!!h$1.total&&(h$1.hideOnSinglePage!==true||h$1.total>h$1.pageSize),K=!!(s$1&&l$2),be=jsxs(l,{ref:f$1([V,n$2]),style:r$1,className:c("relative rounded-[16px]",i&&"h-full max-h-[calc(100vh-var(--offset-top))] overflow-hidden",d?.root),variant:o$1,children:[jsxs(m,{"data-id":"data-table-card-header",className:c("data-table-card-header relative min-h-56 grow-0 px-14 pt-12 pb-10",K&&"min-h-64",o$1==="accent"&&"pt-10",Y&&Y?.length>1&&"border-b-0",d?.cardHeader),children:[jsxs(q,{className:c("flex items-center gap-12",d?.cardHeading),children:[c$1&&jsx(t,{className:c("size-32 border border-stone-200 bg-stone-100 text-text-sub",K&&"size-42 [&_svg]:size-24",d?.cardIcon),children:c$1}),s$1&&jsxs("div",{className:c(l$2&&"flex flex-col gap-2"),children:[jsx(s,{children:s$1}),l$2&&jsx(u,{children:l$2})]})]}),jsx(AnimatePresence,{initial:false,children:R!==false&&jsx(r,{as:m$1.div,className:d?.cardToolbar,...l$1,children:jsx(ea,{containerRef:x,items:R,columns:v,onAction:G,filter:g$1.length!==0&&jsx(g,{columns:g$1,filters:ae,actions:Q,disabled:E||$,align:"end",enableAutoBack:true},`${t$1}-filter`)})})})]}),b?.cardSummary&&jsx(o,{"data-id":"data-table-card-summary",className:c("grow-0 p-12",d?.cardSummary),children:b.cardSummary}),jsx(Et,{"data-id":"data-table-card-tabs",className:"flex max-h-40 min-h-40 grow-0 items-end p-0"}),jsx(AnimatePresence,{initial:false,children:ve&&jsx(m$1.div,{"data-id":"data-table-card-filter-values",...m$2,children:jsx(o,{className:"p-0",children:jsx(f,{columns:g$1,filters:ae,actions:Q,"data-id":"data-table-active-filters",className:"flex flex-wrap gap-10 px-12 pt-16",disabled:$||E,enableAutoClose:true})})},t$1)}),jsxs(n,{"data-id":"data-table-card-content",className:c("relative grow p-12 pb-0",($||E)&&"pointer-events-none",i&&"overflow-hidden",d?.cardContent),children:[b?.tableSummary&&jsx(o,{"data-id":"data-table-card-table-summary",className:c("grow-0 p-0 pb-12",d?.tableSummary),children:b.tableSummary}),jsx(AnimatePresence,{mode:"popLayout",initial:false,children:jsx(m$1.div,{ref:x,className:c("relative w-full",w&&i&&"overflow-auto"),style:w&&i?{maxHeight:f$2.y}:po,...n$1,transition:uo,children:w?A?.(F):P},t$1)})]}),O&&jsx(p,{"data-id":"data-table-card-pager",className:c("flex min-h-44 w-full grow-0 items-center justify-between",d?.cardFooter),children:jsx(Pagination,{classNames:mo,disabled:E||$,size:"small",showTotal:u$1,...h$1})}),b?.cardFooter&&jsx(p,{"data-id":"data-table-card-footer",className:c("grow-0 px-16 py-12",d?.cardFooter),children:b.cardFooter})]});return jsxs("div",{className:c("relative",i&&"h-full"),children:[jsx(a,{children:be}),jsx("div",{ref:a$1,className:"pointer-events-none absolute inset-0 z-10"})]})}function go(e){let{tabList:n,fireOnMount:a=true,storageKey:t,onTabChange:o,onTableChange:r,onToolbarAction:s}=e,{pagination:c,tableStateStorageKey:l}=c$1(),d=k.useRef(new Set),[i]=k.useState(()=>{let u=gt(n[0].id,t??l);for(let f of n)u.getState().initTab(f.id,oa(f)),d.current.add(f.id);return u}),b=k.useRef({onTabChange:o,onTableChange:r,onToolbarAction:s});b.current={onTabChange:o,onTableChange:r,onToolbarAction:s};let v=k.useRef(new Map);v.current=new Map(n.map(u=>[u.id,u]));let g=n.map(u=>u.id).join(),p=k.useRef(true);k.useEffect(()=>{if(p.current){p.current=false;return}for(let u of n)d.current.has(u.id)||(i.getState().initTab(u.id,oa(u)),d.current.add(u.id));},[i,g]);let T=n.map(u=>`${u.id}:${u.loading}:${u.syncing}:${u.exporting}:${u.disabled}`).join();k.useEffect(()=>{let{syncTabExternal:u}=i.getState();for(let f of n)u(f.id,{loading:f.loading,syncing:f.syncing,exporting:f.exporting,disabled:f.disabled});},[i,T]),k.useEffect(()=>{let u=i.getState().stateVersion;return i.subscribe(f=>{if(f.stateVersion===u)return;u=f.stateVersion;let P=f.activeTabId,O=f.tabs[P];if(!O)return;let K={pagination:O.pagination,filters:O.filters,sorter:O.sorter},be=f.changeReason;be==="tab_switch"&&b.current.onTabChange?.(P),b.current.onTableChange?.(K,be,P);})},[i]);let m=k.useRef(false);k.useEffect(()=>{if(m.current||(m.current=true,!a))return;let u=i.getState(),f=u.activeTabId,P=u.tabs[f];P&&b.current.onTableChange?.(P,"mount",f);},[i,a]);let h=useStore(i,u=>u.activeTabId),R=useStore(i,useShallow(u=>u.tabs[u.activeTabId]??B)),w=v.current.get(h),F=w?.type==="custom",A=F?void 0:w,G=F?w:void 0,{columnVisibility:z,pagination:y}=R,x=A?.columns,V=G?.filterColumns,Y=k.useMemo(()=>x?x.filter(u=>!u.hidden):[],[x]),$=k.useMemo(()=>F?V??[]:Bt(x),[F,V,x]),E=k.useMemo(()=>Y.filter(u=>{let f=u.key??u.dataIndex;return !f||z[f]!==false}),[Y,z]),te=k.useCallback(u=>{let f=i.getState(),P=f.activeTabId,O=f.tabs[P]?.filters??[],K=typeof u=="function"?u(O):u;f.setFilters(P,K);},[i]),ae=k.useCallback((u,f,P,O)=>{let K=i.getState().activeTabId;i.getState().setTableChange(K,P,O);},[i]),Q=k.useCallback((u,f)=>{let P=i.getState().activeTabId;i.getState().setPagination(P,u,f);},[i]),Se=k.useCallback(u=>{let f=i.getState(),P=f.activeTabId,O=f.tabs[P],K={pagination:O?.pagination??B.pagination,filters:O?.filters??B.filters,sorter:O?.sorter??B.sorter};u.tableState=K,b.current.onToolbarAction?.(u,P);},[i]),ve=k.useMemo(()=>({...c,current:y.current,pageSize:y.pageSize,total:w?.total,onChange:Q,onShowSizeChange:Q}),[c,y,w?.total,Q]),xe=k.useMemo(()=>({loading:R.loading,syncing:R.syncing,exporting:R.exporting,disabled:R.disabled,filters:R.filters,pagination:y,onFiltersChange:te,onPaginationChange:Q}),[R,y,te,Q]),Ie=k.useMemo(()=>n.map(({id:u,label:f,value:P})=>({id:u,label:f,value:P})),[g]);return {store:i,activeTabId:h,tabList:Ie,columns:Y,filterColumns:$,tableColumns:E,tableProps:{dataSource:A?.dataSource,rowKey:A?.rowKey,size:R.tableSize,pagination:false,scroll:A?.scroll,virtual:A?.virtual,onChange:ae},paginationProps:ve,defaultFilters:R.filters,onFiltersChange:te,toolbarItems:w?.toolbarItems,onToolbarAction:Se,isCustomTab:F,customRender:G?.render,tabRenderCtx:xe,enableTableAutoScrollSizer:A?.enableTableAutoScrollSizer??G?.enableTableAutoScrollSizer??true}}function oa(e){return {pagination:e.defaultPagination,filters:e.defaultFilters,sorter:e.type!=="custom"?e.defaultSorter:void 0,loading:e.loading,syncing:e.syncing,exporting:e.exporting,disabled:e.disabled}}export{Wt as DEFAULT_TOOLBAR_ITEMS,bo as DataTable,go as useDataTable};
|