@hua-labs/ui 2.0.2 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -161
- package/dist/{ComponentLayout-btJq4TjA.d.mts → ComponentLayout-DrZpz0yv.d.mts} +1 -1
- package/dist/Section-BWzyshgX.d.mts +67 -0
- package/dist/advanced/dashboard.d.ts.map +1 -1
- package/dist/advanced-dashboard.d.mts +1 -1
- package/dist/advanced-dashboard.js +4 -4
- package/dist/advanced-dashboard.js.map +1 -1
- package/dist/advanced-dashboard.mjs +3 -3
- package/dist/advanced-dashboard.mjs.map +1 -1
- package/dist/advanced-emotion.mjs +1 -1
- package/dist/advanced-motion.d.mts +65 -1
- package/dist/advanced-motion.js +14 -14
- package/dist/advanced-motion.js.map +1 -1
- package/dist/advanced-motion.mjs +1 -1
- package/dist/advanced.d.mts +4 -4
- package/dist/advanced.js +16 -16
- package/dist/advanced.js.map +1 -1
- package/dist/advanced.mjs +3 -3
- package/dist/advanced.mjs.map +1 -1
- package/dist/chunk-3CCF7U3P.mjs +3 -0
- package/dist/{chunk-IFSEJVOR.mjs.map → chunk-3CCF7U3P.mjs.map} +1 -1
- package/dist/chunk-3GAUTZXQ.mjs +3 -0
- package/dist/{chunk-X7ZIWYRC.mjs.map → chunk-3GAUTZXQ.mjs.map} +1 -1
- package/dist/chunk-42RGFEL2.mjs +3 -0
- package/dist/chunk-42RGFEL2.mjs.map +1 -0
- package/dist/chunk-4NJE7D6X.mjs +3 -0
- package/dist/chunk-4NJE7D6X.mjs.map +1 -0
- package/dist/chunk-6HVJFEDA.mjs +3 -0
- package/dist/{chunk-FSL373O6.mjs.map → chunk-6HVJFEDA.mjs.map} +1 -1
- package/dist/chunk-7OYT3QSY.mjs +3 -0
- package/dist/chunk-7OYT3QSY.mjs.map +1 -0
- package/dist/chunk-ANYZ56VB.mjs +3 -0
- package/dist/{chunk-QQCELXFD.mjs.map → chunk-ANYZ56VB.mjs.map} +1 -1
- package/dist/chunk-AOSXB5JJ.mjs +4 -0
- package/dist/{chunk-GLZKT7JN.mjs.map → chunk-AOSXB5JJ.mjs.map} +1 -1
- package/dist/chunk-B544MRF7.mjs +3 -0
- package/dist/{chunk-SDFHJ4GB.mjs.map → chunk-B544MRF7.mjs.map} +1 -1
- package/dist/chunk-CVWWS25A.mjs +3 -0
- package/dist/chunk-CVWWS25A.mjs.map +1 -0
- package/dist/chunk-DYNBM24D.mjs +3 -0
- package/dist/{chunk-OSCMSA2Q.mjs.map → chunk-DYNBM24D.mjs.map} +1 -1
- package/dist/{chunk-NBJUE7NR.mjs → chunk-FX57OSYG.mjs} +2 -2
- package/dist/{chunk-NBJUE7NR.mjs.map → chunk-FX57OSYG.mjs.map} +1 -1
- package/dist/chunk-IJSYSNM5.mjs +3 -0
- package/dist/{chunk-IN7RWQCJ.mjs.map → chunk-IJSYSNM5.mjs.map} +1 -1
- package/dist/chunk-KJZGOL2Z.mjs +3 -0
- package/dist/{chunk-LOYAJIWO.mjs.map → chunk-KJZGOL2Z.mjs.map} +1 -1
- package/dist/chunk-KYRIUUQP.mjs +3 -0
- package/dist/{chunk-PAEKNQWW.mjs.map → chunk-KYRIUUQP.mjs.map} +1 -1
- package/dist/chunk-LSA7DU3N.mjs +73 -0
- package/dist/chunk-LSA7DU3N.mjs.map +1 -0
- package/dist/chunk-MDLCJASB.mjs +3 -0
- package/dist/{chunk-LH77I6HO.mjs.map → chunk-MDLCJASB.mjs.map} +1 -1
- package/dist/chunk-N56BUOCD.mjs +3 -0
- package/dist/{chunk-XV3Y7QVU.mjs.map → chunk-N56BUOCD.mjs.map} +1 -1
- package/dist/chunk-OFYITQXI.mjs +13 -0
- package/dist/chunk-OFYITQXI.mjs.map +1 -0
- package/dist/chunk-OZNST3EZ.mjs +3 -0
- package/dist/{chunk-SGEP3CQE.mjs.map → chunk-OZNST3EZ.mjs.map} +1 -1
- package/dist/chunk-RS6RKW5U.mjs +13 -0
- package/dist/{chunk-6KTHJ3EL.mjs.map → chunk-RS6RKW5U.mjs.map} +1 -1
- package/dist/{chunk-C4OACMTB.mjs → chunk-TXBZZJNR.mjs} +2 -2
- package/dist/{chunk-C4OACMTB.mjs.map → chunk-TXBZZJNR.mjs.map} +1 -1
- package/dist/chunk-TZ4YSHMC.mjs +3 -0
- package/dist/{chunk-UWHCM3S6.mjs.map → chunk-TZ4YSHMC.mjs.map} +1 -1
- package/dist/chunk-U6CTBZ2U.mjs +3 -0
- package/dist/chunk-U6CTBZ2U.mjs.map +1 -0
- package/dist/{chunk-5BMH7223.mjs → chunk-WP7VFE77.mjs} +2 -2
- package/dist/{chunk-5BMH7223.mjs.map → chunk-WP7VFE77.mjs.map} +1 -1
- package/dist/{chunk-FFH4ZFKS.mjs → chunk-XCZMLKPK.mjs} +2 -2
- package/dist/{chunk-FFH4ZFKS.mjs.map → chunk-XCZMLKPK.mjs.map} +1 -1
- package/dist/chunk-XGHT7WMO.mjs +3 -0
- package/dist/chunk-XGHT7WMO.mjs.map +1 -0
- package/dist/chunk-XL4KTJ4L.mjs +3 -0
- package/dist/{chunk-VWSBJUNI.mjs.map → chunk-XL4KTJ4L.mjs.map} +1 -1
- package/dist/chunk-Z74YUUVT.mjs +3 -0
- package/dist/chunk-Z74YUUVT.mjs.map +1 -0
- package/dist/chunk-ZXZIHU7J.mjs +8 -0
- package/dist/{chunk-N7M6RIN4.mjs.map → chunk-ZXZIHU7J.mjs.map} +1 -1
- package/dist/components/DatePicker.d.ts.map +1 -1
- package/dist/components/Modal.d.ts.map +1 -1
- package/dist/components/Popover.d.ts +2 -0
- package/dist/components/Popover.d.ts.map +1 -1
- package/dist/components/Progress.d.ts +1 -0
- package/dist/components/Progress.d.ts.map +1 -1
- package/dist/components/Section.d.ts +44 -0
- package/dist/components/Section.d.ts.map +1 -0
- package/dist/components/advanced/AnimatedGradient.d.ts.map +1 -1
- package/dist/components/advanced/DotNav.d.ts +26 -0
- package/dist/components/advanced/DotNav.d.ts.map +1 -0
- package/dist/components/advanced/HorizontalScroll.d.ts +20 -0
- package/dist/components/advanced/HorizontalScroll.d.ts.map +1 -0
- package/dist/components/advanced/ImageReveal.d.ts +24 -0
- package/dist/components/advanced/ImageReveal.d.ts.map +1 -0
- package/dist/components/advanced/index.d.ts +6 -0
- package/dist/components/advanced/index.d.ts.map +1 -1
- package/dist/data.mjs +2 -2
- package/dist/data.mjs.map +1 -1
- package/dist/feedback.mjs +1 -1
- package/dist/form.js +3 -3
- package/dist/form.js.map +1 -1
- package/dist/form.mjs +4 -4
- package/dist/form.mjs.map +1 -1
- package/dist/{icons-Bj_nr8Ba.d.mts → icons-DmhQEH_E.d.mts} +6 -1
- package/dist/index.d.mts +9 -27
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -6
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -2
- package/dist/index.mjs.map +1 -1
- package/dist/interactive.js +1 -1
- package/dist/interactive.js.map +1 -1
- package/dist/interactive.mjs +1 -1
- package/dist/interactive.mjs.map +1 -1
- package/dist/landing/LandingAbout.d.ts +3 -0
- package/dist/landing/LandingAbout.d.ts.map +1 -0
- package/dist/landing/LandingCTA.d.ts +3 -0
- package/dist/landing/LandingCTA.d.ts.map +1 -0
- package/dist/landing/LandingContact.d.ts +3 -0
- package/dist/landing/LandingContact.d.ts.map +1 -0
- package/dist/landing/LandingExperience.d.ts +3 -0
- package/dist/landing/LandingExperience.d.ts.map +1 -0
- package/dist/landing/LandingFeatures.d.ts +3 -0
- package/dist/landing/LandingFeatures.d.ts.map +1 -0
- package/dist/landing/LandingHero.d.ts +3 -0
- package/dist/landing/LandingHero.d.ts.map +1 -0
- package/dist/landing/LandingLogoCloud.d.ts +3 -0
- package/dist/landing/LandingLogoCloud.d.ts.map +1 -0
- package/dist/landing/LandingMetrics.d.ts +3 -0
- package/dist/landing/LandingMetrics.d.ts.map +1 -0
- package/dist/landing/LandingProjects.d.ts +3 -0
- package/dist/landing/LandingProjects.d.ts.map +1 -0
- package/dist/landing/LandingProvider.d.ts +4 -0
- package/dist/landing/LandingProvider.d.ts.map +1 -0
- package/dist/landing/LandingShowcase.d.ts +3 -0
- package/dist/landing/LandingShowcase.d.ts.map +1 -0
- package/dist/landing/LandingSkills.d.ts +3 -0
- package/dist/landing/LandingSkills.d.ts.map +1 -0
- package/dist/landing/LandingStats.d.ts +3 -0
- package/dist/landing/LandingStats.d.ts.map +1 -0
- package/dist/landing/LandingTestimonials.d.ts +3 -0
- package/dist/landing/LandingTestimonials.d.ts.map +1 -0
- package/dist/landing/index.d.ts +47 -0
- package/dist/landing/index.d.ts.map +1 -0
- package/dist/landing/themes/app.d.ts +3 -0
- package/dist/landing/themes/app.d.ts.map +1 -0
- package/dist/landing/themes/corporate.d.ts +3 -0
- package/dist/landing/themes/corporate.d.ts.map +1 -0
- package/dist/landing/themes/dashboard.d.ts +3 -0
- package/dist/landing/themes/dashboard.d.ts.map +1 -0
- package/dist/landing/themes/immersive.d.ts +3 -0
- package/dist/landing/themes/immersive.d.ts.map +1 -0
- package/dist/landing/themes/index.d.ts +15 -0
- package/dist/landing/themes/index.d.ts.map +1 -0
- package/dist/landing/themes/marketing.d.ts +3 -0
- package/dist/landing/themes/marketing.d.ts.map +1 -0
- package/dist/landing/themes/portfolio.d.ts +3 -0
- package/dist/landing/themes/portfolio.d.ts.map +1 -0
- package/dist/landing/themes/product.d.ts +3 -0
- package/dist/landing/themes/product.d.ts.map +1 -0
- package/dist/landing/types.d.ts +346 -0
- package/dist/landing/types.d.ts.map +1 -0
- package/dist/landing.d.mts +417 -0
- package/dist/landing.js +100 -0
- package/dist/landing.js.map +1 -0
- package/dist/landing.mjs +31 -0
- package/dist/landing.mjs.map +1 -0
- package/dist/lib/icons.d.ts +6 -1
- package/dist/lib/icons.d.ts.map +1 -1
- package/dist/navigation.d.mts +1 -1
- package/dist/navigation.js +2 -2
- package/dist/navigation.js.map +1 -1
- package/dist/navigation.mjs +1 -1
- package/dist/navigation.mjs.map +1 -1
- package/dist/overlay.d.mts +2 -0
- package/dist/overlay.js +1 -1
- package/dist/overlay.js.map +1 -1
- package/dist/overlay.mjs +1 -1
- package/dist/overlay.mjs.map +1 -1
- package/dist/sdui.js +4 -4
- package/dist/sdui.js.map +1 -1
- package/dist/sdui.mjs +1 -1
- package/dist/sdui.mjs.map +1 -1
- package/package.json +18 -7
- package/src/styles/landing.css +107 -0
- package/src/styles/utilities.css +58 -0
- package/dist/chunk-6KTHJ3EL.mjs +0 -13
- package/dist/chunk-COR6CDMA.mjs +0 -83
- package/dist/chunk-COR6CDMA.mjs.map +0 -1
- package/dist/chunk-FSL373O6.mjs +0 -3
- package/dist/chunk-GLZKT7JN.mjs +0 -4
- package/dist/chunk-HN5LSP6L.mjs +0 -3
- package/dist/chunk-HN5LSP6L.mjs.map +0 -1
- package/dist/chunk-IFSEJVOR.mjs +0 -3
- package/dist/chunk-IN7RWQCJ.mjs +0 -3
- package/dist/chunk-LH77I6HO.mjs +0 -3
- package/dist/chunk-LOYAJIWO.mjs +0 -3
- package/dist/chunk-LPAG7DCA.mjs +0 -3
- package/dist/chunk-LPAG7DCA.mjs.map +0 -1
- package/dist/chunk-N7M6RIN4.mjs +0 -8
- package/dist/chunk-OSCMSA2Q.mjs +0 -3
- package/dist/chunk-PAEKNQWW.mjs +0 -3
- package/dist/chunk-QQCELXFD.mjs +0 -3
- package/dist/chunk-RPUS7G7Q.mjs +0 -3
- package/dist/chunk-RPUS7G7Q.mjs.map +0 -1
- package/dist/chunk-SDFHJ4GB.mjs +0 -3
- package/dist/chunk-SGEP3CQE.mjs +0 -3
- package/dist/chunk-UUHAXGMO.mjs +0 -3
- package/dist/chunk-UUHAXGMO.mjs.map +0 -1
- package/dist/chunk-UWHCM3S6.mjs +0 -3
- package/dist/chunk-VWSBJUNI.mjs +0 -3
- package/dist/chunk-X7ZIWYRC.mjs +0 -3
- package/dist/chunk-XV3Y7QVU.mjs +0 -3
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
export{a as Modal}from'./chunk-
|
|
2
|
+
export{a as Modal}from'./chunk-B544MRF7.mjs';export{a as Progress,d as ProgressError,f as ProgressGroup,e as ProgressInfo,b as ProgressSuccess,c as ProgressWarning}from'./chunk-42RGFEL2.mjs';export{b as Section,a as sectionVariants}from'./chunk-Z74YUUVT.mjs';export{a as Container}from'./chunk-CVWWS25A.mjs';export{a as ComponentLayout}from'./chunk-FX57OSYG.mjs';export{a as Avatar,c as AvatarFallback,b as AvatarImage}from'./chunk-IJSYSNM5.mjs';export{g as HUA_SPRING_EASING,a as createColorStyles,h as createHoverStyles,e as createRoundedStyles,f as createShadowStyles,d as createSizeStyles,c as createVariantStyles,b as useColorStyles}from'./chunk-MDLCJASB.mjs';export{a as Skeleton,g as SkeletonAvatar,f as SkeletonCard,c as SkeletonCircle,h as SkeletonImage,j as SkeletonList,d as SkeletonRectangle,e as SkeletonRounded,k as SkeletonTable,b as SkeletonText,i as SkeletonUserProfile}from'./chunk-ZXZIHU7J.mjs';import {a}from'./chunk-6HVJFEDA.mjs';export{a as Card,e as CardContent,d as CardDescription,f as CardFooter,b as CardHeader,c as CardTitle}from'./chunk-6HVJFEDA.mjs';export{a as Badge}from'./chunk-3CCF7U3P.mjs';export{a as NumberInput}from'./chunk-XL4KTJ4L.mjs';export{b as Input,c as Label,d as Switch}from'./chunk-OZNST3EZ.mjs';import {d}from'./chunk-XCZMLKPK.mjs';export{d as Button,c as Slot,a as composeRefs,b as mergeProps}from'./chunk-XCZMLKPK.mjs';import'./chunk-KJZGOL2Z.mjs';import {l,d as d$1}from'./chunk-7OYT3QSY.mjs';export{m as EmotionIcon,q as ErrorIcon,e as ICON_ALIASES,l as Icon,j as IconProvider,o as LoadingIcon,n as StatusIcon,p as SuccessIcon,h as defaultIconConfig,a as emotionIcons,i as getDefaultStrokeWidth,g as getIconAliases,c as iconCategories,f as resolveIconAlias,b as statusIcons,k as useIconContext}from'./chunk-7OYT3QSY.mjs';export{c as ToastProvider,a as useToast,b as useToastSafe}from'./chunk-DYNBM24D.mjs';export{a as Alert,d as AlertError,e as AlertInfo,b as AlertSuccess,c as AlertWarning}from'./chunk-TXBZZJNR.mjs';export{a as Tooltip,c as TooltipDark,b as TooltipLight}from'./chunk-3GAUTZXQ.mjs';export{a as LoadingSpinner}from'./chunk-RS6RKW5U.mjs';import {b}from'./chunk-U6CTBZ2U.mjs';export{f as cn,d as formatRelativeTime,b as merge,c as mergeIf,e as mergeMap}from'./chunk-U6CTBZ2U.mjs';import U,{useCallback,createContext,useState,useEffect,useContext,useRef,useMemo}from'react';import {jsx,jsxs}from'react/jsx-runtime';import {cva}from'class-variance-authority';var q=typeof window!="undefined";function pr(){let[r,e]=U.useState(false);return U.useEffect(()=>{var n;if(!q||!("matchMedia"in window))return;let t=window.matchMedia("(prefers-reduced-motion: reduce)"),o=()=>e(!!t.matches);return o(),(n=t.addEventListener)==null||n.call(t,"change",o),()=>{var i;return (i=t.removeEventListener)==null?void 0:i.call(t,"change",o)}},[]),r}var fe=U.forwardRef(({className:r,children:e,actionType:t="primary",feedback:o="ripple",particleEffect:n=false,rippleEffect:i=false,soundEffect:s=false,hapticFeedback:a=false,transparency:l=1,blurIntensity:f=0,glowIntensity:h=0,glowColor:c="rgba(91,140,255,.8)",loading:d$1=false,iconOnly:g=false,disabled:m,...p},k)=>{let v=pr(),w=U.useCallback(T=>{var H;if(a&&q&&"vibrate"in navigator&&!v)try{(H=navigator.vibrate)==null||H.call(navigator,30);}catch{}if(s&&!v&&q)try{let P=window.AudioContext||window.webkitAudioContext;if(!P)return;let M=new P,S=M.createOscillator(),A=M.createGain();S.connect(A),A.connect(M.destination),S.frequency.value=800,S.type="sine",A.gain.setValueAtTime(.1,M.currentTime),A.gain.exponentialRampToValueAtTime(.01,M.currentTime+.1),S.start(M.currentTime),S.stop(M.currentTime+.1);}catch{}if(i&&!v&&T.currentTarget){let P=T.currentTarget,M=P.getBoundingClientRect(),S=T.clientX-M.left,A=T.clientY-M.top,E=Math.max(M.width,M.height),L=document.createElement("span");if(L.style.cssText=`
|
|
3
3
|
position: absolute;
|
|
4
4
|
border-radius: 50%;
|
|
5
5
|
background: rgba(255, 255, 255, 0.6);
|
|
@@ -33,5 +33,5 @@ export{a as Modal}from'./chunk-SDFHJ4GB.mjs';export{a as Container,b as Progress
|
|
|
33
33
|
opacity: 0;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
-
`,document.head.appendChild(Q);}P.style.position="relative",P.appendChild(L),setTimeout(()=>{L.remove();},500);}}},[a$1,s,i,n,v,c]),m=U.useMemo(()=>({"--action-opacity":String(l),"--action-blur":`${f}px`,"--action-glow-size":`${h}px`,"--action-glow-color":c}),[l,f,h,c]),x=U.useMemo(()=>a("hua-action relative inline-flex items-center rounded-xl px-4 py-2 font-medium","focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/60",d$1&&"cursor-wait opacity-80",g&&"justify-center",r),[r,d$1,g]);if("href"in p&&p.href){let{onClick:T,href:H,...P}=p;return jsx(d,{ref:k,href:H,className:x,style:m,onClick:S=>{if(u||d$1){S.preventDefault(),S.stopPropagation();return}w(S),T==null||T(S);},"aria-busy":d$1||void 0,"aria-label":g?P["aria-label"]:void 0,"data-action":t,"data-feedback":o,"data-reduced-motion":v?"true":"false",disabled:u,...P,children:e})}let{onClick:I,...O}=p;return jsx(d,{ref:k,className:x,style:m,onClick:T=>{u||d$1||(w(T),I==null||I(T));},disabled:u,"aria-busy":d$1||void 0,"aria-label":g?O["aria-label"]:void 0,"data-action":t,"data-feedback":o,"data-reduced-motion":v?"true":"false",...O,children:e})});fe.displayName="Action";var pr=cva("transition-colors duration-200",{variants:{variant:{default:"text-foreground hover:text-muted-foreground",primary:"text-primary hover:text-primary/80",secondary:"text-muted-foreground hover:text-foreground",ghost:"text-muted-foreground hover:text-foreground",underline:"text-primary hover:text-primary/80 underline hover:no-underline"},size:{sm:"text-sm",md:"text-base",lg:"text-lg"}},defaultVariants:{variant:"default",size:"md"}});function fr({href:r,children:e,className:t,variant:o="default",size:n="md",external:i=false,onClick:s}){return jsx("a",{href:r,className:a(pr({variant:o,size:n}),t),target:i?"_blank":void 0,rel:i?"noopener noreferrer":void 0,onClick:s,children:e})}var xr=cva("grid",{variants:{gap:{none:"gap-0",sm:"gap-4",md:"gap-6",lg:"gap-8",xl:"gap-12"}},defaultVariants:{gap:"md"}}),vr={1:"grid-cols-1",2:"grid-cols-1 sm:grid-cols-2",3:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-3",4:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-4",5:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-5",6:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-6",7:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-7",8:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-8",9:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-9",10:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-10",11:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-11",12:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-12"},yr={none:"gap-x-0",sm:"gap-x-4",md:"gap-x-6",lg:"gap-x-8",xl:"gap-x-12"},wr={none:"gap-y-0",sm:"gap-y-4",md:"gap-y-6",lg:"gap-y-8",xl:"gap-y-12"},ge=U.forwardRef(({className:r,cols:e=1,gap:t="md",gapX:o,gapY:n,responsive:i=true,...s},a$1)=>jsx("div",{ref:a$1,className:a(xr({gap:o?void 0:t}),i?vr[e]:`grid-cols-${e}`,o&&yr[o],n&&wr[n],r),...s}));ge.displayName="Grid";var Sr=cva("",{variants:{direction:{vertical:"flex flex-col",horizontal:"flex flex-row"},align:{start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"}},defaultVariants:{direction:"vertical",align:"start",justify:"start"}}),Pr={vertical:{none:"",sm:"space-y-4",md:"space-y-6",lg:"space-y-8",xl:"space-y-12"},horizontal:{none:"",sm:"space-x-4",md:"space-x-6",lg:"space-x-8",xl:"space-x-12"}},be=U.forwardRef(({className:r,direction:e="vertical",spacing:t="md",align:o="start",justify:n="start",wrap:i=false,...s},a$1)=>jsx("div",{ref:a$1,className:a(Sr({direction:e,align:o,justify:n}),Pr[e][t],i&&"flex-wrap",r),...s}));be.displayName="Stack";var Nr={horizontal:"w-full",vertical:"h-full"},Rr={horizontal:{none:"",sm:"my-4",md:"my-6",lg:"my-8",xl:"my-12"},vertical:{none:"",sm:"mx-4",md:"mx-6",lg:"mx-8",xl:"mx-12"}};function Cr(r,e,t){return e==="dashed"||e==="dotted"?{horizontal:{sm:"border-t",md:"border-t-2",lg:"border-t-4"},vertical:{sm:"border-l",md:"border-l-2",lg:"border-l-4"}}[r][t]:{horizontal:{sm:"h-px",md:"h-0.5",lg:"h-1"},vertical:{sm:"w-px",md:"w-0.5",lg:"w-1"}}[r][t]}function he(r,e){switch(e){case "dashed":return "border-dashed";case "dotted":return "border-dotted";case "gradient":return r==="horizontal"?"bg-gradient-to-r from-transparent via-border to-transparent":"bg-gradient-to-b from-transparent via-border to-transparent";case "glass":return r==="horizontal"?"bg-gradient-to-r from-transparent via-white/30 to-transparent":"bg-gradient-to-b from-transparent via-white/30 to-transparent";default:return ""}}function Ir(r,e){return r==="dashed"||r==="dotted"?{default:"border-border",muted:"border-muted",primary:"border-primary/30",secondary:"border-secondary"}[e]:{default:"bg-border",muted:"bg-muted",primary:"bg-primary/30",secondary:"bg-secondary"}[e]}var ve=U.forwardRef(({className:r,orientation:e="horizontal",variant:t="solid",size:o="md",spacing:n="md",color:i="default",...s},a$1)=>jsx("div",{ref:a$1,className:a("flex-shrink-0",Nr[e],Cr(e,t,o),t==="gradient"?he(e,t):Ir(t,i),t!=="gradient"&&he(e,t),Rr[e][n],r),...s}));ve.displayName="Divider";var Ar=U.memo(ve);var Or=cva("transition-all duration-300",{variants:{style:{default:"bg-card text-card-foreground border border-border",solid:"bg-card text-card-foreground border border-border",glass:"bg-white/60 dark:bg-white/10 backdrop-blur-md border border-border/50 dark:border-white/20",outline:"bg-transparent border border-border",elevated:"bg-card text-card-foreground shadow-lg border border-border",neon:"bg-muted/50 dark:bg-background border border-cyan-300/30 dark:border-cyan-400/30 shadow-lg shadow-cyan-200/20 dark:shadow-cyan-400/20",holographic:"bg-gradient-to-br from-white/20 via-purple-500/20 to-cyan-500/20 backdrop-blur-sm border border-white/30",cyberpunk:"bg-card dark:bg-background border-2 border-pink-400 dark:border-pink-500 shadow-lg shadow-pink-300/30 dark:shadow-pink-500/30",minimal:"bg-card dark:bg-background border border-border shadow-sm",luxury:"bg-gradient-to-br from-amber-50 to-yellow-100 dark:from-amber-950 dark:to-yellow-950 border border-amber-200 dark:border-amber-800 shadow-xl"},effect:{none:"",glow:"shadow-2xl shadow-primary/20 dark:shadow-primary/20",shadow:"shadow-xl",gradient:"bg-gradient-to-r from-primary/10 via-purple-500/10 to-cyan-500/10",animated:"animate-pulse"},padding:{none:"p-0",small:"p-3",sm:"p-3",medium:"p-6",md:"p-6",large:"p-8",lg:"p-8",xl:"p-12",custom:""},rounded:{none:"rounded-none",sm:"rounded-sm",md:"rounded-md",lg:"rounded-lg",xl:"rounded-xl",full:"rounded-full",custom:""}},defaultVariants:{style:"default",effect:"none",padding:"md",rounded:"lg"}}),ye=U.forwardRef(({className:r,style:e="default",effect:t="none",transparency:o=1,blurIntensity:n=0,borderOpacity:i=1,shadowOpacity:s=1,glowIntensity:a$2=0,glowColor:l="blue",particleEffect:f=false,hoverEffect:h=false,animationEffect:c=false,padding:d="md",customPadding:g,rounded:u="lg",customRounded:p,background:k="solid",gradientColors:v=["#3B82F6","#8B5CF6"],patternType:w="dots",backgroundImage:m,backgroundVideo:x,interactive:I=false,hoverScale:O=1.05,hoverRotate:W=0,hoverGlow:T=false,children:H,...P},M)=>{let S=U.useMemo(()=>{switch(w){case "dots":return "radial-gradient(circle, #000 1px, transparent 1px)";case "lines":return "linear-gradient(45deg, #000 1px, transparent 1px)";case "grid":return "linear-gradient(#000 1px, transparent 1px), linear-gradient(90deg, #000 1px, transparent 1px)";case "waves":return "repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(0,0,0,0.1) 10px, rgba(0,0,0,0.1) 20px)";default:return ""}},[w]),A=U.useMemo(()=>{let y={opacity:o};switch(n>0&&(y.backdropFilter=`blur(${n}px)`),i<1&&(y.borderColor=`rgba(0, 0, 0, ${i})`),s<1&&(y.boxShadow=`0 4px 6px -1px rgba(0, 0, 0, ${s*.1})`),a$2>0&&(y.boxShadow=`${y.boxShadow||""}, 0 0 ${a$2*10}px ${l}`),k){case "gradient":y.background=`linear-gradient(135deg, ${v.join(", ")})`;break;case "pattern":y.backgroundImage=S;break;case "image":m&&(y.backgroundImage=`url(${m})`,y.backgroundSize="cover",y.backgroundPosition="center");break;}return y},[o,n,i,s,a$2,l,k,v,S,m]),E=U.useMemo(()=>{if(!I)return "";let y=[];return O!==1&&y.push(`hover:scale-${O}`),W!==0&&y.push(`hover:rotate-${W}`),T&&y.push("hover:shadow-2xl hover:shadow-cyan-500/30"),y.join(" ")},[I,O,W,T]),L=U.useMemo(()=>a("panel-component",`panel-${e}`,`panel-effect-${t}`,Or({style:e,effect:t,padding:g?"custom":d,rounded:p?"custom":u}),g,p,E,r),[e,t,d,g,u,p,E,r]);return jsxs("div",{className:"relative",children:[k==="video"&&x&&jsx("video",{className:"absolute inset-0 w-full h-full object-cover rounded-lg",autoPlay:true,muted:true,loop:true,playsInline:true,children:jsx("source",{src:x,type:"video/mp4"})}),f&&jsx("div",{className:"absolute inset-0 pointer-events-none"}),jsx(a$1,{ref:M,className:L,style:A,...P,children:H}),c&&jsx("div",{className:"absolute inset-0 pointer-events-none"})]})});ye.displayName="Panel";var Me=U.forwardRef(({isSelectMode:r=false,totalCount:e=0,selectedCount:t=0,actions:o=[],selectModeActions:n=[],onToggleSelectMode:i,onToggleSelectAll:s,onCancelSelect:a$1,loading:l$1=false,className:f,...h},c)=>{let d$1=useCallback(u=>{switch(u){case "red":return "bg-red-100 dark:bg-red-900 text-red-700 dark:text-red-300";case "blue":return "bg-indigo-100 dark:bg-indigo-900 text-indigo-700 dark:text-indigo-300";case "green":return "bg-green-100 dark:bg-green-900 text-green-700 dark:text-green-300";default:return "bg-muted text-muted-foreground"}},[]),g=useCallback((u,p)=>jsxs(d,{variant:u.variant||"outline",size:"sm",onClick:u.onClick,disabled:u.disabled||l$1,className:a("flex-1 sm:flex-initial",u.className),children:[u.icon&&jsx(l,{name:u.icon,className:"h-4 w-4 sm:h-3.5 sm:w-3.5 mr-1 sm:mr-1.5"}),jsx("span",{className:"hidden sm:inline",children:u.label}),jsx("span",{className:"sm:hidden",children:u.labelMobile||u.label}),u.badge&&u.badge.count>0&&jsx("span",{className:a("ml-1.5",d$1(u.badge.color),"px-1.5 py-0.5 rounded-full text-xs font-semibold"),children:u.badge.count})]},p),[d$1,l$1]);return jsx("div",{ref:c,className:a("mb-4 bg-background rounded-lg shadow-sm border border-border p-3 sm:p-4",f),...h,children:r?jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[s&&jsxs(d,{variant:"outline",size:"sm",onClick:s,className:"flex-1 sm:flex-initial min-w-[100px]",children:[jsx(l,{name:t===e?"square":"check",className:"h-4 w-4 sm:h-3.5 sm:w-3.5 mr-1 sm:mr-1.5"}),jsx("span",{className:"hidden sm:inline",children:t===e?"\uC804\uCCB4 \uD574\uC81C":"\uC804\uCCB4 \uC120\uD0DD"}),jsx("span",{className:"sm:hidden",children:t===e?"\uD574\uC81C":"\uC804\uCCB4"})]}),n.map((u,p)=>jsx("div",{className:a("flex-1 sm:flex-initial min-w-[100px]",u.className),children:g(u,`select-${p}`)},`select-action-${p}`)),a$1&&jsx(d,{variant:"outline",size:"sm",onClick:a$1,className:"flex-1 sm:flex-initial min-w-[80px]",children:"\uCDE8\uC18C"})]}):jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[i&&jsxs(d,{variant:"outline",size:"sm",onClick:i,disabled:e===0,className:"flex-1 sm:flex-initial min-w-[80px] sm:min-w-[auto] px-2 sm:px-3",title:e===0?"\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4":"\uC5EC\uB7EC \uD56D\uBAA9 \uC120\uD0DD",children:[jsx(l,{name:"check",className:"h-4 w-4 sm:h-3.5 sm:w-3.5"}),jsx("span",{className:"hidden sm:inline ml-1.5 sm:ml-2",children:"\uC120\uD0DD"})]}),o.map((u,p)=>jsx("div",{className:a("flex-1 sm:flex-initial min-w-[100px]",u.className),children:g(u,`action-${p}`)},`action-${p}`))]})})});Me.displayName="ActionToolbar";var Ur=U.memo(Me);var Pe=U.forwardRef(({className:r,variant:e="default",size:t="md",pressed:o,onPressedChange:n,label:i,description:s,icon:a$1,iconPosition:l="left",onClick:f,...h},c)=>{let[d,g]=U.useState(false),u=o!==void 0,p=u?o:d,k=m=>{u||g(!p),n==null||n(!p),f==null||f(m);},v={sm:"h-7 px-3 text-sm",md:"h-9 px-4 text-base",lg:"h-11 px-5 text-lg"},w={default:p?"bg-primary text-primary-foreground hover:bg-primary/80":"bg-muted text-foreground hover:bg-muted/80",outline:p?"border-2 border-primary bg-primary/10 text-primary hover:bg-primary/15":"border-2 border-border bg-transparent text-foreground hover:bg-muted",filled:p?"bg-primary text-primary-foreground hover:bg-primary/80":"bg-muted/50 text-foreground hover:bg-muted",ghost:p?"bg-primary/10 text-primary hover:bg-primary/15":"bg-transparent text-foreground hover:bg-muted",glass:p?"bg-white/20 backdrop-blur-sm border border-white/30 text-white hover:bg-white/30 dark:bg-primary/20 dark:border-primary/50 dark:hover:bg-primary/30":"bg-white/10 backdrop-blur-sm border border-white/20 text-white hover:bg-white/20 dark:bg-muted/10 dark:border-border/50 dark:text-foreground dark:hover:bg-muted/20"};return jsxs("div",{className:"flex items-start space-x-3",children:[jsxs("button",{type:"button",ref:c,className:a("inline-flex items-center justify-center gap-2 rounded-md font-medium transition-all duration-200","focus:outline-none focus:ring-1 focus:ring-ring focus:ring-offset-2","disabled:cursor-not-allowed disabled:opacity-50",v[t],w[e],r),onClick:k,"aria-pressed":p,...h,children:[a$1&&l==="left"&&jsx("span",{className:"flex-shrink-0",children:a$1}),i&&jsx("span",{children:i}),a$1&&l==="right"&&jsx("span",{className:"flex-shrink-0",children:a$1})]}),s&&jsx("div",{className:"flex flex-col",children:jsx("p",{className:"text-sm text-muted-foreground",children:s})})]})});Pe.displayName="Toggle";var Ee=U.forwardRef(({children:r,className:e,orientation:t="vertical",scrollHideDelay:o=600,type:n="hover",...i},s)=>{let[a$1,l]=U.useState(false),f=U.useRef(void 0),h=()=>{(n==="hover"||n==="always")&&l(true);},c=()=>{n==="hover"&&(f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{l(false);},o));};return U.useEffect(()=>{n==="always"&&l(true);},[n]),U.useEffect(()=>()=>{f.current&&clearTimeout(f.current);},[]),jsx("div",{ref:s,className:a("relative overflow-auto scrollbar-thin",t==="vertical"&&"overflow-y-auto overflow-x-hidden",t==="horizontal"&&"overflow-x-auto overflow-y-hidden",t==="both"&&"overflow-auto",a$1?"scrollbar-visible":"scrollbar-hidden",e),onMouseEnter:h,onMouseLeave:c,...i,children:r})});Ee.displayName="ScrollArea";var Br=U.forwardRef(({orientation:r="vertical",className:e,...t},o)=>jsx("div",{ref:o,className:a("flex touch-none select-none transition-colors duration-150 ease-out",r==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",r==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",e),...t}));Br.displayName="ScrollBar";function Ie(r={}){let{threshold:e=400,showOnMount:t=false,smooth:o=true}=r,[n,i]=useState(t),[s,a]=useState(false);return useEffect(()=>{a(true);},[]),useEffect(()=>{if(!s)return;let f=()=>{typeof window!="undefined"&&i(window.pageYOffset>e);};return f(),window.addEventListener("scroll",f,{passive:true}),window.addEventListener("resize",f,{passive:true}),()=>{window.removeEventListener("scroll",f),window.removeEventListener("resize",f);}},[e,s]),{isVisible:n,scrollToTop:()=>{typeof window!="undefined"&&(o?window.scrollTo({top:0,behavior:"smooth"}):window.scrollTo(0,0));},mounted:s}}var $r=({className:r,threshold:e=400,smooth:t=true,icon:o="arrowUp",size:n="md",variant:i="default",showOnMount:s=false,...a$1})=>{let{isVisible:l$1,scrollToTop:f}=Ie({threshold:e,showOnMount:s,smooth:t}),c={sm:"w-8 h-8 sm:w-10 sm:h-10",md:"w-10 h-10 sm:w-12 sm:h-12",lg:"w-12 h-12 sm:w-14 sm:h-14"},d={default:"bg-white/20 backdrop-blur-md border border-white/30 text-white hover:bg-white/30 dark:bg-muted/20 dark:border-border/50 dark:text-foreground dark:hover:bg-muted/30",primary:"bg-primary/70 backdrop-blur-md border border-primary/40 text-white hover:bg-primary/80 transition-all duration-300 dark:bg-primary/70 dark:border-primary/40 dark:hover:bg-primary/80",secondary:"bg-muted/80 backdrop-blur-md border border-border text-foreground hover:bg-muted/90 dark:bg-muted/50 dark:border-border dark:text-foreground dark:hover:bg-muted/60",outline:"border border-white/40 bg-white/15 backdrop-blur-md text-white hover:bg-white/25 dark:border-border/50 dark:bg-muted/15 dark:text-foreground dark:hover:bg-muted/25",ghost:"bg-transparent hover:bg-white/15 backdrop-blur-md text-white dark:text-foreground dark:hover:bg-muted/25"};return jsx("button",{onClick:f,className:a("fixed z-[9999] rounded-full transition-all duration-500 ease-in-out","flex items-center justify-center","focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-1 focus-visible:ring-ring/50","transform hover:scale-105 active:scale-95",l$1?"opacity-100 translate-y-0 pointer-events-auto":"opacity-0 translate-y-4 pointer-events-none",r,c[n],d[i]),"aria-label":"Scroll to top",...a$1,children:jsx(l,{name:o,className:"w-5 h-5"})})};var _r={theme:"system",setTheme:()=>null,resolvedTheme:"light",toggleTheme:()=>null},ze=createContext(_r);function Fr({children:r,defaultTheme:e="light",storageKey:t="hua-ui-theme",enableSystem:o=true,enableTransition:n=true,...i}){let[s,a]=useState(e),[l,f]=useState("light");useEffect(()=>{if(typeof window!="undefined"){let c=localStorage.getItem(t);c&&a(c);}},[t]),useEffect(()=>{let c=window.document.documentElement;if(c.classList.remove("light","dark"),s==="system"&&o){let d=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";c.classList.add(d),f(d);}else c.classList.add(s),f(s);n&&c.classList.add("transition-colors","duration-300");},[s,o,n]),useEffect(()=>{if(s==="system"&&o){let c=window.matchMedia("(prefers-color-scheme: dark)"),d=()=>{let g=c.matches?"dark":"light";f(g),document.documentElement.classList.remove("light","dark"),document.documentElement.classList.add(g);};return c.addEventListener("change",d),()=>c.removeEventListener("change",d)}},[s,o]);let h={theme:s,setTheme:c=>{typeof window!="undefined"&&localStorage.setItem(t,c),a(c);},resolvedTheme:l,toggleTheme:()=>{let c=l==="light"?"dark":"light";typeof window!="undefined"&&localStorage.setItem(t,c),a(c);}};return jsx(ze.Provider,{...i,value:h,children:r})}var ee=()=>{let r=useContext(ze);if(r===void 0)throw new Error("useTheme must be used within a ThemeProvider");return r};function Wr({className:r,size:e="md",variant:t="button",showLabel:o=false,label:n={light:"\uB77C\uC774\uD2B8",dark:"\uB2E4\uD06C",system:"\uC2DC\uC2A4\uD15C"},...i}){let{theme:s,setTheme:a$1,resolvedTheme:l$1}=ee(),f={sm:"h-10 w-10",md:"h-12 w-12",lg:"h-14 w-14"},h={sm:16,md:20,lg:24},c=()=>s==="system"?jsx(l,{name:"monitor",size:h[e]}):l$1==="dark"?jsx(l,{name:"moon",size:h[e]}):jsx(l,{name:"sun",size:h[e],className:"text-amber-600"}),d=()=>{s==="system"?a$1("light"):s==="light"?a$1("dark"):s==="dark"&&a$1("light");};return t==="icon"?jsx("button",{onClick:d,className:a("inline-flex items-center justify-center rounded-lg transition-all duration-300 hover:bg-muted focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring/50 focus-visible:ring-offset-2",f[e],r),...i,children:jsxs("div",{className:"relative flex items-center justify-center w-full h-full",children:[jsx("div",{className:a("absolute inset-0 flex items-center justify-center transition-all duration-300",l$1==="dark"?"rotate-0 opacity-100":"rotate-90 opacity-0"),children:jsx(l,{name:"moon",size:h[e],className:"text-indigo-500"})}),jsx("div",{className:a("absolute inset-0 flex items-center justify-center transition-all duration-300",l$1==="dark"?"rotate-90 opacity-0":"rotate-0 opacity-100"),children:jsx(l,{name:"sun",size:h[e],className:"text-amber-600 dark:text-yellow-500"})})]})}):t==="switch"?jsxs("button",{onClick:d,className:a("relative inline-flex h-6 w-11 items-center rounded-full transition-colors duration-300 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring/50 focus-visible:ring-offset-2",l$1==="dark"?"bg-primary":"bg-muted",r),...i,children:[jsx("span",{className:a("inline-block h-4 w-4 transform rounded-full bg-white transition-transform duration-300 shadow-lg",l$1==="dark"?"translate-x-6":"translate-x-1")}),jsxs("div",{className:"absolute inset-0 flex items-center justify-between px-1.5",children:[jsx(l,{name:"sun",size:12,className:"text-amber-600 dark:text-yellow-500 opacity-0"}),jsx(l,{name:"moon",size:12,className:"text-indigo-500 opacity-0"})]})]}):jsxs("button",{onClick:d,className:a("inline-flex items-center gap-3 rounded-lg px-4 py-3 text-sm font-medium transition-all duration-300 hover:bg-muted focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring/50 focus-visible:ring-offset-2",r),...i,children:[c(),o&&jsx("span",{className:"text-foreground",children:s==="system"?n.system:s==="dark"?n.dark:n.light})]})}var Oe=["home","menu","close","search","settings","user","bell","arrowLeft","arrowRight","arrowUp","arrowDown","chevronLeft","chevronRight","chevronUp","chevronDown","add","edit","delete","remove","check","share","download","upload","save","copy","refresh","search","loader","success","error","warning","info","alertCircle","heart","star","bookmark","logIn","logOut","shield","key","lock","unlock","eye","eyeOff","users","userPlus","chart","barChart","pieChart","trendingUp","trendingDown","activity","database","zap","circle","dollarSign","dollar","currency","fileText","file","folder","book","bookOpen","image","video","camera","message","messageSquare","phone","mail","send","play","pause","mic","headphones","smile","frown","meh","laugh","angry","thumbsUp","thumbsDown","clock","timer","calendar","calendarDays","monitor","sun","moon","sparkle","sparkles","lightbulb","brain","globe","deviceMobile","smartphone","floppyDisk","externalLink","link","moreHorizontal","moreVertical","rocket","ticket","clipboard","wifi","wifiOff","cpu","mask"],Yr=d$1;function jr(r){return r in d$1||Oe.includes(r)}function Xr(r,e){let t=d$1[r];return t&&t[e]||null}function He(r,e){return `${r} dark:${e}`}function Ue(r,e,t="to-r"){return a(`bg-gradient-${t}`,`from-${r}`,`to-${e}`)}function Be(r,e){return `${r}/${e}`}function $e(r){return r==="gradient"||r==="solid"}function De(r){return r==="gradient"}function Ve(r,e,t,o,n){return a(r,e&&`sm:${e}`,t&&`md:${t}`,o&&`lg:${o}`,n&&`xl:${n}`)}function _e(r,e,t){return r?e:t||""}var F={subtle:"cubic-bezier(0.25, 0.1, 0.25, 1)",soft:"cubic-bezier(0.22, 1, 0.36, 1)",springy:"cubic-bezier(0.34, 1.56, 0.64, 1)",bouncy:"cubic-bezier(0.68, -0.55, 0.265, 1.55)",snappy:"cubic-bezier(0.19, 1, 0.22, 1)"},te={subtle:150,soft:250,springy:300,bouncy:400,snappy:180},X={preset:"springy",scale:.008,translateY:-0.5},Jr={button:{preset:"springy",duration:180,scale:.008,translateY:-0.5},card:{preset:"soft",duration:220,scale:.005,translateY:-1},menuItem:{preset:"subtle",duration:150,translateX:1},modal:{preset:"springy",duration:250,scale:.01},dropdown:{preset:"soft",duration:180,translateY:-2},tooltip:{preset:"snappy",duration:120,scale:.02},checkbox:{preset:"springy",duration:200,scale:.03},switch:{preset:"springy",duration:180}},Qr={"--hua-motion-duration":"180ms","--hua-motion-easing":F.springy,"--hua-motion-scale-hover":"1.008","--hua-motion-scale-active":"0.992","--hua-motion-translate-y":"-0.5px"};function to(r={}){let{preset:e=X.preset,duration:t=te[e]||200,delay:o=0,scale:n=X.scale,translateY:i=X.translateY,translateX:s=0,rotate:a=0,disabled:l=false,enableHover:f=true,enablePress:h=true,enableFocus:c=false}=r,[d,g]=useState({isHovered:false,isPressed:false,isFocused:false,isAnimating:false}),u=useRef(null),p=useCallback(m=>{u.current&&clearTimeout(u.current),m?(g(x=>({...x,isAnimating:true})),u.current=setTimeout(()=>{g(x=>({...x,isAnimating:false}));},t+o)):g(x=>({...x,isAnimating:false}));},[t,o]),k=useMemo(()=>({onMouseEnter:()=>{l||!f||(g(m=>({...m,isHovered:true})),p(true));},onMouseLeave:()=>{l||(g(m=>({...m,isHovered:false,isPressed:false})),p(true));},onMouseDown:()=>{l||!h||(g(m=>({...m,isPressed:true})),p(true));},onMouseUp:()=>{l||(g(m=>({...m,isPressed:false})),p(true));},onFocus:()=>{l||!c||(g(m=>({...m,isFocused:true})),p(true));},onBlur:()=>{l||(g(m=>({...m,isFocused:false})),p(true));}}),[l,f,h,c,p]),v=useMemo(()=>{if(l)return {transform:"none",transition:"none",willChange:"auto"};let m=[],x=F[e]||F.springy;return d.isHovered&&!d.isPressed&&(n&&m.push(`scale(${1+n})`),i&&m.push(`translateY(${i}px)`),s&&m.push(`translateX(${s}px)`),a&&m.push(`rotate(${a}deg)`)),d.isPressed&&(n&&m.push(`scale(${1-n*.5})`),i&&m.push(`translateY(${Math.abs(i)*.5}px)`)),d.isFocused&&!d.isHovered&&!d.isPressed&&n&&m.push(`scale(${1+n*.5})`),{transform:m.length>0?m.join(" "):"none",transition:`transform ${t}ms ${x} ${o}ms`,willChange:d.isAnimating?"transform":"auto"}},[d,l,e,t,o,n,i,s,a]),w=useMemo(()=>l?"":["transform-gpu"].join(" "),[l]);return useEffect(()=>()=>{u.current&&clearTimeout(u.current);},[]),{state:d,style:v,handlers:k,className:w}}function ro(r="springy",e={}){let{enableHover:t=true,enableActive:o=true,enableFocus:n=false}=e,i=["transform-gpu","transition-transform"],s={subtle:"duration-150",soft:"duration-250",springy:"duration-200",bouncy:"duration-300",snappy:"duration-150"}[r];return i.push(s),t&&i.push("hover:scale-[1.02]","hover:-translate-y-0.5"),o&&i.push("active:scale-[0.98]","active:translate-y-0"),n&&i.push("focus:scale-[1.01]"),i.join(" ")}function We(r={}){let{threshold:e=0,rootMargin:t="0px",triggerOnce:o=false,onChange:n}=r,i=useRef(null),[s,a]=useState(false),[l,f]=useState(null),h=useRef(false);return useEffect(()=>{let c=i.current;if(!c||o&&h.current)return;let d=new IntersectionObserver(([g])=>{let u=g.isIntersecting;o&&u&&(h.current=true),a(u),f(g),n==null||n(g);},{threshold:e,rootMargin:t});return d.observe(c),()=>{d.disconnect();}},[e,t,o,n]),{ref:i,inView:s,entry:l}}function Ye(r={}){let{target:e="page",throttle:t=16}=r,o=useRef(null),[n,i]=useState(0),[s,a]=useState(0),[l,f]=useState(0),[h,c]=useState(false),[d,g]=useState(null),u=useRef(0),p=useRef(null),k=useRef(0),v=useCallback(()=>{let w=Date.now();if(!(w-k.current<t)){if(k.current=w,e==="page"){let m=window.scrollY,x=document.documentElement.scrollHeight-window.innerHeight,I=x>0?Math.min(m/x,1):0;i(I),a(m),f(window.scrollX),g(m>u.current?"down":"up"),u.current=m;}else if(o.current){let m=o.current,x=m.scrollTop,I=m.scrollHeight-m.clientHeight,O=I>0?Math.min(x/I,1):0;i(O),a(x),f(m.scrollLeft),g(x>u.current?"down":"up"),u.current=x;}c(true),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>{c(false);},150);}},[e,t]);return useEffect(()=>{if(e==="page")return v(),window.addEventListener("scroll",v,{passive:true}),window.addEventListener("resize",v,{passive:true}),()=>{window.removeEventListener("scroll",v),window.removeEventListener("resize",v),p.current&&clearTimeout(p.current);};{let w=o.current;return w?(w.addEventListener("scroll",v,{passive:true}),()=>{w.removeEventListener("scroll",v),p.current&&clearTimeout(p.current);}):void 0}},[e,v]),{ref:o,progress:n,scrollY:s,scrollX:l,isScrolling:h,direction:d}}function je(r={}){let{type:e="page",touch:t=false,throttle:o=0}=r,n=useRef(null),[i,s]=useState({x:0,y:0,elementX:0,elementY:0,elementPositionX:0,elementPositionY:0,isInside:false,isMoving:false}),a=useRef(0),l=useRef(null),f=useCallback((h,c)=>{let d=Date.now();if(o>0&&d-a.current<o)return;a.current=d;let g=h,u=c,p=0,k=0,v=0,w=0,m=false;if(e==="page"&&(g=h+window.scrollX,u=c+window.scrollY),n.current){let x=n.current.getBoundingClientRect();p=h-x.left,k=c-x.top,v=p/x.width,w=k/x.height,m=h>=x.left&&h<=x.right&&c>=x.top&&c<=x.bottom;}s({x:g,y:u,elementX:p,elementY:k,elementPositionX:v,elementPositionY:w,isInside:m,isMoving:true}),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{s(x=>({...x,isMoving:false}));},150);},[e,o]);return useEffect(()=>{let h=d=>{f(d.clientX,d.clientY);},c=d=>{d.touches.length>0&&f(d.touches[0].clientX,d.touches[0].clientY);};return window.addEventListener("mousemove",h,{passive:true}),t&&window.addEventListener("touchmove",c,{passive:true}),()=>{window.removeEventListener("mousemove",h),t&&window.removeEventListener("touchmove",c),l.current&&clearTimeout(l.current);}},[f,t]),{ref:n,...i}}function Xe(){let[r,e]=useState(false);return useEffect(()=>{if(typeof window=="undefined")return;let t=window.matchMedia("(prefers-reduced-motion: reduce)");e(t.matches);let o=n=>{e(n.matches);};return t.addEventListener("change",o),()=>{t.removeEventListener("change",o);}},[]),r}function Je(r={}){let{throttle:e=100,mobileBreakpoint:t=768,tabletBreakpoint:o=1024}=r,[n,i]=useState({width:typeof window!="undefined"?window.innerWidth:0,height:typeof window!="undefined"?window.innerHeight:0,isMobile:false,isTablet:false,isDesktop:true}),s=useCallback(()=>{let a=window.innerWidth,l=window.innerHeight;i({width:a,height:l,isMobile:a<t,isTablet:a>=t&&a<o,isDesktop:a>=o});},[t,o]);return useEffect(()=>{if(typeof window=="undefined")return;s();let a,l=()=>{clearTimeout(a),a=setTimeout(s,e);};return window.addEventListener("resize",l,{passive:true}),()=>{window.removeEventListener("resize",l),clearTimeout(a);}},[s,e]),n}export{fe as Action,Ur as ActionToolbar,Jr as COMPONENT_MOTION_DEFAULTS,Qr as CSS_MOTION_VARS,te as DURATIONS,Ar as Divider,F as EASING_FUNCTIONS,ge as Grid,fr as Link,ye as Panel,Ee as ScrollArea,$r as ScrollToTop,be as Stack,Fr as ThemeProvider,Wr as ThemeToggle,Pe as Toggle,_e as conditionalClass,Ue as createGradient,Xr as getIconNameForProvider,ro as getMicroMotionClasses,Oe as iconNames,Yr as iconProviderMapping,De as isGradientVariant,$e as isTextWhite,jr as isValidIconName,Ve as responsive,We as useInView,to as useMicroMotion,je as useMouse,Xe as useReducedMotion,Ye as useScrollProgress,ee as useTheme,Je as useWindowSize,He as withDarkMode,Be as withOpacity};//# sourceMappingURL=index.mjs.map
|
|
36
|
+
`,document.head.appendChild(Q);}P.style.position="relative",P.appendChild(L),setTimeout(()=>{L.remove();},500);}}},[a,s,i,n,v,c]),u=U.useMemo(()=>({"--action-opacity":String(l),"--action-blur":`${f}px`,"--action-glow-size":`${h}px`,"--action-glow-color":c}),[l,f,h,c]),x=U.useMemo(()=>b("hua-action relative inline-flex items-center rounded-xl px-4 py-2 font-medium","focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/60",d$1&&"cursor-wait opacity-80",g&&"justify-center",r),[r,d$1,g]);if("href"in p&&p.href){let{onClick:T,href:H,...P}=p;return jsx(d,{ref:k,href:H,className:x,style:u,onClick:S=>{if(m||d$1){S.preventDefault(),S.stopPropagation();return}w(S),T==null||T(S);},"aria-busy":d$1||void 0,"aria-label":g?P["aria-label"]:void 0,"data-action":t,"data-feedback":o,"data-reduced-motion":v?"true":"false",disabled:m,...P,children:e})}let{onClick:I,...O}=p;return jsx(d,{ref:k,className:x,style:u,onClick:T=>{m||d$1||(w(T),I==null||I(T));},disabled:m,"aria-busy":d$1||void 0,"aria-label":g?O["aria-label"]:void 0,"data-action":t,"data-feedback":o,"data-reduced-motion":v?"true":"false",...O,children:e})});fe.displayName="Action";var gr=cva("transition-colors duration-200",{variants:{variant:{default:"text-foreground hover:text-muted-foreground",primary:"text-primary hover:text-primary/80",secondary:"text-muted-foreground hover:text-foreground",ghost:"text-muted-foreground hover:text-foreground",underline:"text-primary hover:text-primary/80 underline hover:no-underline"},size:{sm:"text-sm",md:"text-base",lg:"text-lg"}},defaultVariants:{variant:"default",size:"md"}});function br({href:r,children:e,className:t,variant:o="default",size:n="md",external:i=false,onClick:s}){return jsx("a",{href:r,className:b(gr({variant:o,size:n}),t),target:i?"_blank":void 0,rel:i?"noopener noreferrer":void 0,onClick:s,children:e})}var yr=cva("grid",{variants:{gap:{none:"gap-0",sm:"gap-4",md:"gap-6",lg:"gap-8",xl:"gap-12"}},defaultVariants:{gap:"md"}}),wr={1:"grid-cols-1",2:"grid-cols-1 sm:grid-cols-2",3:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-3",4:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-4",5:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-5",6:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-6",7:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-7",8:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-8",9:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-9",10:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-10",11:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-11",12:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-12"},Tr={none:"gap-x-0",sm:"gap-x-4",md:"gap-x-6",lg:"gap-x-8",xl:"gap-x-12"},Mr={none:"gap-y-0",sm:"gap-y-4",md:"gap-y-6",lg:"gap-y-8",xl:"gap-y-12"},ge=U.forwardRef(({className:r,cols:e=1,gap:t="md",gapX:o,gapY:n,responsive:i=true,...s},a)=>jsx("div",{ref:a,className:b(yr({gap:o?void 0:t}),i?wr[e]:`grid-cols-${e}`,o&&Tr[o],n&&Mr[n],r),...s}));ge.displayName="Grid";var Er=cva("",{variants:{direction:{vertical:"flex flex-col",horizontal:"flex flex-row"},align:{start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"}},defaultVariants:{direction:"vertical",align:"start",justify:"start"}}),Cr={vertical:{none:"",sm:"space-y-4",md:"space-y-6",lg:"space-y-8",xl:"space-y-12"},horizontal:{none:"",sm:"space-x-4",md:"space-x-6",lg:"space-x-8",xl:"space-x-12"}},be=U.forwardRef(({className:r,direction:e="vertical",spacing:t="md",align:o="start",justify:n="start",wrap:i=false,...s},a)=>jsx("div",{ref:a,className:b(Er({direction:e,align:o,justify:n}),Cr[e][t],i&&"flex-wrap",r),...s}));be.displayName="Stack";var Rr={horizontal:"w-full",vertical:"h-full"},Ir={horizontal:{none:"",sm:"my-4",md:"my-6",lg:"my-8",xl:"my-12"},vertical:{none:"",sm:"mx-4",md:"mx-6",lg:"mx-8",xl:"mx-12"}};function Ar(r,e,t){return e==="dashed"||e==="dotted"?{horizontal:{sm:"border-t",md:"border-t-2",lg:"border-t-4"},vertical:{sm:"border-l",md:"border-l-2",lg:"border-l-4"}}[r][t]:{horizontal:{sm:"h-px",md:"h-0.5",lg:"h-1"},vertical:{sm:"w-px",md:"w-0.5",lg:"w-1"}}[r][t]}function he(r,e){switch(e){case "dashed":return "border-dashed";case "dotted":return "border-dotted";case "gradient":return r==="horizontal"?"bg-gradient-to-r from-transparent via-border to-transparent":"bg-gradient-to-b from-transparent via-border to-transparent";case "glass":return r==="horizontal"?"bg-gradient-to-r from-transparent via-white/30 to-transparent":"bg-gradient-to-b from-transparent via-white/30 to-transparent";default:return ""}}function Lr(r,e){return r==="dashed"||r==="dotted"?{default:"border-border",muted:"border-muted",primary:"border-primary/30",secondary:"border-secondary"}[e]:{default:"bg-border",muted:"bg-muted",primary:"bg-primary/30",secondary:"bg-secondary"}[e]}var ve=U.forwardRef(({className:r,orientation:e="horizontal",variant:t="solid",size:o="md",spacing:n="md",color:i="default",...s},a)=>jsx("div",{ref:a,className:b("flex-shrink-0",Rr[e],Ar(e,t,o),t==="gradient"?he(e,t):Lr(t,i),t!=="gradient"&&he(e,t),Ir[e][n],r),...s}));ve.displayName="Divider";var zr=U.memo(ve);var Ur=cva("transition-all duration-300",{variants:{style:{default:"bg-card text-card-foreground border border-border",solid:"bg-card text-card-foreground border border-border",glass:"bg-white/60 dark:bg-white/10 backdrop-blur-md border border-border/50 dark:border-white/20",outline:"bg-transparent border border-border",elevated:"bg-card text-card-foreground shadow-lg border border-border",neon:"bg-muted/50 dark:bg-background border border-cyan-300/30 dark:border-cyan-400/30 shadow-lg shadow-cyan-200/20 dark:shadow-cyan-400/20",holographic:"bg-gradient-to-br from-white/20 via-purple-500/20 to-cyan-500/20 backdrop-blur-sm border border-white/30",cyberpunk:"bg-card dark:bg-background border-2 border-pink-400 dark:border-pink-500 shadow-lg shadow-pink-300/30 dark:shadow-pink-500/30",minimal:"bg-card dark:bg-background border border-border shadow-sm",luxury:"bg-gradient-to-br from-amber-50 to-yellow-100 dark:from-amber-950 dark:to-yellow-950 border border-amber-200 dark:border-amber-800 shadow-xl"},effect:{none:"",glow:"shadow-2xl shadow-primary/20 dark:shadow-primary/20",shadow:"shadow-xl",gradient:"bg-gradient-to-r from-primary/10 via-purple-500/10 to-cyan-500/10",animated:"animate-pulse"},padding:{none:"p-0",small:"p-3",sm:"p-3",medium:"p-6",md:"p-6",large:"p-8",lg:"p-8",xl:"p-12",custom:""},rounded:{none:"rounded-none",sm:"rounded-sm",md:"rounded-md",lg:"rounded-lg",xl:"rounded-xl",full:"rounded-full",custom:""}},defaultVariants:{style:"default",effect:"none",padding:"md",rounded:"lg"}}),ye=U.forwardRef(({className:r,style:e="default",effect:t="none",transparency:o=1,blurIntensity:n=0,borderOpacity:i=1,shadowOpacity:s=1,glowIntensity:a$1=0,glowColor:l="blue",particleEffect:f=false,hoverEffect:h=false,animationEffect:c=false,padding:d="md",customPadding:g,rounded:m="lg",customRounded:p,background:k="solid",gradientColors:v=["#3B82F6","#8B5CF6"],patternType:w="dots",backgroundImage:u,backgroundVideo:x,interactive:I=false,hoverScale:O=1.05,hoverRotate:W=0,hoverGlow:T=false,children:H,...P},M)=>{let S=U.useMemo(()=>{switch(w){case "dots":return "radial-gradient(circle, #000 1px, transparent 1px)";case "lines":return "linear-gradient(45deg, #000 1px, transparent 1px)";case "grid":return "linear-gradient(#000 1px, transparent 1px), linear-gradient(90deg, #000 1px, transparent 1px)";case "waves":return "repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(0,0,0,0.1) 10px, rgba(0,0,0,0.1) 20px)";default:return ""}},[w]),A=U.useMemo(()=>{let y={opacity:o};switch(n>0&&(y.backdropFilter=`blur(${n}px)`),i<1&&(y.borderColor=`rgba(0, 0, 0, ${i})`),s<1&&(y.boxShadow=`0 4px 6px -1px rgba(0, 0, 0, ${s*.1})`),a$1>0&&(y.boxShadow=`${y.boxShadow||""}, 0 0 ${a$1*10}px ${l}`),k){case "gradient":y.background=`linear-gradient(135deg, ${v.join(", ")})`;break;case "pattern":y.backgroundImage=S;break;case "image":u&&(y.backgroundImage=`url(${u})`,y.backgroundSize="cover",y.backgroundPosition="center");break;}return y},[o,n,i,s,a$1,l,k,v,S,u]),E=U.useMemo(()=>{if(!I)return "";let y=[];return O!==1&&y.push(`hover:scale-${O}`),W!==0&&y.push(`hover:rotate-${W}`),T&&y.push("hover:shadow-2xl hover:shadow-cyan-500/30"),y.join(" ")},[I,O,W,T]),L=U.useMemo(()=>b("panel-component",`panel-${e}`,`panel-effect-${t}`,Ur({style:e,effect:t,padding:g?"custom":d,rounded:p?"custom":m}),g,p,E,r),[e,t,d,g,m,p,E,r]);return jsxs("div",{className:"relative",children:[k==="video"&&x&&jsx("video",{className:"absolute inset-0 w-full h-full object-cover rounded-lg",autoPlay:true,muted:true,loop:true,playsInline:true,children:jsx("source",{src:x,type:"video/mp4"})}),f&&jsx("div",{className:"absolute inset-0 pointer-events-none"}),jsx(a,{ref:M,className:L,style:A,...P,children:H}),c&&jsx("div",{className:"absolute inset-0 pointer-events-none"})]})});ye.displayName="Panel";var Me=U.forwardRef(({isSelectMode:r=false,totalCount:e=0,selectedCount:t=0,actions:o=[],selectModeActions:n=[],onToggleSelectMode:i,onToggleSelectAll:s,onCancelSelect:a,loading:l$1=false,className:f,...h},c)=>{let d$1=useCallback(m=>{switch(m){case "red":return "bg-red-100 dark:bg-red-900 text-red-700 dark:text-red-300";case "blue":return "bg-indigo-100 dark:bg-indigo-900 text-indigo-700 dark:text-indigo-300";case "green":return "bg-green-100 dark:bg-green-900 text-green-700 dark:text-green-300";default:return "bg-muted text-muted-foreground"}},[]),g=useCallback((m,p)=>jsxs(d,{variant:m.variant||"outline",size:"sm",onClick:m.onClick,disabled:m.disabled||l$1,className:b("flex-1 sm:flex-initial",m.className),children:[m.icon&&jsx(l,{name:m.icon,className:"h-4 w-4 sm:h-3.5 sm:w-3.5 mr-1 sm:mr-1.5"}),jsx("span",{className:"hidden sm:inline",children:m.label}),jsx("span",{className:"sm:hidden",children:m.labelMobile||m.label}),m.badge&&m.badge.count>0&&jsx("span",{className:b("ml-1.5",d$1(m.badge.color),"px-1.5 py-0.5 rounded-full text-xs font-semibold"),children:m.badge.count})]},p),[d$1,l$1]);return jsx("div",{ref:c,className:b("mb-4 bg-background rounded-lg shadow-sm border border-border p-3 sm:p-4",f),...h,children:r?jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[s&&jsxs(d,{variant:"outline",size:"sm",onClick:s,className:"flex-1 sm:flex-initial min-w-[100px]",children:[jsx(l,{name:t===e?"square":"check",className:"h-4 w-4 sm:h-3.5 sm:w-3.5 mr-1 sm:mr-1.5"}),jsx("span",{className:"hidden sm:inline",children:t===e?"\uC804\uCCB4 \uD574\uC81C":"\uC804\uCCB4 \uC120\uD0DD"}),jsx("span",{className:"sm:hidden",children:t===e?"\uD574\uC81C":"\uC804\uCCB4"})]}),n.map((m,p)=>jsx("div",{className:b("flex-1 sm:flex-initial min-w-[100px]",m.className),children:g(m,`select-${p}`)},`select-action-${p}`)),a&&jsx(d,{variant:"outline",size:"sm",onClick:a,className:"flex-1 sm:flex-initial min-w-[80px]",children:"\uCDE8\uC18C"})]}):jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[i&&jsxs(d,{variant:"outline",size:"sm",onClick:i,disabled:e===0,className:"flex-1 sm:flex-initial min-w-[80px] sm:min-w-[auto] px-2 sm:px-3",title:e===0?"\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4":"\uC5EC\uB7EC \uD56D\uBAA9 \uC120\uD0DD",children:[jsx(l,{name:"check",className:"h-4 w-4 sm:h-3.5 sm:w-3.5"}),jsx("span",{className:"hidden sm:inline ml-1.5 sm:ml-2",children:"\uC120\uD0DD"})]}),o.map((m,p)=>jsx("div",{className:b("flex-1 sm:flex-initial min-w-[100px]",m.className),children:g(m,`action-${p}`)},`action-${p}`))]})})});Me.displayName="ActionToolbar";var $r=U.memo(Me);var Pe=U.forwardRef(({className:r,variant:e="default",size:t="md",pressed:o,onPressedChange:n,label:i,description:s,icon:a,iconPosition:l="left",onClick:f,...h},c)=>{let[d,g]=U.useState(false),m=o!==void 0,p=m?o:d,k=u=>{m||g(!p),n==null||n(!p),f==null||f(u);},v={sm:"h-7 px-3 text-sm",md:"h-9 px-4 text-base",lg:"h-11 px-5 text-lg"},w={default:p?"bg-primary text-primary-foreground hover:bg-primary/80":"bg-muted text-foreground hover:bg-muted/80",outline:p?"border-2 border-primary bg-primary/10 text-primary hover:bg-primary/15":"border-2 border-border bg-transparent text-foreground hover:bg-muted",filled:p?"bg-primary text-primary-foreground hover:bg-primary/80":"bg-muted/50 text-foreground hover:bg-muted",ghost:p?"bg-primary/10 text-primary hover:bg-primary/15":"bg-transparent text-foreground hover:bg-muted",glass:p?"bg-white/20 backdrop-blur-sm border border-white/30 text-white hover:bg-white/30 dark:bg-primary/20 dark:border-primary/50 dark:hover:bg-primary/30":"bg-white/10 backdrop-blur-sm border border-white/20 text-white hover:bg-white/20 dark:bg-muted/10 dark:border-border/50 dark:text-foreground dark:hover:bg-muted/20"};return jsxs("div",{className:"flex items-start space-x-3",children:[jsxs("button",{type:"button",ref:c,className:b("inline-flex items-center justify-center gap-2 rounded-md font-medium transition-all duration-200","focus:outline-none focus:ring-1 focus:ring-ring focus:ring-offset-2","disabled:cursor-not-allowed disabled:opacity-50",v[t],w[e],r),onClick:k,"aria-pressed":p,...h,children:[a&&l==="left"&&jsx("span",{className:"flex-shrink-0",children:a}),i&&jsx("span",{children:i}),a&&l==="right"&&jsx("span",{className:"flex-shrink-0",children:a})]}),s&&jsx("div",{className:"flex flex-col",children:jsx("p",{className:"text-sm text-muted-foreground",children:s})})]})});Pe.displayName="Toggle";var Ee=U.forwardRef(({children:r,className:e,orientation:t="vertical",scrollHideDelay:o=600,type:n="hover",...i},s)=>{let[a,l]=U.useState(false),f=U.useRef(void 0),h=()=>{(n==="hover"||n==="always")&&l(true);},c=()=>{n==="hover"&&(f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{l(false);},o));};return U.useEffect(()=>{n==="always"&&l(true);},[n]),U.useEffect(()=>()=>{f.current&&clearTimeout(f.current);},[]),jsx("div",{ref:s,className:b("relative overflow-auto scrollbar-thin",t==="vertical"&&"overflow-y-auto overflow-x-hidden",t==="horizontal"&&"overflow-x-auto overflow-y-hidden",t==="both"&&"overflow-auto",a?"scrollbar-visible":"scrollbar-hidden",e),onMouseEnter:h,onMouseLeave:c,...i,children:r})});Ee.displayName="ScrollArea";var Dr=U.forwardRef(({orientation:r="vertical",className:e,...t},o)=>jsx("div",{ref:o,className:b("flex touch-none select-none transition-colors duration-150 ease-out",r==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",r==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",e),...t}));Dr.displayName="ScrollBar";function Ie(r={}){let{threshold:e=400,showOnMount:t=false,smooth:o=true}=r,[n,i]=useState(t),[s,a]=useState(false);return useEffect(()=>{a(true);},[]),useEffect(()=>{if(!s)return;let f=()=>{typeof window!="undefined"&&i(window.pageYOffset>e);};return f(),window.addEventListener("scroll",f,{passive:true}),window.addEventListener("resize",f,{passive:true}),()=>{window.removeEventListener("scroll",f),window.removeEventListener("resize",f);}},[e,s]),{isVisible:n,scrollToTop:()=>{typeof window!="undefined"&&(o?window.scrollTo({top:0,behavior:"smooth"}):window.scrollTo(0,0));},mounted:s}}var Vr=({className:r,threshold:e=400,smooth:t=true,icon:o="arrowUp",size:n="md",variant:i="default",showOnMount:s=false,...a})=>{let{isVisible:l$1,scrollToTop:f}=Ie({threshold:e,showOnMount:s,smooth:t}),c={sm:"w-8 h-8 sm:w-10 sm:h-10",md:"w-10 h-10 sm:w-12 sm:h-12",lg:"w-12 h-12 sm:w-14 sm:h-14"},d={default:"bg-white/20 backdrop-blur-md border border-white/30 text-white hover:bg-white/30 dark:bg-muted/20 dark:border-border/50 dark:text-foreground dark:hover:bg-muted/30",primary:"bg-primary/70 backdrop-blur-md border border-primary/40 text-white hover:bg-primary/80 transition-all duration-300 dark:bg-primary/70 dark:border-primary/40 dark:hover:bg-primary/80",secondary:"bg-muted/80 backdrop-blur-md border border-border text-foreground hover:bg-muted/90 dark:bg-muted/50 dark:border-border dark:text-foreground dark:hover:bg-muted/60",outline:"border border-white/40 bg-white/15 backdrop-blur-md text-white hover:bg-white/25 dark:border-border/50 dark:bg-muted/15 dark:text-foreground dark:hover:bg-muted/25",ghost:"bg-transparent hover:bg-white/15 backdrop-blur-md text-white dark:text-foreground dark:hover:bg-muted/25"};return jsx("button",{onClick:f,className:b("fixed z-[9999] rounded-full transition-all duration-500 ease-in-out","flex items-center justify-center","focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-1 focus-visible:ring-ring/50","transform hover:scale-105 active:scale-95",l$1?"opacity-100 translate-y-0 pointer-events-auto":"opacity-0 translate-y-4 pointer-events-none",r,c[n],d[i]),"aria-label":"Scroll to top",...a,children:jsx(l,{name:o,className:"w-5 h-5"})})};var Gr={theme:"system",setTheme:()=>null,resolvedTheme:"light",toggleTheme:()=>null},ze=createContext(Gr);function Wr({children:r,defaultTheme:e="light",storageKey:t="hua-ui-theme",enableSystem:o=true,enableTransition:n=true,...i}){let[s,a]=useState(e),[l,f]=useState("light");useEffect(()=>{if(typeof window!="undefined"){let c=localStorage.getItem(t);c&&a(c);}},[t]),useEffect(()=>{let c=window.document.documentElement;if(c.classList.remove("light","dark"),s==="system"&&o){let d=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";c.classList.add(d),f(d);}else c.classList.add(s),f(s);n&&c.classList.add("transition-colors","duration-300");},[s,o,n]),useEffect(()=>{if(s==="system"&&o){let c=window.matchMedia("(prefers-color-scheme: dark)"),d=()=>{let g=c.matches?"dark":"light";f(g),document.documentElement.classList.remove("light","dark"),document.documentElement.classList.add(g);};return c.addEventListener("change",d),()=>c.removeEventListener("change",d)}},[s,o]);let h={theme:s,setTheme:c=>{typeof window!="undefined"&&localStorage.setItem(t,c),a(c);},resolvedTheme:l,toggleTheme:()=>{let c=l==="light"?"dark":"light";typeof window!="undefined"&&localStorage.setItem(t,c),a(c);}};return jsx(ze.Provider,{...i,value:h,children:r})}var ee=()=>{let r=useContext(ze);if(r===void 0)throw new Error("useTheme must be used within a ThemeProvider");return r};function jr({className:r,size:e="md",variant:t="button",showLabel:o=false,label:n={light:"\uB77C\uC774\uD2B8",dark:"\uB2E4\uD06C",system:"\uC2DC\uC2A4\uD15C"},...i}){let{theme:s,setTheme:a,resolvedTheme:l$1}=ee(),f={sm:"h-10 w-10",md:"h-12 w-12",lg:"h-14 w-14"},h={sm:16,md:20,lg:24},c=()=>s==="system"?jsx(l,{name:"monitor",size:h[e]}):l$1==="dark"?jsx(l,{name:"moon",size:h[e]}):jsx(l,{name:"sun",size:h[e],className:"text-amber-600"}),d=()=>{s==="system"?a("light"):s==="light"?a("dark"):s==="dark"&&a("light");};return t==="icon"?jsx("button",{onClick:d,className:b("inline-flex items-center justify-center rounded-lg transition-all duration-300 hover:bg-muted focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring/50 focus-visible:ring-offset-2",f[e],r),...i,children:jsxs("div",{className:"relative flex items-center justify-center w-full h-full",children:[jsx("div",{className:b("absolute inset-0 flex items-center justify-center transition-all duration-300",l$1==="dark"?"rotate-0 opacity-100":"rotate-90 opacity-0"),children:jsx(l,{name:"moon",size:h[e],className:"text-indigo-500"})}),jsx("div",{className:b("absolute inset-0 flex items-center justify-center transition-all duration-300",l$1==="dark"?"rotate-90 opacity-0":"rotate-0 opacity-100"),children:jsx(l,{name:"sun",size:h[e],className:"text-amber-600 dark:text-yellow-500"})})]})}):t==="switch"?jsxs("button",{onClick:d,className:b("relative inline-flex h-6 w-11 items-center rounded-full transition-colors duration-300 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring/50 focus-visible:ring-offset-2",l$1==="dark"?"bg-primary":"bg-muted",r),...i,children:[jsx("span",{className:b("inline-block h-4 w-4 transform rounded-full bg-white transition-transform duration-300 shadow-lg",l$1==="dark"?"translate-x-6":"translate-x-1")}),jsxs("div",{className:"absolute inset-0 flex items-center justify-between px-1.5",children:[jsx(l,{name:"sun",size:12,className:"text-amber-600 dark:text-yellow-500 opacity-0"}),jsx(l,{name:"moon",size:12,className:"text-indigo-500 opacity-0"})]})]}):jsxs("button",{onClick:d,className:b("inline-flex items-center gap-3 rounded-lg px-4 py-3 text-sm font-medium transition-all duration-300 hover:bg-muted focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring/50 focus-visible:ring-offset-2",r),...i,children:[c(),o&&jsx("span",{className:"text-foreground",children:s==="system"?n.system:s==="dark"?n.dark:n.light})]})}var Oe=["home","menu","close","search","settings","user","bell","arrowLeft","arrowRight","arrowUp","arrowDown","chevronLeft","chevronRight","chevronUp","chevronDown","add","edit","delete","remove","check","share","download","upload","save","copy","refresh","search","loader","success","error","warning","info","alertCircle","heart","star","bookmark","logIn","logOut","shield","key","lock","unlock","eye","eyeOff","users","userPlus","chart","barChart","pieChart","trendingUp","trendingDown","activity","database","zap","circle","dollarSign","dollar","currency","fileText","file","folder","book","bookOpen","image","video","camera","message","messageSquare","phone","mail","send","play","pause","mic","headphones","smile","frown","meh","laugh","angry","thumbsUp","thumbsDown","clock","timer","calendar","calendarDays","monitor","sun","moon","sparkle","sparkles","lightbulb","brain","globe","deviceMobile","smartphone","floppyDisk","externalLink","link","moreHorizontal","moreVertical","rocket","ticket","clipboard","wifi","wifiOff","cpu","mask"],Xr=d$1;function Jr(r){return r in d$1||Oe.includes(r)}function Qr(r,e){let t=d$1[r];return t&&t[e]||null}function He(r,e){return `${r} dark:${e}`}function Ue(r,e,t="to-r"){return b(`bg-gradient-${t}`,`from-${r}`,`to-${e}`)}function Be(r,e){return `${r}/${e}`}function $e(r){return r==="gradient"||r==="solid"}function De(r){return r==="gradient"}function Ve(r,e,t,o,n){return b(r,e&&`sm:${e}`,t&&`md:${t}`,o&&`lg:${o}`,n&&`xl:${n}`)}function _e(r,e,t){return r?e:t||""}var F={subtle:"cubic-bezier(0.25, 0.1, 0.25, 1)",soft:"cubic-bezier(0.22, 1, 0.36, 1)",springy:"cubic-bezier(0.34, 1.56, 0.64, 1)",bouncy:"cubic-bezier(0.68, -0.55, 0.265, 1.55)",snappy:"cubic-bezier(0.19, 1, 0.22, 1)"},te={subtle:150,soft:250,springy:300,bouncy:400,snappy:180},X={preset:"springy",scale:.008,translateY:-0.5},Kr={button:{preset:"springy",duration:180,scale:.008,translateY:-0.5},card:{preset:"soft",duration:220,scale:.005,translateY:-1},menuItem:{preset:"subtle",duration:150,translateX:1},modal:{preset:"springy",duration:250,scale:.01},dropdown:{preset:"soft",duration:180,translateY:-2},tooltip:{preset:"snappy",duration:120,scale:.02},checkbox:{preset:"springy",duration:200,scale:.03},switch:{preset:"springy",duration:180}},qr={"--hua-motion-duration":"180ms","--hua-motion-easing":F.springy,"--hua-motion-scale-hover":"1.008","--hua-motion-scale-active":"0.992","--hua-motion-translate-y":"-0.5px"};function oo(r={}){let{preset:e=X.preset,duration:t=te[e]||200,delay:o=0,scale:n=X.scale,translateY:i=X.translateY,translateX:s=0,rotate:a=0,disabled:l=false,enableHover:f=true,enablePress:h=true,enableFocus:c=false}=r,[d,g]=useState({isHovered:false,isPressed:false,isFocused:false,isAnimating:false}),m=useRef(null),p=useCallback(u=>{m.current&&clearTimeout(m.current),u?(g(x=>({...x,isAnimating:true})),m.current=setTimeout(()=>{g(x=>({...x,isAnimating:false}));},t+o)):g(x=>({...x,isAnimating:false}));},[t,o]),k=useMemo(()=>({onMouseEnter:()=>{l||!f||(g(u=>({...u,isHovered:true})),p(true));},onMouseLeave:()=>{l||(g(u=>({...u,isHovered:false,isPressed:false})),p(true));},onMouseDown:()=>{l||!h||(g(u=>({...u,isPressed:true})),p(true));},onMouseUp:()=>{l||(g(u=>({...u,isPressed:false})),p(true));},onFocus:()=>{l||!c||(g(u=>({...u,isFocused:true})),p(true));},onBlur:()=>{l||(g(u=>({...u,isFocused:false})),p(true));}}),[l,f,h,c,p]),v=useMemo(()=>{if(l)return {transform:"none",transition:"none",willChange:"auto"};let u=[],x=F[e]||F.springy;return d.isHovered&&!d.isPressed&&(n&&u.push(`scale(${1+n})`),i&&u.push(`translateY(${i}px)`),s&&u.push(`translateX(${s}px)`),a&&u.push(`rotate(${a}deg)`)),d.isPressed&&(n&&u.push(`scale(${1-n*.5})`),i&&u.push(`translateY(${Math.abs(i)*.5}px)`)),d.isFocused&&!d.isHovered&&!d.isPressed&&n&&u.push(`scale(${1+n*.5})`),{transform:u.length>0?u.join(" "):"none",transition:`transform ${t}ms ${x} ${o}ms`,willChange:d.isAnimating?"transform":"auto"}},[d,l,e,t,o,n,i,s,a]),w=useMemo(()=>l?"":["transform-gpu"].join(" "),[l]);return useEffect(()=>()=>{m.current&&clearTimeout(m.current);},[]),{state:d,style:v,handlers:k,className:w}}function no(r="springy",e={}){let{enableHover:t=true,enableActive:o=true,enableFocus:n=false}=e,i=["transform-gpu","transition-transform"],s={subtle:"duration-150",soft:"duration-250",springy:"duration-200",bouncy:"duration-300",snappy:"duration-150"}[r];return i.push(s),t&&i.push("hover:scale-[1.02]","hover:-translate-y-0.5"),o&&i.push("active:scale-[0.98]","active:translate-y-0"),n&&i.push("focus:scale-[1.01]"),i.join(" ")}function We(r={}){let{threshold:e=0,rootMargin:t="0px",triggerOnce:o=false,onChange:n}=r,i=useRef(null),[s,a]=useState(false),[l,f]=useState(null),h=useRef(false);return useEffect(()=>{let c=i.current;if(!c||o&&h.current)return;let d=new IntersectionObserver(([g])=>{let m=g.isIntersecting;o&&m&&(h.current=true),a(m),f(g),n==null||n(g);},{threshold:e,rootMargin:t});return d.observe(c),()=>{d.disconnect();}},[e,t,o,n]),{ref:i,inView:s,entry:l}}function Ye(r={}){let{target:e="page",throttle:t=16}=r,o=useRef(null),[n,i]=useState(0),[s,a]=useState(0),[l,f]=useState(0),[h,c]=useState(false),[d,g]=useState(null),m=useRef(0),p=useRef(null),k=useRef(0),v=useCallback(()=>{let w=Date.now();if(!(w-k.current<t)){if(k.current=w,e==="page"){let u=window.scrollY,x=document.documentElement.scrollHeight-window.innerHeight,I=x>0?Math.min(u/x,1):0;i(I),a(u),f(window.scrollX),g(u>m.current?"down":"up"),m.current=u;}else if(o.current){let u=o.current,x=u.scrollTop,I=u.scrollHeight-u.clientHeight,O=I>0?Math.min(x/I,1):0;i(O),a(x),f(u.scrollLeft),g(x>m.current?"down":"up"),m.current=x;}c(true),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>{c(false);},150);}},[e,t]);return useEffect(()=>{if(e==="page")return v(),window.addEventListener("scroll",v,{passive:true}),window.addEventListener("resize",v,{passive:true}),()=>{window.removeEventListener("scroll",v),window.removeEventListener("resize",v),p.current&&clearTimeout(p.current);};{let w=o.current;return w?(w.addEventListener("scroll",v,{passive:true}),()=>{w.removeEventListener("scroll",v),p.current&&clearTimeout(p.current);}):void 0}},[e,v]),{ref:o,progress:n,scrollY:s,scrollX:l,isScrolling:h,direction:d}}function je(r={}){let{type:e="page",touch:t=false,throttle:o=0}=r,n=useRef(null),[i,s]=useState({x:0,y:0,elementX:0,elementY:0,elementPositionX:0,elementPositionY:0,isInside:false,isMoving:false}),a=useRef(0),l=useRef(null),f=useCallback((h,c)=>{let d=Date.now();if(o>0&&d-a.current<o)return;a.current=d;let g=h,m=c,p=0,k=0,v=0,w=0,u=false;if(e==="page"&&(g=h+window.scrollX,m=c+window.scrollY),n.current){let x=n.current.getBoundingClientRect();p=h-x.left,k=c-x.top,v=p/x.width,w=k/x.height,u=h>=x.left&&h<=x.right&&c>=x.top&&c<=x.bottom;}s({x:g,y:m,elementX:p,elementY:k,elementPositionX:v,elementPositionY:w,isInside:u,isMoving:true}),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{s(x=>({...x,isMoving:false}));},150);},[e,o]);return useEffect(()=>{let h=d=>{f(d.clientX,d.clientY);},c=d=>{d.touches.length>0&&f(d.touches[0].clientX,d.touches[0].clientY);};return window.addEventListener("mousemove",h,{passive:true}),t&&window.addEventListener("touchmove",c,{passive:true}),()=>{window.removeEventListener("mousemove",h),t&&window.removeEventListener("touchmove",c),l.current&&clearTimeout(l.current);}},[f,t]),{ref:n,...i}}function Xe(){let[r,e]=useState(false);return useEffect(()=>{if(typeof window=="undefined")return;let t=window.matchMedia("(prefers-reduced-motion: reduce)");e(t.matches);let o=n=>{e(n.matches);};return t.addEventListener("change",o),()=>{t.removeEventListener("change",o);}},[]),r}function Je(r={}){let{throttle:e=100,mobileBreakpoint:t=768,tabletBreakpoint:o=1024}=r,[n,i]=useState({width:typeof window!="undefined"?window.innerWidth:0,height:typeof window!="undefined"?window.innerHeight:0,isMobile:false,isTablet:false,isDesktop:true}),s=useCallback(()=>{let a=window.innerWidth,l=window.innerHeight;i({width:a,height:l,isMobile:a<t,isTablet:a>=t&&a<o,isDesktop:a>=o});},[t,o]);return useEffect(()=>{if(typeof window=="undefined")return;s();let a,l=()=>{clearTimeout(a),a=setTimeout(s,e);};return window.addEventListener("resize",l,{passive:true}),()=>{window.removeEventListener("resize",l),clearTimeout(a);}},[s,e]),n}export{fe as Action,$r as ActionToolbar,Kr as COMPONENT_MOTION_DEFAULTS,qr as CSS_MOTION_VARS,te as DURATIONS,zr as Divider,F as EASING_FUNCTIONS,ge as Grid,br as Link,ye as Panel,Ee as ScrollArea,Vr as ScrollToTop,be as Stack,Wr as ThemeProvider,jr as ThemeToggle,Pe as Toggle,_e as conditionalClass,Ue as createGradient,Qr as getIconNameForProvider,no as getMicroMotionClasses,Oe as iconNames,Xr as iconProviderMapping,De as isGradientVariant,$e as isTextWhite,Jr as isValidIconName,Ve as responsive,We as useInView,oo as useMicroMotion,je as useMouse,Xe as useReducedMotion,Ye as useScrollProgress,ee as useTheme,Je as useWindowSize,He as withDarkMode,Be as withOpacity};//# sourceMappingURL=index.mjs.map
|
|
37
37
|
//# sourceMappingURL=index.mjs.map
|