aliveicon 1.0.24 → 1.0.26

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.
Files changed (48) hide show
  1. package/dist/cjs/index.js +2950 -84
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/esm/index.js +2911 -85
  4. package/dist/esm/index.js.map +1 -1
  5. package/dist/types/icons/A-Arrow-Down.d.ts +2 -2
  6. package/dist/types/icons/A-Arrow-Up.d.ts +2 -2
  7. package/dist/types/icons/Align-Left.d.ts +15 -0
  8. package/dist/types/icons/Align-Right.d.ts +15 -0
  9. package/dist/types/icons/Align-Start-Horizontal.d.ts +15 -0
  10. package/dist/types/icons/Align-Start-Vertical.d.ts +15 -0
  11. package/dist/types/icons/Align-Vertical-Distribute-Center.d.ts +15 -0
  12. package/dist/types/icons/Align-Vertical-Distribute-End.d.ts +15 -0
  13. package/dist/types/icons/Align-Vertical-Distribute-Start.d.ts +15 -0
  14. package/dist/types/icons/Align-Vertical-Justify-Center.d.ts +15 -0
  15. package/dist/types/icons/Align-Vertical-Justify-End.d.ts +15 -0
  16. package/dist/types/icons/Align-Vertical-Justify-Start.d.ts +15 -0
  17. package/dist/types/icons/Align-Vertical-Space-Around.d.ts +15 -0
  18. package/dist/types/icons/Align-Vertical-Space-Between.d.ts +15 -0
  19. package/dist/types/icons/Ambulance.d.ts +15 -0
  20. package/dist/types/icons/Ampersand.d.ts +16 -0
  21. package/dist/types/icons/Ampersands.d.ts +15 -0
  22. package/dist/types/icons/Amphora.d.ts +15 -0
  23. package/dist/types/icons/Anchor.d.ts +15 -0
  24. package/dist/types/icons/Angry.d.ts +16 -0
  25. package/dist/types/icons/Annoyed.d.ts +17 -0
  26. package/dist/types/icons/Antenna.d.ts +16 -0
  27. package/dist/types/icons/Aperture.d.ts +15 -0
  28. package/dist/types/icons/App-Window-Mac.d.ts +15 -0
  29. package/dist/types/icons/App-Window.d.ts +15 -0
  30. package/dist/types/icons/Apple.d.ts +15 -0
  31. package/dist/types/icons/Archive-Restore.d.ts +15 -0
  32. package/dist/types/icons/Archive-X.d.ts +15 -0
  33. package/dist/types/icons/Archive.d.ts +15 -0
  34. package/dist/types/icons/Armchair.d.ts +15 -0
  35. package/dist/types/icons/Arrow-Big-Down-Dash.d.ts +15 -0
  36. package/dist/types/icons/Arrow-Big-Down.d.ts +15 -0
  37. package/dist/types/icons/Arrow-Big-Left-Dash.d.ts +15 -0
  38. package/dist/types/icons/Arrow-Big-Left.d.ts +15 -0
  39. package/dist/types/icons/Arrow-Big-Right-Dash.d.ts +15 -0
  40. package/dist/types/icons/Arrow-Big-Right.d.ts +15 -0
  41. package/dist/types/icons/Arrow-Big-Up-Dash.d.ts +15 -0
  42. package/dist/types/icons/Arrow-Big-Up.d.ts +15 -0
  43. package/dist/types/icons/Arrow-Down.d.ts +15 -0
  44. package/dist/types/icons/Arrow-Left.d.ts +15 -0
  45. package/dist/types/icons/Arrow-Right.d.ts +15 -0
  46. package/dist/types/icons/Arrow-Up.d.ts +15 -0
  47. package/dist/types/index.d.ts +42 -2
  48. package/package.json +1 -1
package/dist/esm/index.js CHANGED
@@ -2960,7 +2960,7 @@ const getDefaultConfig = () => {
2960
2960
  };
2961
2961
  const twMerge = /*#__PURE__*/createTailwindMerge(getDefaultConfig);
2962
2962
 
