@demokit-ui/demokit 0.1.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.
Files changed (231) hide show
  1. package/README.md +128 -0
  2. package/dist/app/background-decor.d.ts +1 -0
  3. package/dist/app/background-decor.js +38 -0
  4. package/dist/app/container.d.ts +12 -0
  5. package/dist/app/container.js +29 -0
  6. package/dist/app/demo1-shell.d.ts +43 -0
  7. package/dist/app/demo1-shell.js +616 -0
  8. package/dist/app/tweak-panel.d.ts +22 -0
  9. package/dist/app/tweak-panel.js +182 -0
  10. package/dist/components/apexcharts.css +101 -0
  11. package/dist/components/scrollable.css +120 -0
  12. package/dist/config/settings.config.d.ts +2 -0
  13. package/dist/config/settings.config.js +33 -0
  14. package/dist/config/types.d.ts +50 -0
  15. package/dist/config.reui.css +337 -0
  16. package/dist/demos/demo1.css +176 -0
  17. package/dist/index.d.ts +14 -0
  18. package/dist/index.js +484 -0
  19. package/dist/kit/components/chart/chart/chart.d.ts +57 -0
  20. package/dist/kit/components/chart/chart/chart.js +206 -0
  21. package/dist/kit/components/composite/action-bar/action-bar.d.ts +10 -0
  22. package/dist/kit/components/composite/action-bar/action-bar.js +38 -0
  23. package/dist/kit/components/composite/action-card/action-card.d.ts +13 -0
  24. package/dist/kit/components/composite/action-card/action-card.js +35 -0
  25. package/dist/kit/components/composite/activity-feed/activity-feed.d.ts +17 -0
  26. package/dist/kit/components/composite/activity-feed/activity-feed.js +26 -0
  27. package/dist/kit/components/composite/alert-card/alert-card.d.ts +10 -0
  28. package/dist/kit/components/composite/alert-card/alert-card.js +37 -0
  29. package/dist/kit/components/composite/approval-flow/approval-flow.d.ts +51 -0
  30. package/dist/kit/components/composite/approval-flow/approval-flow.js +185 -0
  31. package/dist/kit/components/composite/auth-shell/auth-shell.d.ts +10 -0
  32. package/dist/kit/components/composite/auth-shell/auth-shell.js +32 -0
  33. package/dist/kit/components/composite/board-toolbar/board-toolbar.d.ts +12 -0
  34. package/dist/kit/components/composite/board-toolbar/board-toolbar.js +44 -0
  35. package/dist/kit/components/composite/chart-card/chart-card.d.ts +14 -0
  36. package/dist/kit/components/composite/chart-card/chart-card.js +64 -0
  37. package/dist/kit/components/composite/chart-toolbar/chart-toolbar.d.ts +17 -0
  38. package/dist/kit/components/composite/chart-toolbar/chart-toolbar.js +48 -0
  39. package/dist/kit/components/composite/data-section/data-section.d.ts +17 -0
  40. package/dist/kit/components/composite/data-section/data-section.js +73 -0
  41. package/dist/kit/components/composite/description-grid/description-grid.d.ts +12 -0
  42. package/dist/kit/components/composite/description-grid/description-grid.js +36 -0
  43. package/dist/kit/components/composite/detail-header/detail-header.d.ts +19 -0
  44. package/dist/kit/components/composite/detail-header/detail-header.js +43 -0
  45. package/dist/kit/components/composite/filter-panel/filter-panel.d.ts +18 -0
  46. package/dist/kit/components/composite/filter-panel/filter-panel.js +86 -0
  47. package/dist/kit/components/composite/filter-toolbar/filter-toolbar.d.ts +14 -0
  48. package/dist/kit/components/composite/filter-toolbar/filter-toolbar.js +59 -0
  49. package/dist/kit/components/composite/forgot-password-form/forgot-password-form.d.ts +9 -0
  50. package/dist/kit/components/composite/forgot-password-form/forgot-password-form.js +34 -0
  51. package/dist/kit/components/composite/form-section/form-section.d.ts +9 -0
  52. package/dist/kit/components/composite/form-section/form-section.js +16 -0
  53. package/dist/kit/components/composite/kanban-board/kanban-board.d.ts +50 -0
  54. package/dist/kit/components/composite/kanban-board/kanban-board.js +55 -0
  55. package/dist/kit/components/composite/login-card/login-card.d.ts +33 -0
  56. package/dist/kit/components/composite/login-card/login-card.js +138 -0
  57. package/dist/kit/components/composite/message-list-card/message-list-card.d.ts +20 -0
  58. package/dist/kit/components/composite/message-list-card/message-list-card.js +83 -0
  59. package/dist/kit/components/composite/metric-card/metric-card.d.ts +18 -0
  60. package/dist/kit/components/composite/metric-card/metric-card.js +37 -0
  61. package/dist/kit/components/composite/milestone-card/milestone-card.d.ts +12 -0
  62. package/dist/kit/components/composite/milestone-card/milestone-card.js +33 -0
  63. package/dist/kit/components/composite/oauth-login-buttons/oauth-login-buttons.d.ts +14 -0
  64. package/dist/kit/components/composite/oauth-login-buttons/oauth-login-buttons.js +32 -0
  65. package/dist/kit/components/composite/page-header/page-header.d.ts +12 -0
  66. package/dist/kit/components/composite/page-header/page-header.js +66 -0
  67. package/dist/kit/components/composite/profile-card/profile-card.d.ts +16 -0
  68. package/dist/kit/components/composite/profile-card/profile-card.js +28 -0
  69. package/dist/kit/components/composite/progress-card/progress-card.d.ts +16 -0
  70. package/dist/kit/components/composite/progress-card/progress-card.js +23 -0
  71. package/dist/kit/components/composite/project-card/project-card.d.ts +17 -0
  72. package/dist/kit/components/composite/project-card/project-card.js +46 -0
  73. package/dist/kit/components/composite/shortcut-card/shortcut-card.d.ts +13 -0
  74. package/dist/kit/components/composite/shortcut-card/shortcut-card.js +35 -0
  75. package/dist/kit/components/composite/sprint-summary/sprint-summary.d.ts +15 -0
  76. package/dist/kit/components/composite/sprint-summary/sprint-summary.js +43 -0
  77. package/dist/kit/components/composite/state-panel/state-panel.d.ts +12 -0
  78. package/dist/kit/components/composite/state-panel/state-panel.js +79 -0
  79. package/dist/kit/components/composite/summary-card/summary-card.d.ts +15 -0
  80. package/dist/kit/components/composite/summary-card/summary-card.js +25 -0
  81. package/dist/kit/components/composite/task-card/task-card.d.ts +14 -0
  82. package/dist/kit/components/composite/task-card/task-card.js +49 -0
  83. package/dist/kit/components/composite/timeline/timeline.d.ts +46 -0
  84. package/dist/kit/components/composite/timeline/timeline.js +176 -0
  85. package/dist/kit/components/composite/todo-card/todo-card.d.ts +26 -0
  86. package/dist/kit/components/composite/todo-card/todo-card.js +101 -0
  87. package/dist/kit/components/data-display/avatar/avatar.d.ts +12 -0
  88. package/dist/kit/components/data-display/avatar/avatar.js +61 -0
  89. package/dist/kit/components/data-display/avatar-group/avatar-group.d.ts +22 -0
  90. package/dist/kit/components/data-display/avatar-group/avatar-group.js +184 -0
  91. package/dist/kit/components/data-display/badge/badge.d.ts +29 -0
  92. package/dist/kit/components/data-display/badge/badge.js +203 -0
  93. package/dist/kit/components/data-display/card/card.d.ts +15 -0
  94. package/dist/kit/components/data-display/card/card.js +119 -0
  95. package/dist/kit/components/data-display/data-grid/data-grid-column-filter.d.ts +15 -0
  96. package/dist/kit/components/data-display/data-grid/data-grid-column-filter.js +74 -0
  97. package/dist/kit/components/data-display/data-grid/data-grid-column-header.d.ts +12 -0
  98. package/dist/kit/components/data-display/data-grid/data-grid-column-header.js +171 -0
  99. package/dist/kit/components/data-display/data-grid/data-grid-column-visibility.d.ts +7 -0
  100. package/dist/kit/components/data-display/data-grid/data-grid-column-visibility.js +24 -0
  101. package/dist/kit/components/data-display/data-grid/data-grid-pagination.d.ts +15 -0
  102. package/dist/kit/components/data-display/data-grid/data-grid-pagination.js +132 -0
  103. package/dist/kit/components/data-display/data-grid/data-grid-table-dnd-rows.d.ts +9 -0
  104. package/dist/kit/components/data-display/data-grid/data-grid-table-dnd-rows.js +61 -0
  105. package/dist/kit/components/data-display/data-grid/data-grid-table-dnd.d.ts +5 -0
  106. package/dist/kit/components/data-display/data-grid/data-grid-table-dnd.js +86 -0
  107. package/dist/kit/components/data-display/data-grid/data-grid-table.d.ts +59 -0
  108. package/dist/kit/components/data-display/data-grid/data-grid-table.js +356 -0
  109. package/dist/kit/components/data-display/data-grid/data-grid.d.ts +87 -0
  110. package/dist/kit/components/data-display/data-grid/data-grid.js +87 -0
  111. package/dist/kit/components/data-display/kbd/kbd.d.ts +8 -0
  112. package/dist/kit/components/data-display/kbd/kbd.js +27 -0
  113. package/dist/kit/components/data-display/money-amount/money-amount.d.ts +27 -0
  114. package/dist/kit/components/data-display/money-amount/money-amount.js +91 -0
  115. package/dist/kit/components/data-display/progress/progress.d.ts +6 -0
  116. package/dist/kit/components/data-display/progress/progress.js +29 -0
  117. package/dist/kit/components/data-display/skeleton/skeleton.d.ts +3 -0
  118. package/dist/kit/components/data-display/skeleton/skeleton.js +8 -0
  119. package/dist/kit/components/data-display/sliding-number/sliding-number.d.ts +7 -0
  120. package/dist/kit/components/data-display/sliding-number/sliding-number.js +41 -0
  121. package/dist/kit/components/data-display/stepper/stepper.d.ts +61 -0
  122. package/dist/kit/components/data-display/stepper/stepper.js +230 -0
  123. package/dist/kit/components/data-display/table/table.d.ts +28 -0
  124. package/dist/kit/components/data-display/table/table.js +156 -0
  125. package/dist/kit/components/decorative/aurora-background/aurora-background.d.ts +7 -0
  126. package/dist/kit/components/decorative/aurora-background/aurora-background.js +60 -0
  127. package/dist/kit/components/decorative/grid-background/grid-background.d.ts +22 -0
  128. package/dist/kit/components/decorative/grid-background/grid-background.js +46 -0
  129. package/dist/kit/components/decorative/shimmering-text/shimmering-text.d.ts +29 -0
  130. package/dist/kit/components/decorative/shimmering-text/shimmering-text.js +64 -0
  131. package/dist/kit/components/decorative/text-reveal/text-reveal.d.ts +17 -0
  132. package/dist/kit/components/decorative/text-reveal/text-reveal.js +277 -0
  133. package/dist/kit/components/feedback/alert/alert.d.ts +21 -0
  134. package/dist/kit/components/feedback/alert/alert.js +236 -0
  135. package/dist/kit/components/feedback/alert-dialog/alert-dialog.d.ts +16 -0
  136. package/dist/kit/components/feedback/alert-dialog/alert-dialog.js +117 -0
  137. package/dist/kit/components/feedback/context-menu/context-menu.d.ts +24 -0
  138. package/dist/kit/components/feedback/context-menu/context-menu.js +183 -0
  139. package/dist/kit/components/feedback/dialog/dialog.d.ts +22 -0
  140. package/dist/kit/components/feedback/dialog/dialog.js +120 -0
  141. package/dist/kit/components/feedback/drawer/drawer.d.ts +13 -0
  142. package/dist/kit/components/feedback/drawer/drawer.js +76 -0
  143. package/dist/kit/components/feedback/dropdown-menu/dropdown-menu.d.ts +25 -0
  144. package/dist/kit/components/feedback/dropdown-menu/dropdown-menu.js +200 -0
  145. package/dist/kit/components/feedback/hover-card/hover-card.d.ts +6 -0
  146. package/dist/kit/components/feedback/hover-card/hover-card.js +34 -0
  147. package/dist/kit/components/feedback/popover/popover.d.ts +6 -0
  148. package/dist/kit/components/feedback/popover/popover.js +34 -0
  149. package/dist/kit/components/feedback/sheet/sheet.d.ts +22 -0
  150. package/dist/kit/components/feedback/sheet/sheet.js +128 -0
  151. package/dist/kit/components/feedback/sonner/sonner.d.ts +5 -0
  152. package/dist/kit/components/feedback/sonner/sonner.js +21 -0
  153. package/dist/kit/components/feedback/title-help/title-help.d.ts +10 -0
  154. package/dist/kit/components/feedback/title-help/title-help.js +44 -0
  155. package/dist/kit/components/feedback/tooltip/tooltip.d.ts +11 -0
  156. package/dist/kit/components/feedback/tooltip/tooltip.js +49 -0
  157. package/dist/kit/components/form/button/button.d.ts +23 -0
  158. package/dist/kit/components/form/button/button.js +380 -0
  159. package/dist/kit/components/form/calendar/calendar.d.ts +4 -0
  160. package/dist/kit/components/form/calendar/calendar.js +47 -0
  161. package/dist/kit/components/form/checkbox/checkbox.d.ts +8 -0
  162. package/dist/kit/components/form/checkbox/checkbox.js +39 -0
  163. package/dist/kit/components/form/command/command.d.ts +21 -0
  164. package/dist/kit/components/form/command/command.js +116 -0
  165. package/dist/kit/components/form/datefield/datefield.d.ts +14 -0
  166. package/dist/kit/components/form/datefield/datefield.js +74 -0
  167. package/dist/kit/components/form/file-upload/file-upload.d.ts +56 -0
  168. package/dist/kit/components/form/file-upload/file-upload.js +338 -0
  169. package/dist/kit/components/form/form/form.d.ts +24 -0
  170. package/dist/kit/components/form/form/form.js +86 -0
  171. package/dist/kit/components/form/input/input.d.ts +22 -0
  172. package/dist/kit/components/form/input/input.js +182 -0
  173. package/dist/kit/components/form/label/label.d.ts +8 -0
  174. package/dist/kit/components/form/label/label.js +28 -0
  175. package/dist/kit/components/form/radio-group/radio-group.d.ts +13 -0
  176. package/dist/kit/components/form/radio-group/radio-group.js +79 -0
  177. package/dist/kit/components/form/select/select.d.ts +25 -0
  178. package/dist/kit/components/form/select/select.js +194 -0
  179. package/dist/kit/components/form/slider/slider.d.ts +5 -0
  180. package/dist/kit/components/form/slider/slider.js +34 -0
  181. package/dist/kit/components/form/switch/switch.d.ts +20 -0
  182. package/dist/kit/components/form/switch/switch.js +158 -0
  183. package/dist/kit/components/form/textarea/textarea.d.ts +7 -0
  184. package/dist/kit/components/form/textarea/textarea.js +34 -0
  185. package/dist/kit/components/form/toggle/toggle.d.ts +9 -0
  186. package/dist/kit/components/form/toggle/toggle.js +36 -0
  187. package/dist/kit/components/form/toggle-group/toggle-group.d.ts +7 -0
  188. package/dist/kit/components/form/toggle-group/toggle-group.js +62 -0
  189. package/dist/kit/components/index.d.ts +108 -0
  190. package/dist/kit/components/layout/accordion/accordion.d.ts +13 -0
  191. package/dist/kit/components/layout/accordion/accordion.js +124 -0
  192. package/dist/kit/components/layout/aspect-ratio/aspect-ratio.d.ts +4 -0
  193. package/dist/kit/components/layout/aspect-ratio/aspect-ratio.js +8 -0
  194. package/dist/kit/components/layout/collapsible/collapsible.d.ts +6 -0
  195. package/dist/kit/components/layout/collapsible/collapsible.js +32 -0
  196. package/dist/kit/components/layout/resizable/resizable.d.ts +24 -0
  197. package/dist/kit/components/layout/resizable/resizable.js +32 -0
  198. package/dist/kit/components/layout/scroll-area/scroll-area.d.ts +8 -0
  199. package/dist/kit/components/layout/scroll-area/scroll-area.js +48 -0
  200. package/dist/kit/components/layout/separator/separator.d.ts +4 -0
  201. package/dist/kit/components/layout/separator/separator.js +23 -0
  202. package/dist/kit/components/navigation/accordion-menu/accordion-menu.d.ts +51 -0
  203. package/dist/kit/components/navigation/accordion-menu/accordion-menu.js +290 -0
  204. package/dist/kit/components/navigation/breadcrumb/breadcrumb.d.ts +13 -0
  205. package/dist/kit/components/navigation/breadcrumb/breadcrumb.js +76 -0
  206. package/dist/kit/components/navigation/menubar/menubar.d.ts +25 -0
  207. package/dist/kit/components/navigation/menubar/menubar.js +218 -0
  208. package/dist/kit/components/navigation/navigation-menu/navigation-menu.d.ts +14 -0
  209. package/dist/kit/components/navigation/navigation-menu/navigation-menu.js +137 -0
  210. package/dist/kit/components/navigation/pagination/pagination.d.ts +6 -0
  211. package/dist/kit/components/navigation/pagination/pagination.js +38 -0
  212. package/dist/kit/components/navigation/scrollspy/scrollspy.d.ts +14 -0
  213. package/dist/kit/components/navigation/scrollspy/scrollspy.js +84 -0
  214. package/dist/kit/components/navigation/tabs/tabs.d.ts +16 -0
  215. package/dist/kit/components/navigation/tabs/tabs.js +172 -0
  216. package/dist/kit/themes/theme-toggle.d.ts +1 -0
  217. package/dist/kit/themes/theme-toggle.js +56 -0
  218. package/dist/kit/tokens/chart-palette.d.ts +1 -0
  219. package/dist/kit/tokens/chart-palette.js +12 -0
  220. package/dist/lib/utils.d.ts +8 -0
  221. package/dist/lib/utils.js +8 -0
  222. package/dist/providers/demokit-provider.d.ts +4 -0
  223. package/dist/providers/demokit-provider.js +9 -0
  224. package/dist/providers/settings-provider.d.ts +15 -0
  225. package/dist/providers/settings-provider.js +78 -0
  226. package/dist/providers/theme-provider.d.ts +4 -0
  227. package/dist/providers/theme-provider.js +9 -0
  228. package/dist/providers/tooltips-provider.d.ts +4 -0
  229. package/dist/providers/tooltips-provider.js +8 -0
  230. package/dist/styles.css +237 -0
  231. package/package.json +72 -0
