@caffeinebounce/ui 0.62.2

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 (143) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +39 -0
  3. package/dist/FinancialStatementTable-BNUrdTU4.d.cts +249 -0
  4. package/dist/FinancialStatementTable-BNUrdTU4.d.ts +249 -0
  5. package/dist/NewsletterSignup-BPreFi5W.d.cts +37 -0
  6. package/dist/NewsletterSignup-BPreFi5W.d.ts +37 -0
  7. package/dist/TestimonialsSection-DtPu2OeR.d.ts +736 -0
  8. package/dist/TestimonialsSection-z-yotRfv.d.cts +736 -0
  9. package/dist/UnifiedTableControls-CG299y9h.d.ts +1233 -0
  10. package/dist/UnifiedTableControls-CIjRpNhy.d.cts +1233 -0
  11. package/dist/blog.d.cts +99 -0
  12. package/dist/blog.d.ts +99 -0
  13. package/dist/blog.js +292 -0
  14. package/dist/blog.mjs +279 -0
  15. package/dist/button-BHnoRUkF.d.cts +34 -0
  16. package/dist/button-BHnoRUkF.d.ts +34 -0
  17. package/dist/charts.d.cts +80 -0
  18. package/dist/charts.d.ts +80 -0
  19. package/dist/charts.js +19 -0
  20. package/dist/charts.mjs +2 -0
  21. package/dist/chunk-33JR5SYE.js +44 -0
  22. package/dist/chunk-3NDB4YPC.js +247 -0
  23. package/dist/chunk-5RW4PYZ6.js +1504 -0
  24. package/dist/chunk-5THF4YP6.mjs +155 -0
  25. package/dist/chunk-6BUBNZPG.mjs +164 -0
  26. package/dist/chunk-6DVWMJ3H.mjs +7029 -0
  27. package/dist/chunk-6TGV2DNP.js +120 -0
  28. package/dist/chunk-72JGQ7IJ.mjs +1498 -0
  29. package/dist/chunk-7DHKQODW.mjs +2932 -0
  30. package/dist/chunk-7IKHZKAC.js +160 -0
  31. package/dist/chunk-ADIDI7AJ.js +11 -0
  32. package/dist/chunk-BFWX5GJZ.mjs +940 -0
  33. package/dist/chunk-BMFQG6RA.mjs +5537 -0
  34. package/dist/chunk-C4UT5V3P.js +65 -0
  35. package/dist/chunk-CC4KUIKC.js +2004 -0
  36. package/dist/chunk-D3QXPL47.mjs +1814 -0
  37. package/dist/chunk-DQWHYBV2.js +36 -0
  38. package/dist/chunk-E42B4GSB.js +993 -0
  39. package/dist/chunk-ESZ7CBA2.js +1007 -0
  40. package/dist/chunk-EYJJQVV4.js +111 -0
  41. package/dist/chunk-FRRS2YZH.mjs +129 -0
  42. package/dist/chunk-G5TQWWQA.mjs +37 -0
  43. package/dist/chunk-GAIQJCAZ.js +5612 -0
  44. package/dist/chunk-GMBGWOCR.mjs +48 -0
  45. package/dist/chunk-GUSTCU2W.mjs +105 -0
  46. package/dist/chunk-HBLKVQIQ.mjs +23 -0
  47. package/dist/chunk-HMAMMC72.js +26 -0
  48. package/dist/chunk-IMKLN273.mjs +9 -0
  49. package/dist/chunk-J6OLBSZR.js +250 -0
  50. package/dist/chunk-JAE45W2T.js +28 -0
  51. package/dist/chunk-JORVSG52.js +606 -0
  52. package/dist/chunk-KB7UXIQZ.mjs +984 -0
  53. package/dist/chunk-KGGQ5NZV.js +186 -0
  54. package/dist/chunk-KHCC5UKW.mjs +22 -0
  55. package/dist/chunk-KRRIRS6A.mjs +1945 -0
  56. package/dist/chunk-LQCVRWVF.js +48 -0
  57. package/dist/chunk-MHZXUOGN.mjs +168 -0
  58. package/dist/chunk-MPZFPU4X.js +349 -0
  59. package/dist/chunk-MVYRNJA6.js +74 -0
  60. package/dist/chunk-N6AFNFZR.mjs +565 -0
  61. package/dist/chunk-OFQLWSUR.mjs +214 -0
  62. package/dist/chunk-OLAAXLXY.mjs +219 -0
  63. package/dist/chunk-OZZWDIOY.js +1859 -0
  64. package/dist/chunk-PZRI43EZ.js +111 -0
  65. package/dist/chunk-Q256HRYD.js +176 -0
  66. package/dist/chunk-Q52ZEL62.mjs +223 -0
  67. package/dist/chunk-R26Y7LGJ.js +142 -0
  68. package/dist/chunk-RBUYW6QQ.js +39 -0
  69. package/dist/chunk-RVEFPVZF.mjs +43 -0
  70. package/dist/chunk-SORWLKOK.js +96 -0
  71. package/dist/chunk-STEP6C4C.mjs +33 -0
  72. package/dist/chunk-T5R6HUDG.mjs +22 -0
  73. package/dist/chunk-T6ZBA6VJ.js +7109 -0
  74. package/dist/chunk-UM7WMXIU.js +2995 -0
  75. package/dist/chunk-VBD4Q5LL.mjs +117 -0
  76. package/dist/chunk-WOITB4JL.js +195 -0
  77. package/dist/chunk-YKZEKJMZ.mjs +71 -0
  78. package/dist/chunk-YL7RZRHM.mjs +103 -0
  79. package/dist/chunk-YSLD2HLP.mjs +346 -0
  80. package/dist/chunk-ZFLZA7UP.mjs +140 -0
  81. package/dist/chunk-ZKUIUE7W.mjs +26 -0
  82. package/dist/chunk-ZOA7B32D.js +248 -0
  83. package/dist/data-table.d.cts +46 -0
  84. package/dist/data-table.d.ts +46 -0
  85. package/dist/data-table.js +270 -0
  86. package/dist/data-table.mjs +13 -0
  87. package/dist/editor.d.cts +89 -0
  88. package/dist/editor.d.ts +89 -0
  89. package/dist/editor.js +10 -0
  90. package/dist/editor.mjs +1 -0
  91. package/dist/forms.d.cts +142 -0
  92. package/dist/forms.d.ts +142 -0
  93. package/dist/forms.js +24 -0
  94. package/dist/forms.mjs +11 -0
  95. package/dist/hooks-8ORd7T1A.d.cts +751 -0
  96. package/dist/hooks-B2jU1GVT.d.ts +751 -0
  97. package/dist/hooks.d.cts +6 -0
  98. package/dist/hooks.d.ts +6 -0
  99. package/dist/hooks.js +99 -0
  100. package/dist/hooks.mjs +10 -0
  101. package/dist/index.d.cts +3141 -0
  102. package/dist/index.d.ts +3141 -0
  103. package/dist/index.js +7332 -0
  104. package/dist/index.mjs +5876 -0
  105. package/dist/layouts-DPfDDF53.d.cts +1001 -0
  106. package/dist/layouts-DPfDDF53.d.ts +1001 -0
  107. package/dist/layouts.d.cts +4 -0
  108. package/dist/layouts.d.ts +4 -0
  109. package/dist/layouts.js +100 -0
  110. package/dist/layouts.mjs +11 -0
  111. package/dist/marketing-3d.d.cts +51 -0
  112. package/dist/marketing-3d.d.ts +51 -0
  113. package/dist/marketing-3d.js +553 -0
  114. package/dist/marketing-3d.mjs +526 -0
  115. package/dist/marketing.d.cts +583 -0
  116. package/dist/marketing.d.ts +583 -0
  117. package/dist/marketing.js +299 -0
  118. package/dist/marketing.mjs +10 -0
  119. package/dist/media.d.cts +29 -0
  120. package/dist/media.d.ts +29 -0
  121. package/dist/media.js +189 -0
  122. package/dist/media.mjs +182 -0
  123. package/dist/navigation.d.cts +591 -0
  124. package/dist/navigation.d.ts +591 -0
  125. package/dist/navigation.js +108 -0
  126. package/dist/navigation.mjs +15 -0
  127. package/dist/portal.d.cts +58 -0
  128. package/dist/portal.d.ts +58 -0
  129. package/dist/portal.js +403 -0
  130. package/dist/portal.mjs +395 -0
  131. package/dist/primitives.d.cts +508 -0
  132. package/dist/primitives.d.ts +508 -0
  133. package/dist/primitives.js +295 -0
  134. package/dist/primitives.mjs +14 -0
  135. package/dist/settings.d.cts +216 -0
  136. package/dist/settings.d.ts +216 -0
  137. package/dist/settings.js +34 -0
  138. package/dist/settings.mjs +9 -0
  139. package/dist/shared-Dqn36QHZ.d.cts +4 -0
  140. package/dist/shared-Dqn36QHZ.d.ts +4 -0
  141. package/dist/styles.css +1213 -0
  142. package/package.json +189 -0
  143. package/styles.css +1 -0
