@saasflare/ui 1.1.2 → 2.0.0

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.
@@ -1,6 +1,7 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
- var chunkO3CFRMDK_js = require('../chunk-O3CFRMDK.js');
4
+ var chunkTU6BBAA7_js = require('../chunk-TU6BBAA7.js');
4
5
  var chunkJOVJRQO3_js = require('../chunk-JOVJRQO3.js');
5
6
  var React = require('react');
6
7
  var useEmblaCarousel = require('embla-carousel-react');
@@ -167,7 +168,7 @@ function CarouselPrevious({
167
168
  }) {
168
169
  const { orientation, scrollPrev, canScrollPrev } = useCarousel();
169
170
  return /* @__PURE__ */ jsxRuntime.jsxs(
170
- chunkO3CFRMDK_js.Button,
171
+ chunkTU6BBAA7_js.Button,
171
172
  {
172
173
  "data-slot": "carousel-previous",
173
174
  variant,
@@ -195,7 +196,7 @@ function CarouselNext({
195
196
  }) {
196
197
  const { orientation, scrollNext, canScrollNext } = useCarousel();
197
198
  return /* @__PURE__ */ jsxRuntime.jsxs(
198
- chunkO3CFRMDK_js.Button,
199
+ chunkTU6BBAA7_js.Button,
199
200
  {
200
201
  "data-slot": "carousel-next",
201
202
  variant,
@@ -1,4 +1,5 @@
1
- import { Button } from '../chunk-QEKYM3BT.mjs';
1
+ "use client";
2
+ import { Button } from '../chunk-OT4ZNLTB.mjs';
2
3
  import { cn } from '../chunk-S26666D6.mjs';
3
4
  import * as React from 'react';
4
5
  import useEmblaCarousel from 'embla-carousel-react';
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkJOVJRQO3_js = require('../chunk-JOVJRQO3.js');
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { cn } from '../chunk-S26666D6.mjs';
2
3
  import * as React from 'react';
3
4
  import * as RechartsPrimitive from 'recharts';
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkO3CFRMDK_js = require('./chunk-O3CFRMDK.js');
4
+ var chunkTU6BBAA7_js = require('./chunk-TU6BBAA7.js');
5
5
  var chunkJOVJRQO3_js = require('./chunk-JOVJRQO3.js');
6
6
  var React9 = require('react');
7
7
  var react = require('motion/react');
@@ -229,13 +229,13 @@ function usePagination(options) {
229
229
  return { activePage, range, setPage, next, previous, first, last };
230
230
  }
231
231
  function Card({ className, ...props }) {
232
- const reduced = chunkO3CFRMDK_js.useReducedMotion();
232
+ const reduced = chunkTU6BBAA7_js.useReducedMotion();
233
233
  return /* @__PURE__ */ jsxRuntime.jsx(
234
234
  react.m.div,
235
235
  {
236
236
  "data-slot": "card",
237
237
  whileHover: reduced ? void 0 : { y: -2, boxShadow: "0 8px 30px rgba(0,0,0,0.08)" },
238
- transition: reduced ? chunkO3CFRMDK_js.noMotion : chunkO3CFRMDK_js.springGentle,
238
+ transition: reduced ? chunkTU6BBAA7_js.noMotion : chunkTU6BBAA7_js.springGentle,
239
239
  className: chunkJOVJRQO3_js.cn(
240
240
  "flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm transition-[border-color] duration-300 hover:border-primary/20",
241
241
  className
@@ -351,7 +351,7 @@ function DialogContent({
351
351
  children,
352
352
  ...props
353
353
  }) {
354
- const reduced = chunkO3CFRMDK_js.useReducedMotion();
354
+ const reduced = chunkTU6BBAA7_js.useReducedMotion();
355
355
  return /* @__PURE__ */ jsxRuntime.jsxs(DialogPortal, { children: [
356
356
  /* @__PURE__ */ jsxRuntime.jsx(DialogOverlay, {}),
357
357
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -366,7 +366,7 @@ function DialogContent({
366
366
  initial: reduced ? { opacity: 1 } : { opacity: 0, scale: 0.95, y: 10 },
367
367
  animate: { opacity: 1, scale: 1, y: 0 },
368
368
  exit: reduced ? { opacity: 0 } : { opacity: 0, scale: 0.95, y: 10 },
369
- transition: reduced ? chunkO3CFRMDK_js.noMotion : chunkO3CFRMDK_js.springBouncy,
369
+ transition: reduced ? chunkTU6BBAA7_js.noMotion : chunkTU6BBAA7_js.springBouncy,
370
370
  className: chunkJOVJRQO3_js.cn(
371
371
  "fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border bg-background p-6 shadow-lg sm:max-w-lg",
372
372
  className
@@ -466,7 +466,7 @@ function AlertDialogContent({
466
466
  children,
467
467
  ...props
468
468
  }) {
469
- const reduced = chunkO3CFRMDK_js.useReducedMotion();
469
+ const reduced = chunkTU6BBAA7_js.useReducedMotion();
470
470
  return /* @__PURE__ */ jsxRuntime.jsxs(AlertDialogPortal, { children: [
471
471
  /* @__PURE__ */ jsxRuntime.jsx(AlertDialogOverlay, {}),
472
472
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -481,7 +481,7 @@ function AlertDialogContent({
481
481
  initial: reduced ? { opacity: 1 } : { opacity: 0, scale: 0.95, y: 10 },
482
482
  animate: { opacity: 1, scale: 1, y: 0 },
483
483
  exit: reduced ? { opacity: 0 } : { opacity: 0, scale: 0.95, y: 10 },
484
- transition: reduced ? chunkO3CFRMDK_js.noMotion : chunkO3CFRMDK_js.springBouncy,
484
+ transition: reduced ? chunkTU6BBAA7_js.noMotion : chunkTU6BBAA7_js.springBouncy,
485
485
  className: chunkJOVJRQO3_js.cn(
486
486
  "fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border bg-background p-6 shadow-lg sm:max-w-lg",
487
487
  className
@@ -547,7 +547,7 @@ function AlertDialogAction({
547
547
  AlertDialogPrimitive__namespace.Action,
548
548
  {
549
549
  "data-intent": "primary",
550
- className: chunkJOVJRQO3_js.cn(chunkO3CFRMDK_js.buttonVariants({ variant: "solid" }), className),
550
+ className: chunkJOVJRQO3_js.cn(chunkTU6BBAA7_js.buttonVariants({ variant: "solid" }), className),
551
551
  ...props
552
552
  }
553
553
  );
@@ -560,7 +560,7 @@ function AlertDialogCancel({
560
560
  AlertDialogPrimitive__namespace.Cancel,
561
561
  {
562
562
  "data-intent": "neutral",
563
- className: chunkJOVJRQO3_js.cn(chunkO3CFRMDK_js.buttonVariants({ variant: "outline" }), className),
563
+ className: chunkJOVJRQO3_js.cn(chunkTU6BBAA7_js.buttonVariants({ variant: "outline" }), className),
564
564
  ...props
565
565
  }
566
566
  );
@@ -588,7 +588,7 @@ function AccordionTrigger({
588
588
  children,
589
589
  ...props
590
590
  }) {
591
- const reduced = chunkO3CFRMDK_js.useReducedMotion();
591
+ const reduced = chunkTU6BBAA7_js.useReducedMotion();
592
592
  return /* @__PURE__ */ jsxRuntime.jsx(AccordionPrimitive__namespace.Header, { className: "flex", children: /* @__PURE__ */ jsxRuntime.jsxs(
593
593
  AccordionPrimitive__namespace.Trigger,
594
594
  {
@@ -605,7 +605,7 @@ function AccordionTrigger({
605
605
  {
606
606
  className: "pointer-events-none shrink-0 translate-y-0.5 text-muted-foreground",
607
607
  animate: { rotate: 0 },
608
- transition: reduced ? { duration: 0 } : chunkO3CFRMDK_js.springBouncy,
608
+ transition: reduced ? { duration: 0 } : chunkTU6BBAA7_js.springBouncy,
609
609
  children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronDownIcon, { className: "size-4" })
610
610
  }
611
611
  )
@@ -618,7 +618,7 @@ function AccordionContent({
618
618
  children,
619
619
  ...props
620
620
  }) {
621
- const reduced = chunkO3CFRMDK_js.useReducedMotion();
621
+ const reduced = chunkTU6BBAA7_js.useReducedMotion();
622
622
  return /* @__PURE__ */ jsxRuntime.jsx(
623
623
  AccordionPrimitive__namespace.Content,
624
624
  {
@@ -678,7 +678,7 @@ function TabsList({
678
678
  ...props
679
679
  }) {
680
680
  const listRef = React9__namespace.useRef(null);
681
- const reduced = chunkO3CFRMDK_js.useReducedMotion();
681
+ const reduced = chunkTU6BBAA7_js.useReducedMotion();
682
682
  const [pos, setPos] = React9__namespace.useState(null);
683
683
  React9__namespace.useLayoutEffect(() => {
684
684
  const list = listRef.current;
@@ -738,7 +738,7 @@ function TabsList({
738
738
  width: pos.width,
739
739
  height: pos.height
740
740
  },
741
- transition: reduced ? chunkO3CFRMDK_js.noMotion : chunkO3CFRMDK_js.spring,
741
+ transition: reduced ? chunkTU6BBAA7_js.noMotion : chunkTU6BBAA7_js.spring,
742
742
  className: "pointer-events-none absolute top-0 left-0 rounded-md bg-background shadow-sm dark:border dark:border-input dark:bg-input/30",
743
743
  style: { zIndex: 0 }
744
744
  }
@@ -841,7 +841,7 @@ function Checkbox({
841
841
  initial: { scale: 0, opacity: 0 },
842
842
  animate: { scale: 1, opacity: 1 },
843
843
  exit: { scale: 0, opacity: 0 },
844
- transition: chunkO3CFRMDK_js.springBouncy,
844
+ transition: chunkTU6BBAA7_js.springBouncy,
845
845
  children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CheckIcon, { className: "size-3.5" })
846
846
  }
847
847
  )
@@ -876,7 +876,7 @@ function Switch({
876
876
  {
877
877
  className: "pointer-events-none block rounded-full bg-background ring-0 group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground",
878
878
  layout: true,
879
- transition: chunkO3CFRMDK_js.springBouncy
879
+ transition: chunkTU6BBAA7_js.springBouncy
880
880
  }
881
881
  )
882
882
  }
@@ -889,7 +889,7 @@ function Progress({
889
889
  value,
890
890
  ...props
891
891
  }) {
892
- const reduced = chunkO3CFRMDK_js.useReducedMotion();
892
+ const reduced = chunkTU6BBAA7_js.useReducedMotion();
893
893
  return /* @__PURE__ */ jsxRuntime.jsx(
894
894
  ProgressPrimitive__namespace.Root,
895
895
  {
@@ -905,7 +905,7 @@ function Progress({
905
905
  className: "h-full bg-primary",
906
906
  initial: { width: "0%" },
907
907
  animate: { width: `${value ?? 0}%` },
908
- transition: reduced ? chunkO3CFRMDK_js.noMotion : chunkO3CFRMDK_js.spring
908
+ transition: reduced ? chunkTU6BBAA7_js.noMotion : chunkTU6BBAA7_js.spring
909
909
  }
910
910
  ) })
911
911
  }
@@ -944,7 +944,7 @@ function Badge({
944
944
  asChild = false,
945
945
  ...props
946
946
  }) {
947
- const reduced = chunkO3CFRMDK_js.useReducedMotion();
947
+ const reduced = chunkTU6BBAA7_js.useReducedMotion();
948
948
  let resolvedVariant = variantProp;
949
949
  let resolvedIntent = intentProp;
950
950
  const legacy = LEGACY_VARIANT_MAP[variantProp];
@@ -973,7 +973,7 @@ function Badge({
973
973
  "data-variant": resolvedVariant,
974
974
  "data-intent": resolvedIntent,
975
975
  whileHover: reduced ? void 0 : { scale: 1.05 },
976
- transition: reduced ? chunkO3CFRMDK_js.noMotion : chunkO3CFRMDK_js.spring,
976
+ transition: reduced ? chunkTU6BBAA7_js.noMotion : chunkTU6BBAA7_js.spring,
977
977
  className: chunkJOVJRQO3_js.cn(badgeVariants({ variant: resolvedVariant, size }), className),
978
978
  ...props
979
979
  }
@@ -1021,7 +1021,7 @@ function TooltipContent({
1021
1021
  initial: { opacity: 0, scale: 0.92, y: 2 },
1022
1022
  animate: { opacity: 1, scale: 1, y: 0 },
1023
1023
  exit: { opacity: 0, scale: 0.92 },
1024
- transition: chunkO3CFRMDK_js.springBouncy,
1024
+ transition: chunkTU6BBAA7_js.springBouncy,
1025
1025
  className: chunkJOVJRQO3_js.cn(
1026
1026
  "z-50 w-fit overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground shadow-md",
1027
1027
  className
@@ -1067,7 +1067,7 @@ function PopoverContent({
1067
1067
  initial: { opacity: 0, scale: 0.95, y: -4 },
1068
1068
  animate: { opacity: 1, scale: 1, y: 0 },
1069
1069
  exit: { opacity: 0, scale: 0.95, y: -4 },
1070
- transition: chunkO3CFRMDK_js.springBouncy,
1070
+ transition: chunkTU6BBAA7_js.springBouncy,
1071
1071
  className: chunkJOVJRQO3_js.cn(
1072
1072
  "z-50 w-72 origin-[var(--radix-popover-content-transform-origin)] rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-hidden",
1073
1073
  className
@@ -1107,7 +1107,7 @@ function HoverCardContent({
1107
1107
  initial: { opacity: 0, scale: 0.95, y: 4 },
1108
1108
  animate: { opacity: 1, scale: 1, y: 0 },
1109
1109
  exit: { opacity: 0, scale: 0.95 },
1110
- transition: chunkO3CFRMDK_js.springBouncy,
1110
+ transition: chunkTU6BBAA7_js.springBouncy,
1111
1111
  className: chunkJOVJRQO3_js.cn(
1112
1112
  "z-50 w-64 origin-[var(--radix-hover-card-content-transform-origin)] rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-hidden",
1113
1113
  className
@@ -1174,7 +1174,7 @@ function SelectContent({
1174
1174
  {
1175
1175
  initial: { opacity: 0, scale: 0.96, y: -4 },
1176
1176
  animate: { opacity: 1, scale: 1, y: 0 },
1177
- transition: chunkO3CFRMDK_js.springBouncy,
1177
+ transition: chunkTU6BBAA7_js.springBouncy,
1178
1178
  className: chunkJOVJRQO3_js.cn(
1179
1179
  "relative z-50 max-h-[min(var(--radix-select-content-available-height),24rem)] min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md",
1180
1180
  position === "popper" && "w-full min-w-[var(--radix-select-trigger-width)]",
@@ -1310,7 +1310,7 @@ function DropdownMenuContent({
1310
1310
  initial: { opacity: 0, scale: 0.95, y: -4 },
1311
1311
  animate: { opacity: 1, scale: 1, y: 0 },
1312
1312
  exit: { opacity: 0, scale: 0.95, y: -4 },
1313
- transition: chunkO3CFRMDK_js.springBouncy,
1313
+ transition: chunkTU6BBAA7_js.springBouncy,
1314
1314
  className: chunkJOVJRQO3_js.cn(
1315
1315
  "z-50 max-h-[var(--radix-dropdown-menu-content-available-height)] min-w-[8rem] origin-[var(--radix-dropdown-menu-content-transform-origin)] overflow-x-hidden overflow-y-auto rounded-md border bg-popover p-1 text-popover-foreground shadow-md",
1316
1316
  className
@@ -1702,7 +1702,7 @@ function Slider({
1702
1702
  className: "block size-4 shrink-0 cursor-grab rounded-full border border-primary/50 bg-background shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring active:cursor-grabbing",
1703
1703
  whileHover: { scale: 1.2 },
1704
1704
  whileTap: { scale: 0.9 },
1705
- transition: chunkO3CFRMDK_js.springBouncy
1705
+ transition: chunkTU6BBAA7_js.springBouncy
1706
1706
  }
1707
1707
  )
1708
1708
  },
@@ -2605,12 +2605,12 @@ function Calendar({
2605
2605
  defaultClassNames.nav
2606
2606
  ),
2607
2607
  button_previous: chunkJOVJRQO3_js.cn(
2608
- chunkO3CFRMDK_js.buttonVariants({ variant: buttonVariant }),
2608
+ chunkTU6BBAA7_js.buttonVariants({ variant: buttonVariant }),
2609
2609
  "size-(--cell-size) p-0 select-none aria-disabled:opacity-50",
2610
2610
  defaultClassNames.button_previous
2611
2611
  ),
2612
2612
  button_next: chunkJOVJRQO3_js.cn(
2613
- chunkO3CFRMDK_js.buttonVariants({ variant: buttonVariant }),
2613
+ chunkTU6BBAA7_js.buttonVariants({ variant: buttonVariant }),
2614
2614
  "size-(--cell-size) p-0 select-none aria-disabled:opacity-50",
2615
2615
  defaultClassNames.button_next
2616
2616
  ),
@@ -2725,7 +2725,7 @@ function CalendarDayButton({
2725
2725
  if (modifiers.focused) ref.current?.focus();
2726
2726
  }, [modifiers.focused]);
2727
2727
  return /* @__PURE__ */ jsxRuntime.jsx(
2728
- chunkO3CFRMDK_js.Button,
2728
+ chunkTU6BBAA7_js.Button,
2729
2729
  {
2730
2730
  ref,
2731
2731
  variant: "ghost",
@@ -4055,7 +4055,7 @@ function InputGroupButton({
4055
4055
  ...props
4056
4056
  }) {
4057
4057
  return /* @__PURE__ */ jsxRuntime.jsx(
4058
- chunkO3CFRMDK_js.Button,
4058
+ chunkTU6BBAA7_js.Button,
4059
4059
  {
4060
4060
  type,
4061
4061
  "data-size": size,
@@ -4453,7 +4453,7 @@ function PaginationLink({
4453
4453
  "data-slot": "pagination-link",
4454
4454
  "data-active": isActive,
4455
4455
  className: chunkJOVJRQO3_js.cn(
4456
- chunkO3CFRMDK_js.buttonVariants({
4456
+ chunkTU6BBAA7_js.buttonVariants({
4457
4457
  variant: isActive ? "outline" : "ghost",
4458
4458
  size
4459
4459
  }),
@@ -4873,7 +4873,7 @@ function SidebarTrigger({
4873
4873
  }) {
4874
4874
  const { toggleSidebar } = useSidebar();
4875
4875
  return /* @__PURE__ */ jsxRuntime.jsxs(
4876
- chunkO3CFRMDK_js.Button,
4876
+ chunkTU6BBAA7_js.Button,
4877
4877
  {
4878
4878
  "data-sidebar": "trigger",
4879
4879
  "data-slot": "sidebar-trigger",
@@ -5704,7 +5704,7 @@ function ScrollToTopButton({
5704
5704
  className,
5705
5705
  ...sfProps
5706
5706
  }) {
5707
- const { animated, surface } = chunkO3CFRMDK_js.useSaasflareProps(sfProps);
5707
+ const { animated, surface } = chunkTU6BBAA7_js.useSaasflareProps(sfProps);
5708
5708
  const [isVisible, setIsVisible] = React9.useState(false);
5709
5709
  const finalId = React9.useMemo(() => scrollContainerId ?? null, [scrollContainerId]);
5710
5710
  const getContainer = React9.useCallback(() => {
@@ -5772,7 +5772,7 @@ function ThemeModeToggle({
5772
5772
  setTheme(theme === "dark" ? "light" : "dark");
5773
5773
  };
5774
5774
  return /* @__PURE__ */ jsxRuntime.jsxs(
5775
- chunkO3CFRMDK_js.Button,
5775
+ chunkTU6BBAA7_js.Button,
5776
5776
  {
5777
5777
  variant: "ghost",
5778
5778
  size: showText ? "sm" : "icon",
@@ -5895,7 +5895,7 @@ function TopLoadingBar({
5895
5895
  finishDelayMs,
5896
5896
  ...sfProps
5897
5897
  }) {
5898
- const { animated } = chunkO3CFRMDK_js.useSaasflareProps(sfProps);
5898
+ const { animated } = chunkTU6BBAA7_js.useSaasflareProps(sfProps);
5899
5899
  if (!animated) {
5900
5900
  return /* @__PURE__ */ jsxRuntime.jsx(React9.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(
5901
5901
  TopLoadingBarStatic,
@@ -5927,79 +5927,79 @@ function UserAvatar({ src, name, initials, size = "md", className }) {
5927
5927
 
5928
5928
  Object.defineProperty(exports, "Button", {
5929
5929
  enumerable: true,
5930
- get: function () { return chunkO3CFRMDK_js.Button; }
5930
+ get: function () { return chunkTU6BBAA7_js.Button; }
5931
5931
  });
5932
5932
  Object.defineProperty(exports, "SaasflareProvider", {
5933
5933
  enumerable: true,
5934
- get: function () { return chunkO3CFRMDK_js.SaasflareProvider; }
5934
+ get: function () { return chunkTU6BBAA7_js.SaasflareProvider; }
5935
5935
  });
5936
5936
  Object.defineProperty(exports, "SaasflareScript", {
5937
5937
  enumerable: true,
5938
- get: function () { return chunkO3CFRMDK_js.SaasflareScript; }
5938
+ get: function () { return chunkTU6BBAA7_js.SaasflareScript; }
5939
5939
  });
5940
5940
  Object.defineProperty(exports, "SaasflareShell", {
5941
5941
  enumerable: true,
5942
- get: function () { return chunkO3CFRMDK_js.SaasflareShell; }
5942
+ get: function () { return chunkTU6BBAA7_js.SaasflareShell; }
5943
5943
  });
5944
5944
  Object.defineProperty(exports, "SmoothScrollProvider", {
5945
5945
  enumerable: true,
5946
- get: function () { return chunkO3CFRMDK_js.SmoothScrollProvider; }
5946
+ get: function () { return chunkTU6BBAA7_js.SmoothScrollProvider; }
5947
5947
  });
5948
5948
  Object.defineProperty(exports, "buttonVariants", {
5949
5949
  enumerable: true,
5950
- get: function () { return chunkO3CFRMDK_js.buttonVariants; }
5950
+ get: function () { return chunkTU6BBAA7_js.buttonVariants; }
5951
5951
  });
5952
5952
  Object.defineProperty(exports, "fadeIn", {
5953
5953
  enumerable: true,
5954
- get: function () { return chunkO3CFRMDK_js.fadeIn; }
5954
+ get: function () { return chunkTU6BBAA7_js.fadeIn; }
5955
5955
  });
5956
5956
  Object.defineProperty(exports, "noMotion", {
5957
5957
  enumerable: true,
5958
- get: function () { return chunkO3CFRMDK_js.noMotion; }
5958
+ get: function () { return chunkTU6BBAA7_js.noMotion; }
5959
5959
  });
5960
5960
  Object.defineProperty(exports, "scaleIn", {
5961
5961
  enumerable: true,
5962
- get: function () { return chunkO3CFRMDK_js.scaleIn; }
5962
+ get: function () { return chunkTU6BBAA7_js.scaleIn; }
5963
5963
  });
5964
5964
  Object.defineProperty(exports, "slideDown", {
5965
5965
  enumerable: true,
5966
- get: function () { return chunkO3CFRMDK_js.slideDown; }
5966
+ get: function () { return chunkTU6BBAA7_js.slideDown; }
5967
5967
  });
5968
5968
  Object.defineProperty(exports, "slideUp", {
5969
5969
  enumerable: true,
5970
- get: function () { return chunkO3CFRMDK_js.slideUp; }
5970
+ get: function () { return chunkTU6BBAA7_js.slideUp; }
5971
5971
  });
5972
5972
  Object.defineProperty(exports, "spring", {
5973
5973
  enumerable: true,
5974
- get: function () { return chunkO3CFRMDK_js.spring; }
5974
+ get: function () { return chunkTU6BBAA7_js.spring; }
5975
5975
  });
5976
5976
  Object.defineProperty(exports, "springBouncy", {
5977
5977
  enumerable: true,
5978
- get: function () { return chunkO3CFRMDK_js.springBouncy; }
5978
+ get: function () { return chunkTU6BBAA7_js.springBouncy; }
5979
5979
  });
5980
5980
  Object.defineProperty(exports, "springGentle", {
5981
5981
  enumerable: true,
5982
- get: function () { return chunkO3CFRMDK_js.springGentle; }
5982
+ get: function () { return chunkTU6BBAA7_js.springGentle; }
5983
5983
  });
5984
5984
  Object.defineProperty(exports, "springStiff", {
5985
5985
  enumerable: true,
5986
- get: function () { return chunkO3CFRMDK_js.springStiff; }
5986
+ get: function () { return chunkTU6BBAA7_js.springStiff; }
5987
5987
  });
5988
5988
  Object.defineProperty(exports, "useAnimation", {
5989
5989
  enumerable: true,
5990
- get: function () { return chunkO3CFRMDK_js.useAnimation; }
5990
+ get: function () { return chunkTU6BBAA7_js.useAnimation; }
5991
5991
  });
5992
5992
  Object.defineProperty(exports, "useReducedMotion", {
5993
5993
  enumerable: true,
5994
- get: function () { return chunkO3CFRMDK_js.useReducedMotion; }
5994
+ get: function () { return chunkTU6BBAA7_js.useReducedMotion; }
5995
5995
  });
5996
5996
  Object.defineProperty(exports, "useSaasflareProps", {
5997
5997
  enumerable: true,
5998
- get: function () { return chunkO3CFRMDK_js.useSaasflareProps; }
5998
+ get: function () { return chunkTU6BBAA7_js.useSaasflareProps; }
5999
5999
  });
6000
6000
  Object.defineProperty(exports, "useSaasflareTheme", {
6001
6001
  enumerable: true,
6002
- get: function () { return chunkO3CFRMDK_js.useSaasflareTheme; }
6002
+ get: function () { return chunkTU6BBAA7_js.useSaasflareTheme; }
6003
6003
  });
6004
6004
  Object.defineProperty(exports, "cn", {
6005
6005
  enumerable: true,
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import { useReducedMotion, noMotion, springGentle, springBouncy, buttonVariants, spring, Button, useSaasflareProps } from './chunk-QEKYM3BT.mjs';
3
- export { Button, SaasflareProvider, SaasflareScript, SaasflareShell, SmoothScrollProvider, buttonVariants, fadeIn, noMotion, scaleIn, slideDown, slideUp, spring, springBouncy, springGentle, springStiff, useAnimation, useReducedMotion, useSaasflareProps, useSaasflareTheme } from './chunk-QEKYM3BT.mjs';
2
+ import { useReducedMotion, noMotion, springGentle, springBouncy, buttonVariants, spring, Button, useSaasflareProps } from './chunk-OT4ZNLTB.mjs';
3
+ export { Button, SaasflareProvider, SaasflareScript, SaasflareShell, SmoothScrollProvider, buttonVariants, fadeIn, noMotion, scaleIn, slideDown, slideUp, spring, springBouncy, springGentle, springStiff, useAnimation, useReducedMotion, useSaasflareProps, useSaasflareTheme } from './chunk-OT4ZNLTB.mjs';
4
4
  import { cn } from './chunk-S26666D6.mjs';
5
5
  export { cn } from './chunk-S26666D6.mjs';
6
6
  import * as React9 from 'react';
package/package.json CHANGED
@@ -1,14 +1,39 @@
1
1
  {
2
2
  "name": "@saasflare/ui",
3
- "version": "1.1.2",
3
+ "version": "2.0.0",
4
4
  "private": false,
5
5
  "license": "MIT",
6
- "description": "Saasflare UI Components Library Standalone components built on Radix UI + Tailwind CSS",
6
+ "description": "The Next.js UI library App Router-aware Radix primitives with Tailwind v4 and Motion, animated by default.",
7
+ "keywords": [
8
+ "react",
9
+ "nextjs",
10
+ "next",
11
+ "app-router",
12
+ "rsc",
13
+ "server-components",
14
+ "tailwindcss",
15
+ "tailwind-v4",
16
+ "radix-ui",
17
+ "motion",
18
+ "components",
19
+ "ui-library",
20
+ "design-system",
21
+ "accessible",
22
+ "typescript"
23
+ ],
24
+ "homepage": "https://ui.saasflare.io",
25
+ "bugs": {
26
+ "url": "https://github.com/saasflare/saasflare-ui/issues"
27
+ },
7
28
  "repository": {
8
29
  "type": "git",
9
30
  "url": "https://github.com/saasflare/saasflare-ui.git",
10
31
  "directory": "packages/ui"
11
32
  },
33
+ "engines": {
34
+ "node": ">=20"
35
+ },
36
+ "sideEffects": false,
12
37
  "publishConfig": {
13
38
  "access": "public",
14
39
  "registry": "https://registry.npmjs.org",
@@ -43,7 +68,8 @@
43
68
  "types": "./dist/entries/carousel.d.ts",
44
69
  "import": "./dist/entries/carousel.mjs",
45
70
  "require": "./dist/entries/carousel.js"
46
- }
71
+ },
72
+ "./package.json": "./package.json"
47
73
  },
48
74
  "files": [
49
75
  "dist",
@@ -92,13 +118,14 @@
92
118
  "motion": "^12.0.0",
93
119
  "next": "^15.0.0 || ^16.0.0",
94
120
  "next-themes": "^0.4.0",
95
- "react": "^18.2.0 || ^19.0.0",
121
+ "react": "^19.0.0",
96
122
  "react-day-picker": "^9.0.0",
97
- "react-dom": "^18.2.0 || ^19.0.0",
123
+ "react-dom": "^19.0.0",
98
124
  "react-hook-form": "^7.0.0",
99
125
  "react-resizable-panels": "^4.0.0",
100
126
  "recharts": "^3.0.0",
101
127
  "sonner": "^2.0.0",
128
+ "tailwindcss": "^4.0.0",
102
129
  "vaul": "^1.0.0",
103
130
  "zod": "^4.0.0"
104
131
  },
@@ -115,12 +142,6 @@
115
142
  "motion": {
116
143
  "optional": true
117
144
  },
118
- "next": {
119
- "optional": true
120
- },
121
- "next-themes": {
122
- "optional": true
123
- },
124
145
  "react-day-picker": {
125
146
  "optional": true
126
147
  },
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  import { cn } from './chunk-S26666D6.mjs';
3
+ import { cva } from 'class-variance-authority';
3
4
  import * as React from 'react';
4
5
  import { createContext, useContext, useEffect, useCallback, useRef, useState } from 'react';
5
- import { cva } from 'class-variance-authority';
6
6
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
7
7
  import { ThemeProvider, useTheme } from 'next-themes';
8
8
  import { m, LazyMotion, domAnimation } from 'motion/react';
@@ -2,8 +2,8 @@
2
2
  'use strict';
3
3
 
4
4
  var chunkJOVJRQO3_js = require('./chunk-JOVJRQO3.js');
5
- var React = require('react');
6
5
  var classVarianceAuthority = require('class-variance-authority');
6
+ var React = require('react');
7
7
  var jsxRuntime = require('react/jsx-runtime');
8
8
  var nextThemes = require('next-themes');
9
9
  var react = require('motion/react');