@@ -0,0 +1,46 @@
1
+ import { jsx as c } from "react/jsx-runtime";
2
+ import { cn as b } from "../../../../lib/utils.js";
3
+ function g(t, r, a) {
4
+ switch (t) {
5
+ case "bottom":
6
+ return `linear-gradient(to bottom, black 0%, black ${r}%, transparent ${a}%)`;
7
+ case "top":
8
+ return `linear-gradient(to top, black 0%, black ${r}%, transparent ${a}%)`;
9
+ case "radial":
10
+ return `radial-gradient(ellipse at center, black ${r}%, transparent ${a}%)`;
11
+ case "none":
12
+ return;
13
+ }
14
+ }
15
+ function $({
16
+ size: t = 44,
17
+ color: r = "rgba(59,130,246,0.08)",
18
+ thickness: a = 1,
19
+ fade: n = "bottom",
20
+ fadeStart: o = 25,
21
+ fadeEnd: i = 92,
22
+ className: d,
23
+ style: p,
24
+ ...l
25
+ }) {
26
+ const e = g(n, o, i);
27
+ return /* @__PURE__ */ c(
28
+ "div",
29
+ {
30
+ "aria-hidden": !0,
31
+ "data-slot": "grid-background",
32
+ className: b("absolute inset-0 pointer-events-none", d),
33
+ style: {
34
+ backgroundImage: `linear-gradient(${r} ${a}px, transparent ${a}px), linear-gradient(90deg, ${r} ${a}px, transparent ${a}px)`,
35
+ backgroundSize: `${t}px ${t}px`,
36
+ maskImage: e,
37
+ WebkitMaskImage: e,
38
+ ...p
39
+ },
40
+ ...l
41
+ }
42
+ );
43
+ }
44
+ export {
45
+ $ as GridBackground
46
+ };
@@ -0,0 +1,29 @@
1
+ import { UseInViewOptions } from 'motion/react';
2
+ interface ShimmeringTextProps {
3
+ /** Text to display with shimmer effect */
4
+ text: string;
5
+ /** Animation duration in seconds */
6
+ duration?: number;
7
+ /** Delay before starting animation */
8
+ delay?: number;
9
+ /** Whether to repeat the animation */
10
+ repeat?: boolean;
11
+ /** Pause duration between repeats in seconds */
12
+ repeatDelay?: number;
13
+ /** Custom className */
14
+ className?: string;
15
+ /** Whether to start animation when component enters viewport */
16
+ startOnView?: boolean;
17
+ /** Whether to animate only once */
18
+ once?: boolean;
19
+ /** Margin for in-view detection (rootMargin) */
20
+ inViewMargin?: UseInViewOptions['margin'];
21
+ /** Shimmer spread multiplier */
22
+ spread?: number;
23
+ /** Base text color */
24
+ color?: string;
25
+ /** Shimmer gradient color */
26
+ shimmerColor?: string;
27
+ }
28
+ export declare function ShimmeringText({ text, duration, delay, repeat, repeatDelay, className, startOnView, once, inViewMargin, spread, color, shimmerColor, }: ShimmeringTextProps): import("react/jsx-runtime").JSX.Element;
29
+ export {};
@@ -0,0 +1,64 @@
1
+ import { jsx as f } from "react/jsx-runtime";
2
+ import { useRef as h, useMemo as v } from "react";
3
+ import { useInView as k, motion as x } from "motion/react";
4
+ import { cn as y } from "../../../../lib/utils.js";
5
+ function z({
6
+ text: r,
7
+ duration: t = 2,
8
+ delay: e = 0,
9
+ repeat: c = !0,
10
+ repeatDelay: s = 0.5,
11
+ className: m,
12
+ startOnView: l = !0,
13
+ once: p = !1,
14
+ inViewMargin: g,
15
+ spread: a = 2,
16
+ color: n,
17
+ shimmerColor: o
18
+ }) {
19
+ const i = h(null), u = k(i, { once: p, margin: g }), d = v(() => r.length * a, [r, a]), b = !l || u;
20
+ return /* @__PURE__ */ f(
21
+ x.span,
22
+ {
23
+ ref: i,
24
+ className: y(
25
+ "relative inline-block bg-[length:250%_100%,auto] bg-clip-text text-transparent",
26
+ "[--base-color:var(--color-zinc-400)] [--shimmer-color:var(--color-zinc-950)]",
27
+ "[background-repeat:no-repeat,padding-box]",
28
+ "[--shimmer-bg:linear-gradient(90deg,transparent_calc(50%-var(--spread)),var(--shimmer-color),transparent_calc(50%+var(--spread)))]",
29
+ m
30
+ ),
31
+ style: {
32
+ "--spread": `${d}px`,
33
+ ...n && { "--base-color": n },
34
+ ...o && { "--shimmer-color": o },
35
+ backgroundImage: "var(--shimmer-bg), linear-gradient(var(--base-color), var(--base-color))"
36
+ },
37
+ initial: {
38
+ backgroundPosition: "100% center",
39
+ opacity: 0
40
+ },
41
+ animate: b ? {
42
+ backgroundPosition: "0% center",
43
+ opacity: 1
44
+ } : {},
45
+ transition: {
46
+ backgroundPosition: {
47
+ repeat: c ? 1 / 0 : 0,
48
+ duration: t,
49
+ delay: e,
50
+ repeatDelay: s,
51
+ ease: "linear"
52
+ },
53
+ opacity: {
54
+ duration: 0.3,
55
+ delay: e
56
+ }
57
+ },
58
+ children: r
59
+ }
60
+ );
61
+ }
62
+ export {
63
+ z as ShimmeringText
64
+ };
@@ -0,0 +1,17 @@
1
+ import { default as React } from 'react';
2
+ type RevealVariant = 'fade' | 'slideUp' | 'slideDown' | 'slideLeft' | 'slideRight' | 'scale' | 'blur' | 'typewriter' | 'wave' | 'stagger' | 'rotate' | 'elastic';
3
+ interface TextRevealProps {
4
+ children: string;
5
+ variant?: RevealVariant;
6
+ className?: string;
7
+ style?: React.CSSProperties;
8
+ delay?: number;
9
+ duration?: number;
10
+ staggerDelay?: number;
11
+ once?: boolean;
12
+ startOnView?: boolean;
13
+ wordLevel?: boolean;
14
+ onComplete?: () => void;
15
+ }
16
+ export declare function TextReveal({ children, variant, className, style, delay, duration, staggerDelay, once, startOnView, wordLevel, }: TextRevealProps): import("react/jsx-runtime").JSX.Element;
17
+ export {};
@@ -0,0 +1,277 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import { useRef as I, useState as O, useEffect as R } from "react";
3
+ import { useInView as W, motion as a } from "motion/react";
4
+ import { cn as b } from "../../../../lib/utils.js";
5
+ const A = {
6
+ fade: {
7
+ hidden: {},
8
+ visible: {
9
+ transition: { staggerChildren: 0.02 }
10
+ }
11
+ },
12
+ slideUp: {
13
+ hidden: {},
14
+ visible: {
15
+ transition: { staggerChildren: 0.04 }
16
+ }
17
+ },
18
+ slideDown: {
19
+ hidden: {},
20
+ visible: {
21
+ transition: { staggerChildren: 0.04 }
22
+ }
23
+ },
24
+ slideLeft: {
25
+ hidden: {},
26
+ visible: {
27
+ transition: { staggerChildren: 0.04 }
28
+ }
29
+ },
30
+ slideRight: {
31
+ hidden: {},
32
+ visible: {
33
+ transition: { staggerChildren: 0.04 }
34
+ }
35
+ },
36
+ scale: {
37
+ hidden: {},
38
+ visible: {
39
+ transition: { staggerChildren: 0.06 }
40
+ }
41
+ },
42
+ blur: {
43
+ hidden: {},
44
+ visible: {
45
+ transition: { staggerChildren: 0.03 }
46
+ }
47
+ },
48
+ typewriter: {
49
+ hidden: {},
50
+ visible: {
51
+ transition: { staggerChildren: 0.15 }
52
+ }
53
+ },
54
+ wave: {
55
+ hidden: {},
56
+ visible: {
57
+ transition: { staggerChildren: 0.12 }
58
+ }
59
+ },
60
+ stagger: {
61
+ hidden: {},
62
+ visible: {
63
+ transition: { staggerChildren: 0.08 }
64
+ }
65
+ },
66
+ rotate: {
67
+ hidden: {},
68
+ visible: {
69
+ transition: { staggerChildren: 0.05 }
70
+ }
71
+ },
72
+ elastic: {
73
+ hidden: {},
74
+ visible: {
75
+ transition: { staggerChildren: 0.07 }
76
+ }
77
+ }
78
+ }, N = {
79
+ fade: {
80
+ hidden: { opacity: 0 },
81
+ visible: {
82
+ opacity: 1,
83
+ transition: { duration: 0.6, ease: "easeOut" }
84
+ }
85
+ },
86
+ slideUp: {
87
+ hidden: { opacity: 0, y: 50, scale: 0.95 },
88
+ visible: {
89
+ opacity: 1,
90
+ y: 0,
91
+ scale: 1,
92
+ transition: { duration: 0.7, ease: [0.22, 1, 0.36, 1] }
93
+ }
94
+ },
95
+ slideDown: {
96
+ hidden: { opacity: 0, y: -30, scale: 0.98 },
97
+ visible: {
98
+ opacity: 1,
99
+ y: 0,
100
+ scale: 1,
101
+ transition: { duration: 0.5, ease: [0.25, 0.46, 0.45, 0.94] }
102
+ }
103
+ },
104
+ slideLeft: {
105
+ hidden: { opacity: 0, x: 60, rotateY: 15 },
106
+ visible: {
107
+ opacity: 1,
108
+ x: 0,
109
+ rotateY: 0,
110
+ transition: { duration: 0.65, ease: [0.16, 1, 0.3, 1] }
111
+ }
112
+ },
113
+ slideRight: {
114
+ hidden: { opacity: 0, x: -60, rotateY: -15 },
115
+ visible: {
116
+ opacity: 1,
117
+ x: 0,
118
+ rotateY: 0,
119
+ transition: { duration: 0.65, ease: [0.16, 1, 0.3, 1] }
120
+ }
121
+ },
122
+ scale: {
123
+ hidden: { opacity: 0, scale: 0.8 },
124
+ visible: {
125
+ opacity: 1,
126
+ scale: 1,
127
+ transition: { duration: 0.4, ease: [0.34, 1.56, 0.64, 1] }
128
+ }
129
+ },
130
+ blur: {
131
+ hidden: { opacity: 0, filter: "blur(4px)" },
132
+ visible: {
133
+ opacity: 1,
134
+ filter: "blur(0px)",
135
+ transition: { duration: 0.6, ease: "easeOut" }
136
+ }
137
+ },
138
+ typewriter: {
139
+ hidden: { width: 0 },
140
+ visible: {
141
+ width: "auto",
142
+ transition: { duration: 0.3, ease: "easeInOut" }
143
+ }
144
+ },
145
+ wave: {
146
+ hidden: { opacity: 0, y: 20, rotateZ: -5 },
147
+ visible: {
148
+ opacity: 1,
149
+ y: [20, -10, 0],
150
+ rotateZ: [-5, 5, 0],
151
+ transition: {
152
+ duration: 0.8,
153
+ ease: [0.34, 1.56, 0.64, 1],
154
+ times: [0, 0.5, 1]
155
+ }
156
+ }
157
+ },
158
+ stagger: {
159
+ hidden: { opacity: 0, y: 30, scale: 0.9 },
160
+ visible: {
161
+ opacity: 1,
162
+ y: 0,
163
+ scale: 1,
164
+ transition: { duration: 0.6, ease: [0.25, 0.46, 0.45, 0.94] }
165
+ }
166
+ },
167
+ rotate: {
168
+ hidden: { opacity: 0, rotateY: -90 },
169
+ visible: {
170
+ opacity: 1,
171
+ rotateY: 0,
172
+ transition: { duration: 0.6, ease: [0.25, 0.46, 0.45, 0.94] }
173
+ }
174
+ },
175
+ elastic: {
176
+ hidden: { opacity: 0, scale: 0 },
177
+ visible: {
178
+ opacity: 1,
179
+ scale: [0, 1.2, 1],
180
+ transition: {
181
+ duration: 0.8,
182
+ ease: [0.68, -0.55, 0.265, 1.55],
183
+ times: [0, 0.6, 1]
184
+ }
185
+ }
186
+ }
187
+ };
188
+ function U({
189
+ children: n,
190
+ variant: i = "fade",
191
+ className: y,
192
+ style: g,
193
+ delay: u = 0,
194
+ duration: l = 0.6,
195
+ staggerDelay: v = 0.03,
196
+ once: m = !0,
197
+ startOnView: f = !0,
198
+ wordLevel: d = !1
199
+ }) {
200
+ const c = I(null), w = W(c, { once: m, margin: "-10%" }), [h, C] = O(!1), s = f ? w : !0, k = d ? n.split(" ").map((e, r, Y) => r < Y.length - 1 ? `${e} ` : e) : n.split(""), V = {
201
+ ...A[i],
202
+ visible: {
203
+ transition: {
204
+ staggerChildren: v,
205
+ delayChildren: u
206
+ }
207
+ }
208
+ }, t = N[i], p = l === 0.6 ? t : {
209
+ hidden: t.hidden,
210
+ visible: {
211
+ ...t.visible,
212
+ transition: {
213
+ ...t.visible.transition,
214
+ duration: l
215
+ }
216
+ }
217
+ };
218
+ R(() => {
219
+ s && !h && C(!0);
220
+ }, [s, h]);
221
+ const x = i === "typewriter" ? a.div : a.span;
222
+ return /* @__PURE__ */ o(
223
+ a.div,
224
+ {
225
+ ref: c,
226
+ className: b("inline-block", y),
227
+ variants: V,
228
+ initial: "hidden",
229
+ animate: s ? "visible" : "hidden",
230
+ style: {
231
+ willChange: "transform, opacity",
232
+ WebkitBackfaceVisibility: "hidden",
233
+ backfaceVisibility: "hidden",
234
+ WebkitTransform: "translate3d(0,0,0)",
235
+ transform: "translate3d(0,0,0)",
236
+ isolation: "isolate",
237
+ contain: "layout style paint",
238
+ ...g
239
+ },
240
+ children: i === "typewriter" ? /* @__PURE__ */ o(
241
+ a.span,
242
+ {
243
+ className: "inline-block overflow-hidden whitespace-nowrap",
244
+ variants: p,
245
+ style: {
246
+ display: "inline-block",
247
+ whiteSpace: "nowrap"
248
+ },
249
+ children: n
250
+ }
251
+ ) : k.map((e, r) => /* @__PURE__ */ o(
252
+ x,
253
+ {
254
+ className: b("inline-block", {
255
+ "whitespace-pre": !d
256
+ }),
257
+ variants: p,
258
+ style: {
259
+ display: "inline-block",
260
+ transformOrigin: i === "rotate" ? "center center" : void 0,
261
+ willChange: "transform, opacity",
262
+ WebkitBackfaceVisibility: "hidden",
263
+ backfaceVisibility: "hidden",
264
+ WebkitTransform: "translate3d(0,0,0)",
265
+ transform: "translate3d(0,0,0)",
266
+ isolation: "isolate"
267
+ },
268
+ children: e === " " ? " " : e
269
+ },
270
+ r
271
+ ))
272
+ }
273
+ );
274
+ }
275
+ export {
276
+ U as TextReveal
277
+ };
@@ -0,0 +1,21 @@
1
+ import { VariantProps } from 'class-variance-authority';
2
+ import * as React from 'react';
3
+ declare const alertVariants: (props?: ({
4
+ variant?: "primary" | "mono" | "destructive" | "secondary" | "success" | "warning" | "info" | null | undefined;
5
+ icon?: "primary" | "destructive" | "success" | "warning" | "info" | null | undefined;
6
+ appearance?: "stroke" | "solid" | "light" | "outline" | null | undefined;
7
+ size?: "sm" | "md" | "lg" | null | undefined;
8
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
9
+ interface AlertProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof alertVariants> {
10
+ close?: boolean;
11
+ onClose?: () => void;
12
+ }
13
+ interface AlertIconProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof alertVariants> {
14
+ }
15
+ declare function Alert({ className, variant, size, icon, appearance, close, onClose, children, ...props }: AlertProps): import("react/jsx-runtime").JSX.Element;
16
+ declare function AlertTitle({ className, ...props }: React.HTMLAttributes<HTMLHeadingElement>): import("react/jsx-runtime").JSX.Element;
17
+ declare function AlertIcon({ children, className, ...props }: AlertIconProps): import("react/jsx-runtime").JSX.Element;
18
+ declare function AlertToolbar({ children, className, ...props }: AlertIconProps): import("react/jsx-runtime").JSX.Element;
19
+ declare function AlertDescription({ className, ...props }: React.HTMLAttributes<HTMLParagraphElement>): import("react/jsx-runtime").JSX.Element;
20
+ declare function AlertContent({ className, ...props }: React.HTMLAttributes<HTMLParagraphElement>): import("react/jsx-runtime").JSX.Element;
21
+ export { Alert, AlertContent, AlertDescription, AlertIcon, AlertTitle, AlertToolbar };
@@ -0,0 +1,236 @@
1
+ import { jsxs as v, jsx as o } from "react/jsx-runtime";
2
+ import { cn as e } from "../../../../lib/utils.js";
3
+ import { Button as g } from "../../form/button/button.js";
4
+ import { cva as u } from "class-variance-authority";
5
+ import { X as p } from "lucide-react";
6
+ const m = u("flex items-stretch w-full gap-2 group-[.toaster]:w-(--width)", {
7
+ variants: {
8
+ variant: {
9
+ secondary: "",
10
+ primary: "",
11
+ destructive: "",
12
+ success: "",
13
+ info: "",
14
+ mono: "",
15
+ warning: ""
16
+ },
17
+ icon: {
18
+ primary: "",
19
+ destructive: "",
20
+ success: "",
21
+ info: "",
22
+ warning: ""
23
+ },
24
+ appearance: {
25
+ solid: "",
26
+ outline: "",
27
+ light: "",
28
+ stroke: "text-foreground"
29
+ },
30
+ size: {
31
+ lg: "rounded-lg p-4 gap-3 text-base [&>[data-slot=alert-icon]>svg]:size-6 *:data-slot=alert-icon:mt-0.5 [&_[data-slot=alert-close]]:mt-1",
32
+ md: "rounded-lg p-3.5 gap-2.5 text-sm [&>[data-slot=alert-icon]>svg]:size-5 *:data-slot=alert-icon:mt-0 [&_[data-slot=alert-close]]:mt-0.5",
33
+ sm: "rounded-md px-3 py-2.5 gap-2 text-xs [&>[data-slot=alert-icon]>svg]:size-4 *:data-alert-icon:mt-0.5 [&_[data-slot=alert-close]]:mt-0.25 [&_[data-slot=alert-close]_svg]:size-3.5"
34
+ }
35
+ },
36
+ compoundVariants: [
37
+ /* Solid */
38
+ {
39
+ variant: "secondary",
40
+ appearance: "solid",
41
+ className: "bg-muted text-foreground"
42
+ },
43
+ {
44
+ variant: "primary",
45
+ appearance: "solid",
46
+ className: "bg-primary text-primary-foreground"
47
+ },
48
+ {
49
+ variant: "destructive",
50
+ appearance: "solid",
51
+ className: "bg-destructive text-destructive-foreground"
52
+ },
53
+ {
54
+ variant: "success",
55
+ appearance: "solid",
56
+ className: "bg-[var(--color-success,var(--color-green-500))] text-[var(--color-success-foreground,var(--color-white))]"
57
+ },
58
+ {
59
+ variant: "info",
60
+ appearance: "solid",
61
+ className: "bg-[var(--color-info,var(--color-violet-600))] text-[var(--color-info-foreground,var(--color-white))]"
62
+ },
63
+ {
64
+ variant: "warning",
65
+ appearance: "solid",
66
+ className: "bg-[var(--color-warning,var(--color-yellow-500))] text-[var(--color-warning-foreground,var(--color-white))]"
67
+ },
68
+ {
69
+ variant: "mono",
70
+ appearance: "solid",
71
+ className: "bg-zinc-950 text-white *:data-slot-[alert=close]:text-white"
72
+ },
73
+ /* Outline */
74
+ {
75
+ variant: "secondary",
76
+ appearance: "outline",
77
+ className: "border border-border bg-background text-foreground [&_[data-slot=alert-close]]:text-foreground"
78
+ },
79
+ {
80
+ variant: "primary",
81
+ appearance: "outline",
82
+ className: "border border-border bg-background text-primary [&_[data-slot=alert-close]]:text-foreground"
83
+ },
84
+ {
85
+ variant: "destructive",
86
+ appearance: "outline",
87
+ className: "border border-border bg-background text-destructive [&_[data-slot=alert-close]]:text-foreground"
88
+ },
89
+ {
90
+ variant: "success",
91
+ appearance: "outline",
92
+ className: "border border-border bg-background text-[var(--color-success,var(--color-green-500))] [&_[data-slot=alert-close]]:text-foreground"
93
+ },
94
+ {
95
+ variant: "info",
96
+ appearance: "outline",
97
+ className: "border border-border bg-background text-[var(--color-info,var(--color-violet-600))] [&_[data-slot=alert-close]]:text-foreground"
98
+ },
99
+ {
100
+ variant: "warning",
101
+ appearance: "outline",
102
+ className: "border border-border bg-background text-[var(--color-warning,var(--color-yellow-500))] [&_[data-slot=alert-close]]:text-foreground"
103
+ },
104
+ {
105
+ variant: "mono",
106
+ appearance: "outline",
107
+ className: "border border-border bg-background text-foreground [&_[data-slot=alert-close]]:text-foreground"
108
+ },
109
+ /* Light */
110
+ {
111
+ variant: "secondary",
112
+ appearance: "light",
113
+ className: "bg-muted border border-border text-foreground"
114
+ },
115
+ {
116
+ variant: "primary",
117
+ appearance: "light",
118
+ className: "text-foreground bg-[var(--color-primary-soft,var(--color-blue-50))] border border-[var(--color-primary-alpha,var(--color-blue-100))] [&_[data-slot=alert-icon]]:text-primary"
119
+ },
120
+ {
121
+ variant: "destructive",
122
+ appearance: "light",
123
+ className: "bg-[var(--color-destructive-soft,var(--color-red-50))] border border-[var(--color-destructive-alpha,var(--color-red-100))] text-foreground [&_[data-slot=alert-icon]]:text-destructive"
124
+ },
125
+ {
126
+ variant: "success",
127
+ appearance: "light",
128
+ className: "bg-[var(--color-success-soft,var(--color-green-50))] border border-[var(--color-success-alpha,var(--color-green-100))] text-foreground [&_[data-slot=alert-icon]]:text-[var(--color-success-foreground,var(--color-green-600))]"
129
+ },
130
+ {
131
+ variant: "info",
132
+ appearance: "light",
133
+ className: "bg-[var(--color-info-soft,var(--color-violet-50))] border border-[var(--color-info-alpha,var(--color-violet-100))] text-foreground [&_[data-slot=alert-icon]]:text-[var(--color-info-foreground,var(--color-violet-600))]"
134
+ },
135
+ {
136
+ variant: "warning",
137
+ appearance: "light",
138
+ className: "bg-[var(--color-warning-soft,var(--color-yellow-50))] border border-[var(--color-warning-alpha,var(--color-yellow-100))] text-foreground [&_[data-slot=alert-icon]]:text-[var(--color-warning-foreground,var(--color-yellow-600))]"
139
+ },
140
+ /* Mono */
141
+ {
142
+ variant: "mono",
143
+ icon: "primary",
144
+ className: "[&_[data-slot=alert-icon]]:text-primary"
145
+ },
146
+ {
147
+ variant: "mono",
148
+ icon: "warning",
149
+ className: "[&_[data-slot=alert-icon]]:text-[var(--color-warning-foreground,var(--color-yellow-600))]"
150
+ },
151
+ {
152
+ variant: "mono",
153
+ icon: "success",
154
+ className: "[&_[data-slot=alert-icon]]:text-[var(--color-success-foreground,var(--color-green-600))]"
155
+ },
156
+ {
157
+ variant: "mono",
158
+ icon: "destructive",
159
+ className: "[&_[data-slot=alert-icon]]:text-destructive"
160
+ },
161
+ {
162
+ variant: "mono",
163
+ icon: "info",
164
+ className: "[&_[data-slot=alert-icon]]:text-[var(--color-info-foreground,var(--color-violet-600))]"
165
+ }
166
+ ],
167
+ defaultVariants: {
168
+ variant: "secondary",
169
+ appearance: "solid",
170
+ size: "md"
171
+ }
172
+ });
173
+ function y({ className: r, variant: a, size: t, icon: l, appearance: s, close: n = !1, onClose: c, children: i, ...d }) {
174
+ return /* @__PURE__ */ v(
175
+ "div",
176
+ {
177
+ "data-slot": "alert",
178
+ role: "alert",
179
+ className: e(m({ variant: a, size: t, icon: l, appearance: s }), r),
180
+ ...d,
181
+ children: [
182
+ i,
183
+ n && /* @__PURE__ */ o(
184
+ g,
185
+ {
186
+ size: "sm",
187
+ variant: "inverse",
188
+ mode: "icon",
189
+ onClick: c,
190
+ "aria-label": "Dismiss",
191
+ "data-slot": "alert-close",
192
+ className: e("group shrink-0 size-4"),
193
+ children: /* @__PURE__ */ o(p, { className: "opacity-60 group-hover:opacity-100 size-4" })
194
+ }
195
+ )
196
+ ]
197
+ }
198
+ );
199
+ }
200
+ function h({ className: r, ...a }) {
201
+ return /* @__PURE__ */ o("div", { "data-slot": "alert-title", className: e("grow tracking-tight", r), ...a });
202
+ }
203
+ function _({ children: r, className: a, ...t }) {
204
+ return /* @__PURE__ */ o("div", { "data-slot": "alert-icon", className: e("shrink-0", a), ...t, children: r });
205
+ }
206
+ function k({ children: r, className: a, ...t }) {
207
+ return /* @__PURE__ */ o("div", { "data-slot": "alert-toolbar", className: e(a), ...t, children: r });
208
+ }
209
+ function z({ className: r, ...a }) {
210
+ return /* @__PURE__ */ o(
211
+ "div",
212
+ {
213
+ "data-slot": "alert-description",
214
+ className: e("text-sm [&_p]:leading-relaxed [&_p]:mb-2", r),
215
+ ...a
216
+ }
217
+ );
218
+ }
219
+ function A({ className: r, ...a }) {
220
+ return /* @__PURE__ */ o(
221
+ "div",
222
+ {
223
+ "data-slot": "alert-content",
224
+ className: e("space-y-2 [&_[data-slot=alert-title]]:font-semibold", r),
225
+ ...a
226
+ }
227
+ );
228
+ }
229
+ export {
230
+ y as Alert,
231
+ A as AlertContent,
232
+ z as AlertDescription,
233
+ _ as AlertIcon,
234
+ h as AlertTitle,
235
+ k as AlertToolbar
236
+ };