@@ -0,0 +1,111 @@
1
+ 'use strict';
2
+
3
+ var chunkADIDI7AJ_js = require('./chunk-ADIDI7AJ.js');
4
+ var classVarianceAuthority = require('class-variance-authority');
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+
7
+ var cardVariants = classVarianceAuthority.cva(
8
+ "bg-card text-card-foreground flex flex-col gap-6 rounded-box py-6",
9
+ {
10
+ variants: {
11
+ elevation: {
12
+ flat: "shadow-none",
13
+ raised: "shadow-sm",
14
+ floating: "shadow-lg"
15
+ },
16
+ border: {
17
+ default: "border",
18
+ subtle: "border border-border/50",
19
+ none: "border-0"
20
+ }
21
+ },
22
+ defaultVariants: {
23
+ elevation: "raised",
24
+ border: "default"
25
+ }
26
+ }
27
+ );
28
+ function Card({ className, elevation, border, ...props }) {
29
+ return /* @__PURE__ */ jsxRuntime.jsx(
30
+ "div",
31
+ {
32
+ "data-slot": "card",
33
+ className: chunkADIDI7AJ_js.cn(cardVariants({ elevation, border, className })),
34
+ ...props
35
+ }
36
+ );
37
+ }
38
+ function CardHeader({ className, ...props }) {
39
+ return /* @__PURE__ */ jsxRuntime.jsx(
40
+ "div",
41
+ {
42
+ "data-slot": "card-header",
43
+ className: chunkADIDI7AJ_js.cn(
44
+ "@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",
45
+ className
46
+ ),
47
+ ...props
48
+ }
49
+ );
50
+ }
51
+ function CardTitle({ className, ...props }) {
52
+ return /* @__PURE__ */ jsxRuntime.jsx(
53
+ "div",
54
+ {
55
+ "data-slot": "card-title",
56
+ className: chunkADIDI7AJ_js.cn("leading-none font-semibold", className),
57
+ ...props
58
+ }
59
+ );
60
+ }
61
+ function CardDescription({ className, ...props }) {
62
+ return /* @__PURE__ */ jsxRuntime.jsx(
63
+ "div",
64
+ {
65
+ "data-slot": "card-description",
66
+ className: chunkADIDI7AJ_js.cn("text-muted-foreground text-sm", className),
67
+ ...props
68
+ }
69
+ );
70
+ }
71
+ function CardAction({ className, ...props }) {
72
+ return /* @__PURE__ */ jsxRuntime.jsx(
73
+ "div",
74
+ {
75
+ "data-slot": "card-action",
76
+ className: chunkADIDI7AJ_js.cn(
77
+ "col-start-2 row-span-2 row-start-1 self-start justify-self-end",
78
+ className
79
+ ),
80
+ ...props
81
+ }
82
+ );
83
+ }
84
+ function CardContent({ className, ...props }) {
85
+ return /* @__PURE__ */ jsxRuntime.jsx(
86
+ "div",
87
+ {
88
+ "data-slot": "card-content",
89
+ className: chunkADIDI7AJ_js.cn("px-6", className),
90
+ ...props
91
+ }
92
+ );
93
+ }
94
+ function CardFooter({ className, ...props }) {
95
+ return /* @__PURE__ */ jsxRuntime.jsx(
96
+ "div",
97
+ {
98
+ "data-slot": "card-footer",
99
+ className: chunkADIDI7AJ_js.cn("flex items-center px-6 [.border-t]:pt-6", className),
100
+ ...props
101
+ }
102
+ );
103
+ }
104
+
105
+ exports.Card = Card;
106
+ exports.CardAction = CardAction;
107
+ exports.CardContent = CardContent;
108
+ exports.CardDescription = CardDescription;
109
+ exports.CardFooter = CardFooter;
110
+ exports.CardHeader = CardHeader;
111
+ exports.CardTitle = CardTitle;
@@ -0,0 +1,129 @@
1
+ import { cn } from './chunk-IMKLN273.mjs';
2
+ import * as SheetPrimitive from '@radix-ui/react-dialog';
3
+ import { cva } from 'class-variance-authority';
4
+ import { X } from 'lucide-react';
5
+ import { jsx, jsxs } from 'react/jsx-runtime';
6
+
7
+ function Sheet({ ...props }) {
8
+ return /* @__PURE__ */ jsx(SheetPrimitive.Root, { "data-slot": "sheet", ...props });
9
+ }
10
+ function SheetTrigger({
11
+ ...props
12
+ }) {
13
+ return /* @__PURE__ */ jsx(SheetPrimitive.Trigger, { "data-slot": "sheet-trigger", ...props });
14
+ }
15
+ function SheetClose({
16
+ ...props
17
+ }) {
18
+ return /* @__PURE__ */ jsx(SheetPrimitive.Close, { "data-slot": "sheet-close", ...props });
19
+ }
20
+ function SheetPortal({
21
+ ...props
22
+ }) {
23
+ return /* @__PURE__ */ jsx(SheetPrimitive.Portal, { "data-slot": "sheet-portal", ...props });
24
+ }
25
+ function SheetOverlay({
26
+ className,
27
+ ...props
28
+ }) {
29
+ return /* @__PURE__ */ jsx(
30
+ SheetPrimitive.Overlay,
31
+ {
32
+ "data-slot": "sheet-overlay",
33
+ className: cn(
34
+ "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-[100] bg-black/50",
35
+ className
36
+ ),
37
+ ...props
38
+ }
39
+ );
40
+ }
41
+ var sheetVariants = cva(
42
+ "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-[100] flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500",
43
+ {
44
+ variants: {
45
+ side: {
46
+ top: "data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 border-b",
47
+ bottom: "data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 border-t",
48
+ left: "data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm",
49
+ right: "data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm"
50
+ }
51
+ },
52
+ defaultVariants: {
53
+ side: "right"
54
+ }
55
+ }
56
+ );
57
+ function SheetContent({
58
+ side = "right",
59
+ className,
60
+ children,
61
+ ...props
62
+ }) {
63
+ return /* @__PURE__ */ jsxs(SheetPortal, { children: [
64
+ /* @__PURE__ */ jsx(SheetOverlay, {}),
65
+ /* @__PURE__ */ jsxs(
66
+ SheetPrimitive.Content,
67
+ {
68
+ "data-slot": "sheet-content",
69
+ className: cn(sheetVariants({ side }), className),
70
+ ...props,
71
+ children: [
72
+ /* @__PURE__ */ jsxs(SheetPrimitive.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none", children: [
73
+ /* @__PURE__ */ jsx(X, { className: "size-4" }),
74
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
75
+ ] }),
76
+ children
77
+ ]
78
+ }
79
+ )
80
+ ] });
81
+ }
82
+ function SheetHeader({ className, ...props }) {
83
+ return /* @__PURE__ */ jsx(
84
+ "div",
85
+ {
86
+ "data-slot": "sheet-header",
87
+ className: cn("flex flex-col gap-1.5 p-4", className),
88
+ ...props
89
+ }
90
+ );
91
+ }
92
+ function SheetFooter({ className, ...props }) {
93
+ return /* @__PURE__ */ jsx(
94
+ "div",
95
+ {
96
+ "data-slot": "sheet-footer",
97
+ className: cn("mt-auto flex flex-col gap-2 p-4", className),
98
+ ...props
99
+ }
100
+ );
101
+ }
102
+ function SheetTitle({
103
+ className,
104
+ ...props
105
+ }) {
106
+ return /* @__PURE__ */ jsx(
107
+ SheetPrimitive.Title,
108
+ {
109
+ "data-slot": "sheet-title",
110
+ className: cn("text-foreground font-semibold", className),
111
+ ...props
112
+ }
113
+ );
114
+ }
115
+ function SheetDescription({
116
+ className,
117
+ ...props
118
+ }) {
119
+ return /* @__PURE__ */ jsx(
120
+ SheetPrimitive.Description,
121
+ {
122
+ "data-slot": "sheet-description",
123
+ className: cn("text-muted-foreground text-sm", className),
124
+ ...props
125
+ }
126
+ );
127
+ }
128
+
129
+ export { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger };
@@ -0,0 +1,37 @@
1
+ import { useState, useRef, useCallback, useEffect } from 'react';
2
+
3
+ // src/hooks/useScrollDirection.ts
4
+ function useScrollDirection({
5
+ threshold = 10,
6
+ topThreshold = 50
7
+ } = {}) {
8
+ const [direction, setDirection] = useState(null);
9
+ const [isAtTop, setIsAtTop] = useState(true);
10
+ const lastScrollY = useRef(0);
11
+ const ticking = useRef(false);
12
+ const updateScrollDirection = useCallback(() => {
13
+ const scrollY = window.scrollY;
14
+ setIsAtTop(scrollY < topThreshold);
15
+ const diff = scrollY - lastScrollY.current;
16
+ if (Math.abs(diff) >= threshold) {
17
+ setDirection(diff > 0 ? "down" : "up");
18
+ lastScrollY.current = scrollY;
19
+ }
20
+ ticking.current = false;
21
+ }, [threshold, topThreshold]);
22
+ const onScroll = useCallback(() => {
23
+ if (!ticking.current) {
24
+ window.requestAnimationFrame(updateScrollDirection);
25
+ ticking.current = true;
26
+ }
27
+ }, [updateScrollDirection]);
28
+ useEffect(() => {
29
+ lastScrollY.current = window.scrollY;
30
+ setIsAtTop(window.scrollY < topThreshold);
31
+ window.addEventListener("scroll", onScroll, { passive: true });
32
+ return () => window.removeEventListener("scroll", onScroll);
33
+ }, [onScroll, topThreshold]);
34
+ return { direction, isAtTop };
35
+ }
36
+
37
+ export { useScrollDirection };