2963
- function cn$p(...inputs) {
2963
+ function cn$11(...inputs) {
2964
2964
  return twMerge(clsx(inputs));
2965
2965
  }
2966
2966
  const squareVariants$1 = {
@@ -2975,7 +2975,7 @@ const squareVariants$1 = {
2975
2975
  transition: { duration: 0.6, ease: 'easeInOut' },
2976
2976
  },
2977
2977
  };
2978
- const pathVariants$k = {
2978
+ const pathVariants$C = {
2979
2979
  normal: {
2980
2980
  opacity: 1,
2981
2981
  pathLength: 1,
@@ -3028,15 +3028,15 @@ function SquareActivity({ size = 28, className, style, autoAnimateOnLoad = false
3028
3028
  triggerAnimation();
3029
3029
  onClick?.(e);
3030
3030
  };
3031
- return (jsx("div", { className: cn$p('rounded-md', className), style: {
3031
+ return (jsx("div", { className: cn$11('rounded-md', className), style: {
3032
3032
  width: size,
3033
3033
  height: size,
3034
3034
  display: 'inline-block',
3035
3035
  ...style,
3036
- }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { width: "18", height: "18", x: "3", y: "3", rx: "2", variants: squareVariants$1, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M17 12h-2l-2 5-2-10-2 5H7", variants: pathVariants$k, animate: controls, initial: "normal", style: { strokeDasharray: 1 } })] }) }));
3036
+ }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { width: "18", height: "18", x: "3", y: "3", rx: "2", variants: squareVariants$1, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M17 12h-2l-2 5-2-10-2 5H7", variants: pathVariants$C, animate: controls, initial: "normal", style: { strokeDasharray: 1 } })] }) }));
3037
3037
  }
3038
3038
 
3039
- function cn$o(...inputs) {
3039
+ function cn$10(...inputs) {
3040
3040
  return twMerge(clsx(inputs));
3041
3041
  }
3042
3042
  const bounceVariant$1 = {
@@ -3057,7 +3057,7 @@ const bounceVariant$1 = {
3057
3057
  },
3058
3058
  },
3059
3059
  };
3060
- const lineVariants$1 = {
3060
+ const lineVariants$4 = {
3061
3061
  normal: {
3062
3062
  opacity: 1,
3063
3063
  pathLength: 1,
@@ -3092,7 +3092,7 @@ const bouncePathVariants$1 = {
3092
3092
  },
3093
3093
  }),
3094
3094
  };
3095
- function ArrowDown({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, isBounce = false, onMouseEnter, onMouseLeave, onClick, ...props }) {
3095
+ function AArrowDown({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, isBounce = false, onMouseEnter, onMouseLeave, onClick, ...props }) {
3096
3096
  const controls = useAnimation();
3097
3097
  const loopRef = useRef(loopOnHover);
3098
3098
  const triggerAnimation = useCallback(async () => {
@@ -3129,14 +3129,14 @@ function ArrowDown({ size = 28, className, style, autoAnimateOnLoad = false, hov
3129
3129
  "M18 7v9",
3130
3130
  "m14 12 4 4 4-4",
3131
3131
  ];
3132
- return (jsx("div", { className: cn$o('inline-block', className), style: {
3132
+ return (jsx("div", { className: cn$10('inline-block', className), style: {
3133
3133
  width: size,
3134
3134
  height: size,
3135
3135
  ...style,
3136
- }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsx(motion.svg, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", variants: isBounce ? bounceVariant$1 : undefined, animate: isBounce ? controls : undefined, initial: isBounce ? 'normal' : undefined, children: paths.map((d, i) => (jsx(motion.path, { d: d, variants: isBounce ? bouncePathVariants$1 : lineVariants$1, initial: isBounce ? 'hidden' : 'normal', animate: isBounce ? 'visible' : controls, custom: i }, i))) }) }));
3136
+ }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsx(motion.svg, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", variants: isBounce ? bounceVariant$1 : undefined, animate: isBounce ? controls : undefined, initial: isBounce ? 'normal' : undefined, children: paths.map((d, i) => (jsx(motion.path, { d: d, variants: isBounce ? bouncePathVariants$1 : lineVariants$4, initial: isBounce ? 'hidden' : 'normal', animate: isBounce ? 'visible' : controls, custom: i }, i))) }) }));
3137
3137
  }
3138
3138
 
3139
- function cn$n(...inputs) {
3139
+ function cn$$(...inputs) {
3140
3140
  return twMerge(clsx(inputs));
3141
3141
  }
3142
3142
  const bounceVariant = {
@@ -3157,7 +3157,7 @@ const bounceVariant = {
3157
3157
  },
3158
3158
  },
3159
3159
  };
3160
- const lineVariants = {
3160
+ const lineVariants$3 = {
3161
3161
  normal: {
3162
3162
  opacity: 1,
3163
3163
  pathLength: 1,
@@ -3192,7 +3192,7 @@ const bouncePathVariants = {
3192
3192
  },
3193
3193
  }),
3194
3194
  };
3195
- function ArrowUp({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, isBounce = false, onMouseEnter, onMouseLeave, onClick, ...props }) {
3195
+ function AArrowUp({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, isBounce = false, onMouseEnter, onMouseLeave, onClick, ...props }) {
3196
3196
  const controls = useAnimation();
3197
3197
  const loopRef = useRef(loopOnHover);
3198
3198
  const triggerAnimation = useCallback(async () => {
@@ -3229,17 +3229,17 @@ function ArrowUp({ size = 28, className, style, autoAnimateOnLoad = false, hover
3229
3229
  "M18 16V7", // arrow line, now reversed (was 7→16, now 16→7)
3230
3230
  "m22 12-4-4-4 4", // arrow head pointing upward
3231
3231
  ];
3232
- return (jsx("div", { className: cn$n('inline-block', className), style: {
3232
+ return (jsx("div", { className: cn$$('inline-block', className), style: {
3233
3233
  width: size,
3234
3234
  height: size,
3235
3235
  ...style,
3236
- }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsx(motion.svg, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", variants: isBounce ? bounceVariant : undefined, animate: isBounce ? controls : undefined, initial: isBounce ? 'normal' : undefined, children: paths.map((d, i) => (jsx(motion.path, { d: d, variants: isBounce ? bouncePathVariants : lineVariants, initial: isBounce ? 'hidden' : 'normal', animate: isBounce ? 'visible' : controls, custom: i }, i))) }) }));
3236
+ }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsx(motion.svg, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", variants: isBounce ? bounceVariant : undefined, animate: isBounce ? controls : undefined, initial: isBounce ? 'normal' : undefined, children: paths.map((d, i) => (jsx(motion.path, { d: d, variants: isBounce ? bouncePathVariants : lineVariants$3, initial: isBounce ? 'hidden' : 'normal', animate: isBounce ? 'visible' : controls, custom: i }, i))) }) }));
3237
3237
  }
3238
3238
 
3239
- function cn$m(...inputs) {
3239
+ function cn$_(...inputs) {
3240
3240
  return twMerge(clsx(inputs));
3241
3241
  }
3242
- const circleVariants = {
3242
+ const circleVariants$1 = {
3243
3243
  normal: {
3244
3244
  scale: 1,
3245
3245
  opacity: 1,
@@ -3255,7 +3255,7 @@ const circleVariants = {
3255
3255
  },
3256
3256
  },
3257
3257
  };
3258
- const pathVariants$j = {
3258
+ const pathVariants$B = {
3259
3259
  normal: {
3260
3260
  opacity: 1,
3261
3261
  pathLength: 1,
@@ -3307,18 +3307,18 @@ function AccessibilityActivity({ size = 28, className, style, autoAnimateOnLoad
3307
3307
  triggerAnimation();
3308
3308
  onClick?.(e);
3309
3309
  };
3310
- return (jsx("div", { className: cn$m('rounded-md', className), style: {
3310
+ return (jsx("div", { className: cn$_('rounded-md', className), style: {
3311
3311
  width: size,
3312
3312
  height: size,
3313
3313
  display: 'inline-block',
3314
3314
  ...style,
3315
- }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.circle, { cx: "16", cy: "4", r: "1", variants: circleVariants, animate: controls, initial: "normal" }), jsx(motion.path, { d: "m18 19 1-7-6 1", variants: pathVariants$j, animate: controls, initial: "normal", style: { strokeDasharray: 1 } }), jsx(motion.path, { d: "m5 8 3-3 5.5 3-2.36 3.5", variants: pathVariants$j, animate: controls, initial: "normal", style: { strokeDasharray: 1 } }), jsx(motion.path, { d: "M4.24 14.5a5 5 0 0 0 6.88 6", variants: pathVariants$j, animate: controls, initial: "normal", style: { strokeDasharray: 1 } }), jsx(motion.path, { d: "M13.76 17.5a5 5 0 0 0-6.88-6", variants: pathVariants$j, animate: controls, initial: "normal", style: { strokeDasharray: 1 } })] }) }));
3315
+ }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.circle, { cx: "16", cy: "4", r: "1", variants: circleVariants$1, animate: controls, initial: "normal" }), jsx(motion.path, { d: "m18 19 1-7-6 1", variants: pathVariants$B, animate: controls, initial: "normal", style: { strokeDasharray: 1 } }), jsx(motion.path, { d: "m5 8 3-3 5.5 3-2.36 3.5", variants: pathVariants$B, animate: controls, initial: "normal", style: { strokeDasharray: 1 } }), jsx(motion.path, { d: "M4.24 14.5a5 5 0 0 0 6.88 6", variants: pathVariants$B, animate: controls, initial: "normal", style: { strokeDasharray: 1 } }), jsx(motion.path, { d: "M13.76 17.5a5 5 0 0 0-6.88-6", variants: pathVariants$B, animate: controls, initial: "normal", style: { strokeDasharray: 1 } })] }) }));
3316
3316
  }
3317
3317
 
3318
- function cn$l(...inputs) {
3318
+ function cn$Z(...inputs) {
3319
3319
  return twMerge(clsx(inputs));
3320
3320
  }
3321
- const pathVariants$i = {
3321
+ const pathVariants$A = {
3322
3322
  normal: {
3323
3323
  opacity: 1,
3324
3324
  pathLength: 1,
@@ -3371,15 +3371,15 @@ function Activity({ size = 28, className, style, autoAnimateOnLoad = false, hove
3371
3371
  triggerAnimation();
3372
3372
  onClick?.(e);
3373
3373
  };
3374
- return (jsx("div", { className: cn$l('rounded-md', className), style: {
3374
+ return (jsx("div", { className: cn$Z('rounded-md', className), style: {
3375
3375
  width: size,
3376
3376
  height: size,
3377
3377
  display: 'inline-block',
3378
3378
  ...style,
3379
- }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsx("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: jsx(motion.path, { d: "M17 12h-2l-2 5-2-10-2 5H7", variants: pathVariants$i, animate: controls, initial: "normal", style: { strokeDasharray: 1 } }) }) }));
3379
+ }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsx("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: jsx(motion.path, { d: "M17 12h-2l-2 5-2-10-2 5H7", variants: pathVariants$A, animate: controls, initial: "normal", style: { strokeDasharray: 1 } }) }) }));
3380
3380
  }
3381
3381
 
3382
- function cn$k(...inputs) {
3382
+ function cn$Y(...inputs) {
3383
3383
  return twMerge(clsx(inputs));
3384
3384
  }
3385
3385
  const windVariants = {
@@ -3430,11 +3430,11 @@ const AirVent = forwardRef(({ onMouseEnter, onMouseLeave, className, size = 28,
3430
3430
  onMouseLeave?.(e);
3431
3431
  }
3432
3432
  }, [controls, onMouseLeave]);
3433
- return (jsx("div", { className: cn$k(className), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx("path", { d: "M6 12H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2" }), jsx(motion.path, { d: "M6 8h12", variants: windVariants, initial: "normal", animate: controls, custom: 0.1 }), jsx(motion.path, { d: "M18.3 17.7a2.5 2.5 0 0 1-3.16 3.83 2.53 2.53 0 0 1-1.14-2V12", variants: windVariants, initial: "normal", animate: controls, custom: 0 }), jsx(motion.path, { d: "M6.6 15.6A2 2 0 1 0 10 17v-5", variants: windVariants, initial: "normal", animate: controls, custom: 0.2 })] }) }));
3433
+ return (jsx("div", { className: cn$Y(className), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx("path", { d: "M6 12H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2" }), jsx(motion.path, { d: "M6 8h12", variants: windVariants, initial: "normal", animate: controls, custom: 0.1 }), jsx(motion.path, { d: "M18.3 17.7a2.5 2.5 0 0 1-3.16 3.83 2.53 2.53 0 0 1-1.14-2V12", variants: windVariants, initial: "normal", animate: controls, custom: 0 }), jsx(motion.path, { d: "M6.6 15.6A2 2 0 1 0 10 17v-5", variants: windVariants, initial: "normal", animate: controls, custom: 0.2 })] }) }));
3434
3434
  });
3435
3435
  AirVent.displayName = 'AirVent';
3436
3436
 
3437
- function cn$j(...inputs) {
3437
+ function cn$X(...inputs) {
3438
3438
  return twMerge(clsx(inputs));
3439
3439
  }
3440
3440
  const screenVariants = {
@@ -3502,7 +3502,7 @@ function Airplay({ size = 28, className, style, autoAnimateOnLoad = false, hover
3502
3502
  triggerAnimation();
3503
3503
  onClick?.(e);
3504
3504
  };
3505
- return (jsx("div", { className: cn$j(className), style: {
3505
+ return (jsx("div", { className: cn$X(className), style: {
3506
3506
  width: size,
3507
3507
  height: size,
3508
3508
  display: 'inline-block',
@@ -3510,7 +3510,7 @@ function Airplay({ size = 28, className, style, autoAnimateOnLoad = false, hover
3510
3510
  }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M5 17H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-1", variants: screenVariants, initial: "normal", animate: controls }), jsx(motion.path, { d: "M12 15l5 6H7z", variants: triangleVariants, initial: "normal", animate: controls })] }) }));
3511
3511
  }
3512
3512
 
3513
- function cn$i(...inputs) {
3513
+ function cn$W(...inputs) {
3514
3514
  return twMerge(clsx(inputs));
3515
3515
  }
3516
3516
  const squareVariants = {
@@ -3525,7 +3525,7 @@ const squareVariants = {
3525
3525
  transition: { duration: 0.6, ease: 'easeInOut' },
3526
3526
  },
3527
3527
  };
3528
- const pathVariants$h = {
3528
+ const pathVariants$z = {
3529
3529
  normal: {
3530
3530
  opacity: 1,
3531
3531
  pathLength: 1,
@@ -3577,18 +3577,18 @@ const Album = ({ size = 28, className, style, autoAnimateOnLoad = false, hoverab
3577
3577
  triggerAnimation();
3578
3578
  onClick?.(e);
3579
3579
  };
3580
- return (jsx("div", { className: cn$i('rounded-md', className), style: {
3580
+ return (jsx("div", { className: cn$W('rounded-md', className), style: {
3581
3581
  width: size,
3582
3582
  height: size,
3583
3583
  display: 'inline-block',
3584
3584
  ...style,
3585
- }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { width: "18", height: "18", x: "3", y: "3", rx: "2", ry: "2", variants: squareVariants, animate: controls, initial: "normal" }), jsx(motion.polyline, { points: "11 3 11 11 14 8 17 11 17 3", variants: pathVariants$h, animate: controls, initial: "normal", style: { strokeDasharray: 1 } })] }) }));
3585
+ }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { width: "18", height: "18", x: "3", y: "3", rx: "2", ry: "2", variants: squareVariants, animate: controls, initial: "normal" }), jsx(motion.polyline, { points: "11 3 11 11 14 8 17 11 17 3", variants: pathVariants$z, animate: controls, initial: "normal", style: { strokeDasharray: 1 } })] }) }));
3586
3586
  };
3587
3587
 
3588
- function cn$h(...inputs) {
3588
+ function cn$V(...inputs) {
3589
3589
  return twMerge(clsx(inputs));
3590
3590
  }
3591
- const pathVariants$g = {
3591
+ const pathVariants$y = {
3592
3592
  normal: {
3593
3593
  y: 0,
3594
3594
  x: 0,
@@ -3677,14 +3677,14 @@ const AlarmClock = forwardRef(({ className, size = 28, autoAnimateOnLoad = false
3677
3677
  clearTimeout(timeoutRef.current);
3678
3678
  };
3679
3679
  }, [autoAnimateOnLoad, startOnce]);
3680
- return (jsx("div", { className: cn$h(className), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: { overflow: 'visible' }, children: [jsx(motion.path, { variants: pathVariants$g, initial: "normal", animate: controls, d: "M18 20.5L19.5 22" }), jsx(motion.path, { variants: pathVariants$g, initial: "normal", animate: controls, d: "M6 20.5L4.5 22" }), jsx(motion.path, { variants: pathVariants$g, initial: "normal", animate: controls, d: "M21 13C21 17.968 16.968 22 12 22C7.032 22 3 17.968 3 13C3 8.032 7.032 4 12 4C16.968 4 21 8.032 21 13Z" }), jsx(motion.path, { variants: pathVariants$g, initial: "normal", animate: controls, d: "M15.339 15.862L12.549 14.197C12.063 13.909 11.667 13.216 11.667 12.649V8.95898" }), jsx(motion.path, { variants: secondaryPathVariants$3, initial: "normal", animate: controls, d: "M18 2L21.747 5.31064" }), jsx(motion.path, { variants: secondaryPathVariants$3, initial: "normal", animate: controls, d: "M6 2L2.25304 5.31064" })] }) }));
3680
+ return (jsx("div", { className: cn$V(className), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: { overflow: 'visible' }, children: [jsx(motion.path, { variants: pathVariants$y, initial: "normal", animate: controls, d: "M18 20.5L19.5 22" }), jsx(motion.path, { variants: pathVariants$y, initial: "normal", animate: controls, d: "M6 20.5L4.5 22" }), jsx(motion.path, { variants: pathVariants$y, initial: "normal", animate: controls, d: "M21 13C21 17.968 16.968 22 12 22C7.032 22 3 17.968 3 13C3 8.032 7.032 4 12 4C16.968 4 21 8.032 21 13Z" }), jsx(motion.path, { variants: pathVariants$y, initial: "normal", animate: controls, d: "M15.339 15.862L12.549 14.197C12.063 13.909 11.667 13.216 11.667 12.649V8.95898" }), jsx(motion.path, { variants: secondaryPathVariants$3, initial: "normal", animate: controls, d: "M18 2L21.747 5.31064" }), jsx(motion.path, { variants: secondaryPathVariants$3, initial: "normal", animate: controls, d: "M6 2L2.25304 5.31064" })] }) }));
3681
3681
  });
3682
3682
  AlarmClock.displayName = 'AlarmClock';
3683
3683
 
3684
- function cn$g(...inputs) {
3684
+ function cn$U(...inputs) {
3685
3685
  return twMerge(clsx(inputs));
3686
3686
  }
3687
- const pathVariants$f = {
3687
+ const pathVariants$x = {
3688
3688
  normal: {
3689
3689
  y: 0,
3690
3690
  x: 0,
@@ -3771,14 +3771,14 @@ const AlarmClockCheck = forwardRef(({ className, size = 28, autoAnimateOnLoad =
3771
3771
  clearTimeout(timeoutRef.current);
3772
3772
  };
3773
3773
  }, [autoAnimateOnLoad, startTimedAnimation]);
3774
- return (jsx("div", { className: cn$g(className), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: { overflow: 'visible' }, children: [jsx(motion.circle, { variants: pathVariants$f, initial: "normal", animate: controls, cx: "12", cy: "13", r: "8" }), jsx(motion.path, { variants: secondaryPathVariants$2, initial: "normal", animate: controls, d: "M5 3 2 6" }), jsx(motion.path, { variants: secondaryPathVariants$2, initial: "normal", animate: controls, d: "m22 6-3-3" }), jsx(motion.path, { variants: pathVariants$f, initial: "normal", animate: controls, d: "M6.38 18.7 4 21" }), jsx(motion.path, { variants: pathVariants$f, initial: "normal", animate: controls, d: "M17.64 18.67 20 21" }), jsx(motion.path, { variants: pathVariants$f, initial: "normal", animate: controls, d: "m9 13 2 2 4-4" })] }) }));
3774
+ return (jsx("div", { className: cn$U(className), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: { overflow: 'visible' }, children: [jsx(motion.circle, { variants: pathVariants$x, initial: "normal", animate: controls, cx: "12", cy: "13", r: "8" }), jsx(motion.path, { variants: secondaryPathVariants$2, initial: "normal", animate: controls, d: "M5 3 2 6" }), jsx(motion.path, { variants: secondaryPathVariants$2, initial: "normal", animate: controls, d: "m22 6-3-3" }), jsx(motion.path, { variants: pathVariants$x, initial: "normal", animate: controls, d: "M6.38 18.7 4 21" }), jsx(motion.path, { variants: pathVariants$x, initial: "normal", animate: controls, d: "M17.64 18.67 20 21" }), jsx(motion.path, { variants: pathVariants$x, initial: "normal", animate: controls, d: "m9 13 2 2 4-4" })] }) }));
3775
3775
  });
3776
3776
  AlarmClockCheck.displayName = 'AlarmClockCheck';
3777
3777
 
3778
- function cn$f(...inputs) {
3778
+ function cn$T(...inputs) {
3779
3779
  return twMerge(clsx(inputs));
3780
3780
  }
3781
- const pathVariants$e = {
3781
+ const pathVariants$w = {
3782
3782
  normal: {
3783
3783
  y: 0,
3784
3784
  x: 0,
@@ -3865,14 +3865,14 @@ const AlarmClockMinus = forwardRef(({ className, size = 28, autoAnimateOnLoad =
3865
3865
  clearTimeout(timeoutRef.current);
3866
3866
  };
3867
3867
  }, [autoAnimateOnLoad, startTimedAnimation]);
3868
- return (jsx("div", { className: cn$f(className), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: { overflow: 'visible' }, children: [jsx(motion.circle, { variants: pathVariants$e, initial: "normal", animate: controls, cx: "12", cy: "13", r: "8" }), jsx(motion.path, { variants: secondaryPathVariants$1, initial: "normal", animate: controls, d: "M5 3 2 6" }), jsx(motion.path, { variants: secondaryPathVariants$1, initial: "normal", animate: controls, d: "m22 6-3-3" }), jsx(motion.path, { variants: pathVariants$e, initial: "normal", animate: controls, d: "M6.38 18.7 4 21" }), jsx(motion.path, { variants: pathVariants$e, initial: "normal", animate: controls, d: "M17.64 18.67 20 21" }), jsx(motion.line, { variants: pathVariants$e, initial: "normal", animate: controls, x1: "9", y1: "13", x2: "15", y2: "13" })] }) }));
3868
+ return (jsx("div", { className: cn$T(className), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: { overflow: 'visible' }, children: [jsx(motion.circle, { variants: pathVariants$w, initial: "normal", animate: controls, cx: "12", cy: "13", r: "8" }), jsx(motion.path, { variants: secondaryPathVariants$1, initial: "normal", animate: controls, d: "M5 3 2 6" }), jsx(motion.path, { variants: secondaryPathVariants$1, initial: "normal", animate: controls, d: "m22 6-3-3" }), jsx(motion.path, { variants: pathVariants$w, initial: "normal", animate: controls, d: "M6.38 18.7 4 21" }), jsx(motion.path, { variants: pathVariants$w, initial: "normal", animate: controls, d: "M17.64 18.67 20 21" }), jsx(motion.line, { variants: pathVariants$w, initial: "normal", animate: controls, x1: "9", y1: "13", x2: "15", y2: "13" })] }) }));
3869
3869
  });
3870
3870
  AlarmClockMinus.displayName = 'AlarmClockMinus';
3871
3871
 
3872
- function cn$e(...inputs) {
3872
+ function cn$S(...inputs) {
3873
3873
  return twMerge(clsx(inputs));
3874
3874
  }
3875
- const pathVariants$d = {
3875
+ const pathVariants$v = {
3876
3876
  normal: {
3877
3877
  y: 0,
3878
3878
  x: 0,
@@ -3959,11 +3959,11 @@ const AlarmClockPlus = forwardRef(({ className, size = 28, autoAnimateOnLoad = f
3959
3959
  clearTimeout(timeoutRef.current);
3960
3960
  };
3961
3961
  }, [autoAnimateOnLoad, startTimedAnimation]);
3962
- return (jsx("div", { className: cn$e(className), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: { overflow: 'visible' }, children: [jsx(motion.circle, { variants: pathVariants$d, initial: "normal", animate: controls, cx: "12", cy: "13", r: "8" }), jsx(motion.path, { variants: secondaryPathVariants, initial: "normal", animate: controls, d: "M5 3 2 6" }), jsx(motion.path, { variants: secondaryPathVariants, initial: "normal", animate: controls, d: "m22 6-3-3" }), jsx(motion.path, { variants: pathVariants$d, initial: "normal", animate: controls, d: "M6.38 18.7 4 21" }), jsx(motion.path, { variants: pathVariants$d, initial: "normal", animate: controls, d: "M17.64 18.67 20 21" }), jsx(motion.line, { variants: pathVariants$d, initial: "normal", animate: controls, x1: "9", y1: "13", x2: "15", y2: "13" }), jsx(motion.line, { variants: pathVariants$d, initial: "normal", animate: controls, y1: "10", x1: "12", y2: "16", x2: "12" })] }) }));
3962
+ return (jsx("div", { className: cn$S(className), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: { overflow: 'visible' }, children: [jsx(motion.circle, { variants: pathVariants$v, initial: "normal", animate: controls, cx: "12", cy: "13", r: "8" }), jsx(motion.path, { variants: secondaryPathVariants, initial: "normal", animate: controls, d: "M5 3 2 6" }), jsx(motion.path, { variants: secondaryPathVariants, initial: "normal", animate: controls, d: "m22 6-3-3" }), jsx(motion.path, { variants: pathVariants$v, initial: "normal", animate: controls, d: "M6.38 18.7 4 21" }), jsx(motion.path, { variants: pathVariants$v, initial: "normal", animate: controls, d: "M17.64 18.67 20 21" }), jsx(motion.line, { variants: pathVariants$v, initial: "normal", animate: controls, x1: "9", y1: "13", x2: "15", y2: "13" }), jsx(motion.line, { variants: pathVariants$v, initial: "normal", animate: controls, y1: "10", x1: "12", y2: "16", x2: "12" })] }) }));
3963
3963
  });
3964
3964
  AlarmClockPlus.displayName = 'AlarmClockPlus';
3965
3965
 
3966
- function cn$d(...inputs) {
3966
+ function cn$R(...inputs) {
3967
3967
  return twMerge(clsx(inputs));
3968
3968
  }
3969
3969
  const pathMotion = {
@@ -4021,14 +4021,14 @@ const AlignCenter = React.forwardRef(({ size = 28, className, style, onMouseEnte
4021
4021
  }
4022
4022
  onClick?.(e);
4023
4023
  }, [triggerAnimation, onClick, animateOnClick]);
4024
- return (jsx("div", { className: cn$d("inline-block", className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M17 12H7", variants: pathMotion, initial: "normal", animate: controls }), jsx(motion.path, { d: "M19 18H5", animate: controls, initial: "normal" }), jsx(motion.path, { d: "M21 6H3", animate: controls, initial: "normal" })] }) }));
4024
+ return (jsx("div", { className: cn$R("inline-block", className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M17 12H7", variants: pathMotion, initial: "normal", animate: controls }), jsx(motion.path, { d: "M19 18H5", animate: controls, initial: "normal" }), jsx(motion.path, { d: "M21 6H3", animate: controls, initial: "normal" })] }) }));
4025
4025
  });
4026
4026
  AlignCenter.displayName = "AlignCenter";
4027
4027
 
4028
- function cn$c(...inputs) {
4028
+ function cn$Q(...inputs) {
4029
4029
  return twMerge(clsx(inputs));
4030
4030
  }
4031
- const pathVariants$c = {
4031
+ const pathVariants$u = {
4032
4032
  normal: {
4033
4033
  pathLength: 1,
4034
4034
  pathOffset: 0,
@@ -4086,14 +4086,14 @@ const AlignCenterHorizontal = forwardRef(({ size = 28, className, style, autoAni
4086
4086
  triggerAnimation();
4087
4087
  onClick?.(e);
4088
4088
  };
4089
- return (jsx("div", { className: cn$c('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M2 12h20", variants: pathVariants$c, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M10 16v4a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-4", variants: pathVariants$c, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M10 8V4a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v4", variants: pathVariants$c, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M20 16v1a2 2 0 0 1-2 2h-2a2 2 0 0 1-2-2v-1", variants: pathVariants$c, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M14 8V7c0-1.1.9-2 2-2h2a2 2 0 0 1 2 2v1", variants: pathVariants$c, animate: controls, initial: "normal" })] }) }));
4089
+ return (jsx("div", { className: cn$Q('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M2 12h20", variants: pathVariants$u, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M10 16v4a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-4", variants: pathVariants$u, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M10 8V4a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v4", variants: pathVariants$u, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M20 16v1a2 2 0 0 1-2 2h-2a2 2 0 0 1-2-2v-1", variants: pathVariants$u, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M14 8V7c0-1.1.9-2 2-2h2a2 2 0 0 1 2 2v1", variants: pathVariants$u, animate: controls, initial: "normal" })] }) }));
4090
4090
  });
4091
4091
  AlignCenterHorizontal.displayName = 'AlignCenterHorizontal';
4092
4092
 
4093
- function cn$b(...inputs) {
4093
+ function cn$P(...inputs) {
4094
4094
  return twMerge(clsx(inputs));
4095
4095
  }
4096
- const pathVariants$b = {
4096
+ const pathVariants$t = {
4097
4097
  normal: {
4098
4098
  pathLength: 1,
4099
4099
  pathOffset: 0,
@@ -4149,14 +4149,14 @@ const AlignCenterVertical = forwardRef(({ size = 28, className, style, autoAnima
4149
4149
  triggerAnimation();
4150
4150
  onClick?.(e);
4151
4151
  };
4152
- return (jsx("div", { className: cn$b('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M12 2v20", variants: pathVariants$b, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M8 10H4a2 2 0 0 1-2-2V6c0-1.1.9-2 2-2h4", variants: pathVariants$b, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M16 10h4a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-4", variants: pathVariants$b, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M8 20H7a2 2 0 0 1-2-2v-2c0-1.1.9-2 2-2h1", variants: pathVariants$b, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M16 14h1a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2h-1", variants: pathVariants$b, animate: controls, initial: "normal" })] }) }));
4152
+ return (jsx("div", { className: cn$P('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M12 2v20", variants: pathVariants$t, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M8 10H4a2 2 0 0 1-2-2V6c0-1.1.9-2 2-2h4", variants: pathVariants$t, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M16 10h4a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-4", variants: pathVariants$t, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M8 20H7a2 2 0 0 1-2-2v-2c0-1.1.9-2 2-2h1", variants: pathVariants$t, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M16 14h1a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2h-1", variants: pathVariants$t, animate: controls, initial: "normal" })] }) }));
4153
4153
  });
4154
4154
  AlignCenterVertical.displayName = 'AlignCenterVertical';
4155
4155
 
4156
- function cn$a(...inputs) {
4156
+ function cn$O(...inputs) {
4157
4157
  return twMerge(clsx(inputs));
4158
4158
  }
4159
- const pathVariants$a = {
4159
+ const pathVariants$s = {
4160
4160
  normal: {
4161
4161
  pathLength: 1,
4162
4162
  pathOffset: 0,
@@ -4212,14 +4212,14 @@ const AlignEndHorizontal = forwardRef(({ size = 28, className, style, autoAnimat
4212
4212
  triggerAnimation();
4213
4213
  onClick?.(e);
4214
4214
  };
4215
- return (jsx("div", { className: cn$a('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { width: "6", height: "16", x: "4", y: "2", rx: "2", variants: pathVariants$a, animate: controls, initial: "normal" }), jsx(motion.rect, { width: "6", height: "9", x: "14", y: "9", rx: "2", variants: pathVariants$a, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M22 22H2", variants: pathVariants$a, animate: controls, initial: "normal" })] }) }));
4215
+ return (jsx("div", { className: cn$O('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { width: "6", height: "16", x: "4", y: "2", rx: "2", variants: pathVariants$s, animate: controls, initial: "normal" }), jsx(motion.rect, { width: "6", height: "9", x: "14", y: "9", rx: "2", variants: pathVariants$s, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M22 22H2", variants: pathVariants$s, animate: controls, initial: "normal" })] }) }));
4216
4216
  });
4217
4217
  AlignEndHorizontal.displayName = 'AlignEndHorizontal';
4218
4218
 
4219
- function cn$9(...inputs) {
4219
+ function cn$N(...inputs) {
4220
4220
  return twMerge(clsx(inputs));
4221
4221
  }
4222
- const pathVariants$9 = {
4222
+ const pathVariants$r = {
4223
4223
  normal: {
4224
4224
  pathLength: 1,
4225
4225
  pathOffset: 0,
@@ -4275,14 +4275,14 @@ const AlignEndVertical = forwardRef(({ size = 28, className, style, autoAnimateO
4275
4275
  triggerAnimation();
4276
4276
  onClick?.(e);
4277
4277
  };
4278
- return (jsx("div", { className: cn$9('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { width: "16", height: "6", x: "2", y: "4", rx: "2", variants: pathVariants$9, animate: controls, initial: "normal" }), jsx(motion.rect, { width: "9", height: "6", x: "9", y: "14", rx: "2", variants: pathVariants$9, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M22 22V2", variants: pathVariants$9, animate: controls, initial: "normal" })] }) }));
4278
+ return (jsx("div", { className: cn$N('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { width: "16", height: "6", x: "2", y: "4", rx: "2", variants: pathVariants$r, animate: controls, initial: "normal" }), jsx(motion.rect, { width: "9", height: "6", x: "9", y: "14", rx: "2", variants: pathVariants$r, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M22 22V2", variants: pathVariants$r, animate: controls, initial: "normal" })] }) }));
4279
4279
  });
4280
4280
  AlignEndVertical.displayName = 'AlignEndVertical';
4281
4281
 
4282
- function cn$8(...inputs) {
4282
+ function cn$M(...inputs) {
4283
4283
  return twMerge(clsx(inputs));
4284
4284
  }
4285
- const pathVariants$8 = {
4285
+ const pathVariants$q = {
4286
4286
  normal: {
4287
4287
  pathLength: 1,
4288
4288
  pathOffset: 0,
@@ -4338,14 +4338,14 @@ const AlignHorizontalDistributeCenter = forwardRef(({ size = 28, className, styl
4338
4338
  triggerAnimation();
4339
4339
  onClick?.(e);
4340
4340
  };
4341
- return (jsx("div", { className: cn$8('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { width: "6", height: "14", x: "4", y: "5", rx: "2", variants: pathVariants$8, animate: controls, initial: "normal" }), jsx(motion.rect, { width: "6", height: "10", x: "14", y: "7", rx: "2", variants: pathVariants$8, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M17 22v-5", variants: pathVariants$8, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M17 7V2", variants: pathVariants$8, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M7 22v-3", variants: pathVariants$8, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M7 5V2", variants: pathVariants$8, animate: controls, initial: "normal" })] }) }));
4341
+ return (jsx("div", { className: cn$M('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { width: "6", height: "14", x: "4", y: "5", rx: "2", variants: pathVariants$q, animate: controls, initial: "normal" }), jsx(motion.rect, { width: "6", height: "10", x: "14", y: "7", rx: "2", variants: pathVariants$q, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M17 22v-5", variants: pathVariants$q, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M17 7V2", variants: pathVariants$q, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M7 22v-3", variants: pathVariants$q, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M7 5V2", variants: pathVariants$q, animate: controls, initial: "normal" })] }) }));
4342
4342
  });
4343
4343
  AlignHorizontalDistributeCenter.displayName = 'AlignHorizontalDistributeCenter';
4344
4344
 
4345
- function cn$7(...inputs) {
4345
+ function cn$L(...inputs) {
4346
4346
  return twMerge(clsx(inputs));
4347
4347
  }
4348
- const pathVariants$7 = {
4348
+ const pathVariants$p = {
4349
4349
  normal: {
4350
4350
  opacity: 1,
4351
4351
  pathLength: 1,
@@ -4401,14 +4401,14 @@ const AlignHorizontalDistributeEnd = forwardRef(({ size = 28, className, style,
4401
4401
  triggerAnimation();
4402
4402
  onClick?.(e);
4403
4403
  };
4404
- return (jsx("div", { className: cn$7('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "4", y: "5", rx: "2", variants: pathVariants$7, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "14", y: "7", rx: "2", variants: pathVariants$7, initial: "normal", animate: controls }), jsx(motion.path, { d: "M10 2v20", variants: pathVariants$7, initial: "normal", animate: controls }), jsx(motion.path, { d: "M20 2v20", variants: pathVariants$7, initial: "normal", animate: controls })] }) }));
4404
+ return (jsx("div", { className: cn$L('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "4", y: "5", rx: "2", variants: pathVariants$p, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "14", y: "7", rx: "2", variants: pathVariants$p, initial: "normal", animate: controls }), jsx(motion.path, { d: "M10 2v20", variants: pathVariants$p, initial: "normal", animate: controls }), jsx(motion.path, { d: "M20 2v20", variants: pathVariants$p, initial: "normal", animate: controls })] }) }));
4405
4405
  });
4406
4406
  AlignHorizontalDistributeEnd.displayName = 'AlignHorizontalDistributeEnd';
4407
4407
 
4408
- function cn$6(...inputs) {
4408
+ function cn$K(...inputs) {
4409
4409
  return twMerge(clsx(inputs));
4410
4410
  }
4411
- const pathVariants$6 = {
4411
+ const pathVariants$o = {
4412
4412
  normal: {
4413
4413
  opacity: 1,
4414
4414
  pathLength: 1,
@@ -4464,14 +4464,14 @@ const AlignHorizontalDistributeStart = forwardRef(({ size = 28, className, style
4464
4464
  triggerAnimation();
4465
4465
  onClick?.(e);
4466
4466
  };
4467
- return (jsx("div", { className: cn$6('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "4", y: "5", rx: "2", variants: pathVariants$6, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "14", y: "7", rx: "2", variants: pathVariants$6, initial: "normal", animate: controls }), jsx(motion.path, { d: "M4 2v20", variants: pathVariants$6, initial: "normal", animate: controls }), jsx(motion.path, { d: "M14 2v20", variants: pathVariants$6, initial: "normal", animate: controls })] }) }));
4467
+ return (jsx("div", { className: cn$K('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "4", y: "5", rx: "2", variants: pathVariants$o, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "14", y: "7", rx: "2", variants: pathVariants$o, initial: "normal", animate: controls }), jsx(motion.path, { d: "M4 2v20", variants: pathVariants$o, initial: "normal", animate: controls }), jsx(motion.path, { d: "M14 2v20", variants: pathVariants$o, initial: "normal", animate: controls })] }) }));
4468
4468
  });
4469
4469
  AlignHorizontalDistributeStart.displayName = 'AlignHorizontalDistributeStart';
4470
4470
 
4471
- function cn$5(...inputs) {
4471
+ function cn$J(...inputs) {
4472
4472
  return twMerge(clsx(inputs));
4473
4473
  }
4474
- const pathVariants$5 = {
4474
+ const pathVariants$n = {
4475
4475
  normal: {
4476
4476
  opacity: 1,
4477
4477
  pathLength: 1,
@@ -4527,14 +4527,14 @@ const AlignHorizontalJustifyCenter = forwardRef(({ size = 28, className, style,
4527
4527
  triggerAnimation();
4528
4528
  onClick?.(e);
4529
4529
  };
4530
- return (jsx("div", { className: cn$5('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "2", y: "5", rx: "2", variants: pathVariants$5, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "16", y: "7", rx: "2", variants: pathVariants$5, initial: "normal", animate: controls }), jsx(motion.path, { d: "M12 2v20", variants: pathVariants$5, initial: "normal", animate: controls })] }) }));
4530
+ return (jsx("div", { className: cn$J('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "2", y: "5", rx: "2", variants: pathVariants$n, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "16", y: "7", rx: "2", variants: pathVariants$n, initial: "normal", animate: controls }), jsx(motion.path, { d: "M12 2v20", variants: pathVariants$n, initial: "normal", animate: controls })] }) }));
4531
4531
  });
4532
4532
  AlignHorizontalJustifyCenter.displayName = 'AlignHorizontalJustifyCenter';
4533
4533
 
4534
- function cn$4(...inputs) {
4534
+ function cn$I(...inputs) {
4535
4535
  return twMerge(clsx(inputs));
4536
4536
  }
4537
- const pathVariants$4 = {
4537
+ const pathVariants$m = {
4538
4538
  normal: {
4539
4539
  opacity: 1,
4540
4540
  pathLength: 1,
@@ -4590,14 +4590,14 @@ const AlignHorizontalJustifyEnd = forwardRef(({ size = 28, className, style, aut
4590
4590
  triggerAnimation();
4591
4591
  onClick?.(e);
4592
4592
  };
4593
- return (jsx("div", { className: cn$4('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "2", y: "5", rx: "2", variants: pathVariants$4, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "12", y: "7", rx: "2", variants: pathVariants$4, initial: "normal", animate: controls }), jsx(motion.path, { d: "M22 2v20", variants: pathVariants$4, initial: "normal", animate: controls })] }) }));
4593
+ return (jsx("div", { className: cn$I('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "2", y: "5", rx: "2", variants: pathVariants$m, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "12", y: "7", rx: "2", variants: pathVariants$m, initial: "normal", animate: controls }), jsx(motion.path, { d: "M22 2v20", variants: pathVariants$m, initial: "normal", animate: controls })] }) }));
4594
4594
  });
4595
4595
  AlignHorizontalJustifyEnd.displayName = 'AlignHorizontalJustifyEnd';
4596
4596
 
4597
- function cn$3(...inputs) {
4597
+ function cn$H(...inputs) {
4598
4598
  return twMerge(clsx(inputs));
4599
4599
  }
4600
- const pathVariants$3 = {
4600
+ const pathVariants$l = {
4601
4601
  normal: {
4602
4602
  opacity: 1,
4603
4603
  pathLength: 1,
@@ -4653,14 +4653,14 @@ const AlignHorizontalJustifyStart = forwardRef(({ size = 28, className, style, a
4653
4653
  triggerAnimation();
4654
4654
  onClick?.(e);
4655
4655
  };
4656
- return (jsx("div", { className: cn$3('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "6", y: "5", rx: "2", variants: pathVariants$3, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "16", y: "7", rx: "2", variants: pathVariants$3, initial: "normal", animate: controls }), jsx(motion.path, { d: "M2 2v20", variants: pathVariants$3, initial: "normal", animate: controls })] }) }));
4656
+ return (jsx("div", { className: cn$H('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "6", y: "5", rx: "2", variants: pathVariants$l, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "16", y: "7", rx: "2", variants: pathVariants$l, initial: "normal", animate: controls }), jsx(motion.path, { d: "M2 2v20", variants: pathVariants$l, initial: "normal", animate: controls })] }) }));
4657
4657
  });
4658
4658
  AlignHorizontalJustifyStart.displayName = 'AlignHorizontalJustifyStart';
4659
4659
 
4660
- function cn$2(...inputs) {
4660
+ function cn$G(...inputs) {
4661
4661
  return twMerge(clsx(inputs));
4662
4662
  }
4663
- const pathVariants$2 = {
4663
+ const pathVariants$k = {
4664
4664
  normal: {
4665
4665
  opacity: 1,
4666
4666
  pathLength: 1,
@@ -4716,14 +4716,14 @@ const AlignHorizontalSpaceAround = forwardRef(({ size = 28, className, style, au
4716
4716
  triggerAnimation();
4717
4717
  onClick?.(e);
4718
4718
  };
4719
- return (jsx("div", { className: cn$2('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "10", x: "9", y: "7", rx: "2", variants: pathVariants$2, initial: "normal", animate: controls }), jsx(motion.path, { d: "M4 22V2", variants: pathVariants$2, initial: "normal", animate: controls }), jsx(motion.path, { d: "M20 22V2", variants: pathVariants$2, initial: "normal", animate: controls })] }) }));
4719
+ return (jsx("div", { className: cn$G('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "10", x: "9", y: "7", rx: "2", variants: pathVariants$k, initial: "normal", animate: controls }), jsx(motion.path, { d: "M4 22V2", variants: pathVariants$k, initial: "normal", animate: controls }), jsx(motion.path, { d: "M20 22V2", variants: pathVariants$k, initial: "normal", animate: controls })] }) }));
4720
4720
  });
4721
4721
  AlignHorizontalSpaceAround.displayName = 'AlignHorizontalSpaceAround';
4722
4722
 
4723
- function cn$1(...inputs) {
4723
+ function cn$F(...inputs) {
4724
4724
  return twMerge(clsx(inputs));
4725
4725
  }
4726
- const pathVariants$1 = {
4726
+ const pathVariants$j = {
4727
4727
  normal: {
4728
4728
  opacity: 1,
4729
4729
  pathLength: 1,
@@ -4779,14 +4779,14 @@ const AlignHorizontalSpaceBetween = forwardRef(({ size = 28, className, style, a
4779
4779
  triggerAnimation();
4780
4780
  onClick?.(e);
4781
4781
  };
4782
- return (jsx("div", { className: cn$1('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "3", y: "5", rx: "2", variants: pathVariants$1, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "15", y: "7", rx: "2", variants: pathVariants$1, initial: "normal", animate: controls }), jsx(motion.path, { d: "M3 2v20", variants: pathVariants$1, initial: "normal", animate: controls }), jsx(motion.path, { d: "M21 2v20", variants: pathVariants$1, initial: "normal", animate: controls })] }) }));
4782
+ return (jsx("div", { className: cn$F('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "6", height: "14", x: "3", y: "5", rx: "2", variants: pathVariants$j, initial: "normal", animate: controls }), jsx(motion.rect, { width: "6", height: "10", x: "15", y: "7", rx: "2", variants: pathVariants$j, initial: "normal", animate: controls }), jsx(motion.path, { d: "M3 2v20", variants: pathVariants$j, initial: "normal", animate: controls }), jsx(motion.path, { d: "M21 2v20", variants: pathVariants$j, initial: "normal", animate: controls })] }) }));
4783
4783
  });
4784
4784
  AlignHorizontalSpaceBetween.displayName = 'AlignHorizontalSpaceBetween';
4785
4785
 
4786
- function cn(...inputs) {
4786
+ function cn$E(...inputs) {
4787
4787
  return twMerge(clsx(inputs));
4788
4788
  }
4789
- const pathVariants = {
4789
+ const pathVariants$i = {
4790
4790
  normal: {
4791
4791
  opacity: 1,
4792
4792
  pathLength: 1,
@@ -4842,9 +4842,2835 @@ const AlignJustify = forwardRef(({ size = 28, className, style, autoAnimateOnLoa
4842
4842
  triggerAnimation();
4843
4843
  onClick?.(e);
4844
4844
  };
4845
- return (jsx("div", { className: cn('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M3 12h18", variants: pathVariants, initial: "normal", animate: controls }), jsx(motion.path, { d: "M3 18h18", variants: pathVariants, initial: "normal", animate: controls }), jsx(motion.path, { d: "M3 6h18", variants: pathVariants, initial: "normal", animate: controls })] }) }));
4845
+ return (jsx("div", { className: cn$E('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M3 12h18", variants: pathVariants$i, initial: "normal", animate: controls }), jsx(motion.path, { d: "M3 18h18", variants: pathVariants$i, initial: "normal", animate: controls }), jsx(motion.path, { d: "M3 6h18", variants: pathVariants$i, initial: "normal", animate: controls })] }) }));
4846
4846
  });
4847
4847
  AlignJustify.displayName = 'AlignJustify';
4848
4848
 
4849
- export { AccessibilityActivity, Activity, AirVent, Airplay, AlarmClock, AlarmClockCheck, AlarmClockMinus, AlarmClockPlus, Album, AlignCenter, AlignCenterHorizontal, AlignCenterVertical, AlignEndHorizontal, AlignEndVertical, AlignHorizontalDistributeCenter, AlignHorizontalDistributeEnd, AlignHorizontalDistributeStart, AlignHorizontalJustifyCenter, AlignHorizontalJustifyEnd, AlignHorizontalJustifyStart, AlignHorizontalSpaceAround, AlignHorizontalSpaceBetween, AlignJustify, ArrowDown, ArrowUp, SquareActivity };
4849
+ function cn$D(...inputs) {
4850
+ return twMerge(clsx(inputs));
4851
+ }
4852
+ const pathVariants$h = {
4853
+ normal: (i) => ({
4854
+ pathLength: 1,
4855
+ pathOffset: 0,
4856
+ opacity: 1,
4857
+ transition: {
4858
+ duration: 0.4,
4859
+ delay: i * 0.2,
4860
+ },
4861
+ }),
4862
+ animate: (i) => ({
4863
+ pathLength: [0, 1],
4864
+ pathOffset: [1, 0],
4865
+ opacity: [0, 1],
4866
+ transition: {
4867
+ duration: 0.7,
4868
+ ease: 'easeInOut',
4869
+ delay: i * 0.2,
4870
+ },
4871
+ }),
4872
+ };
4873
+ const AlignLeft = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
4874
+ const controls = useAnimation();
4875
+ const loopRef = useRef(loopOnHover);
4876
+ const isControlledRef = useRef(false);
4877
+ const triggerAnimation = useCallback(async () => {
4878
+ await controls.start((i) => pathVariants$h.animate(i));
4879
+ await controls.start((i) => pathVariants$h.normal(i));
4880
+ if (loopRef.current)
4881
+ triggerAnimation();
4882
+ }, [controls]);
4883
+ useEffect(() => {
4884
+ loopRef.current = loopOnHover;
4885
+ }, [loopOnHover]);
4886
+ useEffect(() => {
4887
+ if (autoAnimateOnLoad)
4888
+ triggerAnimation();
4889
+ }, [autoAnimateOnLoad, triggerAnimation]);
4890
+ useImperativeHandle(ref, () => {
4891
+ isControlledRef.current = true;
4892
+ return {
4893
+ startAnimation: () => controls.start((i) => pathVariants$h.animate(i)),
4894
+ stopAnimation: () => controls.start((i) => pathVariants$h.normal(i)),
4895
+ };
4896
+ }, [controls]);
4897
+ const handleMouseEnter = (e) => {
4898
+ if (!isControlledRef.current && hoverable)
4899
+ triggerAnimation();
4900
+ onMouseEnter?.(e);
4901
+ };
4902
+ const handleMouseLeave = (e) => {
4903
+ if (!isControlledRef.current && hoverable)
4904
+ controls.start((i) => pathVariants$h.normal(i));
4905
+ onMouseLeave?.(e);
4906
+ };
4907
+ const handleClick = (e) => {
4908
+ if (animateOnClick)
4909
+ triggerAnimation();
4910
+ onClick?.(e);
4911
+ };
4912
+ return (jsx("div", { className: cn$D('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M21 6H3", variants: pathVariants$h, custom: 0, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M15 12H3", variants: pathVariants$h, custom: 1, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M17 18H3", variants: pathVariants$h, custom: 2, animate: controls, initial: "normal" })] }) }));
4913
+ });
4914
+ AlignLeft.displayName = 'AlignLeft';
4915
+
4916
+ function cn$C(...inputs) {
4917
+ return twMerge(clsx(inputs));
4918
+ }
4919
+ const pathVariants$g = {
4920
+ normal: (i) => ({
4921
+ pathLength: 1,
4922
+ pathOffset: 0,
4923
+ opacity: 1,
4924
+ transition: {
4925
+ duration: 0.3,
4926
+ delay: i * 0.16,
4927
+ },
4928
+ }),
4929
+ animate: (i) => ({
4930
+ pathLength: [0, 1],
4931
+ pathOffset: [1, 0],
4932
+ opacity: [0, 1],
4933
+ transition: {
4934
+ duration: 0.2,
4935
+ ease: 'easeInOut',
4936
+ delay: i * 0.16
4937
+ },
4938
+ }),
4939
+ };
4940
+ const AlignRight = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
4941
+ const controls = useAnimation();
4942
+ const loopRef = useRef(loopOnHover);
4943
+ const isControlledRef = useRef(false);
4944
+ const triggerAnimation = useCallback(async () => {
4945
+ await controls.start('animate');
4946
+ await controls.start('normal');
4947
+ if (loopRef.current)
4948
+ triggerAnimation();
4949
+ }, [controls]);
4950
+ useEffect(() => {
4951
+ loopRef.current = loopOnHover;
4952
+ }, [loopOnHover]);
4953
+ useEffect(() => {
4954
+ if (autoAnimateOnLoad)
4955
+ triggerAnimation();
4956
+ }, [autoAnimateOnLoad, triggerAnimation]);
4957
+ useImperativeHandle(ref, () => {
4958
+ isControlledRef.current = true;
4959
+ return {
4960
+ startAnimation: () => controls.start('animate'),
4961
+ stopAnimation: () => controls.start('normal'),
4962
+ };
4963
+ }, [controls]);
4964
+ const handleMouseEnter = (e) => {
4965
+ if (!isControlledRef.current && hoverable)
4966
+ triggerAnimation();
4967
+ onMouseEnter?.(e);
4968
+ };
4969
+ const handleMouseLeave = (e) => {
4970
+ if (!isControlledRef.current && hoverable)
4971
+ controls.start('normal');
4972
+ onMouseLeave?.(e);
4973
+ };
4974
+ const handleClick = (e) => {
4975
+ if (animateOnClick)
4976
+ triggerAnimation();
4977
+ onClick?.(e);
4978
+ };
4979
+ return (jsx("div", { className: cn$C('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M3 6H21", variants: pathVariants$g, custom: 0, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M9 12H21", variants: pathVariants$g, custom: 1, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M7 18H21", variants: pathVariants$g, custom: 2, animate: controls, initial: "normal" })] }) }));
4980
+ });
4981
+ AlignRight.displayName = 'AlignRight';
4982
+
4983
+ function cn$B(...inputs) {
4984
+ return twMerge(clsx(inputs));
4985
+ }
4986
+ const pathVariants$f = {
4987
+ normal: (i) => ({
4988
+ pathLength: 1,
4989
+ opacity: 1,
4990
+ transition: {
4991
+ duration: 0.4,
4992
+ delay: i * 0.3,
4993
+ },
4994
+ }),
4995
+ animate: (i) => ({
4996
+ pathLength: [0, 1],
4997
+ opacity: [0, 1],
4998
+ transition: {
4999
+ duration: 0.6,
5000
+ ease: 'easeInOut',
5001
+ delay: i * 0.3,
5002
+ },
5003
+ }),
5004
+ };
5005
+ const rectVariants$5 = {
5006
+ normal: (i) => ({
5007
+ scaleY: 1,
5008
+ opacity: 1,
5009
+ transition: {
5010
+ duration: 0.3,
5011
+ delay: i * 0.3 + 0.3,
5012
+ },
5013
+ }),
5014
+ animate: (i) => ({
5015
+ scaleY: [0, 1],
5016
+ opacity: [0, 1],
5017
+ originY: 0,
5018
+ transition: {
5019
+ duration: 0.6,
5020
+ ease: 'easeOut',
5021
+ delay: i * 0.4 + 0.1,
5022
+ },
5023
+ }),
5024
+ };
5025
+ const AlignStartHorizontal = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5026
+ const controls = useAnimation();
5027
+ const loopRef = useRef(loopOnHover);
5028
+ const isControlledRef = useRef(false);
5029
+ const triggerAnimation = useCallback(async () => {
5030
+ await controls.start((i) => i < 1 ? pathVariants$f.animate(i) : rectVariants$5.animate(i - 1));
5031
+ await controls.start((i) => i < 1 ? pathVariants$f.normal(i) : rectVariants$5.normal(i - 1));
5032
+ if (loopRef.current)
5033
+ triggerAnimation();
5034
+ }, [controls]);
5035
+ useEffect(() => {
5036
+ loopRef.current = loopOnHover;
5037
+ }, [loopOnHover]);
5038
+ useEffect(() => {
5039
+ if (autoAnimateOnLoad)
5040
+ triggerAnimation();
5041
+ }, [autoAnimateOnLoad, triggerAnimation]);
5042
+ useImperativeHandle(ref, () => {
5043
+ isControlledRef.current = true;
5044
+ return {
5045
+ startAnimation: () => controls.start((i) => i < 1 ? pathVariants$f.animate(i) : rectVariants$5.animate(i - 1)),
5046
+ stopAnimation: () => controls.start((i) => i < 1 ? pathVariants$f.normal(i) : rectVariants$5.normal(i - 1)),
5047
+ };
5048
+ }, [controls]);
5049
+ const handleMouseEnter = (e) => {
5050
+ if (!isControlledRef.current && hoverable)
5051
+ triggerAnimation();
5052
+ onMouseEnter?.(e);
5053
+ };
5054
+ const handleMouseLeave = (e) => {
5055
+ if (!isControlledRef.current && hoverable)
5056
+ controls.start((i) => i < 1 ? pathVariants$f.normal(i) : rectVariants$5.normal(i - 1));
5057
+ onMouseLeave?.(e);
5058
+ };
5059
+ const handleClick = (e) => {
5060
+ if (animateOnClick)
5061
+ triggerAnimation();
5062
+ onClick?.(e);
5063
+ };
5064
+ return (jsx("div", { className: cn$B('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M22 2H2", variants: pathVariants$f, custom: 0, animate: controls, initial: "normal" }), jsx(motion.rect, { width: "6", height: "16", x: "4", y: "6", rx: "2", variants: rectVariants$5, custom: 0, animate: controls, initial: "normal" }), jsx(motion.rect, { width: "6", height: "9", x: "14", y: "6", rx: "2", variants: rectVariants$5, custom: 1, animate: controls, initial: "normal" })] }) }));
5065
+ });
5066
+ AlignStartHorizontal.displayName = 'AlignStartHorizontal';
5067
+
5068
+ function cn$A(...inputs) {
5069
+ return twMerge(clsx(inputs));
5070
+ }
5071
+ const pathVariants$e = {
5072
+ normal: (i) => ({
5073
+ pathLength: 1,
5074
+ opacity: 1,
5075
+ transition: {
5076
+ duration: 0.4,
5077
+ delay: i * 0.3,
5078
+ },
5079
+ }),
5080
+ animate: (i) => ({
5081
+ pathLength: [0, 1],
5082
+ opacity: [0, 1],
5083
+ transition: {
5084
+ duration: 0.6,
5085
+ ease: 'easeInOut',
5086
+ delay: i * 0.3,
5087
+ },
5088
+ }),
5089
+ };
5090
+ const rectVariants$4 = {
5091
+ normal: (i) => ({
5092
+ scaleX: 1,
5093
+ opacity: 1,
5094
+ transition: {
5095
+ duration: 0.3,
5096
+ delay: i * 0.3 + 0.3,
5097
+ },
5098
+ }),
5099
+ animate: (i) => ({
5100
+ scaleX: [0, 1],
5101
+ opacity: [0, 1],
5102
+ originX: 0,
5103
+ transition: {
5104
+ duration: 0.6,
5105
+ ease: 'easeOut',
5106
+ delay: i * 0.4 + 0.1,
5107
+ },
5108
+ }),
5109
+ };
5110
+ const AlignStartVertical = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5111
+ const controls = useAnimation();
5112
+ const loopRef = useRef(loopOnHover);
5113
+ const isControlledRef = useRef(false);
5114
+ const triggerAnimation = useCallback(async () => {
5115
+ await controls.start((i) => i < 1 ? pathVariants$e.animate(i) : rectVariants$4.animate(i - 1));
5116
+ await controls.start((i) => i < 1 ? pathVariants$e.normal(i) : rectVariants$4.normal(i - 1));
5117
+ if (loopRef.current)
5118
+ triggerAnimation();
5119
+ }, [controls]);
5120
+ useEffect(() => {
5121
+ loopRef.current = loopOnHover;
5122
+ }, [loopOnHover]);
5123
+ useEffect(() => {
5124
+ if (autoAnimateOnLoad)
5125
+ triggerAnimation();
5126
+ }, [autoAnimateOnLoad, triggerAnimation]);
5127
+ useImperativeHandle(ref, () => {
5128
+ isControlledRef.current = true;
5129
+ return {
5130
+ startAnimation: () => controls.start((i) => i < 1 ? pathVariants$e.animate(i) : rectVariants$4.animate(i - 1)),
5131
+ stopAnimation: () => controls.start((i) => i < 1 ? pathVariants$e.normal(i) : rectVariants$4.normal(i - 1)),
5132
+ };
5133
+ }, [controls]);
5134
+ const handleMouseEnter = (e) => {
5135
+ if (!isControlledRef.current && hoverable)
5136
+ triggerAnimation();
5137
+ onMouseEnter?.(e);
5138
+ };
5139
+ const handleMouseLeave = (e) => {
5140
+ if (!isControlledRef.current && hoverable)
5141
+ controls.start((i) => i < 1 ? pathVariants$e.normal(i) : rectVariants$4.normal(i - 1));
5142
+ onMouseLeave?.(e);
5143
+ };
5144
+ const handleClick = (e) => {
5145
+ if (animateOnClick)
5146
+ triggerAnimation();
5147
+ onClick?.(e);
5148
+ };
5149
+ return (jsx("div", { className: cn$A('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M2 2v20", variants: pathVariants$e, custom: 0, animate: controls, initial: "normal" }), jsx(motion.rect, { width: "16", height: "6", x: "6", y: "4", rx: "2", variants: rectVariants$4, custom: 0, animate: controls, initial: "normal" }), jsx(motion.rect, { width: "9", height: "6", x: "6", y: "14", rx: "2", variants: rectVariants$4, custom: 1, animate: controls, initial: "normal" })] }) }));
5150
+ });
5151
+ AlignStartVertical.displayName = 'AlignStartVertical';
5152
+
5153
+ function cn$z(...inputs) {
5154
+ return twMerge(clsx(inputs));
5155
+ }
5156
+ const pathVariants$d = {
5157
+ normal: {
5158
+ pathLength: 1,
5159
+ pathOffset: 0,
5160
+ opacity: 1,
5161
+ transition: {
5162
+ duration: 0.4,
5163
+ },
5164
+ },
5165
+ animate: {
5166
+ pathLength: [0, 1],
5167
+ pathOffset: [1, 0],
5168
+ opacity: [0, 1],
5169
+ transition: {
5170
+ duration: 0.7,
5171
+ ease: 'easeInOut',
5172
+ },
5173
+ },
5174
+ };
5175
+ const rectVariants$3 = {
5176
+ normal: {
5177
+ opacity: 1,
5178
+ scale: 1,
5179
+ transition: {
5180
+ duration: 0.4,
5181
+ },
5182
+ },
5183
+ animate: {
5184
+ opacity: [0, 1],
5185
+ scale: [0.8, 1],
5186
+ transition: {
5187
+ duration: 0.7,
5188
+ ease: 'easeInOut',
5189
+ },
5190
+ },
5191
+ };
5192
+ const AlignVerticalDistributeCenter = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5193
+ const controls = useAnimation();
5194
+ const loopRef = useRef(loopOnHover);
5195
+ const isControlledRef = useRef(false);
5196
+ const triggerAnimation = useCallback(async () => {
5197
+ await controls.start('animate');
5198
+ await controls.start('normal');
5199
+ if (loopRef.current)
5200
+ triggerAnimation();
5201
+ }, [controls]);
5202
+ useEffect(() => {
5203
+ loopRef.current = loopOnHover;
5204
+ }, [loopOnHover]);
5205
+ useEffect(() => {
5206
+ if (autoAnimateOnLoad)
5207
+ triggerAnimation();
5208
+ }, [autoAnimateOnLoad, triggerAnimation]);
5209
+ useImperativeHandle(ref, () => {
5210
+ isControlledRef.current = true;
5211
+ return {
5212
+ startAnimation: () => controls.start('animate'),
5213
+ stopAnimation: () => controls.start('normal'),
5214
+ };
5215
+ });
5216
+ const handleMouseEnter = (e) => {
5217
+ if (!isControlledRef.current && hoverable)
5218
+ triggerAnimation();
5219
+ onMouseEnter?.(e);
5220
+ };
5221
+ const handleMouseLeave = (e) => {
5222
+ if (!isControlledRef.current && hoverable)
5223
+ controls.start('normal');
5224
+ onMouseLeave?.(e);
5225
+ };
5226
+ const handleClick = (e) => {
5227
+ if (animateOnClick)
5228
+ triggerAnimation();
5229
+ onClick?.(e);
5230
+ };
5231
+ return (jsx("div", { className: cn$z('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M22 17h-3", variants: pathVariants$d, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M22 7h-5", variants: pathVariants$d, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M5 17H2", variants: pathVariants$d, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M7 7H2", variants: pathVariants$d, animate: controls, initial: "normal" }), jsx(motion.rect, { x: "5", y: "14", width: "14", height: "6", rx: "2", variants: rectVariants$3, animate: controls, initial: "normal" }), jsx(motion.rect, { x: "7", y: "4", width: "10", height: "6", rx: "2", variants: rectVariants$3, animate: controls, initial: "normal" })] }) }));
5232
+ });
5233
+ AlignVerticalDistributeCenter.displayName = 'AlignVerticalDistributeCenter';
5234
+
5235
+ function cn$y(...inputs) {
5236
+ return twMerge(clsx(inputs));
5237
+ }
5238
+ const pathVariants$c = {
5239
+ normal: {
5240
+ opacity: 1,
5241
+ pathLength: 1,
5242
+ pathOffset: 0,
5243
+ transition: { duration: 0.4 },
5244
+ },
5245
+ animate: {
5246
+ opacity: [0, 1],
5247
+ pathLength: [0, 1],
5248
+ pathOffset: [1, 0],
5249
+ transition: {
5250
+ duration: 0.6,
5251
+ ease: 'linear',
5252
+ },
5253
+ },
5254
+ };
5255
+ const AlignVerticalDistributeEnd = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5256
+ const controls = useAnimation();
5257
+ const loopRef = useRef(loopOnHover);
5258
+ const isControlledRef = useRef(false);
5259
+ const triggerAnimation = useCallback(async () => {
5260
+ await controls.start('animate');
5261
+ await controls.start('normal');
5262
+ if (loopRef.current)
5263
+ triggerAnimation();
5264
+ }, [controls]);
5265
+ useEffect(() => {
5266
+ loopRef.current = loopOnHover;
5267
+ }, [loopOnHover]);
5268
+ useEffect(() => {
5269
+ if (autoAnimateOnLoad)
5270
+ triggerAnimation();
5271
+ }, [autoAnimateOnLoad, triggerAnimation]);
5272
+ useImperativeHandle(ref, () => {
5273
+ isControlledRef.current = true;
5274
+ return {
5275
+ startAnimation: () => controls.start('animate'),
5276
+ stopAnimation: () => controls.start('normal'),
5277
+ };
5278
+ });
5279
+ const handleMouseEnter = (e) => {
5280
+ if (!isControlledRef.current && hoverable)
5281
+ triggerAnimation();
5282
+ onMouseEnter?.(e);
5283
+ };
5284
+ const handleMouseLeave = (e) => {
5285
+ if (!isControlledRef.current && hoverable)
5286
+ controls.start('normal');
5287
+ onMouseLeave?.(e);
5288
+ };
5289
+ const handleClick = (e) => {
5290
+ if (animateOnClick)
5291
+ triggerAnimation();
5292
+ onClick?.(e);
5293
+ };
5294
+ return (jsx("div", { className: cn$y('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "14", height: "6", x: "5", y: "14", rx: "2", variants: pathVariants$c, initial: "normal", animate: controls }), jsx(motion.rect, { width: "10", height: "6", x: "7", y: "4", rx: "2", variants: pathVariants$c, initial: "normal", animate: controls }), jsx(motion.path, { d: "M2 20h20", variants: pathVariants$c, initial: "normal", animate: controls }), jsx(motion.path, { d: "M2 10h20", variants: pathVariants$c, initial: "normal", animate: controls })] }) }));
5295
+ });
5296
+ AlignVerticalDistributeEnd.displayName = 'AlignVerticalDistributeEnd';
5297
+
5298
+ function cn$x(...inputs) {
5299
+ return twMerge(clsx(inputs));
5300
+ }
5301
+ const pathVariants$b = {
5302
+ normal: {
5303
+ opacity: 1,
5304
+ pathLength: 1,
5305
+ pathOffset: 0,
5306
+ transition: { duration: 0.4 },
5307
+ },
5308
+ animate: {
5309
+ opacity: [0, 1],
5310
+ pathLength: [0, 1],
5311
+ pathOffset: [1, 0],
5312
+ transition: {
5313
+ duration: 0.6,
5314
+ ease: 'linear',
5315
+ },
5316
+ },
5317
+ };
5318
+ const AlignVerticalDistributeStart = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5319
+ const controls = useAnimation();
5320
+ const loopRef = useRef(loopOnHover);
5321
+ const isControlledRef = useRef(false);
5322
+ const triggerAnimation = useCallback(async () => {
5323
+ await controls.start('animate');
5324
+ await controls.start('normal');
5325
+ if (loopRef.current)
5326
+ triggerAnimation();
5327
+ }, [controls]);
5328
+ useEffect(() => {
5329
+ loopRef.current = loopOnHover;
5330
+ }, [loopOnHover]);
5331
+ useEffect(() => {
5332
+ if (autoAnimateOnLoad)
5333
+ triggerAnimation();
5334
+ }, [autoAnimateOnLoad, triggerAnimation]);
5335
+ useImperativeHandle(ref, () => {
5336
+ isControlledRef.current = true;
5337
+ return {
5338
+ startAnimation: () => controls.start('animate'),
5339
+ stopAnimation: () => controls.start('normal'),
5340
+ };
5341
+ });
5342
+ const handleMouseEnter = (e) => {
5343
+ if (!isControlledRef.current && hoverable)
5344
+ triggerAnimation();
5345
+ onMouseEnter?.(e);
5346
+ };
5347
+ const handleMouseLeave = (e) => {
5348
+ if (!isControlledRef.current && hoverable)
5349
+ controls.start('normal');
5350
+ onMouseLeave?.(e);
5351
+ };
5352
+ const handleClick = (e) => {
5353
+ if (animateOnClick)
5354
+ triggerAnimation();
5355
+ onClick?.(e);
5356
+ };
5357
+ return (jsx("div", { className: cn$x('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { width: "14", height: "6", x: "5", y: "14", rx: "2", variants: pathVariants$b, initial: "normal", animate: controls }), jsx(motion.rect, { width: "10", height: "6", x: "7", y: "4", rx: "2", variants: pathVariants$b, initial: "normal", animate: controls }), jsx(motion.path, { d: "M2 14h20", variants: pathVariants$b, initial: "normal", animate: controls }), jsx(motion.path, { d: "M2 4h20", variants: pathVariants$b, initial: "normal", animate: controls })] }) }));
5358
+ });
5359
+ AlignVerticalDistributeStart.displayName = 'AlignVerticalDistributeStart';
5360
+
5361
+ function cn$w(...inputs) {
5362
+ return twMerge(clsx(inputs));
5363
+ }
5364
+ // The line will animate first
5365
+ const lineVariants$2 = {
5366
+ normal: {
5367
+ opacity: 1,
5368
+ pathLength: 1,
5369
+ pathOffset: 0,
5370
+ transition: { duration: 0.4 },
5371
+ },
5372
+ animate: {
5373
+ opacity: [0, 1],
5374
+ pathLength: [0, 1],
5375
+ pathOffset: [1, 0],
5376
+ transition: {
5377
+ duration: 0.3,
5378
+ ease: 'easeInOut',
5379
+ },
5380
+ },
5381
+ };
5382
+ // Rectangles will animate after the line
5383
+ const rectVariants$2 = {
5384
+ normal: {
5385
+ opacity: 1,
5386
+ pathLength: 1,
5387
+ pathOffset: 0,
5388
+ transition: { duration: 0.4 },
5389
+ },
5390
+ animate: {
5391
+ opacity: [0, 1],
5392
+ pathLength: [0, 1],
5393
+ pathOffset: [1, 0],
5394
+ transition: {
5395
+ duration: 0.4,
5396
+ ease: 'easeInOut',
5397
+ delay: 0.3,
5398
+ },
5399
+ },
5400
+ };
5401
+ const AlignVerticalJustifyCenter = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5402
+ const controls = useAnimation();
5403
+ const loopRef = useRef(loopOnHover);
5404
+ const isControlledRef = useRef(false);
5405
+ const triggerAnimation = useCallback(async () => {
5406
+ await controls.start('animate');
5407
+ await controls.start('normal');
5408
+ if (loopRef.current)
5409
+ triggerAnimation();
5410
+ }, [controls]);
5411
+ useEffect(() => {
5412
+ loopRef.current = loopOnHover;
5413
+ }, [loopOnHover]);
5414
+ useEffect(() => {
5415
+ if (autoAnimateOnLoad)
5416
+ triggerAnimation();
5417
+ }, [autoAnimateOnLoad, triggerAnimation]);
5418
+ useImperativeHandle(ref, () => {
5419
+ isControlledRef.current = true;
5420
+ return {
5421
+ startAnimation: () => controls.start('animate'),
5422
+ stopAnimation: () => controls.start('normal'),
5423
+ };
5424
+ });
5425
+ const handleMouseEnter = (e) => {
5426
+ if (!isControlledRef.current && hoverable)
5427
+ triggerAnimation();
5428
+ onMouseEnter?.(e);
5429
+ };
5430
+ const handleMouseLeave = (e) => {
5431
+ if (!isControlledRef.current && hoverable)
5432
+ controls.start('normal');
5433
+ onMouseLeave?.(e);
5434
+ };
5435
+ const handleClick = (e) => {
5436
+ if (animateOnClick)
5437
+ triggerAnimation();
5438
+ onClick?.(e);
5439
+ };
5440
+ return (jsx("div", { className: cn$w('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M2 12h20", variants: lineVariants$2, initial: "normal", animate: controls }), jsx(motion.rect, { width: "14", height: "6", x: "5", y: "16", rx: "2", variants: rectVariants$2, initial: "normal", animate: controls }), jsx(motion.rect, { width: "10", height: "6", x: "7", y: "2", rx: "2", variants: rectVariants$2, initial: "normal", animate: controls })] }) }));
5441
+ });
5442
+ AlignVerticalJustifyCenter.displayName = 'AlignVerticalJustifyCenter';
5443
+
5444
+ function cn$v(...inputs) {
5445
+ return twMerge(clsx(inputs));
5446
+ }
5447
+ const lineVariants$1 = {
5448
+ normal: {
5449
+ opacity: 1,
5450
+ pathLength: 1,
5451
+ pathOffset: 0,
5452
+ transition: { duration: 0.4 },
5453
+ },
5454
+ animate: {
5455
+ opacity: [0, 1],
5456
+ pathLength: [0, 1],
5457
+ pathOffset: [1, 0],
5458
+ transition: {
5459
+ duration: 0.18,
5460
+ ease: 'easeInOut',
5461
+ },
5462
+ },
5463
+ };
5464
+ const middleRectVariants = {
5465
+ normal: {
5466
+ opacity: 1,
5467
+ pathLength: 1,
5468
+ pathOffset: 0,
5469
+ transition: { duration: 0.4 },
5470
+ },
5471
+ animate: {
5472
+ opacity: [0, 1],
5473
+ pathLength: [0, 1],
5474
+ pathOffset: [1, 0],
5475
+ transition: {
5476
+ duration: 0.3,
5477
+ ease: 'easeInOut',
5478
+ delay: 0.2,
5479
+ },
5480
+ },
5481
+ };
5482
+ const topRectVariants$1 = {
5483
+ normal: {
5484
+ opacity: 1,
5485
+ pathLength: 1,
5486
+ pathOffset: 0,
5487
+ transition: { duration: 0.4 },
5488
+ },
5489
+ animate: {
5490
+ opacity: [0, 1],
5491
+ pathLength: [0, 1],
5492
+ pathOffset: [1, 0],
5493
+ transition: {
5494
+ duration: 0.2,
5495
+ ease: 'easeInOut',
5496
+ delay: 0.4,
5497
+ },
5498
+ },
5499
+ };
5500
+ const AlignVerticalJustifyEnd = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5501
+ const controls = useAnimation();
5502
+ const loopRef = useRef(loopOnHover);
5503
+ const isControlledRef = useRef(false);
5504
+ const triggerAnimation = useCallback(async () => {
5505
+ await controls.start('animate');
5506
+ await controls.start('normal');
5507
+ if (loopRef.current)
5508
+ triggerAnimation();
5509
+ }, [controls]);
5510
+ useEffect(() => {
5511
+ loopRef.current = loopOnHover;
5512
+ }, [loopOnHover]);
5513
+ useEffect(() => {
5514
+ if (autoAnimateOnLoad)
5515
+ triggerAnimation();
5516
+ }, [autoAnimateOnLoad, triggerAnimation]);
5517
+ useImperativeHandle(ref, () => {
5518
+ isControlledRef.current = true;
5519
+ return {
5520
+ startAnimation: () => controls.start('animate'),
5521
+ stopAnimation: () => controls.start('normal'),
5522
+ };
5523
+ });
5524
+ const handleMouseEnter = (e) => {
5525
+ if (!isControlledRef.current && hoverable)
5526
+ triggerAnimation();
5527
+ onMouseEnter?.(e);
5528
+ };
5529
+ const handleMouseLeave = (e) => {
5530
+ if (!isControlledRef.current && hoverable)
5531
+ controls.start('normal');
5532
+ onMouseLeave?.(e);
5533
+ };
5534
+ const handleClick = (e) => {
5535
+ if (animateOnClick)
5536
+ triggerAnimation();
5537
+ onClick?.(e);
5538
+ };
5539
+ return (jsx("div", { className: cn$v('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M2 22h20", variants: lineVariants$1, initial: "normal", animate: controls }), jsx(motion.rect, { width: "14", height: "6", x: "5", y: "12", rx: "2", variants: middleRectVariants, initial: "normal", animate: controls }), jsx(motion.rect, { width: "10", height: "6", x: "7", y: "2", rx: "2", variants: topRectVariants$1, initial: "normal", animate: controls })] }) }));
5540
+ });
5541
+ AlignVerticalJustifyEnd.displayName = 'AlignVerticalJustifyEnd';
5542
+
5543
+ function cn$u(...inputs) {
5544
+ return twMerge(clsx(inputs));
5545
+ }
5546
+ // Top line will animate first - 0.25 seconds
5547
+ const lineVariants = {
5548
+ normal: {
5549
+ opacity: 1,
5550
+ pathLength: 1,
5551
+ pathOffset: 0,
5552
+ transition: { duration: 0.3 },
5553
+ },
5554
+ animate: {
5555
+ opacity: [0, 1],
5556
+ pathLength: [0, 1],
5557
+ pathOffset: [1, 0],
5558
+ transition: {
5559
+ duration: 0.25,
5560
+ ease: 'easeOut',
5561
+ },
5562
+ },
5563
+ };
5564
+ // Middle rectangle animates second - 0.25 seconds (starting at 0.2s)
5565
+ const topRectVariants = {
5566
+ normal: {
5567
+ opacity: 1,
5568
+ pathLength: 1,
5569
+ pathOffset: 0,
5570
+ transition: { duration: 0.3 },
5571
+ },
5572
+ animate: {
5573
+ opacity: [0, 1],
5574
+ pathLength: [0, 1],
5575
+ pathOffset: [1, 0],
5576
+ transition: {
5577
+ duration: 0.25,
5578
+ ease: 'easeOut',
5579
+ delay: 0.2, // Slight overlap with first animation
5580
+ },
5581
+ },
5582
+ };
5583
+ // Bottom rectangle animates last - 0.25 seconds (starting at 0.45s)
5584
+ const bottomRectVariants = {
5585
+ normal: {
5586
+ opacity: 1,
5587
+ pathLength: 1,
5588
+ pathOffset: 0,
5589
+ transition: { duration: 0.3 },
5590
+ },
5591
+ animate: {
5592
+ opacity: [0, 1],
5593
+ pathLength: [0, 1],
5594
+ pathOffset: [1, 0],
5595
+ transition: {
5596
+ duration: 0.25,
5597
+ ease: 'easeOut',
5598
+ delay: 0.45, // Starts when middle rectangle is mostly done
5599
+ },
5600
+ },
5601
+ };
5602
+ const AlignVerticalJustifyStart = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5603
+ const controls = useAnimation();
5604
+ const loopRef = useRef(loopOnHover);
5605
+ const isControlledRef = useRef(false);
5606
+ const triggerAnimation = useCallback(async () => {
5607
+ await controls.start('animate');
5608
+ await controls.start('normal');
5609
+ if (loopRef.current)
5610
+ triggerAnimation();
5611
+ }, [controls]);
5612
+ useEffect(() => {
5613
+ loopRef.current = loopOnHover;
5614
+ }, [loopOnHover]);
5615
+ useEffect(() => {
5616
+ if (autoAnimateOnLoad)
5617
+ triggerAnimation();
5618
+ }, [autoAnimateOnLoad, triggerAnimation]);
5619
+ useImperativeHandle(ref, () => {
5620
+ isControlledRef.current = true;
5621
+ return {
5622
+ startAnimation: () => controls.start('animate'),
5623
+ stopAnimation: () => controls.start('normal'),
5624
+ };
5625
+ });
5626
+ const handleMouseEnter = (e) => {
5627
+ if (!isControlledRef.current && hoverable)
5628
+ triggerAnimation();
5629
+ onMouseEnter?.(e);
5630
+ };
5631
+ const handleMouseLeave = (e) => {
5632
+ if (!isControlledRef.current && hoverable)
5633
+ controls.start('normal');
5634
+ onMouseLeave?.(e);
5635
+ };
5636
+ const handleClick = (e) => {
5637
+ if (animateOnClick)
5638
+ triggerAnimation();
5639
+ onClick?.(e);
5640
+ };
5641
+ return (jsx("div", { className: cn$u('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M2 2h20", variants: lineVariants, initial: "normal", animate: controls }), jsx(motion.rect, { width: "10", height: "6", x: "7", y: "6", rx: "2", variants: topRectVariants, initial: "normal", animate: controls }), jsx(motion.rect, { width: "14", height: "6", x: "5", y: "16", rx: "2", variants: bottomRectVariants, initial: "normal", animate: controls })] }) }));
5642
+ });
5643
+ AlignVerticalJustifyStart.displayName = 'AlignVerticalJustifyStart';
5644
+
5645
+ function cn$t(...inputs) {
5646
+ return twMerge(clsx(inputs));
5647
+ }
5648
+ const linesVariants$1 = {
5649
+ normal: {
5650
+ opacity: 1,
5651
+ pathLength: 1,
5652
+ pathOffset: 0,
5653
+ transition: { duration: 0.4 },
5654
+ },
5655
+ animate: {
5656
+ opacity: [0, 1],
5657
+ pathLength: [0, 1],
5658
+ pathOffset: [1, 0],
5659
+ transition: {
5660
+ duration: 0.37,
5661
+ ease: 'easeInOut',
5662
+ },
5663
+ },
5664
+ };
5665
+ const rectVariants$1 = {
5666
+ normal: {
5667
+ opacity: 1,
5668
+ pathLength: 1,
5669
+ pathOffset: 0,
5670
+ transition: { duration: 0.4 },
5671
+ },
5672
+ animate: {
5673
+ opacity: [0, 1],
5674
+ pathLength: [0, 1],
5675
+ pathOffset: [1, 0],
5676
+ transition: {
5677
+ duration: 0.2,
5678
+ ease: 'easeInOut',
5679
+ delay: 0.33,
5680
+ },
5681
+ },
5682
+ };
5683
+ const AlignVerticalSpaceAround = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5684
+ const controls = useAnimation();
5685
+ const loopRef = useRef(loopOnHover);
5686
+ const isControlledRef = useRef(false);
5687
+ const triggerAnimation = useCallback(async () => {
5688
+ await controls.start('animate');
5689
+ await controls.start('normal');
5690
+ if (loopRef.current)
5691
+ triggerAnimation();
5692
+ }, [controls]);
5693
+ useEffect(() => {
5694
+ loopRef.current = loopOnHover;
5695
+ }, [loopOnHover]);
5696
+ useEffect(() => {
5697
+ if (autoAnimateOnLoad)
5698
+ triggerAnimation();
5699
+ }, [autoAnimateOnLoad, triggerAnimation]);
5700
+ useImperativeHandle(ref, () => {
5701
+ isControlledRef.current = true;
5702
+ return {
5703
+ startAnimation: () => controls.start('animate'),
5704
+ stopAnimation: () => controls.start('normal'),
5705
+ };
5706
+ });
5707
+ const handleMouseEnter = (e) => {
5708
+ if (!isControlledRef.current && hoverable)
5709
+ triggerAnimation();
5710
+ onMouseEnter?.(e);
5711
+ };
5712
+ const handleMouseLeave = (e) => {
5713
+ if (!isControlledRef.current && hoverable)
5714
+ controls.start('normal');
5715
+ onMouseLeave?.(e);
5716
+ };
5717
+ const handleClick = (e) => {
5718
+ if (animateOnClick)
5719
+ triggerAnimation();
5720
+ onClick?.(e);
5721
+ };
5722
+ return (jsx("div", { className: cn$t('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M22 4H2", variants: linesVariants$1, initial: "normal", animate: controls }), jsx(motion.path, { d: "M22 20H2", variants: linesVariants$1, initial: "normal", animate: controls }), jsx(motion.rect, { width: "10", height: "6", x: "7", y: "9", rx: "2", variants: rectVariants$1, initial: "normal", animate: controls })] }) }));
5723
+ });
5724
+ AlignVerticalSpaceAround.displayName = 'AlignVerticalSpaceAround';
5725
+
5726
+ function cn$s(...inputs) {
5727
+ return twMerge(clsx(inputs));
5728
+ }
5729
+ const linesVariants = {
5730
+ normal: {
5731
+ opacity: 1,
5732
+ pathLength: 1,
5733
+ pathOffset: 0,
5734
+ transition: { duration: 0.4 },
5735
+ },
5736
+ animate: {
5737
+ opacity: [0, 1],
5738
+ pathLength: [0, 1],
5739
+ pathOffset: [1, 0],
5740
+ transition: {
5741
+ duration: 0.37,
5742
+ ease: 'easeInOut',
5743
+ },
5744
+ },
5745
+ };
5746
+ const rectVariants = {
5747
+ normal: {
5748
+ opacity: 1,
5749
+ pathLength: 1,
5750
+ pathOffset: 0,
5751
+ transition: { duration: 0.4 },
5752
+ },
5753
+ animate: {
5754
+ opacity: [0, 1],
5755
+ pathLength: [0, 1],
5756
+ pathOffset: [1, 0],
5757
+ transition: {
5758
+ duration: 0.2,
5759
+ ease: 'easeInOut',
5760
+ delay: 0.33,
5761
+ },
5762
+ },
5763
+ };
5764
+ const AlignVerticalSpaceBetween = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5765
+ const controls = useAnimation();
5766
+ const loopRef = useRef(loopOnHover);
5767
+ const isControlledRef = useRef(false);
5768
+ const triggerAnimation = useCallback(async () => {
5769
+ await controls.start('animate');
5770
+ await controls.start('normal');
5771
+ if (loopRef.current)
5772
+ triggerAnimation();
5773
+ }, [controls]);
5774
+ useEffect(() => {
5775
+ loopRef.current = loopOnHover;
5776
+ }, [loopOnHover]);
5777
+ useEffect(() => {
5778
+ if (autoAnimateOnLoad)
5779
+ triggerAnimation();
5780
+ }, [autoAnimateOnLoad, triggerAnimation]);
5781
+ useImperativeHandle(ref, () => {
5782
+ isControlledRef.current = true;
5783
+ return {
5784
+ startAnimation: () => controls.start('animate'),
5785
+ stopAnimation: () => controls.start('normal'),
5786
+ };
5787
+ });
5788
+ const handleMouseEnter = (e) => {
5789
+ if (!isControlledRef.current && hoverable)
5790
+ triggerAnimation();
5791
+ onMouseEnter?.(e);
5792
+ };
5793
+ const handleMouseLeave = (e) => {
5794
+ if (!isControlledRef.current && hoverable)
5795
+ controls.start('normal');
5796
+ onMouseLeave?.(e);
5797
+ };
5798
+ const handleClick = (e) => {
5799
+ if (animateOnClick)
5800
+ triggerAnimation();
5801
+ onClick?.(e);
5802
+ };
5803
+ return (jsx("div", { className: cn$s('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M2 21h20", variants: linesVariants, initial: "normal", animate: controls }), jsx(motion.path, { d: "M2 3h20", variants: linesVariants, initial: "normal", animate: controls }), jsx(motion.rect, { width: "14", height: "6", x: "5", y: "15", rx: "2", variants: rectVariants, initial: "normal", animate: controls }), jsx(motion.rect, { width: "10", height: "6", x: "7", y: "3", rx: "2", variants: rectVariants, initial: "normal", animate: controls })] }) }));
5804
+ });
5805
+ AlignVerticalSpaceBetween.displayName = 'AlignVerticalSpaceBetween';
5806
+
5807
+ function cn$r(...inputs) {
5808
+ return twMerge(clsx(inputs));
5809
+ }
5810
+ const pathVariants$a = {
5811
+ normal: (custom) => ({
5812
+ pathLength: 1,
5813
+ opacity: 1,
5814
+ pathOffset: 0,
5815
+ transition: {
5816
+ duration: 0.3,
5817
+ ease: 'easeInOut',
5818
+ delay: custom,
5819
+ },
5820
+ }),
5821
+ animate: (custom) => ({
5822
+ pathLength: [0, 1],
5823
+ opacity: [0, 1],
5824
+ pathOffset: [1, 0],
5825
+ transition: {
5826
+ duration: 0.6,
5827
+ ease: 'easeInOut',
5828
+ delay: custom,
5829
+ },
5830
+ }),
5831
+ };
5832
+ const Ampersand = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5833
+ const controls = useAnimation();
5834
+ const loopRef = useRef(loopOnHover);
5835
+ const isControlledRef = useRef(false);
5836
+ // Imperative handle for external control
5837
+ useImperativeHandle(ref, () => {
5838
+ isControlledRef.current = true;
5839
+ return {
5840
+ startAnimation: () => controls.start('animate'),
5841
+ stopAnimation: () => controls.start('normal'),
5842
+ };
5843
+ });
5844
+ // Loop animation if loopOnHover is true
5845
+ const triggerAnimation = useCallback(async () => {
5846
+ await controls.start('animate');
5847
+ await controls.start('normal');
5848
+ if (loopRef.current)
5849
+ triggerAnimation();
5850
+ }, [controls]);
5851
+ useEffect(() => {
5852
+ loopRef.current = loopOnHover;
5853
+ }, [loopOnHover]);
5854
+ useEffect(() => {
5855
+ if (autoAnimateOnLoad) {
5856
+ triggerAnimation();
5857
+ }
5858
+ }, [autoAnimateOnLoad, triggerAnimation]);
5859
+ const handleMouseEnter = useCallback((e) => {
5860
+ if (hoverable && !isControlledRef.current) {
5861
+ triggerAnimation();
5862
+ }
5863
+ onMouseEnter?.(e);
5864
+ }, [hoverable, onMouseEnter, triggerAnimation]);
5865
+ const handleMouseLeave = useCallback((e) => {
5866
+ if (hoverable && !isControlledRef.current) {
5867
+ controls.start('normal');
5868
+ }
5869
+ onMouseLeave?.(e);
5870
+ }, [hoverable, onMouseLeave, controls]);
5871
+ const handleClick = useCallback((e) => {
5872
+ if (animateOnClick && !isControlledRef.current) {
5873
+ triggerAnimation();
5874
+ }
5875
+ onClick?.(e);
5876
+ }, [animateOnClick, onClick, triggerAnimation]);
5877
+ return (jsx("div", { className: cn$r(className), style: {
5878
+ width: size,
5879
+ height: size,
5880
+ display: 'inline-block',
5881
+ ...style,
5882
+ }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M17.5 12c0 4.4-3.6 8-8 8A4.5 4.5 0 0 1 5 15.5c0-6 8-4 8-8.5a3 3 0 1 0-6 0c0 3 2.5 8.5 12 13", variants: pathVariants$a, initial: "normal", animate: controls, custom: 0 }), jsx(motion.path, { d: "M16 12h3", variants: pathVariants$a, initial: "normal", animate: controls, custom: 0.2 })] }) }));
5883
+ });
5884
+ Ampersand.displayName = 'Ampersand';
5885
+
5886
+ function cn$q(...inputs) {
5887
+ return twMerge(clsx(inputs));
5888
+ }
5889
+ const pathVariants$9 = {
5890
+ normal: {
5891
+ pathLength: 1,
5892
+ pathOffset: 0,
5893
+ opacity: 1,
5894
+ transition: { duration: 0.4 },
5895
+ },
5896
+ animate: {
5897
+ pathLength: [0, 1],
5898
+ pathOffset: [1, 0],
5899
+ opacity: [0, 1],
5900
+ transition: {
5901
+ duration: 0.7,
5902
+ ease: 'easeInOut',
5903
+ },
5904
+ },
5905
+ };
5906
+ const Ampersands = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5907
+ const controls = useAnimation();
5908
+ const loopRef = useRef(loopOnHover);
5909
+ const isControlledRef = useRef(false);
5910
+ const triggerAnimation = useCallback(async () => {
5911
+ await controls.start('animate');
5912
+ await controls.start('normal');
5913
+ if (loopRef.current)
5914
+ triggerAnimation();
5915
+ }, [controls]);
5916
+ useEffect(() => {
5917
+ loopRef.current = loopOnHover;
5918
+ }, [loopOnHover]);
5919
+ useEffect(() => {
5920
+ if (autoAnimateOnLoad)
5921
+ triggerAnimation();
5922
+ }, [autoAnimateOnLoad, triggerAnimation]);
5923
+ useImperativeHandle(ref, () => {
5924
+ isControlledRef.current = true;
5925
+ return {
5926
+ startAnimation: () => controls.start('animate'),
5927
+ stopAnimation: () => controls.start('normal'),
5928
+ };
5929
+ });
5930
+ const handleMouseEnter = (e) => {
5931
+ if (!isControlledRef.current && hoverable)
5932
+ triggerAnimation();
5933
+ onMouseEnter?.(e);
5934
+ };
5935
+ const handleMouseLeave = (e) => {
5936
+ if (!isControlledRef.current && hoverable)
5937
+ controls.start('normal');
5938
+ onMouseLeave?.(e);
5939
+ };
5940
+ const handleClick = (e) => {
5941
+ if (animateOnClick)
5942
+ triggerAnimation();
5943
+ onClick?.(e);
5944
+ };
5945
+ return (jsx("div", { className: cn$q('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M10 17c-5-3-7-7-7-9a2 2 0 0 1 4 0c0 2.5-5 2.5-5 6 0 1.7 1.3 3 3 3 2.8 0 5-2.2 5-5", variants: pathVariants$9, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M22 17c-5-3-7-7-7-9a2 2 0 0 1 4 0c0 2.5-5 2.5-5 6 0 1.7 1.3 3 3 3 2.8 0 5-2.2 5-5", variants: pathVariants$9, animate: controls, initial: "normal" })] }) }));
5946
+ });
5947
+ Ampersands.displayName = 'Ampersands';
5948
+
5949
+ function cn$p(...inputs) {
5950
+ return twMerge(clsx(inputs));
5951
+ }
5952
+ const pathVariants$8 = {
5953
+ normal: {
5954
+ pathLength: 1,
5955
+ pathOffset: 0,
5956
+ opacity: 1,
5957
+ transition: { duration: 0.4 },
5958
+ },
5959
+ animate: {
5960
+ pathLength: [0, 1],
5961
+ pathOffset: [1, 0],
5962
+ opacity: [0, 1],
5963
+ transition: {
5964
+ duration: 0.7,
5965
+ ease: 'easeInOut',
5966
+ },
5967
+ },
5968
+ };
5969
+ const Apple = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
5970
+ const controls = useAnimation();
5971
+ const loopRef = useRef(loopOnHover);
5972
+ const isControlledRef = useRef(false);
5973
+ const triggerAnimation = useCallback(async () => {
5974
+ await controls.start('animate');
5975
+ await controls.start('normal');
5976
+ if (loopRef.current)
5977
+ triggerAnimation();
5978
+ }, [controls]);
5979
+ useEffect(() => {
5980
+ loopRef.current = loopOnHover;
5981
+ }, [loopOnHover]);
5982
+ useEffect(() => {
5983
+ if (autoAnimateOnLoad)
5984
+ triggerAnimation();
5985
+ }, [autoAnimateOnLoad, triggerAnimation]);
5986
+ useImperativeHandle(ref, () => {
5987
+ isControlledRef.current = true;
5988
+ return {
5989
+ startAnimation: () => controls.start('animate'),
5990
+ stopAnimation: () => controls.start('normal'),
5991
+ };
5992
+ });
5993
+ const handleMouseEnter = (e) => {
5994
+ if (!isControlledRef.current && hoverable)
5995
+ triggerAnimation();
5996
+ onMouseEnter?.(e);
5997
+ };
5998
+ const handleMouseLeave = (e) => {
5999
+ if (!isControlledRef.current && hoverable)
6000
+ controls.start('normal');
6001
+ onMouseLeave?.(e);
6002
+ };
6003
+ const handleClick = (e) => {
6004
+ if (animateOnClick)
6005
+ triggerAnimation();
6006
+ onClick?.(e);
6007
+ };
6008
+ return (jsx("div", { className: cn$p('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M12 20.94c1.5 0 2.75 1.06 4 1.06 3 0 6-8 6-12.22A4.91 4.91 0 0 0 17 5c-2.22 0-4 1.44-5 2-1-.56-2.78-2-5-2a4.9 4.9 0 0 0-5 4.78C2 14 5 22 8 22c1.25 0 2.5-1.06 4-1.06Z", variants: pathVariants$8, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M10 2c1 .5 2 2 2 5", variants: pathVariants$8, animate: controls, initial: "normal" })] }) }));
6009
+ });
6010
+ Apple.displayName = 'Apple';
6011
+
6012
+ function cn$o(...inputs) {
6013
+ return twMerge(clsx(inputs));
6014
+ }
6015
+ const draw = {
6016
+ normal: { pathLength: 1, opacity: 1, transition: { duration: 0.4 } },
6017
+ animate: {
6018
+ pathLength: [0, 1],
6019
+ opacity: [0, 1],
6020
+ transition: { duration: 0.8, ease: 'easeInOut' },
6021
+ },
6022
+ };
6023
+ const Ambulance = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6024
+ const controls = useAnimation();
6025
+ const loopRef = useRef(loopOnHover);
6026
+ const isControlledRef = useRef(false);
6027
+ const triggerAnimation = useCallback(async () => {
6028
+ await controls.start('animate');
6029
+ await controls.start('normal');
6030
+ if (loopRef.current)
6031
+ triggerAnimation();
6032
+ }, [controls]);
6033
+ useEffect(() => {
6034
+ loopRef.current = loopOnHover;
6035
+ }, [loopOnHover]);
6036
+ useEffect(() => {
6037
+ if (autoAnimateOnLoad)
6038
+ triggerAnimation();
6039
+ }, [autoAnimateOnLoad, triggerAnimation]);
6040
+ useImperativeHandle(ref, () => {
6041
+ isControlledRef.current = true;
6042
+ return {
6043
+ startAnimation: () => controls.start('animate'),
6044
+ stopAnimation: () => controls.start('normal'),
6045
+ };
6046
+ });
6047
+ const handleMouseEnter = (e) => {
6048
+ if (!isControlledRef.current && hoverable)
6049
+ triggerAnimation();
6050
+ onMouseEnter?.(e);
6051
+ };
6052
+ const handleMouseLeave = (e) => {
6053
+ if (!isControlledRef.current && hoverable)
6054
+ controls.start('normal');
6055
+ onMouseLeave?.(e);
6056
+ };
6057
+ const handleClick = (e) => {
6058
+ if (animateOnClick)
6059
+ triggerAnimation();
6060
+ onClick?.(e);
6061
+ };
6062
+ return (jsx("div", { className: cn$o('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M10 10H6", variants: draw, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2", variants: draw, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M19 18h2a1 1 0 0 0 1-1v-3.28a1 1 0 0 0-.684-.948l-1.923-.641a1 1 0 0 1-.578-.502l-1.539-3.076A1 1 0 0 0 16.382 8H14", variants: draw, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M8 8v4", variants: draw, animate: controls, initial: "normal" }), jsx(motion.path, { d: "M9 18h6", variants: draw, animate: controls, initial: "normal" }), jsx(motion.circle, { cx: "17", cy: "18", r: "2", animate: { scale: [1, 1.2, 1], fill: ['#000', '#000', '#000'] }, transition: { repeat: Infinity, duration: 1 } }), jsx(motion.circle, { cx: "7", cy: "18", r: "2", animate: { scale: [1, 1.2, 1], fill: ['#000', '#000', '#000'] }, transition: { repeat: Infinity, duration: 1, delay: 0.3 } })] }) }));
6063
+ });
6064
+ Ambulance.displayName = 'Ambulance';
6065
+
6066
+ function cn$n(...inputs) {
6067
+ return twMerge(clsx(inputs));
6068
+ }
6069
+ const DURATION$2 = 0.7;
6070
+ const faceVariants$1 = {
6071
+ normal: { scale: 1 },
6072
+ animate: {
6073
+ scale: [1, 1.1, 0.95, 1.1, 1],
6074
+ transition: { duration: DURATION$2, ease: 'easeInOut' },
6075
+ },
6076
+ };
6077
+ const eyebrowVariants = {
6078
+ normal: { y: 0 },
6079
+ animate: {
6080
+ y: [-1, -3, -1],
6081
+ transition: { duration: DURATION$2, ease: 'easeOut' },
6082
+ },
6083
+ };
6084
+ const eyeVariants = {
6085
+ normal: { scale: 1 },
6086
+ animate: {
6087
+ scale: [1, 0.6, 1.2, 1],
6088
+ transition: { duration: DURATION$2, ease: 'easeInOut' },
6089
+ },
6090
+ };
6091
+ const mouthVariants$1 = {
6092
+ normal: { x: 0 },
6093
+ animate: {
6094
+ x: [-0.5, 0.5, -0.3, 0],
6095
+ transition: { duration: DURATION$2, ease: 'easeInOut' },
6096
+ },
6097
+ };
6098
+ const Angry = forwardRef(({ className, size = 28, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, style, ...props }, ref) => {
6099
+ const controls = useAnimation();
6100
+ const loopRef = useRef(loopOnHover);
6101
+ const isControlledRef = useRef(false);
6102
+ const triggerAnimation = useCallback(async () => {
6103
+ await controls.start('animate');
6104
+ await controls.start('normal');
6105
+ if (loopRef.current)
6106
+ triggerAnimation();
6107
+ }, [controls]);
6108
+ useEffect(() => {
6109
+ loopRef.current = loopOnHover;
6110
+ }, [loopOnHover]);
6111
+ useEffect(() => {
6112
+ if (autoAnimateOnLoad)
6113
+ triggerAnimation();
6114
+ }, [autoAnimateOnLoad, triggerAnimation]);
6115
+ useImperativeHandle(ref, () => {
6116
+ isControlledRef.current = true;
6117
+ return {
6118
+ startAnimation: () => controls.start('animate'),
6119
+ stopAnimation: () => controls.start('normal'),
6120
+ };
6121
+ });
6122
+ const handleMouseEnter = (e) => {
6123
+ if (!isControlledRef.current && hoverable)
6124
+ triggerAnimation();
6125
+ onMouseEnter?.(e);
6126
+ };
6127
+ const handleMouseLeave = (e) => {
6128
+ if (!isControlledRef.current && hoverable)
6129
+ controls.start('normal');
6130
+ onMouseLeave?.(e);
6131
+ };
6132
+ const handleClick = (e) => {
6133
+ if (animateOnClick)
6134
+ triggerAnimation();
6135
+ onClick?.(e);
6136
+ };
6137
+ return (jsx("div", { className: cn$n('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs(motion.svg, { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", initial: "normal", animate: controls, children: [jsx(motion.circle, { cx: "12", cy: "12", r: "10", variants: faceVariants$1 }), jsx(motion.path, { d: "M16 16s-1.5-2-4-2-4 2-4 2", variants: mouthVariants$1 }), jsx(motion.path, { d: "M7.5 8 10 9", variants: eyebrowVariants }), jsx(motion.path, { d: "m14 9 2.5-1", variants: eyebrowVariants }), jsx(motion.path, { d: "M9 10h.01", variants: eyeVariants }), jsx(motion.path, { d: "M15 10h.01", variants: eyeVariants })] }) }));
6138
+ });
6139
+ Angry.displayName = 'Angry';
6140
+
6141
+ function cn$m(...inputs) {
6142
+ return twMerge(clsx(inputs));
6143
+ }
6144
+ const pathVariants$7 = {
6145
+ normal: {
6146
+ opacity: 1,
6147
+ pathLength: 1,
6148
+ pathOffset: 0,
6149
+ transition: { duration: 0.4 },
6150
+ },
6151
+ animate: {
6152
+ opacity: [0, 1],
6153
+ pathLength: [0, 1],
6154
+ pathOffset: [1, 0],
6155
+ transition: {
6156
+ duration: 0.6,
6157
+ ease: 'linear',
6158
+ },
6159
+ },
6160
+ };
6161
+ const Amphora = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6162
+ const controls = useAnimation();
6163
+ const loopRef = useRef(loopOnHover);
6164
+ const isControlledRef = useRef(false);
6165
+ const triggerAnimation = useCallback(async () => {
6166
+ await controls.start('animate');
6167
+ await controls.start('normal');
6168
+ if (loopRef.current)
6169
+ triggerAnimation();
6170
+ }, [controls]);
6171
+ useEffect(() => {
6172
+ loopRef.current = loopOnHover;
6173
+ }, [loopOnHover]);
6174
+ useEffect(() => {
6175
+ if (autoAnimateOnLoad)
6176
+ triggerAnimation();
6177
+ }, [autoAnimateOnLoad, triggerAnimation]);
6178
+ useImperativeHandle(ref, () => {
6179
+ isControlledRef.current = true;
6180
+ return {
6181
+ startAnimation: () => controls.start('animate'),
6182
+ stopAnimation: () => controls.start('normal'),
6183
+ };
6184
+ });
6185
+ const handleMouseEnter = (e) => {
6186
+ if (!isControlledRef.current && hoverable)
6187
+ triggerAnimation();
6188
+ onMouseEnter?.(e);
6189
+ };
6190
+ const handleMouseLeave = (e) => {
6191
+ if (!isControlledRef.current && hoverable)
6192
+ controls.start('normal');
6193
+ onMouseLeave?.(e);
6194
+ };
6195
+ const handleClick = (e) => {
6196
+ if (animateOnClick)
6197
+ triggerAnimation();
6198
+ onClick?.(e);
6199
+ };
6200
+ return (jsx("div", { className: cn$m('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M10 2v5.632c0 .424-.272.795-.653.982A6 6 0 0 0 6 14c.006 4 3 7 5 8", variants: pathVariants$7, initial: "normal", animate: controls }), jsx(motion.path, { d: "M10 5H8a2 2 0 0 0 0 4h.68", variants: pathVariants$7, initial: "normal", animate: controls }), jsx(motion.path, { d: "M14 2v5.632c0 .424.272.795.652.982A6 6 0 0 1 18 14c0 4-3 7-5 8", variants: pathVariants$7, initial: "normal", animate: controls }), jsx(motion.path, { d: "M14 5h2a2 2 0 0 1 0 4h-.68", variants: pathVariants$7, initial: "normal", animate: controls }), jsx(motion.path, { d: "M18 22H6", variants: pathVariants$7, initial: "normal", animate: controls }), jsx(motion.path, { d: "M9 2h6", variants: pathVariants$7, initial: "normal", animate: controls })] }) }));
6201
+ });
6202
+ Amphora.displayName = 'Amphora';
6203
+
6204
+ function cn$l(...inputs) {
6205
+ return twMerge(clsx(inputs));
6206
+ }
6207
+ const Anchor = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6208
+ const controls = useAnimation();
6209
+ const loopRef = useRef(loopOnHover);
6210
+ const isControlledRef = useRef(false);
6211
+ const triggerAnimation = useCallback(async () => {
6212
+ await controls.start('animate1');
6213
+ await controls.start('normal');
6214
+ if (loopRef.current)
6215
+ triggerAnimation();
6216
+ }, [controls]);
6217
+ useEffect(() => {
6218
+ loopRef.current = loopOnHover;
6219
+ }, [loopOnHover]);
6220
+ useEffect(() => {
6221
+ if (autoAnimateOnLoad)
6222
+ triggerAnimation();
6223
+ }, [autoAnimateOnLoad, triggerAnimation]);
6224
+ useImperativeHandle(ref, () => {
6225
+ isControlledRef.current = true;
6226
+ return {
6227
+ startAnimation: () => triggerAnimation(),
6228
+ stopAnimation: () => controls.start('normal'),
6229
+ };
6230
+ });
6231
+ const handleMouseEnter = (e) => {
6232
+ if (!isControlledRef.current && hoverable)
6233
+ triggerAnimation();
6234
+ onMouseEnter?.(e);
6235
+ };
6236
+ const handleMouseLeave = (e) => {
6237
+ if (!isControlledRef.current && hoverable)
6238
+ controls.start('normal');
6239
+ onMouseLeave?.(e);
6240
+ };
6241
+ const handleClick = (e) => {
6242
+ if (animateOnClick)
6243
+ triggerAnimation();
6244
+ onClick?.(e);
6245
+ };
6246
+ const pathVariants = {
6247
+ normal: {
6248
+ opacity: 1,
6249
+ pathLength: 1,
6250
+ pathOffset: 0,
6251
+ transition: { duration: 0.1 },
6252
+ },
6253
+ animate1: {
6254
+ opacity: [0, 1],
6255
+ pathLength: [0, 1],
6256
+ pathOffset: [1, 0],
6257
+ transition: {
6258
+ duration: 0.3,
6259
+ ease: 'linear',
6260
+ },
6261
+ }
6262
+ };
6263
+ return (jsx("div", { className: cn$l('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M12 22V8", variants: pathVariants, initial: "normal", animate: controls }), jsx(motion.path, { d: "M5 12H2a10 10 0 0 0 20 0h-3", variants: pathVariants, initial: "normal", animate: controls }), jsx(motion.circle, { cx: "12", cy: "5", r: "3", variants: pathVariants, initial: "normal", animate: controls })] }) }));
6264
+ });
6265
+ Anchor.displayName = 'Anchor';
6266
+
6267
+ function cn$k(...inputs) {
6268
+ return twMerge(clsx(inputs));
6269
+ }
6270
+ const DURATION$1 = 0.7;
6271
+ const faceVariants = {
6272
+ normal: { scale: 1 },
6273
+ animate: {
6274
+ scale: [1, 1.1, 0.95, 1.1, 1],
6275
+ transition: { duration: DURATION$1, ease: 'easeInOut' },
6276
+ },
6277
+ };
6278
+ const mouthVariants = {
6279
+ normal: { x: 0 },
6280
+ animate: {
6281
+ x: [-1, 1, -0.5, 0],
6282
+ transition: { duration: DURATION$1, ease: 'easeInOut' },
6283
+ },
6284
+ };
6285
+ const leftEyeVariants = {
6286
+ normal: { y: 0 },
6287
+ animate: {
6288
+ y: [-1, -3, -1],
6289
+ transition: { duration: DURATION$1, ease: 'easeOut' },
6290
+ },
6291
+ };
6292
+ const rightEyeVariants = {
6293
+ normal: { y: 0 },
6294
+ animate: {
6295
+ y: [-1, -2, -1],
6296
+ transition: { duration: DURATION$1, ease: 'easeOut' },
6297
+ },
6298
+ };
6299
+ const Annoyed = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, animationTrigger = 'hover', delay = 0, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6300
+ const controls = useAnimation();
6301
+ const loopRef = useRef(loopOnHover);
6302
+ const timeoutRef = useRef(null);
6303
+ const isControlledRef = useRef(false);
6304
+ const triggerAnimation = useCallback(async () => {
6305
+ await controls.start('animate');
6306
+ if (!loopRef.current) {
6307
+ await controls.start('normal');
6308
+ }
6309
+ else {
6310
+ // If looping, recursively call
6311
+ triggerAnimation();
6312
+ }
6313
+ }, [controls]);
6314
+ useEffect(() => {
6315
+ loopRef.current = loopOnHover;
6316
+ }, [loopOnHover]);
6317
+ useEffect(() => {
6318
+ if (autoAnimateOnLoad || animationTrigger === 'load') {
6319
+ timeoutRef.current = setTimeout(() => {
6320
+ triggerAnimation();
6321
+ }, delay);
6322
+ }
6323
+ return () => {
6324
+ if (timeoutRef.current)
6325
+ clearTimeout(timeoutRef.current);
6326
+ };
6327
+ }, [autoAnimateOnLoad, animationTrigger, delay, triggerAnimation]);
6328
+ useImperativeHandle(ref, () => {
6329
+ isControlledRef.current = true;
6330
+ return {
6331
+ startAnimation: () => controls.start('animate'),
6332
+ stopAnimation: () => controls.start('normal'),
6333
+ };
6334
+ });
6335
+ const handleMouseEnter = (e) => {
6336
+ if (!isControlledRef.current && hoverable && animationTrigger === 'hover') {
6337
+ triggerAnimation();
6338
+ }
6339
+ onMouseEnter?.(e);
6340
+ };
6341
+ const handleMouseLeave = (e) => {
6342
+ if (!isControlledRef.current && hoverable && animationTrigger === 'hover' && !loopOnHover) {
6343
+ controls.start('normal');
6344
+ }
6345
+ onMouseLeave?.(e);
6346
+ };
6347
+ const handleClick = (e) => {
6348
+ if ((!isControlledRef.current && animateOnClick) || animationTrigger === 'click') {
6349
+ triggerAnimation();
6350
+ }
6351
+ onClick?.(e);
6352
+ };
6353
+ return (jsx("div", { className: cn$k('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs(motion.svg, { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", animate: controls, initial: "normal", children: [jsx(motion.circle, { cx: "12", cy: "12", r: "10", variants: faceVariants }), jsx(motion.path, { d: "M8 15h8", variants: mouthVariants }), jsx(motion.path, { d: "M8 9h2", variants: leftEyeVariants }), jsx(motion.path, { d: "M14 9h2", variants: rightEyeVariants })] }) }));
6354
+ });
6355
+ Annoyed.displayName = 'Annoyed';
6356
+
6357
+ function cn$j(...inputs) {
6358
+ return twMerge(clsx(inputs));
6359
+ }
6360
+ const DURATION = 1.2;
6361
+ // Animate the antenna lines "wiggle" side to side
6362
+ const pathVariants$6 = {
6363
+ normal: { rotate: 0, originX: '50%', originY: '100%' },
6364
+ animate: {
6365
+ rotate: [0, 10, -10, 10, 0],
6366
+ transition: { duration: DURATION, ease: 'easeInOut', repeat: Infinity },
6367
+ },
6368
+ };
6369
+ // Animate the horizontal line scaling left and right subtly
6370
+ const horizontalLineVariants = {
6371
+ normal: { scaleX: 1, originX: 0 },
6372
+ animate: {
6373
+ scaleX: [1, 1.1, 0.9, 1.1, 1],
6374
+ transition: { duration: DURATION, ease: 'easeInOut', repeat: Infinity },
6375
+ },
6376
+ };
6377
+ // Animate the vertical line pulsing scaleY
6378
+ const verticalLineVariants = {
6379
+ normal: { scaleY: 1, originY: '100%' },
6380
+ animate: {
6381
+ scaleY: [1, 1.2, 0.8, 1.2, 1],
6382
+ transition: { duration: DURATION, ease: 'easeInOut', repeat: Infinity },
6383
+ },
6384
+ };
6385
+ const Antenna = forwardRef(({ className, size = 28, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, animationTrigger = 'hover', delay = 0, ...props }, ref) => {
6386
+ const controls = useAnimation();
6387
+ const timeoutRef = useRef(null);
6388
+ const startAnimation = useCallback(() => {
6389
+ // Start infinite animation immediately
6390
+ controls.start('animate');
6391
+ }, [controls]);
6392
+ const stopAnimation = useCallback(() => {
6393
+ controls.start('normal');
6394
+ }, [controls]);
6395
+ useImperativeHandle(ref, () => ({
6396
+ startAnimation,
6397
+ stopAnimation,
6398
+ }));
6399
+ // Effect to handle auto animation or load-triggered animation with delay
6400
+ useEffect(() => {
6401
+ if (animationTrigger === 'manual')
6402
+ return; // do nothing automatically
6403
+ if (autoAnimateOnLoad || animationTrigger === 'load') {
6404
+ timeoutRef.current = setTimeout(() => {
6405
+ startAnimation();
6406
+ }, delay);
6407
+ }
6408
+ return () => {
6409
+ if (timeoutRef.current) {
6410
+ clearTimeout(timeoutRef.current);
6411
+ timeoutRef.current = null;
6412
+ }
6413
+ };
6414
+ }, [autoAnimateOnLoad, animationTrigger, delay, startAnimation]);
6415
+ // Handlers for hover and click depending on trigger type and loop setting
6416
+ const handleMouseEnter = useCallback(() => {
6417
+ if (animationTrigger !== 'hover' || !hoverable)
6418
+ return;
6419
+ startAnimation();
6420
+ }, [animationTrigger, hoverable, startAnimation]);
6421
+ const handleMouseLeave = useCallback(() => {
6422
+ if (animationTrigger !== 'hover' || !hoverable)
6423
+ return;
6424
+ if (!loopOnHover) {
6425
+ stopAnimation();
6426
+ }
6427
+ }, [animationTrigger, hoverable, loopOnHover, stopAnimation]);
6428
+ const handleClick = useCallback(() => {
6429
+ if (animationTrigger !== 'click' && !animateOnClick)
6430
+ return;
6431
+ startAnimation();
6432
+ }, [animationTrigger, animateOnClick, startAnimation]);
6433
+ return (jsx("div", { className: cn$j('inline-block', className), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, style: { width: size, height: size, ...props.style }, children: jsxs(motion.svg, { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.path, { d: "M2 12 7 2", variants: pathVariants$6, animate: controls, style: { originX: '50%', originY: '100%' } }), jsx(motion.path, { d: "m7 12 5-10", variants: pathVariants$6, animate: controls, style: { originX: '50%', originY: '100%' } }), jsx(motion.path, { d: "m12 12 5-10", variants: pathVariants$6, animate: controls, style: { originX: '50%', originY: '100%' } }), jsx(motion.path, { d: "m17 12 5-10", variants: pathVariants$6, animate: controls, style: { originX: '50%', originY: '100%' } }), jsx(motion.path, { d: "M4.5 7h15", variants: horizontalLineVariants, animate: controls }), jsx(motion.path, { d: "M12 16v6", variants: verticalLineVariants, animate: controls })] }) }));
6434
+ });
6435
+ Antenna.displayName = 'Antenna';
6436
+
6437
+ function cn$i(...inputs) {
6438
+ return twMerge(clsx(inputs));
6439
+ }
6440
+ const circleVariants = {
6441
+ normal: {
6442
+ rotate: 0,
6443
+ originX: '50%',
6444
+ originY: '50%',
6445
+ transition: { duration: 0.4 },
6446
+ },
6447
+ animate: {
6448
+ rotate: [0, 15, -15, 0],
6449
+ transition: { duration: 1.2, ease: 'easeInOut' },
6450
+ },
6451
+ };
6452
+ const bladeVariants = {
6453
+ normal: {
6454
+ rotate: 0,
6455
+ scale: 1,
6456
+ opacity: 1,
6457
+ originX: '50%',
6458
+ originY: '50%',
6459
+ transition: { duration: 0.4 },
6460
+ },
6461
+ animate: {
6462
+ rotate: [0, 10, -10, 0],
6463
+ scale: [1, 1.1, 0.9, 1],
6464
+ opacity: [1, 0.85, 1, 1],
6465
+ transition: { duration: 1.2, ease: 'easeInOut' },
6466
+ },
6467
+ };
6468
+ const Aperture = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6469
+ const controls = useAnimation();
6470
+ const loopRef = useRef(loopOnHover);
6471
+ const isControlledRef = useRef(false);
6472
+ const isMounted = useRef(true);
6473
+ // Recursive animation loop with proper async handling
6474
+ const triggerAnimation = useCallback(async () => {
6475
+ if (!isMounted.current)
6476
+ return;
6477
+ await controls.start('animate');
6478
+ if (!isMounted.current)
6479
+ return;
6480
+ await controls.start('normal');
6481
+ if (loopRef.current && isMounted.current) {
6482
+ triggerAnimation();
6483
+ }
6484
+ }, [controls]);
6485
+ useEffect(() => {
6486
+ loopRef.current = loopOnHover;
6487
+ }, [loopOnHover]);
6488
+ useEffect(() => {
6489
+ if (autoAnimateOnLoad) {
6490
+ triggerAnimation();
6491
+ }
6492
+ }, [autoAnimateOnLoad, triggerAnimation]);
6493
+ useEffect(() => {
6494
+ return () => {
6495
+ isMounted.current = false;
6496
+ };
6497
+ }, []);
6498
+ useImperativeHandle(ref, () => {
6499
+ isControlledRef.current = true;
6500
+ return {
6501
+ startAnimation: () => controls.start('animate'),
6502
+ stopAnimation: () => controls.start('normal'),
6503
+ };
6504
+ }, [controls]);
6505
+ const handleMouseEnter = (e) => {
6506
+ if (!isControlledRef.current && hoverable) {
6507
+ if (loopOnHover) {
6508
+ loopRef.current = true;
6509
+ triggerAnimation();
6510
+ }
6511
+ else {
6512
+ controls.start('animate');
6513
+ }
6514
+ }
6515
+ onMouseEnter?.(e);
6516
+ };
6517
+ const handleMouseLeave = (e) => {
6518
+ if (!isControlledRef.current && hoverable) {
6519
+ loopRef.current = false;
6520
+ controls.start('normal');
6521
+ }
6522
+ onMouseLeave?.(e);
6523
+ };
6524
+ const handleClick = (e) => {
6525
+ if (!isControlledRef.current && animateOnClick) {
6526
+ triggerAnimation();
6527
+ }
6528
+ onClick?.(e);
6529
+ };
6530
+ return (jsx("div", { className: cn$i('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs(motion.svg, { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.circle, { cx: "12", cy: "12", r: "10", variants: circleVariants, initial: "normal", animate: controls }), jsx(motion.path, { d: "m14.31 8 5.74 9.94", variants: bladeVariants, initial: "normal", animate: controls }), jsx(motion.path, { d: "M9.69 8h11.48", variants: bladeVariants, initial: "normal", animate: controls }), jsx(motion.path, { d: "m7.38 12 5.74-9.94", variants: bladeVariants, initial: "normal", animate: controls }), jsx(motion.path, { d: "M9.69 16 3.95 6.06", variants: bladeVariants, initial: "normal", animate: controls }), jsx(motion.path, { d: "M14.31 16H2.83", variants: bladeVariants, initial: "normal", animate: controls }), jsx(motion.path, { d: "m16.62 12-5.74 9.94", variants: bladeVariants, initial: "normal", animate: controls })] }) }));
6531
+ });
6532
+ Aperture.displayName = 'Aperture';
6533
+
6534
+ function cn$h(...inputs) {
6535
+ return twMerge(clsx(inputs));
6536
+ }
6537
+ const pathVariants$5 = {
6538
+ normal: {
6539
+ opacity: 1,
6540
+ pathLength: 1,
6541
+ pathOffset: 0,
6542
+ transition: { duration: 0.4 },
6543
+ },
6544
+ animate: {
6545
+ opacity: [0, 1],
6546
+ pathLength: [0, 1],
6547
+ pathOffset: [1, 0],
6548
+ transition: {
6549
+ duration: 0.6,
6550
+ ease: 'linear',
6551
+ },
6552
+ },
6553
+ };
6554
+ const AppWindow = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6555
+ const controls = useAnimation();
6556
+ const loopRef = useRef(loopOnHover);
6557
+ const isControlledRef = useRef(false);
6558
+ const triggerAnimation = useCallback(async () => {
6559
+ await controls.start('animate');
6560
+ await controls.start('normal');
6561
+ if (loopRef.current)
6562
+ triggerAnimation();
6563
+ }, [controls]);
6564
+ useEffect(() => {
6565
+ loopRef.current = loopOnHover;
6566
+ }, [loopOnHover]);
6567
+ useEffect(() => {
6568
+ if (autoAnimateOnLoad)
6569
+ triggerAnimation();
6570
+ }, [autoAnimateOnLoad, triggerAnimation]);
6571
+ useImperativeHandle(ref, () => {
6572
+ isControlledRef.current = true;
6573
+ return {
6574
+ startAnimation: () => controls.start('animate'),
6575
+ stopAnimation: () => controls.start('normal'),
6576
+ };
6577
+ });
6578
+ const handleMouseEnter = (e) => {
6579
+ if (!isControlledRef.current && hoverable)
6580
+ triggerAnimation();
6581
+ onMouseEnter?.(e);
6582
+ };
6583
+ const handleMouseLeave = (e) => {
6584
+ if (!isControlledRef.current && hoverable)
6585
+ controls.start('normal');
6586
+ onMouseLeave?.(e);
6587
+ };
6588
+ const handleClick = (e) => {
6589
+ if (animateOnClick)
6590
+ triggerAnimation();
6591
+ onClick?.(e);
6592
+ };
6593
+ return (jsx("div", { className: cn$h('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { x: "2", y: "4", width: "20", height: "16", rx: "2", variants: pathVariants$5, initial: "normal", animate: controls }), jsx(motion.path, { d: "M10 4v4", variants: pathVariants$5, initial: "normal", animate: controls }), jsx(motion.path, { d: "M2 8h20", variants: pathVariants$5, initial: "normal", animate: controls }), jsx(motion.path, { d: "M6 4v4", variants: pathVariants$5, initial: "normal", animate: controls })] }) }));
6594
+ });
6595
+ AppWindow.displayName = 'AppWindow';
6596
+
6597
+ function cn$g(...inputs) {
6598
+ return twMerge(clsx(inputs));
6599
+ }
6600
+ const pathVariants$4 = {
6601
+ normal: {
6602
+ opacity: 1,
6603
+ pathLength: 1,
6604
+ pathOffset: 0,
6605
+ transition: { duration: 0.4 },
6606
+ },
6607
+ animate: {
6608
+ opacity: [0, 1],
6609
+ pathLength: [0, 1],
6610
+ pathOffset: [1, 0],
6611
+ transition: {
6612
+ duration: 0.6,
6613
+ ease: 'linear',
6614
+ },
6615
+ },
6616
+ };
6617
+ const blinkTransition = {
6618
+ opacity: {
6619
+ repeat: 1,
6620
+ repeatType: "loopRef",
6621
+ duration: 1,
6622
+ ease: 'easeInOut',
6623
+ },
6624
+ };
6625
+ const AppWindowMac = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6626
+ const controls = useAnimation();
6627
+ const loopRef = useRef(loopOnHover);
6628
+ const isControlledRef = useRef(false);
6629
+ const triggerAnimation = useCallback(async () => {
6630
+ await controls.start('animate');
6631
+ await controls.start('normal');
6632
+ if (loopRef.current)
6633
+ triggerAnimation();
6634
+ }, [controls]);
6635
+ useEffect(() => {
6636
+ loopRef.current = loopOnHover;
6637
+ }, [loopOnHover]);
6638
+ useEffect(() => {
6639
+ if (autoAnimateOnLoad)
6640
+ triggerAnimation();
6641
+ }, [autoAnimateOnLoad, triggerAnimation]);
6642
+ useImperativeHandle(ref, () => {
6643
+ isControlledRef.current = true;
6644
+ return {
6645
+ startAnimation: () => controls.start('animate'),
6646
+ stopAnimation: () => controls.start('normal'),
6647
+ };
6648
+ });
6649
+ const handleMouseEnter = (e) => {
6650
+ if (!isControlledRef.current && hoverable)
6651
+ triggerAnimation();
6652
+ onMouseEnter?.(e);
6653
+ };
6654
+ const handleMouseLeave = (e) => {
6655
+ if (!isControlledRef.current && hoverable)
6656
+ controls.start('normal');
6657
+ onMouseLeave?.(e);
6658
+ };
6659
+ const handleClick = (e) => {
6660
+ if (animateOnClick)
6661
+ triggerAnimation();
6662
+ onClick?.(e);
6663
+ };
6664
+ return (jsx("div", { className: cn$g('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { x: "2", y: "4", width: "20", height: "16", rx: "2", variants: pathVariants$4, initial: "normal", animate: controls }), jsx(motion.path, { d: "M6 8h.01", initial: { opacity: 1 }, animate: { opacity: [1, 0, 1] }, transition: { ...blinkTransition, delay: 0 } }), jsx(motion.path, { d: "M10 8h.01", initial: { opacity: 1 }, animate: { opacity: [1, 0, 1] }, transition: { ...blinkTransition, delay: 0.5 } }), jsx(motion.path, { d: "M14 8h.01", initial: { opacity: 1 }, animate: { opacity: [1, 0, 1] }, transition: { ...blinkTransition, delay: 1 } })] }) }));
6665
+ });
6666
+ AppWindowMac.displayName = 'AppWindowMac';
6667
+
6668
+ function cn$f(...inputs) {
6669
+ return twMerge(clsx(inputs));
6670
+ }
6671
+ const pathVariants$3 = {
6672
+ normal: {
6673
+ opacity: 1,
6674
+ pathLength: 1,
6675
+ pathOffset: 0,
6676
+ transition: { duration: 0.4 },
6677
+ },
6678
+ animate: {
6679
+ opacity: [0, 1],
6680
+ pathLength: [0, 1],
6681
+ pathOffset: [1, 0],
6682
+ transition: {
6683
+ duration: 0.6,
6684
+ ease: 'linear',
6685
+ },
6686
+ },
6687
+ };
6688
+ const Archive = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6689
+ const controls = useAnimation();
6690
+ const loopRef = useRef(loopOnHover);
6691
+ const isControlledRef = useRef(false);
6692
+ const triggerAnimation = useCallback(async () => {
6693
+ await controls.start('animate');
6694
+ await controls.start('normal');
6695
+ if (loopRef.current)
6696
+ triggerAnimation();
6697
+ }, [controls]);
6698
+ useEffect(() => {
6699
+ loopRef.current = loopOnHover;
6700
+ }, [loopOnHover]);
6701
+ useEffect(() => {
6702
+ if (autoAnimateOnLoad)
6703
+ triggerAnimation();
6704
+ }, [autoAnimateOnLoad, triggerAnimation]);
6705
+ useImperativeHandle(ref, () => {
6706
+ isControlledRef.current = true;
6707
+ return {
6708
+ startAnimation: () => controls.start('animate'),
6709
+ stopAnimation: () => controls.start('normal'),
6710
+ };
6711
+ });
6712
+ const handleMouseEnter = (e) => {
6713
+ if (!isControlledRef.current && hoverable)
6714
+ triggerAnimation();
6715
+ onMouseEnter?.(e);
6716
+ };
6717
+ const handleMouseLeave = (e) => {
6718
+ if (!isControlledRef.current && hoverable)
6719
+ controls.start('normal');
6720
+ onMouseLeave?.(e);
6721
+ };
6722
+ const handleClick = (e) => {
6723
+ if (animateOnClick)
6724
+ triggerAnimation();
6725
+ onClick?.(e);
6726
+ };
6727
+ return (jsx("div", { className: cn$f('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [jsx(motion.rect, { x: "2", y: "3", width: "20", height: "5", rx: "1", variants: pathVariants$3, initial: "normal", animate: controls }), jsx(motion.path, { d: "M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8", variants: pathVariants$3, initial: "normal", animate: controls }), jsx("path", { d: "M10 12h4" })] }) }));
6728
+ });
6729
+ Archive.displayName = 'Archive';
6730
+
6731
+ function cn$e(...inputs) {
6732
+ return twMerge(clsx(inputs));
6733
+ }
6734
+ const pathVariants$2 = {
6735
+ initial: {
6736
+ pathLength: 1,
6737
+ pathOffset: 0,
6738
+ opacity: 1,
6739
+ },
6740
+ draw: {
6741
+ pathLength: [0, 1],
6742
+ pathOffset: [1, 0],
6743
+ opacity: [0, 1],
6744
+ transition: {
6745
+ duration: 0.7,
6746
+ ease: 'easeInOut',
6747
+ },
6748
+ },
6749
+ };
6750
+ const ArchiveRestore = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6751
+ const controls = useAnimation();
6752
+ const loopRef = useRef(loopOnHover);
6753
+ const isControlledRef = useRef(false);
6754
+ const triggerAnimation = useCallback(async () => {
6755
+ await controls.start('draw');
6756
+ await controls.start('initial');
6757
+ if (loopRef.current)
6758
+ triggerAnimation();
6759
+ }, [controls]);
6760
+ useEffect(() => {
6761
+ loopRef.current = loopOnHover;
6762
+ }, [loopOnHover]);
6763
+ useEffect(() => {
6764
+ if (autoAnimateOnLoad)
6765
+ triggerAnimation();
6766
+ }, [autoAnimateOnLoad, triggerAnimation]);
6767
+ useImperativeHandle(ref, () => {
6768
+ isControlledRef.current = true;
6769
+ return {
6770
+ startAnimation: () => controls.start('draw'),
6771
+ stopAnimation: () => controls.start('initial'),
6772
+ };
6773
+ });
6774
+ const handleMouseEnter = (e) => {
6775
+ if (!isControlledRef.current && hoverable)
6776
+ triggerAnimation();
6777
+ onMouseEnter?.(e);
6778
+ };
6779
+ const handleMouseLeave = (e) => {
6780
+ if (!isControlledRef.current && hoverable)
6781
+ controls.start('initial');
6782
+ onMouseLeave?.(e);
6783
+ };
6784
+ const handleClick = (e) => {
6785
+ if (animateOnClick)
6786
+ triggerAnimation();
6787
+ onClick?.(e);
6788
+ };
6789
+ return (jsx("div", { className: cn$e('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { x: "2", y: "3", width: "20", height: "5", rx: "1", variants: pathVariants$2, initial: "initial", animate: controls }), jsx(motion.path, { d: "M4 8v11a2 2 0 0 0 2 2h2", variants: pathVariants$2, initial: "initial", animate: controls }), jsx(motion.path, { d: "M20 8v11a2 2 0 0 1-2 2h-2", variants: pathVariants$2, initial: "initial", animate: controls }), jsx(motion.path, { d: "m9 15 3-3 3 3", variants: pathVariants$2, initial: "initial", animate: controls }), jsx(motion.path, { d: "M12 12v9", variants: pathVariants$2, initial: "initial", animate: controls })] }) }));
6790
+ });
6791
+ ArchiveRestore.displayName = 'ArchiveRestore';
6792
+
6793
+ function cn$d(...inputs) {
6794
+ return twMerge(clsx(inputs));
6795
+ }
6796
+ const pathVariants$1 = {
6797
+ initial: {
6798
+ pathLength: 1,
6799
+ pathOffset: 0,
6800
+ opacity: 1,
6801
+ },
6802
+ draw: {
6803
+ pathLength: [0, 1],
6804
+ pathOffset: [1, 0],
6805
+ opacity: [0, 1],
6806
+ transition: {
6807
+ duration: 0.7,
6808
+ ease: 'easeInOut',
6809
+ },
6810
+ },
6811
+ };
6812
+ const ArchiveX = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6813
+ const controls = useAnimation();
6814
+ const loopRef = useRef(loopOnHover);
6815
+ const isControlledRef = useRef(false);
6816
+ const triggerAnimation = useCallback(async () => {
6817
+ await controls.start('draw');
6818
+ await controls.start('initial');
6819
+ if (loopRef.current)
6820
+ triggerAnimation();
6821
+ }, [controls]);
6822
+ useEffect(() => {
6823
+ loopRef.current = loopOnHover;
6824
+ }, [loopOnHover]);
6825
+ useEffect(() => {
6826
+ if (autoAnimateOnLoad)
6827
+ triggerAnimation();
6828
+ }, [autoAnimateOnLoad, triggerAnimation]);
6829
+ useImperativeHandle(ref, () => {
6830
+ isControlledRef.current = true;
6831
+ return {
6832
+ startAnimation: () => controls.start('draw'),
6833
+ stopAnimation: () => controls.start('initial'),
6834
+ };
6835
+ });
6836
+ const handleMouseEnter = (e) => {
6837
+ if (!isControlledRef.current && hoverable)
6838
+ triggerAnimation();
6839
+ onMouseEnter?.(e);
6840
+ };
6841
+ const handleMouseLeave = (e) => {
6842
+ if (!isControlledRef.current && hoverable)
6843
+ controls.start('initial');
6844
+ onMouseLeave?.(e);
6845
+ };
6846
+ const handleClick = (e) => {
6847
+ if (animateOnClick)
6848
+ triggerAnimation();
6849
+ onClick?.(e);
6850
+ };
6851
+ return (jsx("div", { className: cn$d('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.rect, { x: "2", y: "3", width: "20", height: "5", rx: "1", variants: pathVariants$1, initial: "initial", animate: controls }), jsx(motion.path, { d: "M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8", variants: pathVariants$1, initial: "initial", animate: controls }), jsx(motion.path, { d: "m9.5 17 5-5", variants: pathVariants$1, initial: "initial", animate: controls }), jsx(motion.path, { d: "m9.5 12 5 5", variants: pathVariants$1, initial: "initial", animate: controls })] }) }));
6852
+ });
6853
+ ArchiveX.displayName = 'ArchiveX';
6854
+
6855
+ function cn$c(...inputs) {
6856
+ return twMerge(clsx(inputs));
6857
+ }
6858
+ const pathVariants = {
6859
+ initial: {
6860
+ pathLength: 1,
6861
+ pathOffset: 0,
6862
+ opacity: 1,
6863
+ },
6864
+ draw: {
6865
+ pathLength: [0, 1],
6866
+ pathOffset: [1, 0],
6867
+ opacity: [0, 1],
6868
+ transition: {
6869
+ duration: 0.7,
6870
+ ease: 'easeInOut',
6871
+ },
6872
+ },
6873
+ };
6874
+ const Armchair = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6875
+ const controls = useAnimation();
6876
+ const loopRef = useRef(loopOnHover);
6877
+ const isControlledRef = useRef(false);
6878
+ const triggerAnimation = useCallback(async () => {
6879
+ await controls.start('draw');
6880
+ await controls.start('initial');
6881
+ if (loopRef.current)
6882
+ triggerAnimation();
6883
+ }, [controls]);
6884
+ useEffect(() => {
6885
+ loopRef.current = loopOnHover;
6886
+ }, [loopOnHover]);
6887
+ useEffect(() => {
6888
+ if (autoAnimateOnLoad)
6889
+ triggerAnimation();
6890
+ }, [autoAnimateOnLoad, triggerAnimation]);
6891
+ useImperativeHandle(ref, () => {
6892
+ isControlledRef.current = true;
6893
+ return {
6894
+ startAnimation: () => controls.start('draw'),
6895
+ stopAnimation: () => controls.start('initial'),
6896
+ };
6897
+ });
6898
+ const handleMouseEnter = (e) => {
6899
+ if (!isControlledRef.current && hoverable)
6900
+ triggerAnimation();
6901
+ onMouseEnter?.(e);
6902
+ };
6903
+ const handleMouseLeave = (e) => {
6904
+ if (!isControlledRef.current && hoverable)
6905
+ controls.start('initial');
6906
+ onMouseLeave?.(e);
6907
+ };
6908
+ const handleClick = (e) => {
6909
+ if (animateOnClick)
6910
+ triggerAnimation();
6911
+ onClick?.(e);
6912
+ };
6913
+ return (jsx("div", { className: cn$c('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M19 9V6a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2v3", variants: pathVariants, initial: "initial", animate: controls }), jsx(motion.path, { d: "M3 16a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-5a2 2 0 0 0-4 0v1.5a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5V11a2 2 0 0 0-4 0z", variants: pathVariants, initial: "initial", animate: controls }), jsx(motion.path, { d: "M5 18v2", variants: pathVariants, initial: "initial", animate: controls }), jsx(motion.path, { d: "M19 18v2", variants: pathVariants, initial: "initial", animate: controls })] }) }));
6914
+ });
6915
+ Armchair.displayName = 'Armchair';
6916
+
6917
+ function cn$b(...inputs) {
6918
+ return twMerge(clsx(inputs));
6919
+ }
6920
+ const groupVariants$2 = {
6921
+ initial: { y: 0, scale: 1, opacity: 1 },
6922
+ animate: {
6923
+ y: [0, 4, 0],
6924
+ scale: [1, 1.1, 1],
6925
+ opacity: [1, 1, 1],
6926
+ transition: {
6927
+ duration: 0.6,
6928
+ ease: 'easeInOut',
6929
+ },
6930
+ },
6931
+ };
6932
+ const ArrowBigDown = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6933
+ const controls = useAnimation();
6934
+ const loopRef = useRef(loopOnHover);
6935
+ const isControlledRef = useRef(false);
6936
+ const triggerAnimation = useCallback(async () => {
6937
+ await controls.start('animate');
6938
+ if (loopRef.current)
6939
+ triggerAnimation();
6940
+ }, [controls]);
6941
+ useEffect(() => {
6942
+ loopRef.current = loopOnHover;
6943
+ }, [loopOnHover]);
6944
+ useEffect(() => {
6945
+ if (autoAnimateOnLoad)
6946
+ triggerAnimation();
6947
+ }, [autoAnimateOnLoad, triggerAnimation]);
6948
+ useImperativeHandle(ref, () => {
6949
+ isControlledRef.current = true;
6950
+ return {
6951
+ startAnimation: () => controls.start('animate'),
6952
+ stopAnimation: () => controls.stop(),
6953
+ };
6954
+ });
6955
+ const handleMouseEnter = (e) => {
6956
+ if (!isControlledRef.current && hoverable)
6957
+ triggerAnimation();
6958
+ onMouseEnter?.(e);
6959
+ };
6960
+ const handleMouseLeave = (e) => {
6961
+ if (!isControlledRef.current && hoverable)
6962
+ controls.stop();
6963
+ onMouseLeave?.(e);
6964
+ };
6965
+ const handleClick = (e) => {
6966
+ if (animateOnClick)
6967
+ triggerAnimation();
6968
+ onClick?.(e);
6969
+ };
6970
+ return (jsx("div", { className: cn$b('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsx("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: jsx(motion.g, { variants: groupVariants$2, initial: "initial", animate: controls, children: jsx("path", { d: "M15 6v6h4l-7 7-7-7h4V6h6z" }) }) }) }));
6971
+ });
6972
+ ArrowBigDown.displayName = 'ArrowBigDown';
6973
+
6974
+ function cn$a(...inputs) {
6975
+ return twMerge(clsx(inputs));
6976
+ }
6977
+ const groupVariants$1 = {
6978
+ initial: { y: 0, scale: 1, opacity: 1 },
6979
+ animate: {
6980
+ y: [0, -4, 0],
6981
+ scale: [1, 1.1, 1],
6982
+ opacity: [1, 1, 1],
6983
+ transition: {
6984
+ duration: 0.6,
6985
+ ease: 'easeInOut',
6986
+ },
6987
+ },
6988
+ };
6989
+ const ArrowBigUp = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
6990
+ const controls = useAnimation();
6991
+ const loopRef = useRef(loopOnHover);
6992
+ const isControlledRef = useRef(false);
6993
+ const triggerAnimation = useCallback(async () => {
6994
+ await controls.start('animate');
6995
+ if (loopRef.current)
6996
+ triggerAnimation();
6997
+ }, [controls]);
6998
+ useEffect(() => {
6999
+ loopRef.current = loopOnHover;
7000
+ }, [loopOnHover]);
7001
+ useEffect(() => {
7002
+ if (autoAnimateOnLoad)
7003
+ triggerAnimation();
7004
+ }, [autoAnimateOnLoad, triggerAnimation]);
7005
+ useImperativeHandle(ref, () => {
7006
+ isControlledRef.current = true;
7007
+ return {
7008
+ startAnimation: () => controls.start('animate'),
7009
+ stopAnimation: () => controls.stop(),
7010
+ };
7011
+ });
7012
+ const handleMouseEnter = (e) => {
7013
+ if (!isControlledRef.current && hoverable)
7014
+ triggerAnimation();
7015
+ onMouseEnter?.(e);
7016
+ };
7017
+ const handleMouseLeave = (e) => {
7018
+ if (!isControlledRef.current && hoverable)
7019
+ controls.stop();
7020
+ onMouseLeave?.(e);
7021
+ };
7022
+ const handleClick = (e) => {
7023
+ if (animateOnClick)
7024
+ triggerAnimation();
7025
+ onClick?.(e);
7026
+ };
7027
+ return (jsx("div", { className: cn$a('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsx("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: jsx(motion.g, { variants: groupVariants$1, initial: "initial", animate: controls, children: jsx("path", { d: "M9 18V12H5l7-7 7 7h-4v6H9z" }) }) }) }));
7028
+ });
7029
+ ArrowBigUp.displayName = 'ArrowBigUp';
7030
+
7031
+ function cn$9(...inputs) {
7032
+ return twMerge(clsx(inputs));
7033
+ }
7034
+ const arrowVariants$4 = {
7035
+ initial: { x: 0, scale: 1 },
7036
+ animate: {
7037
+ x: [0, -4, 0],
7038
+ scale: [1, 1.1, 1],
7039
+ transition: {
7040
+ duration: 0.6,
7041
+ ease: 'easeInOut',
7042
+ },
7043
+ },
7044
+ };
7045
+ const ArrowBigLeft = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
7046
+ const controls = useAnimation();
7047
+ const loopRef = useRef(loopOnHover);
7048
+ const isControlledRef = useRef(false);
7049
+ const triggerAnimation = useCallback(async () => {
7050
+ await controls.start('animate');
7051
+ if (loopRef.current)
7052
+ triggerAnimation();
7053
+ }, [controls]);
7054
+ useEffect(() => {
7055
+ loopRef.current = loopOnHover;
7056
+ }, [loopOnHover]);
7057
+ useEffect(() => {
7058
+ if (autoAnimateOnLoad)
7059
+ triggerAnimation();
7060
+ }, [autoAnimateOnLoad, triggerAnimation]);
7061
+ useImperativeHandle(ref, () => {
7062
+ isControlledRef.current = true;
7063
+ return {
7064
+ startAnimation: () => controls.start('animate'),
7065
+ stopAnimation: () => controls.stop(),
7066
+ };
7067
+ });
7068
+ const handleMouseEnter = (e) => {
7069
+ if (!isControlledRef.current && hoverable)
7070
+ triggerAnimation();
7071
+ onMouseEnter?.(e);
7072
+ };
7073
+ const handleMouseLeave = (e) => {
7074
+ if (!isControlledRef.current && hoverable)
7075
+ controls.stop();
7076
+ onMouseLeave?.(e);
7077
+ };
7078
+ const handleClick = (e) => {
7079
+ if (animateOnClick)
7080
+ triggerAnimation();
7081
+ onClick?.(e);
7082
+ };
7083
+ return (jsx("div", { className: cn$9('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsx("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: jsx(motion.path, { variants: arrowVariants$4, initial: "initial", animate: controls, d: "M18 15h-6v4l-7-7 7-7v4h6v6z" }) }) }));
7084
+ });
7085
+ ArrowBigLeft.displayName = 'ArrowBigLeft';
7086
+
7087
+ function cn$8(...inputs) {
7088
+ return twMerge(clsx(inputs));
7089
+ }
7090
+ const groupVariants = {
7091
+ initial: { x: 0, scale: 1 },
7092
+ animate: {
7093
+ x: [0, 4, 0],
7094
+ scale: [1, 1.1, 1],
7095
+ transition: {
7096
+ duration: 0.6,
7097
+ ease: 'easeInOut',
7098
+ },
7099
+ },
7100
+ };
7101
+ const ArrowBigRight = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
7102
+ const controls = useAnimation();
7103
+ const loopRef = useRef(loopOnHover);
7104
+ const isControlledRef = useRef(false);
7105
+ const triggerAnimation = useCallback(async () => {
7106
+ await controls.start('animate');
7107
+ if (loopRef.current)
7108
+ triggerAnimation();
7109
+ }, [controls]);
7110
+ useEffect(() => {
7111
+ loopRef.current = loopOnHover;
7112
+ }, [loopOnHover]);
7113
+ useEffect(() => {
7114
+ if (autoAnimateOnLoad)
7115
+ triggerAnimation();
7116
+ }, [autoAnimateOnLoad, triggerAnimation]);
7117
+ useImperativeHandle(ref, () => {
7118
+ isControlledRef.current = true;
7119
+ return {
7120
+ startAnimation: () => controls.start('animate'),
7121
+ stopAnimation: () => controls.stop(),
7122
+ };
7123
+ });
7124
+ const handleMouseEnter = (e) => {
7125
+ if (!isControlledRef.current && hoverable)
7126
+ triggerAnimation();
7127
+ onMouseEnter?.(e);
7128
+ };
7129
+ const handleMouseLeave = (e) => {
7130
+ if (!isControlledRef.current && hoverable)
7131
+ controls.stop();
7132
+ onMouseLeave?.(e);
7133
+ };
7134
+ const handleClick = (e) => {
7135
+ if (animateOnClick)
7136
+ triggerAnimation();
7137
+ onClick?.(e);
7138
+ };
7139
+ return (jsx("div", { className: cn$8('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsx("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: jsx(motion.path, { variants: groupVariants, initial: "initial", animate: controls, d: "M6 9h6V5l7 7-7 7v-4H6V9z" }) }) }));
7140
+ });
7141
+ ArrowBigRight.displayName = 'ArrowBigRight';
7142
+
7143
+ function cn$7(...inputs) {
7144
+ return twMerge(clsx(inputs));
7145
+ }
7146
+ const arrowVariants$3 = {
7147
+ initial: { y: 0, scale: 1 },
7148
+ animate: {
7149
+ y: [0, 4, 0],
7150
+ scale: [1, 1.1, 1],
7151
+ transition: {
7152
+ duration: 0.6,
7153
+ ease: 'easeInOut',
7154
+ },
7155
+ },
7156
+ };
7157
+ const dashVariants$3 = {
7158
+ initial: { x: 0, scale: 1 },
7159
+ animate: {
7160
+ y: [0, 2, 0],
7161
+ scale: [1, 1.1, 1],
7162
+ transition: {
7163
+ duration: 0.6,
7164
+ ease: 'easeInOut',
7165
+ },
7166
+ },
7167
+ };
7168
+ const ArrowBigDownDash = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
7169
+ const controls = useAnimation();
7170
+ const loopRef = useRef(loopOnHover);
7171
+ const isControlledRef = useRef(false);
7172
+ const triggerAnimation = useCallback(async () => {
7173
+ await controls.start('animate');
7174
+ if (loopRef.current)
7175
+ triggerAnimation();
7176
+ }, [controls]);
7177
+ useEffect(() => {
7178
+ loopRef.current = loopOnHover;
7179
+ }, [loopOnHover]);
7180
+ useEffect(() => {
7181
+ if (autoAnimateOnLoad)
7182
+ triggerAnimation();
7183
+ }, [autoAnimateOnLoad, triggerAnimation]);
7184
+ useImperativeHandle(ref, () => {
7185
+ isControlledRef.current = true;
7186
+ return {
7187
+ startAnimation: () => controls.start('animate'),
7188
+ stopAnimation: () => controls.stop(),
7189
+ };
7190
+ });
7191
+ const handleMouseEnter = (e) => {
7192
+ if (!isControlledRef.current && hoverable)
7193
+ triggerAnimation();
7194
+ onMouseEnter?.(e);
7195
+ };
7196
+ const handleMouseLeave = (e) => {
7197
+ if (!isControlledRef.current && hoverable)
7198
+ controls.stop();
7199
+ onMouseLeave?.(e);
7200
+ };
7201
+ const handleClick = (e) => {
7202
+ if (animateOnClick)
7203
+ triggerAnimation();
7204
+ onClick?.(e);
7205
+ };
7206
+ return (jsx("div", { className: cn$7('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M15 5H9", variants: dashVariants$3, initial: "initial", animate: controls }), jsx(motion.path, { d: "M15 9v3h4l-7 7-7-7h4V9z", variants: arrowVariants$3, initial: "initial", animate: controls })] }) }));
7207
+ });
7208
+ ArrowBigDownDash.displayName = 'ArrowBigDownDash';
7209
+
7210
+ function cn$6(...inputs) {
7211
+ return twMerge(clsx(inputs));
7212
+ }
7213
+ const arrowVariants$2 = {
7214
+ initial: { x: 0, scale: 1 },
7215
+ animate: {
7216
+ x: [0, -4, 0],
7217
+ scale: [1, 1.1, 1],
7218
+ transition: {
7219
+ duration: 0.6,
7220
+ ease: 'easeInOut',
7221
+ },
7222
+ },
7223
+ };
7224
+ const dashVariants$2 = {
7225
+ initial: { y: 0, scale: 1 },
7226
+ animate: {
7227
+ x: [0, -2, 0],
7228
+ scale: [1, 1.1, 1],
7229
+ transition: {
7230
+ duration: 0.6,
7231
+ ease: 'easeInOut',
7232
+ },
7233
+ },
7234
+ };
7235
+ const ArrowBigLeftDash = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
7236
+ const controls = useAnimation();
7237
+ const loopRef = useRef(loopOnHover);
7238
+ const isControlledRef = useRef(false);
7239
+ const triggerAnimation = useCallback(async () => {
7240
+ await controls.start('animate');
7241
+ if (loopRef.current)
7242
+ triggerAnimation();
7243
+ }, [controls]);
7244
+ useEffect(() => {
7245
+ loopRef.current = loopOnHover;
7246
+ }, [loopOnHover]);
7247
+ useEffect(() => {
7248
+ if (autoAnimateOnLoad)
7249
+ triggerAnimation();
7250
+ }, [autoAnimateOnLoad, triggerAnimation]);
7251
+ useImperativeHandle(ref, () => {
7252
+ isControlledRef.current = true;
7253
+ return {
7254
+ startAnimation: () => controls.start('animate'),
7255
+ stopAnimation: () => controls.stop(),
7256
+ };
7257
+ });
7258
+ const handleMouseEnter = (e) => {
7259
+ if (!isControlledRef.current && hoverable)
7260
+ triggerAnimation();
7261
+ onMouseEnter?.(e);
7262
+ };
7263
+ const handleMouseLeave = (e) => {
7264
+ if (!isControlledRef.current && hoverable)
7265
+ controls.stop();
7266
+ onMouseLeave?.(e);
7267
+ };
7268
+ const handleClick = (e) => {
7269
+ if (animateOnClick)
7270
+ triggerAnimation();
7271
+ onClick?.(e);
7272
+ };
7273
+ return (jsx("div", { className: cn$6('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M19 15V9", variants: dashVariants$2, initial: "initial", animate: controls }), jsx(motion.path, { d: "M15 15H12v4l-7-7 7-7v4h3v6z", variants: arrowVariants$2, initial: "initial", animate: controls })] }) }));
7274
+ });
7275
+ ArrowBigLeftDash.displayName = 'ArrowBigLeftDash';
7276
+
7277
+ function cn$5(...inputs) {
7278
+ return twMerge(clsx(inputs));
7279
+ }
7280
+ const arrowVariants$1 = {
7281
+ initial: { x: 0, scale: 1 },
7282
+ animate: {
7283
+ x: [0, 4, 0],
7284
+ scale: [1, 1.1, 1],
7285
+ transition: {
7286
+ duration: 0.6,
7287
+ ease: 'easeInOut',
7288
+ },
7289
+ },
7290
+ };
7291
+ const dashVariants$1 = {
7292
+ initial: { y: 0, scale: 1 },
7293
+ animate: {
7294
+ x: [0, 2, 0],
7295
+ scale: [1, 1.1, 1],
7296
+ transition: {
7297
+ duration: 0.6,
7298
+ ease: 'easeInOut',
7299
+ },
7300
+ },
7301
+ };
7302
+ const ArrowBigRightDash = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
7303
+ const controls = useAnimation();
7304
+ const loopRef = useRef(loopOnHover);
7305
+ const isControlledRef = useRef(false);
7306
+ const triggerAnimation = useCallback(async () => {
7307
+ await controls.start('animate');
7308
+ if (loopRef.current)
7309
+ triggerAnimation();
7310
+ }, [controls]);
7311
+ useEffect(() => {
7312
+ loopRef.current = loopOnHover;
7313
+ }, [loopOnHover]);
7314
+ useEffect(() => {
7315
+ if (autoAnimateOnLoad)
7316
+ triggerAnimation();
7317
+ }, [autoAnimateOnLoad, triggerAnimation]);
7318
+ useImperativeHandle(ref, () => {
7319
+ isControlledRef.current = true;
7320
+ return {
7321
+ startAnimation: () => controls.start('animate'),
7322
+ stopAnimation: () => controls.stop(),
7323
+ };
7324
+ });
7325
+ const handleMouseEnter = (e) => {
7326
+ if (!isControlledRef.current && hoverable)
7327
+ triggerAnimation();
7328
+ onMouseEnter?.(e);
7329
+ };
7330
+ const handleMouseLeave = (e) => {
7331
+ if (!isControlledRef.current && hoverable)
7332
+ controls.stop();
7333
+ onMouseLeave?.(e);
7334
+ };
7335
+ const handleClick = (e) => {
7336
+ if (animateOnClick)
7337
+ triggerAnimation();
7338
+ onClick?.(e);
7339
+ };
7340
+ return (jsx("div", { className: cn$5('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M5 9v6", variants: dashVariants$1, initial: "initial", animate: controls }), jsx(motion.path, { d: "M9 9h3V5l7 7-7 7v-4H9V9z", variants: arrowVariants$1, initial: "initial", animate: controls })] }) }));
7341
+ });
7342
+ ArrowBigRightDash.displayName = 'ArrowBigRightDash';
7343
+
7344
+ function cn$4(...inputs) {
7345
+ return twMerge(clsx(inputs));
7346
+ }
7347
+ const arrowVariants = {
7348
+ initial: { y: 0, scale: 1 },
7349
+ animate: {
7350
+ y: [0, -4, 0],
7351
+ scale: [1, 1.1, 1],
7352
+ transition: {
7353
+ duration: 0.6,
7354
+ ease: 'easeInOut',
7355
+ },
7356
+ },
7357
+ };
7358
+ const dashVariants = {
7359
+ initial: { y: 0, scale: 1 },
7360
+ animate: {
7361
+ y: [0, -2, 0],
7362
+ scale: [1, 1.1, 1],
7363
+ transition: {
7364
+ duration: 0.6,
7365
+ ease: 'easeInOut',
7366
+ },
7367
+ },
7368
+ };
7369
+ const ArrowBigUpDash = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
7370
+ const controls = useAnimation();
7371
+ const loopRef = useRef(loopOnHover);
7372
+ const isControlledRef = useRef(false);
7373
+ const triggerAnimation = useCallback(async () => {
7374
+ await controls.start('animate');
7375
+ if (loopRef.current)
7376
+ triggerAnimation();
7377
+ }, [controls]);
7378
+ useEffect(() => {
7379
+ loopRef.current = loopOnHover;
7380
+ }, [loopOnHover]);
7381
+ useEffect(() => {
7382
+ if (autoAnimateOnLoad)
7383
+ triggerAnimation();
7384
+ }, [autoAnimateOnLoad, triggerAnimation]);
7385
+ useImperativeHandle(ref, () => {
7386
+ isControlledRef.current = true;
7387
+ return {
7388
+ startAnimation: () => controls.start('animate'),
7389
+ stopAnimation: () => controls.stop(),
7390
+ };
7391
+ });
7392
+ const handleMouseEnter = (e) => {
7393
+ if (!isControlledRef.current && hoverable)
7394
+ triggerAnimation();
7395
+ onMouseEnter?.(e);
7396
+ };
7397
+ const handleMouseLeave = (e) => {
7398
+ if (!isControlledRef.current && hoverable)
7399
+ controls.stop();
7400
+ onMouseLeave?.(e);
7401
+ };
7402
+ const handleClick = (e) => {
7403
+ if (animateOnClick)
7404
+ triggerAnimation();
7405
+ onClick?.(e);
7406
+ };
7407
+ return (jsx("div", { className: cn$4('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M9 19h6", variants: dashVariants, initial: "initial", animate: controls }), jsx(motion.path, { d: "M9 15v-3H5l7-7 7 7h-4v3H9z", variants: arrowVariants, initial: "initial", animate: controls })] }) }));
7408
+ });
7409
+ ArrowBigUpDash.displayName = 'ArrowBigUpDash';
7410
+
7411
+ function cn$3(...inputs) {
7412
+ return twMerge(clsx(inputs));
7413
+ }
7414
+ const arrowHeadVariants$3 = {
7415
+ normal: { d: 'm19 12-7 7-7-7', translateY: 0 },
7416
+ animate: {
7417
+ d: 'm19 12-7 7-7-7',
7418
+ translateY: [0, -3, 0],
7419
+ transition: {
7420
+ duration: 0.4,
7421
+ ease: 'easeInOut',
7422
+ },
7423
+ },
7424
+ };
7425
+ const arrowLineVariants$3 = {
7426
+ normal: { d: 'M12 5v14' },
7427
+ animate: {
7428
+ d: ['M12 5v14', 'M12 5v9', 'M12 5v14'],
7429
+ transition: {
7430
+ duration: 0.4,
7431
+ ease: 'easeInOut',
7432
+ },
7433
+ },
7434
+ };
7435
+ const ArrowDown = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
7436
+ const controls = useAnimation();
7437
+ const loopRef = useRef(loopOnHover);
7438
+ const isControlledRef = useRef(false);
7439
+ const triggerAnimation = useCallback(async () => {
7440
+ await controls.start('animate');
7441
+ if (loopRef.current)
7442
+ triggerAnimation();
7443
+ }, [controls]);
7444
+ useEffect(() => {
7445
+ loopRef.current = loopOnHover;
7446
+ }, [loopOnHover]);
7447
+ useEffect(() => {
7448
+ if (autoAnimateOnLoad)
7449
+ triggerAnimation();
7450
+ }, [autoAnimateOnLoad, triggerAnimation]);
7451
+ useImperativeHandle(ref, () => {
7452
+ isControlledRef.current = true;
7453
+ return {
7454
+ startAnimation: () => controls.start('animate'),
7455
+ stopAnimation: () => controls.stop(),
7456
+ };
7457
+ });
7458
+ const handleMouseEnter = (e) => {
7459
+ if (!isControlledRef.current && hoverable)
7460
+ triggerAnimation();
7461
+ onMouseEnter?.(e);
7462
+ };
7463
+ const handleMouseLeave = (e) => {
7464
+ if (!isControlledRef.current && hoverable)
7465
+ controls.stop();
7466
+ onMouseLeave?.(e);
7467
+ };
7468
+ const handleClick = (e) => {
7469
+ if (animateOnClick)
7470
+ triggerAnimation();
7471
+ onClick?.(e);
7472
+ };
7473
+ return (jsx("div", { className: cn$3('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M12 5v14", variants: arrowLineVariants$3, initial: "initial", animate: controls }), jsx(motion.path, { d: "m19 12-7 7-7-7", variants: arrowHeadVariants$3, initial: "initial", animate: controls })] }) }));
7474
+ });
7475
+ ArrowDown.displayName = 'ArrowDown';
7476
+
7477
+ function cn$2(...inputs) {
7478
+ return twMerge(clsx(inputs));
7479
+ }
7480
+ const arrowHeadVariants$2 = {
7481
+ normal: { d: 'm5 12 7-7 7 7', translateY: 0 },
7482
+ animate: {
7483
+ d: 'm5 12 7-7 7 7',
7484
+ translateY: [0, 3, 0],
7485
+ transition: {
7486
+ duration: 0.4,
7487
+ ease: 'easeInOut',
7488
+ },
7489
+ },
7490
+ };
7491
+ const arrowLineVariants$2 = {
7492
+ normal: { d: 'M12 19V5' },
7493
+ animate: {
7494
+ d: ['M12 19V5', 'M12 19V10', 'M12 19V5'],
7495
+ transition: {
7496
+ duration: 0.4,
7497
+ ease: 'easeInOut',
7498
+ },
7499
+ },
7500
+ };
7501
+ const ArrowUp = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
7502
+ const controls = useAnimation();
7503
+ const loopRef = useRef(loopOnHover);
7504
+ const isControlledRef = useRef(false);
7505
+ const triggerAnimation = useCallback(async () => {
7506
+ await controls.start('animate');
7507
+ if (loopRef.current)
7508
+ triggerAnimation();
7509
+ }, [controls]);
7510
+ useEffect(() => {
7511
+ loopRef.current = loopOnHover;
7512
+ }, [loopOnHover]);
7513
+ useEffect(() => {
7514
+ if (autoAnimateOnLoad)
7515
+ triggerAnimation();
7516
+ }, [autoAnimateOnLoad, triggerAnimation]);
7517
+ useImperativeHandle(ref, () => {
7518
+ isControlledRef.current = true;
7519
+ return {
7520
+ startAnimation: () => controls.start('animate'),
7521
+ stopAnimation: () => controls.stop(),
7522
+ };
7523
+ });
7524
+ const handleMouseEnter = (e) => {
7525
+ if (!isControlledRef.current && hoverable)
7526
+ triggerAnimation();
7527
+ onMouseEnter?.(e);
7528
+ };
7529
+ const handleMouseLeave = (e) => {
7530
+ if (!isControlledRef.current && hoverable)
7531
+ controls.stop();
7532
+ onMouseLeave?.(e);
7533
+ };
7534
+ const handleClick = (e) => {
7535
+ if (animateOnClick)
7536
+ triggerAnimation();
7537
+ onClick?.(e);
7538
+ };
7539
+ return (jsx("div", { className: cn$2('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "M12 19V5", variants: arrowLineVariants$2, initial: "initial", animate: controls }), jsx(motion.path, { d: "m5 12 7-7 7 7", variants: arrowHeadVariants$2, initial: "initial", animate: controls })] }) }));
7540
+ });
7541
+ ArrowUp.displayName = 'ArrowUp';
7542
+
7543
+ function cn$1(...inputs) {
7544
+ return twMerge(clsx(inputs));
7545
+ }
7546
+ const arrowHeadVariants$1 = {
7547
+ normal: { d: 'm12 5-7 7 7 7', translateX: 0 },
7548
+ animate: {
7549
+ d: 'm12 5-7 7 7 7',
7550
+ translateX: [0, 3, 0],
7551
+ transition: {
7552
+ duration: 0.4,
7553
+ ease: 'easeInOut',
7554
+ },
7555
+ },
7556
+ };
7557
+ const arrowLineVariants$1 = {
7558
+ normal: { d: 'M19 12H5' },
7559
+ animate: {
7560
+ d: ['M19 12H5', 'M19 12H8.4', 'M19 12H5'],
7561
+ transition: {
7562
+ duration: 0.4,
7563
+ ease: 'easeInOut',
7564
+ },
7565
+ },
7566
+ };
7567
+ const ArrowLeft = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
7568
+ const controls = useAnimation();
7569
+ const loopRef = useRef(loopOnHover);
7570
+ const isControlledRef = useRef(false);
7571
+ const triggerAnimation = useCallback(async () => {
7572
+ await controls.start('animate');
7573
+ if (loopRef.current)
7574
+ triggerAnimation();
7575
+ }, [controls]);
7576
+ useEffect(() => {
7577
+ loopRef.current = loopOnHover;
7578
+ }, [loopOnHover]);
7579
+ useEffect(() => {
7580
+ if (autoAnimateOnLoad)
7581
+ triggerAnimation();
7582
+ }, [autoAnimateOnLoad, triggerAnimation]);
7583
+ useImperativeHandle(ref, () => {
7584
+ isControlledRef.current = true;
7585
+ return {
7586
+ startAnimation: () => controls.start('animate'),
7587
+ stopAnimation: () => controls.stop(),
7588
+ };
7589
+ });
7590
+ const handleMouseEnter = (e) => {
7591
+ if (!isControlledRef.current && hoverable)
7592
+ triggerAnimation();
7593
+ onMouseEnter?.(e);
7594
+ };
7595
+ const handleMouseLeave = (e) => {
7596
+ if (!isControlledRef.current && hoverable)
7597
+ controls.stop();
7598
+ onMouseLeave?.(e);
7599
+ };
7600
+ const handleClick = (e) => {
7601
+ if (animateOnClick)
7602
+ triggerAnimation();
7603
+ onClick?.(e);
7604
+ };
7605
+ return (jsx("div", { className: cn$1('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "m12 5-7 7 7 7", variants: arrowHeadVariants$1, initial: "initial", animate: controls }), jsx(motion.path, { d: "M19 12H5", variants: arrowLineVariants$1, initial: "initial", animate: controls })] }) }));
7606
+ });
7607
+ ArrowLeft.displayName = 'ArrowLeft';
7608
+
7609
+ function cn(...inputs) {
7610
+ return twMerge(clsx(inputs));
7611
+ }
7612
+ const arrowHeadVariants = {
7613
+ normal: { d: 'm12 5 7 7-7 7', translateX: 0 },
7614
+ animate: {
7615
+ d: 'm12 5 7 7-7 7',
7616
+ translateX: [0, -3, 0],
7617
+ transition: {
7618
+ duration: 0.4,
7619
+ ease: 'easeInOut',
7620
+ },
7621
+ },
7622
+ };
7623
+ const arrowLineVariants = {
7624
+ normal: { d: 'M5 12h14' },
7625
+ animate: {
7626
+ d: ['M5 12h14', 'M5 12h10.6', 'M5 12h14'],
7627
+ transition: {
7628
+ duration: 0.4,
7629
+ ease: 'easeInOut',
7630
+ },
7631
+ },
7632
+ };
7633
+ const ArrowRight = forwardRef(({ size = 28, className, style, autoAnimateOnLoad = false, hoverable = true, loopOnHover = false, animateOnClick = false, onMouseEnter, onMouseLeave, onClick, ...props }, ref) => {
7634
+ const controls = useAnimation();
7635
+ const loopRef = useRef(loopOnHover);
7636
+ const isControlledRef = useRef(false);
7637
+ const triggerAnimation = useCallback(async () => {
7638
+ await controls.start('animate');
7639
+ if (loopRef.current)
7640
+ triggerAnimation();
7641
+ }, [controls]);
7642
+ useEffect(() => {
7643
+ loopRef.current = loopOnHover;
7644
+ }, [loopOnHover]);
7645
+ useEffect(() => {
7646
+ if (autoAnimateOnLoad)
7647
+ triggerAnimation();
7648
+ }, [autoAnimateOnLoad, triggerAnimation]);
7649
+ useImperativeHandle(ref, () => {
7650
+ isControlledRef.current = true;
7651
+ return {
7652
+ startAnimation: () => controls.start('animate'),
7653
+ stopAnimation: () => controls.stop(),
7654
+ };
7655
+ });
7656
+ const handleMouseEnter = (e) => {
7657
+ if (!isControlledRef.current && hoverable)
7658
+ triggerAnimation();
7659
+ onMouseEnter?.(e);
7660
+ };
7661
+ const handleMouseLeave = (e) => {
7662
+ if (!isControlledRef.current && hoverable)
7663
+ controls.stop();
7664
+ onMouseLeave?.(e);
7665
+ };
7666
+ const handleClick = (e) => {
7667
+ if (animateOnClick)
7668
+ triggerAnimation();
7669
+ onClick?.(e);
7670
+ };
7671
+ return (jsx("div", { className: cn('inline-block', className), style: { width: size, height: size, ...style }, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onClick: handleClick, ...props, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "100%", height: "100%", children: [jsx(motion.path, { d: "m12 5 7 7-7 7", variants: arrowHeadVariants, initial: "initial", animate: controls }), jsx(motion.path, { d: "M5 12h14", variants: arrowLineVariants, initial: "initial", animate: controls })] }) }));
7672
+ });
7673
+ ArrowRight.displayName = 'ArrowRight';
7674
+
7675
+ export { AArrowDown, AArrowUp, AccessibilityActivity, Activity, AirVent, Airplay, AlarmClock, AlarmClockCheck, AlarmClockMinus, AlarmClockPlus, Album, AlignCenter, AlignCenterHorizontal, AlignCenterVertical, AlignEndHorizontal, AlignEndVertical, AlignHorizontalDistributeCenter, AlignHorizontalDistributeEnd, AlignHorizontalDistributeStart, AlignHorizontalJustifyCenter, AlignHorizontalJustifyEnd, AlignHorizontalJustifyStart, AlignHorizontalSpaceAround, AlignHorizontalSpaceBetween, AlignJustify, AlignLeft, AlignRight, AlignStartHorizontal, AlignStartVertical, AlignVerticalDistributeCenter, AlignVerticalDistributeEnd, AlignVerticalDistributeStart, AlignVerticalJustifyCenter, AlignVerticalJustifyEnd, AlignVerticalJustifyStart, AlignVerticalSpaceAround, AlignVerticalSpaceBetween, Ambulance, Ampersand, Ampersands, Amphora, Anchor, Angry, Annoyed, Antenna, Aperture, AppWindow, AppWindowMac, Apple, Archive, ArchiveRestore, ArchiveX, Armchair, ArrowBigDown, ArrowBigDownDash, ArrowBigLeft, ArrowBigLeftDash, ArrowBigRight, ArrowBigRightDash, ArrowBigUp, ArrowBigUpDash, ArrowDown, ArrowLeft, ArrowRight, ArrowUp, SquareActivity };
4850
7676
  //# sourceMappingURL=index.js.map