@arolariu/components 0.1.1 → 0.2.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.
- package/DEBUGGING.md +396 -396
- package/LICENSE.md +21 -21
- package/changelog.md +109 -118
- package/dist/components/ui/accordion.d.ts +2 -2
- package/dist/components/ui/accordion.d.ts.map +1 -1
- package/dist/components/ui/accordion.js +4 -4
- package/dist/components/ui/accordion.js.map +1 -1
- package/dist/components/ui/alert-dialog.d.ts +13 -13
- package/dist/components/ui/alert-dialog.d.ts.map +1 -1
- package/dist/components/ui/alert-dialog.js +4 -4
- package/dist/components/ui/alert-dialog.js.map +1 -1
- package/dist/components/ui/alert.d.ts +5 -5
- package/dist/components/ui/alert.d.ts.map +1 -1
- package/dist/components/ui/alert.js +3 -3
- package/dist/components/ui/alert.js.map +1 -1
- package/dist/components/ui/aspect-ratio.d.ts +1 -1
- package/dist/components/ui/aspect-ratio.d.ts.map +1 -1
- package/dist/components/ui/aspect-ratio.js +1 -1
- package/dist/components/ui/aspect-ratio.js.map +1 -1
- package/dist/components/ui/avatar.d.ts +2 -2
- package/dist/components/ui/avatar.d.ts.map +1 -1
- package/dist/components/ui/avatar.js +3 -3
- package/dist/components/ui/avatar.js.map +1 -1
- package/dist/components/ui/background-beams.d.ts.map +1 -1
- package/dist/components/ui/background-beams.js +6 -6
- package/dist/components/ui/background-beams.js.map +1 -1
- package/dist/components/ui/badge.d.ts +4 -4
- package/dist/components/ui/badge.d.ts.map +1 -1
- package/dist/components/ui/badge.js +2 -2
- package/dist/components/ui/badge.js.map +1 -1
- package/dist/components/ui/breadcrumb.d.ts +6 -6
- package/dist/components/ui/breadcrumb.d.ts.map +1 -1
- package/dist/components/ui/breadcrumb.js +5 -5
- package/dist/components/ui/breadcrumb.js.map +1 -1
- package/dist/components/ui/bubble-background.d.ts +1 -1
- package/dist/components/ui/bubble-background.d.ts.map +1 -1
- package/dist/components/ui/bubble-background.js +13 -13
- package/dist/components/ui/bubble-background.js.map +1 -1
- package/dist/components/ui/button.d.ts +5 -5
- package/dist/components/ui/button.d.ts.map +1 -1
- package/dist/components/ui/button.js +2 -2
- package/dist/components/ui/button.js.map +1 -1
- package/dist/components/ui/calendar.d.ts.map +1 -1
- package/dist/components/ui/calendar.js +4 -4
- package/dist/components/ui/calendar.js.map +1 -1
- package/dist/components/ui/card.d.ts +1 -1
- package/dist/components/ui/card.d.ts.map +1 -1
- package/dist/components/ui/card.js +3 -3
- package/dist/components/ui/card.js.map +1 -1
- package/dist/components/ui/carousel.d.ts +2 -2
- package/dist/components/ui/carousel.d.ts.map +1 -1
- package/dist/components/ui/carousel.js +3 -3
- package/dist/components/ui/carousel.js.map +1 -1
- package/dist/components/ui/chart.d.ts +4 -4
- package/dist/components/ui/chart.d.ts.map +1 -1
- package/dist/components/ui/chart.js +1 -1
- package/dist/components/ui/chart.js.map +1 -1
- package/dist/components/ui/checkbox.d.ts +1 -1
- package/dist/components/ui/checkbox.d.ts.map +1 -1
- package/dist/components/ui/checkbox.js +3 -3
- package/dist/components/ui/checkbox.js.map +1 -1
- package/dist/components/ui/collapsible.d.ts +2 -2
- package/dist/components/ui/collapsible.d.ts.map +1 -1
- package/dist/components/ui/collapsible.js +1 -1
- package/dist/components/ui/collapsible.js.map +1 -1
- package/dist/components/ui/command.d.ts +2 -2
- package/dist/components/ui/command.d.ts.map +1 -1
- package/dist/components/ui/command.js +9 -9
- package/dist/components/ui/command.js.map +1 -1
- package/dist/components/ui/context-menu.d.ts +2 -2
- package/dist/components/ui/context-menu.d.ts.map +1 -1
- package/dist/components/ui/context-menu.js +11 -11
- package/dist/components/ui/context-menu.js.map +1 -1
- package/dist/components/ui/counting-number.d.ts +1 -1
- package/dist/components/ui/counting-number.d.ts.map +1 -1
- package/dist/components/ui/counting-number.js +4 -3
- package/dist/components/ui/counting-number.js.map +1 -1
- package/dist/components/ui/dialog.d.ts +1 -1
- package/dist/components/ui/dialog.d.ts.map +1 -1
- package/dist/components/ui/dialog.js +6 -6
- package/dist/components/ui/dialog.js.map +1 -1
- package/dist/components/ui/dot-background.d.ts +10 -17
- package/dist/components/ui/dot-background.d.ts.map +1 -1
- package/dist/components/ui/dot-background.js +2 -2
- package/dist/components/ui/dot-background.js.map +1 -1
- package/dist/components/ui/drawer.d.ts +1 -1
- package/dist/components/ui/drawer.d.ts.map +1 -1
- package/dist/components/ui/drawer.js +5 -5
- package/dist/components/ui/drawer.js.map +1 -1
- package/dist/components/ui/dropdown-menu.d.ts +2 -2
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
- package/dist/components/ui/dropdown-menu.js +10 -10
- package/dist/components/ui/dropdown-menu.js.map +1 -1
- package/dist/components/ui/dropdrawer.d.ts +2 -2
- package/dist/components/ui/dropdrawer.d.ts.map +1 -1
- package/dist/components/ui/dropdrawer.js +13 -13
- package/dist/components/ui/dropdrawer.js.map +1 -1
- package/dist/components/ui/fireworks-background.d.ts.map +1 -1
- package/dist/components/ui/fireworks-background.js +1 -1
- package/dist/components/ui/fireworks-background.js.map +1 -1
- package/dist/components/ui/flip-button.d.ts +1 -1
- package/dist/components/ui/flip-button.d.ts.map +1 -1
- package/dist/components/ui/flip-button.js +3 -3
- package/dist/components/ui/flip-button.js.map +1 -1
- package/dist/components/ui/form.d.ts +3 -3
- package/dist/components/ui/form.d.ts.map +1 -1
- package/dist/components/ui/form.js +4 -4
- package/dist/components/ui/form.js.map +1 -1
- package/dist/components/ui/gradient-background.d.ts +1 -1
- package/dist/components/ui/gradient-background.d.ts.map +1 -1
- package/dist/components/ui/gradient-background.js +2 -2
- package/dist/components/ui/gradient-background.js.map +1 -1
- package/dist/components/ui/gradient-text.d.ts +1 -1
- package/dist/components/ui/gradient-text.d.ts.map +1 -1
- package/dist/components/ui/gradient-text.js +5 -5
- package/dist/components/ui/gradient-text.js.map +1 -1
- package/dist/components/ui/highlight-text.d.ts +1 -1
- package/dist/components/ui/highlight-text.d.ts.map +1 -1
- package/dist/components/ui/highlight-text.js +3 -3
- package/dist/components/ui/highlight-text.js.map +1 -1
- package/dist/components/ui/hole-background.d.ts.map +1 -1
- package/dist/components/ui/hole-background.js +11 -10
- package/dist/components/ui/hole-background.js.map +1 -1
- package/dist/components/ui/hover-card.d.ts +2 -2
- package/dist/components/ui/hover-card.d.ts.map +1 -1
- package/dist/components/ui/hover-card.js +3 -3
- package/dist/components/ui/hover-card.js.map +1 -1
- package/dist/components/ui/input-otp.d.ts +2 -2
- package/dist/components/ui/input-otp.d.ts.map +1 -1
- package/dist/components/ui/input-otp.js +5 -5
- package/dist/components/ui/input-otp.js.map +1 -1
- package/dist/components/ui/input.d.ts.map +1 -1
- package/dist/components/ui/input.js +2 -2
- package/dist/components/ui/input.js.map +1 -1
- package/dist/components/ui/label.d.ts +1 -1
- package/dist/components/ui/label.d.ts.map +1 -1
- package/dist/components/ui/label.js +2 -2
- package/dist/components/ui/label.js.map +1 -1
- package/dist/components/ui/menubar.d.ts +2 -2
- package/dist/components/ui/menubar.d.ts.map +1 -1
- package/dist/components/ui/menubar.js +12 -12
- package/dist/components/ui/menubar.js.map +1 -1
- package/dist/components/ui/navigation-menu.d.ts +3 -3
- package/dist/components/ui/navigation-menu.d.ts.map +1 -1
- package/dist/components/ui/navigation-menu.js +6 -7
- package/dist/components/ui/navigation-menu.js.map +1 -1
- package/dist/components/ui/pagination.d.ts +2 -2
- package/dist/components/ui/pagination.d.ts.map +1 -1
- package/dist/components/ui/pagination.js +8 -4
- package/dist/components/ui/pagination.js.map +1 -1
- package/dist/components/ui/popover.d.ts +2 -2
- package/dist/components/ui/popover.d.ts.map +1 -1
- package/dist/components/ui/popover.js +3 -3
- package/dist/components/ui/popover.js.map +1 -1
- package/dist/components/ui/progress.d.ts +1 -1
- package/dist/components/ui/progress.d.ts.map +1 -1
- package/dist/components/ui/progress.js +4 -4
- package/dist/components/ui/progress.js.map +1 -1
- package/dist/components/ui/radio-group.d.ts +1 -1
- package/dist/components/ui/radio-group.d.ts.map +1 -1
- package/dist/components/ui/radio-group.js +3 -3
- package/dist/components/ui/radio-group.js.map +1 -1
- package/dist/components/ui/resizable.d.ts +1 -1
- package/dist/components/ui/resizable.d.ts.map +1 -1
- package/dist/components/ui/resizable.js +5 -5
- package/dist/components/ui/resizable.js.map +1 -1
- package/dist/components/ui/ripple-button.d.ts +1 -1
- package/dist/components/ui/ripple-button.d.ts.map +1 -1
- package/dist/components/ui/ripple-button.js +4 -4
- package/dist/components/ui/ripple-button.js.map +1 -1
- package/dist/components/ui/scratcher.d.ts.map +1 -1
- package/dist/components/ui/scratcher.js +7 -5
- package/dist/components/ui/scratcher.js.map +1 -1
- package/dist/components/ui/scroll-area.d.ts +1 -1
- package/dist/components/ui/scroll-area.d.ts.map +1 -1
- package/dist/components/ui/scroll-area.js +4 -4
- package/dist/components/ui/scroll-area.js.map +1 -1
- package/dist/components/ui/select.d.ts +1 -1
- package/dist/components/ui/select.d.ts.map +1 -1
- package/dist/components/ui/select.js +7 -7
- package/dist/components/ui/select.js.map +1 -1
- package/dist/components/ui/separator.d.ts +1 -1
- package/dist/components/ui/separator.d.ts.map +1 -1
- package/dist/components/ui/separator.js +3 -3
- package/dist/components/ui/separator.js.map +1 -1
- package/dist/components/ui/sheet.d.ts +2 -2
- package/dist/components/ui/sheet.d.ts.map +1 -1
- package/dist/components/ui/sheet.js +6 -6
- package/dist/components/ui/sheet.js.map +1 -1
- package/dist/components/ui/sidebar.d.ts +5 -5
- package/dist/components/ui/sidebar.d.ts.map +1 -1
- package/dist/components/ui/sidebar.js +5 -5
- package/dist/components/ui/sidebar.js.map +1 -1
- package/dist/components/ui/skeleton.d.ts.map +1 -1
- package/dist/components/ui/skeleton.js +2 -2
- package/dist/components/ui/skeleton.js.map +1 -1
- package/dist/components/ui/slider.d.ts +1 -1
- package/dist/components/ui/slider.d.ts.map +1 -1
- package/dist/components/ui/slider.js +5 -5
- package/dist/components/ui/slider.js.map +1 -1
- package/dist/components/ui/sonner.d.ts +1 -1
- package/dist/components/ui/sonner.d.ts.map +1 -1
- package/dist/components/ui/sonner.js +1 -1
- package/dist/components/ui/sonner.js.map +1 -1
- package/dist/components/ui/switch.d.ts +1 -1
- package/dist/components/ui/switch.d.ts.map +1 -1
- package/dist/components/ui/switch.js +4 -4
- package/dist/components/ui/switch.js.map +1 -1
- package/dist/components/ui/table.d.ts +1 -1
- package/dist/components/ui/table.d.ts.map +1 -1
- package/dist/components/ui/table.js +5 -5
- package/dist/components/ui/table.js.map +1 -1
- package/dist/components/ui/tabs.d.ts +2 -2
- package/dist/components/ui/tabs.d.ts.map +1 -1
- package/dist/components/ui/tabs.js +4 -4
- package/dist/components/ui/tabs.js.map +1 -1
- package/dist/components/ui/textarea.d.ts +1 -1
- package/dist/components/ui/textarea.d.ts.map +1 -1
- package/dist/components/ui/textarea.js +2 -2
- package/dist/components/ui/textarea.js.map +1 -1
- package/dist/components/ui/toggle-group.d.ts +3 -3
- package/dist/components/ui/toggle-group.d.ts.map +1 -1
- package/dist/components/ui/toggle-group.js +2 -2
- package/dist/components/ui/toggle-group.js.map +1 -1
- package/dist/components/ui/toggle.d.ts +6 -6
- package/dist/components/ui/toggle.d.ts.map +1 -1
- package/dist/components/ui/toggle.js +2 -2
- package/dist/components/ui/toggle.js.map +1 -1
- package/dist/components/ui/tooltip.d.ts +6 -6
- package/dist/components/ui/tooltip.d.ts.map +1 -1
- package/dist/components/ui/tooltip.js +4 -4
- package/dist/components/ui/tooltip.js.map +1 -1
- package/dist/components/ui/typewriter.d.ts.map +1 -1
- package/dist/components/ui/typewriter.js +15 -11
- package/dist/components/ui/typewriter.js.map +1 -1
- package/dist/hooks/{use-mobile.d.ts → useIsMobile.d.ts} +3 -6
- package/dist/hooks/useIsMobile.d.ts.map +1 -0
- package/dist/hooks/useIsMobile.js +19 -0
- package/dist/hooks/useIsMobile.js.map +1 -0
- package/dist/hooks/useWindowSize.d.ts +29 -0
- package/dist/hooks/useWindowSize.d.ts.map +1 -0
- package/dist/hooks/useWindowSize.js +28 -0
- package/dist/hooks/useWindowSize.js.map +1 -0
- package/dist/index.css +2 -2
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +39 -38
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -4
- package/dist/lib/utilities.d.ts +9 -0
- package/dist/lib/utilities.d.ts.map +1 -0
- package/dist/lib/{utils.js → utilities.js} +1 -1
- package/dist/lib/utilities.js.map +1 -0
- package/package.json +95 -94
- package/{README.md → readme.md} +627 -627
- package/src/components/ui/accordion.tsx +56 -66
- package/src/components/ui/alert-dialog.tsx +135 -160
- package/src/components/ui/alert.tsx +58 -69
- package/src/components/ui/aspect-ratio.tsx +15 -12
- package/src/components/ui/avatar.tsx +38 -53
- package/src/components/ui/background-beams.tsx +145 -142
- package/src/components/ui/badge.tsx +47 -48
- package/src/components/ui/breadcrumb.tsx +97 -117
- package/src/components/ui/bubble-background.tsx +170 -189
- package/src/components/ui/button.tsx +61 -61
- package/src/components/ui/calendar.tsx +177 -216
- package/src/components/ui/card.tsx +83 -97
- package/src/components/ui/carousel.tsx +204 -241
- package/src/components/ui/chart.tsx +303 -385
- package/src/components/ui/checkbox.tsx +27 -32
- package/src/components/ui/collapsible.tsx +33 -34
- package/src/components/ui/command.tsx +137 -184
- package/src/components/ui/context-menu.tsx +229 -255
- package/src/components/ui/counting-number.tsx +92 -108
- package/src/components/ui/dialog.tsx +141 -146
- package/src/components/ui/dot-background.tsx +153 -158
- package/src/components/ui/drawer.tsx +133 -141
- package/src/components/ui/dropdown-menu.tsx +235 -260
- package/src/components/ui/dropdrawer.tsx +870 -973
- package/src/components/ui/fireworks-background.tsx +325 -378
- package/src/components/ui/flip-button.tsx +89 -110
- package/src/components/ui/form.tsx +145 -174
- package/src/components/ui/gradient-background.tsx +30 -43
- package/src/components/ui/gradient-text.tsx +62 -65
- package/src/components/ui/highlight-text.tsx +54 -71
- package/src/components/ui/hole-background.tsx +326 -361
- package/src/components/ui/hover-card.tsx +48 -44
- package/src/components/ui/input-otp.tsx +76 -77
- package/src/components/ui/input.tsx +22 -22
- package/src/components/ui/label.tsx +21 -24
- package/src/components/ui/menubar.tsx +256 -279
- package/src/components/ui/navigation-menu.tsx +135 -171
- package/src/components/ui/pagination.tsx +103 -129
- package/src/components/ui/popover.tsx +52 -48
- package/src/components/ui/progress.tsx +23 -31
- package/src/components/ui/radio-group.tsx +37 -45
- package/src/components/ui/resizable.tsx +52 -56
- package/src/components/ui/ripple-button.tsx +90 -111
- package/src/components/ui/scratcher.tsx +167 -171
- package/src/components/ui/scroll-area.tsx +45 -58
- package/src/components/ui/select.tsx +160 -191
- package/src/components/ui/separator.tsx +28 -28
- package/src/components/ui/sheet.tsx +133 -145
- package/src/components/ui/sidebar.tsx +673 -729
- package/src/components/ui/skeleton.tsx +16 -19
- package/src/components/ui/slider.tsx +49 -63
- package/src/components/ui/sonner.tsx +30 -26
- package/src/components/ui/switch.tsx +27 -31
- package/src/components/ui/table.tsx +98 -119
- package/src/components/ui/tabs.tsx +54 -66
- package/src/components/ui/textarea.tsx +20 -20
- package/src/components/ui/toggle-group.tsx +66 -73
- package/src/components/ui/toggle.tsx +46 -47
- package/src/components/ui/tooltip.tsx +56 -61
- package/src/components/ui/typewriter.tsx +174 -188
- package/src/hooks/{use-mobile.tsx → useIsMobile.tsx} +42 -44
- package/src/hooks/useWindowSize.tsx +66 -0
- package/src/index.css +73 -73
- package/src/index.ts +303 -407
- package/src/lib/utilities.ts +12 -0
- package/dist/hooks/use-mobile.d.ts.map +0 -1
- package/dist/hooks/use-mobile.js +0 -18
- package/dist/hooks/use-mobile.js.map +0 -1
- package/dist/lib/utils.d.ts +0 -7
- package/dist/lib/utils.d.ts.map +0 -1
- package/dist/lib/utils.js.map +0 -1
- package/src/lib/utils.ts +0 -10
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
3
|
import "react";
|
|
4
|
-
import { cn } from "../../lib/
|
|
4
|
+
import { cn } from "../../lib/utilities.js";
|
|
5
5
|
function Table({ className, ...props }) {
|
|
6
6
|
return /*#__PURE__*/ jsx("div", {
|
|
7
7
|
"data-slot": "table-container",
|
|
@@ -30,21 +30,21 @@ function TableBody({ className, ...props }) {
|
|
|
30
30
|
function TableFooter({ className, ...props }) {
|
|
31
31
|
return /*#__PURE__*/ jsx("tfoot", {
|
|
32
32
|
"data-slot": "table-footer",
|
|
33
|
-
className: cn("bg-neutral-100/50
|
|
33
|
+
className: cn("border-t bg-neutral-100/50 font-medium dark:bg-neutral-800/50 [&>tr]:last:border-b-0", className),
|
|
34
34
|
...props
|
|
35
35
|
});
|
|
36
36
|
}
|
|
37
37
|
function TableRow({ className, ...props }) {
|
|
38
38
|
return /*#__PURE__*/ jsx("tr", {
|
|
39
39
|
"data-slot": "table-row",
|
|
40
|
-
className: cn("hover:bg-neutral-100/50 data-[state=selected]:bg-neutral-100
|
|
40
|
+
className: cn("border-b transition-colors hover:bg-neutral-100/50 data-[state=selected]:bg-neutral-100 dark:hover:bg-neutral-800/50 dark:data-[state=selected]:bg-neutral-800", className),
|
|
41
41
|
...props
|
|
42
42
|
});
|
|
43
43
|
}
|
|
44
44
|
function TableHead({ className, ...props }) {
|
|
45
45
|
return /*#__PURE__*/ jsx("th", {
|
|
46
46
|
"data-slot": "table-head",
|
|
47
|
-
className: cn("
|
|
47
|
+
className: cn("h-10 px-2 text-left align-middle font-medium whitespace-nowrap text-neutral-950 dark:text-neutral-50 [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
|
|
48
48
|
...props
|
|
49
49
|
});
|
|
50
50
|
}
|
|
@@ -58,7 +58,7 @@ function TableCell({ className, ...props }) {
|
|
|
58
58
|
function TableCaption({ className, ...props }) {
|
|
59
59
|
return /*#__PURE__*/ jsx("caption", {
|
|
60
60
|
"data-slot": "table-caption",
|
|
61
|
-
className: cn("
|
|
61
|
+
className: cn("mt-4 text-sm text-neutral-500 dark:text-neutral-400", className),
|
|
62
62
|
...props
|
|
63
63
|
});
|
|
64
64
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\ui\\table.js","sources":["webpack://@arolariu/components/./src/components/ui/table.tsx"],"sourcesContent":["\n\nimport * as React from \"react\";\n\nimport {
|
|
1
|
+
{"version":3,"file":"components\\ui\\table.js","sources":["webpack://@arolariu/components/./src/components/ui/table.tsx"],"sourcesContent":["\r\n\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\n\r\nfunction Table({className, ...props}: React.ComponentProps<\"table\">) {\r\n return (\r\n <div\r\n data-slot='table-container'\r\n className='relative w-full overflow-x-auto'>\r\n {/* eslint-disable-next-line sonarjs/table-header */}\r\n <table\r\n data-slot='table'\r\n className={cn(\"w-full caption-bottom text-sm\", className)}\r\n {...props}\r\n />\r\n </div>\r\n );\r\n}\r\n\r\nfunction TableHeader({className, ...props}: React.ComponentProps<\"thead\">) {\r\n return (\r\n <thead\r\n data-slot='table-header'\r\n className={cn(\"[&_tr]:border-b\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction TableBody({className, ...props}: React.ComponentProps<\"tbody\">) {\r\n return (\r\n <tbody\r\n data-slot='table-body'\r\n className={cn(\"[&_tr:last-child]:border-0\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction TableFooter({className, ...props}: React.ComponentProps<\"tfoot\">) {\r\n return (\r\n <tfoot\r\n data-slot='table-footer'\r\n className={cn(\"border-t bg-neutral-100/50 font-medium dark:bg-neutral-800/50 [&>tr]:last:border-b-0\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction TableRow({className, ...props}: React.ComponentProps<\"tr\">) {\r\n return (\r\n <tr\r\n data-slot='table-row'\r\n className={cn(\r\n \"border-b transition-colors hover:bg-neutral-100/50 data-[state=selected]:bg-neutral-100 dark:hover:bg-neutral-800/50 dark:data-[state=selected]:bg-neutral-800\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction TableHead({className, ...props}: React.ComponentProps<\"th\">) {\r\n return (\r\n <th\r\n data-slot='table-head'\r\n className={cn(\r\n \"h-10 px-2 text-left align-middle font-medium whitespace-nowrap text-neutral-950 dark:text-neutral-50 [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction TableCell({className, ...props}: React.ComponentProps<\"td\">) {\r\n return (\r\n <td\r\n data-slot='table-cell'\r\n className={cn(\"p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction TableCaption({className, ...props}: React.ComponentProps<\"caption\">) {\r\n return (\r\n <caption\r\n data-slot='table-caption'\r\n className={cn(\"mt-4 text-sm text-neutral-500 dark:text-neutral-400\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport {Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow};\r\n"],"names":["Table","className","props","cn","TableHeader","TableBody","TableFooter","TableRow","TableHead","TableCell","TableCaption"],"mappings":";;;;AAMA,SAASA,MAAM,EAACC,SAAS,EAAE,GAAGC,OAAqC;IACjE,OAAO,WAAP,GACE,IAAC;QACC,aAAU;QACV,WAAU;kBAEV,kBAAC;YACC,aAAU;YACV,WAAWC,GAAG,iCAAiCF;YAC9C,GAAGC,KAAK;;;AAIjB;AAEA,SAASE,YAAY,EAACH,SAAS,EAAE,GAAGC,OAAqC;IACvE,OAAO,WAAP,GACE,IAAC;QACC,aAAU;QACV,WAAWC,GAAG,mBAAmBF;QAChC,GAAGC,KAAK;;AAGf;AAEA,SAASG,UAAU,EAACJ,SAAS,EAAE,GAAGC,OAAqC;IACrE,OAAO,WAAP,GACE,IAAC;QACC,aAAU;QACV,WAAWC,GAAG,8BAA8BF;QAC3C,GAAGC,KAAK;;AAGf;AAEA,SAASI,YAAY,EAACL,SAAS,EAAE,GAAGC,OAAqC;IACvE,OAAO,WAAP,GACE,IAAC;QACC,aAAU;QACV,WAAWC,GAAG,wFAAwFF;QACrG,GAAGC,KAAK;;AAGf;AAEA,SAASK,SAAS,EAACN,SAAS,EAAE,GAAGC,OAAkC;IACjE,OAAO,WAAP,GACE,IAAC;QACC,aAAU;QACV,WAAWC,GACT,kKACAF;QAED,GAAGC,KAAK;;AAGf;AAEA,SAASM,UAAU,EAACP,SAAS,EAAE,GAAGC,OAAkC;IAClE,OAAO,WAAP,GACE,IAAC;QACC,aAAU;QACV,WAAWC,GACT,4KACAF;QAED,GAAGC,KAAK;;AAGf;AAEA,SAASO,UAAU,EAACR,SAAS,EAAE,GAAGC,OAAkC;IAClE,OAAO,WAAP,GACE,IAAC;QACC,aAAU;QACV,WAAWC,GAAG,0GAA0GF;QACvH,GAAGC,KAAK;;AAGf;AAEA,SAASQ,aAAa,EAACT,SAAS,EAAE,GAAGC,OAAuC;IAC1E,OAAO,WAAP,GACE,IAAC;QACC,aAAU;QACV,WAAWC,GAAG,uDAAuDF;QACpE,GAAGC,KAAK;;AAGf"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
1
|
import * as TabsPrimitive from "@radix-ui/react-tabs";
|
|
2
|
+
import * as React from "react";
|
|
3
3
|
declare function Tabs({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
|
|
4
4
|
declare function TabsList({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.List>): import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
declare function TabsTrigger({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
|
|
6
6
|
declare function TabsContent({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
-
export { Tabs, TabsList, TabsTrigger
|
|
7
|
+
export { Tabs, TabsContent, TabsList, TabsTrigger };
|
|
8
8
|
//# sourceMappingURL=tabs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tabs.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tabs.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,aAAa,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,iBAAS,IAAI,CAAC,EAAC,SAAS,EAAE,GAAG,KAAK,EAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,aAAa,CAAC,IAAI,CAAC,2CAQnF;AAED,iBAAS,QAAQ,CAAC,EAAC,SAAS,EAAE,GAAG,KAAK,EAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,aAAa,CAAC,IAAI,CAAC,2CAWvF;AAED,iBAAS,WAAW,CAAC,EAAC,SAAS,EAAE,GAAG,KAAK,EAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,aAAa,CAAC,OAAO,CAAC,2CAW7F;AAED,iBAAS,WAAW,CAAC,EAAC,SAAS,EAAE,GAAG,KAAK,EAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,aAAa,CAAC,OAAO,CAAC,2CAQ7F;AAED,OAAO,EAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAC,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
|
-
import "react";
|
|
4
3
|
import { Content, List, Root, Trigger } from "@radix-ui/react-tabs";
|
|
5
|
-
import
|
|
4
|
+
import "react";
|
|
5
|
+
import { cn } from "../../lib/utilities.js";
|
|
6
6
|
function Tabs({ className, ...props }) {
|
|
7
7
|
return /*#__PURE__*/ jsx(Root, {
|
|
8
8
|
"data-slot": "tabs",
|
|
@@ -13,14 +13,14 @@ function Tabs({ className, ...props }) {
|
|
|
13
13
|
function TabsList({ className, ...props }) {
|
|
14
14
|
return /*#__PURE__*/ jsx(List, {
|
|
15
15
|
"data-slot": "tabs-list",
|
|
16
|
-
className: cn("
|
|
16
|
+
className: cn("inline-flex h-9 w-fit items-center justify-center rounded-lg bg-neutral-100 p-[3px] text-neutral-500 dark:bg-neutral-800 dark:text-neutral-400", className),
|
|
17
17
|
...props
|
|
18
18
|
});
|
|
19
19
|
}
|
|
20
20
|
function TabsTrigger({ className, ...props }) {
|
|
21
21
|
return /*#__PURE__*/ jsx(Trigger, {
|
|
22
22
|
"data-slot": "tabs-trigger",
|
|
23
|
-
className: cn("
|
|
23
|
+
className: cn("focus-visible:outline-ring inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-neutral-200 border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap text-neutral-950 transition-[color,box-shadow] focus-visible:border-neutral-950 focus-visible:ring-[3px] focus-visible:ring-neutral-950/50 focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-white data-[state=active]:shadow-sm dark:border-neutral-800 dark:dark:text-neutral-400 dark:text-neutral-50 dark:text-neutral-500 dark:focus-visible:border-neutral-300 dark:focus-visible:ring-neutral-300/50 dark:dark:data-[state=active]:border-neutral-800 dark:data-[state=active]:border-neutral-200 dark:dark:data-[state=active]:bg-neutral-800/30 dark:data-[state=active]:bg-neutral-200/30 dark:data-[state=active]:bg-neutral-950 dark:dark:data-[state=active]:text-neutral-50 dark:data-[state=active]:text-neutral-950 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
24
24
|
...props
|
|
25
25
|
});
|
|
26
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\ui\\tabs.js","sources":["webpack://@arolariu/components/./src/components/ui/tabs.tsx"],"sourcesContent":["\n\nimport * as
|
|
1
|
+
{"version":3,"file":"components\\ui\\tabs.js","sources":["webpack://@arolariu/components/./src/components/ui/tabs.tsx"],"sourcesContent":["\r\n\r\nimport * as TabsPrimitive from \"@radix-ui/react-tabs\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\n\r\nfunction Tabs({className, ...props}: React.ComponentProps<typeof TabsPrimitive.Root>) {\r\n return (\r\n <TabsPrimitive.Root\r\n data-slot='tabs'\r\n className={cn(\"flex flex-col gap-2\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction TabsList({className, ...props}: React.ComponentProps<typeof TabsPrimitive.List>) {\r\n return (\r\n <TabsPrimitive.List\r\n data-slot='tabs-list'\r\n className={cn(\r\n \"inline-flex h-9 w-fit items-center justify-center rounded-lg bg-neutral-100 p-[3px] text-neutral-500 dark:bg-neutral-800 dark:text-neutral-400\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction TabsTrigger({className, ...props}: React.ComponentProps<typeof TabsPrimitive.Trigger>) {\r\n return (\r\n <TabsPrimitive.Trigger\r\n data-slot='tabs-trigger'\r\n className={cn(\r\n \"focus-visible:outline-ring inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-neutral-200 border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap text-neutral-950 transition-[color,box-shadow] focus-visible:border-neutral-950 focus-visible:ring-[3px] focus-visible:ring-neutral-950/50 focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-white data-[state=active]:shadow-sm dark:border-neutral-800 dark:dark:text-neutral-400 dark:text-neutral-50 dark:text-neutral-500 dark:focus-visible:border-neutral-300 dark:focus-visible:ring-neutral-300/50 dark:dark:data-[state=active]:border-neutral-800 dark:data-[state=active]:border-neutral-200 dark:dark:data-[state=active]:bg-neutral-800/30 dark:data-[state=active]:bg-neutral-200/30 dark:data-[state=active]:bg-neutral-950 dark:dark:data-[state=active]:text-neutral-50 dark:data-[state=active]:text-neutral-950 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction TabsContent({className, ...props}: React.ComponentProps<typeof TabsPrimitive.Content>) {\r\n return (\r\n <TabsPrimitive.Content\r\n data-slot='tabs-content'\r\n className={cn(\"flex-1 outline-none\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport {Tabs, TabsContent, TabsList, TabsTrigger};\r\n"],"names":["Tabs","className","props","TabsPrimitive","cn","TabsList","TabsTrigger","TabsContent"],"mappings":";;;;;AAOA,SAASA,KAAK,EAACC,SAAS,EAAE,GAAGC,OAAuD;IAClF,OAAO,WAAP,GACE,IAACC,MAAkB;QACjB,aAAU;QACV,WAAWC,GAAG,uBAAuBH;QACpC,GAAGC,KAAK;;AAGf;AAEA,SAASG,SAAS,EAACJ,SAAS,EAAE,GAAGC,OAAuD;IACtF,OAAO,WAAP,GACE,IAACC,MAAkB;QACjB,aAAU;QACV,WAAWC,GACT,kJACAH;QAED,GAAGC,KAAK;;AAGf;AAEA,SAASI,YAAY,EAACL,SAAS,EAAE,GAAGC,OAA0D;IAC5F,OAAO,WAAP,GACE,IAACC,SAAqB;QACpB,aAAU;QACV,WAAWC,GACT,ohCACAH;QAED,GAAGC,KAAK;;AAGf;AAEA,SAASK,YAAY,EAACN,SAAS,EAAE,GAAGC,OAA0D;IAC5F,OAAO,WAAP,GACE,IAACC,SAAqB;QACpB,aAAU;QACV,WAAWC,GAAG,uBAAuBH;QACpC,GAAGC,KAAK;;AAGf"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
declare function Textarea({ className, ...props }: React.ComponentProps<"textarea"
|
|
2
|
+
declare function Textarea({ className, ...props }: Readonly<React.ComponentProps<"textarea">>): import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export { Textarea };
|
|
4
4
|
//# sourceMappingURL=textarea.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../../src/components/ui/textarea.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,iBAAS,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../../src/components/ui/textarea.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,iBAAS,QAAQ,CAAC,EAAC,SAAS,EAAE,GAAG,KAAK,EAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,2CAWlF;AAED,OAAO,EAAC,QAAQ,EAAC,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
3
|
import "react";
|
|
4
|
-
import { cn } from "../../lib/
|
|
4
|
+
import { cn } from "../../lib/utilities.js";
|
|
5
5
|
function Textarea({ className, ...props }) {
|
|
6
6
|
return /*#__PURE__*/ jsx("textarea", {
|
|
7
7
|
"data-slot": "textarea",
|
|
8
|
-
className: cn("
|
|
8
|
+
className: cn("flex field-sizing-content min-h-16 w-full rounded-md border border-neutral-200 bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none placeholder:text-neutral-500 focus-visible:border-neutral-950 focus-visible:ring-[3px] focus-visible:ring-neutral-950/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-red-500 aria-invalid:ring-red-500/20 md:text-sm dark:border-neutral-800 dark:bg-neutral-200/30 dark:dark:bg-neutral-800/30 dark:placeholder:text-neutral-400 dark:focus-visible:border-neutral-300 dark:focus-visible:ring-neutral-300/50 dark:aria-invalid:border-red-900 dark:aria-invalid:ring-red-500/40 dark:aria-invalid:ring-red-900/20 dark:dark:aria-invalid:ring-red-900/40", className),
|
|
9
9
|
...props
|
|
10
10
|
});
|
|
11
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\ui\\textarea.js","sources":["webpack://@arolariu/components/./src/components/ui/textarea.tsx"],"sourcesContent":["\n\nimport * as React from \"react\";\n\nimport {
|
|
1
|
+
{"version":3,"file":"components\\ui\\textarea.js","sources":["webpack://@arolariu/components/./src/components/ui/textarea.tsx"],"sourcesContent":["\r\n\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\n\r\nfunction Textarea({className, ...props}: Readonly<React.ComponentProps<\"textarea\">>) {\r\n return (\r\n <textarea\r\n data-slot='textarea'\r\n className={cn(\r\n \"flex field-sizing-content min-h-16 w-full rounded-md border border-neutral-200 bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none placeholder:text-neutral-500 focus-visible:border-neutral-950 focus-visible:ring-[3px] focus-visible:ring-neutral-950/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-red-500 aria-invalid:ring-red-500/20 md:text-sm dark:border-neutral-800 dark:bg-neutral-200/30 dark:dark:bg-neutral-800/30 dark:placeholder:text-neutral-400 dark:focus-visible:border-neutral-300 dark:focus-visible:ring-neutral-300/50 dark:aria-invalid:border-red-900 dark:aria-invalid:ring-red-500/40 dark:aria-invalid:ring-red-900/20 dark:dark:aria-invalid:ring-red-900/40\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport {Textarea};\r\n"],"names":["Textarea","className","props","cn"],"mappings":";;;;AAMA,SAASA,SAAS,EAACC,SAAS,EAAE,GAAGC,OAAkD;IACjF,OAAO,WAAP,GACE,IAAC;QACC,aAAU;QACV,WAAWC,GACT,6tBACAF;QAED,GAAGC,KAAK;;AAGf"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
1
|
import * as ToggleGroupPrimitive from "@radix-ui/react-toggle-group";
|
|
3
2
|
import { type VariantProps } from "class-variance-authority";
|
|
3
|
+
import * as React from "react";
|
|
4
4
|
import { toggleVariants } from "./toggle";
|
|
5
|
-
declare function ToggleGroup({ className, variant, size, children, ...props }: React.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants
|
|
6
|
-
declare function ToggleGroupItem({ className, children, variant, size, ...props }: React.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants
|
|
5
|
+
declare function ToggleGroup({ className, variant, size, children, ...props }: Readonly<React.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants>>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
declare function ToggleGroupItem({ className, children, variant, size, ...props }: Readonly<React.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants>>): import("react/jsx-runtime").JSX.Element;
|
|
7
7
|
export { ToggleGroup, ToggleGroupItem };
|
|
8
8
|
//# sourceMappingURL=toggle-group.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggle-group.d.ts","sourceRoot":"","sources":["../../../src/components/ui/toggle-group.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"toggle-group.d.ts","sourceRoot":"","sources":["../../../src/components/ui/toggle-group.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,oBAAoB,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,KAAK,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,cAAc,EAAC,MAAM,wBAAwB,CAAC;AAQtD,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,2CAexG;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACT,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,2CAoBxG;AAED,OAAO,EAAC,WAAW,EAAE,eAAe,EAAC,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
|
-
import { createContext, useContext } from "react";
|
|
4
3
|
import { Item, Root } from "@radix-ui/react-toggle-group";
|
|
5
|
-
import {
|
|
4
|
+
import { createContext, useContext } from "react";
|
|
6
5
|
import { toggleVariants } from "./toggle.js";
|
|
6
|
+
import { cn } from "../../lib/utilities.js";
|
|
7
7
|
const ToggleGroupContext = /*#__PURE__*/ createContext({
|
|
8
8
|
size: "default",
|
|
9
9
|
variant: "default"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\ui\\toggle-group.js","sources":["webpack://@arolariu/components/./src/components/ui/toggle-group.tsx"],"sourcesContent":["\n\
|
|
1
|
+
{"version":3,"file":"components\\ui\\toggle-group.js","sources":["webpack://@arolariu/components/./src/components/ui/toggle-group.tsx"],"sourcesContent":["\r\n\r\nimport * as ToggleGroupPrimitive from \"@radix-ui/react-toggle-group\";\r\nimport {type VariantProps} from \"class-variance-authority\";\r\nimport * as React from \"react\";\r\n\r\nimport {toggleVariants} from \"@/components/ui/toggle\";\r\nimport {cn} from \"@/lib/utilities\";\r\n\r\nconst ToggleGroupContext = React.createContext<VariantProps<typeof toggleVariants>>({\r\n size: \"default\",\r\n variant: \"default\",\r\n});\r\n\r\nfunction ToggleGroup({\r\n className,\r\n variant,\r\n size,\r\n children,\r\n ...props\r\n}: Readonly<React.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants>>) {\r\n return (\r\n <ToggleGroupPrimitive.Root\r\n data-slot='toggle-group'\r\n data-variant={variant}\r\n data-size={size}\r\n className={cn(\"group/toggle-group flex w-fit items-center rounded-md data-[variant=outline]:shadow-xs\", className)}\r\n {...props}>\r\n <ToggleGroupContext.Provider\r\n // eslint-disable-next-line react/jsx-no-constructed-context-values -- not applicable.\r\n value={{variant, size}}>\r\n {children}\r\n </ToggleGroupContext.Provider>\r\n </ToggleGroupPrimitive.Root>\r\n );\r\n}\r\n\r\nfunction ToggleGroupItem({\r\n className,\r\n children,\r\n variant,\r\n size,\r\n ...props\r\n}: Readonly<React.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants>>) {\r\n const context = React.useContext(ToggleGroupContext);\r\n\r\n return (\r\n <ToggleGroupPrimitive.Item\r\n data-slot='toggle-group-item'\r\n data-variant={context.variant || variant}\r\n data-size={context.size || size}\r\n className={cn(\r\n toggleVariants({\r\n variant: context.variant || variant,\r\n size: context.size || size,\r\n }),\r\n \"min-w-0 flex-1 shrink-0 rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l\",\r\n className,\r\n )}\r\n {...props}>\r\n {children}\r\n </ToggleGroupPrimitive.Item>\r\n );\r\n}\r\n\r\nexport {ToggleGroup, ToggleGroupItem};\r\n"],"names":["ToggleGroupContext","React","ToggleGroup","className","variant","size","children","props","ToggleGroupPrimitive","cn","ToggleGroupItem","context","toggleVariants"],"mappings":";;;;;;AASA,MAAMA,qBAAqB,WAArBA,GAAqBC,cAAyD;IAClF,MAAM;IACN,SAAS;AACX;AAEA,SAASC,YAAY,EACnBC,SAAS,EACTC,OAAO,EACPC,IAAI,EACJC,QAAQ,EACR,GAAGC,OACoG;IACvG,OAAO,WAAP,GACE,IAACC,MAAyB;QACxB,aAAU;QACV,gBAAcJ;QACd,aAAWC;QACX,WAAWI,GAAG,0FAA0FN;QACvG,GAAGI,KAAK;kBACT,kBAACP,mBAAmB,QAAQ;YAE1B,OAAO;gBAACI;gBAASC;YAAI;sBACpBC;;;AAIT;AAEA,SAASI,gBAAgB,EACvBP,SAAS,EACTG,QAAQ,EACRF,OAAO,EACPC,IAAI,EACJ,GAAGE,OACoG;IACvG,MAAMI,UAAUV,WAAiBD;IAEjC,OAAO,WAAP,GACE,IAACQ,MAAyB;QACxB,aAAU;QACV,gBAAcG,QAAQ,OAAO,IAAIP;QACjC,aAAWO,QAAQ,IAAI,IAAIN;QAC3B,WAAWI,GACTG,eAAe;YACb,SAASD,QAAQ,OAAO,IAAIP;YAC5B,MAAMO,QAAQ,IAAI,IAAIN;QACxB,IACA,+LACAF;QAED,GAAGI,KAAK;kBACRD;;AAGP"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
1
|
import * as TogglePrimitive from "@radix-ui/react-toggle";
|
|
3
2
|
import { type VariantProps } from "class-variance-authority";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
declare const toggleVariants: (props?: {
|
|
5
|
+
variant?: "default" | "outline";
|
|
6
|
+
size?: "default" | "sm" | "lg";
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) => string;
|
|
8
|
+
declare function Toggle({ className, variant, size, ...props }: Readonly<React.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>>): import("react/jsx-runtime").JSX.Element;
|
|
9
9
|
export { Toggle, toggleVariants };
|
|
10
10
|
//# sourceMappingURL=toggle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../src/components/ui/toggle.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../src/components/ui/toggle.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAM,KAAK,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,QAAA,MAAM,cAAc;;;iEAoBnB,CAAC;AAEF,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACT,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,2CAQnG;AAED,OAAO,EAAC,MAAM,EAAE,cAAc,EAAC,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
|
-
import "react";
|
|
4
3
|
import { Root } from "@radix-ui/react-toggle";
|
|
5
4
|
import { cva } from "class-variance-authority";
|
|
6
|
-
import
|
|
5
|
+
import "react";
|
|
6
|
+
import { cn } from "../../lib/utilities.js";
|
|
7
7
|
const toggleVariants = cva("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-neutral-100 hover:text-neutral-500 disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-neutral-100 data-[state=on]:text-neutral-900 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-neutral-950 focus-visible:ring-neutral-950/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-red-500/20 dark:aria-invalid:ring-red-500/40 aria-invalid:border-red-500 whitespace-nowrap dark:hover:bg-neutral-800 dark:hover:text-neutral-400 dark:data-[state=on]:bg-neutral-800 dark:data-[state=on]:text-neutral-50 dark:focus-visible:border-neutral-300 dark:focus-visible:ring-neutral-300/50 dark:aria-invalid:ring-red-900/20 dark:dark:aria-invalid:ring-red-900/40 dark:aria-invalid:border-red-900", {
|
|
8
8
|
variants: {
|
|
9
9
|
variant: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\ui\\toggle.js","sources":["webpack://@arolariu/components/./src/components/ui/toggle.tsx"],"sourcesContent":["\n\
|
|
1
|
+
{"version":3,"file":"components\\ui\\toggle.js","sources":["webpack://@arolariu/components/./src/components/ui/toggle.tsx"],"sourcesContent":["\r\n\r\nimport * as TogglePrimitive from \"@radix-ui/react-toggle\";\r\nimport {cva, type VariantProps} from \"class-variance-authority\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\n\r\nconst toggleVariants = cva(\r\n \"inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-neutral-100 hover:text-neutral-500 disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-neutral-100 data-[state=on]:text-neutral-900 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-neutral-950 focus-visible:ring-neutral-950/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-red-500/20 dark:aria-invalid:ring-red-500/40 aria-invalid:border-red-500 whitespace-nowrap dark:hover:bg-neutral-800 dark:hover:text-neutral-400 dark:data-[state=on]:bg-neutral-800 dark:data-[state=on]:text-neutral-50 dark:focus-visible:border-neutral-300 dark:focus-visible:ring-neutral-300/50 dark:aria-invalid:ring-red-900/20 dark:dark:aria-invalid:ring-red-900/40 dark:aria-invalid:border-red-900\",\r\n {\r\n variants: {\r\n variant: {\r\n default: \"bg-transparent\",\r\n outline:\r\n \"border border-neutral-200 bg-transparent shadow-xs hover:bg-neutral-100 hover:text-neutral-900 dark:border-neutral-800 dark:hover:bg-neutral-800 dark:hover:text-neutral-50\",\r\n },\r\n size: {\r\n default: \"h-9 px-2 min-w-9\",\r\n sm: \"h-8 px-1.5 min-w-8\",\r\n lg: \"h-10 px-2.5 min-w-10\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n size: \"default\",\r\n },\r\n },\r\n);\r\n\r\nfunction Toggle({\r\n className,\r\n variant,\r\n size,\r\n ...props\r\n}: Readonly<React.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>>) {\r\n return (\r\n <TogglePrimitive.Root\r\n data-slot='toggle'\r\n className={cn(toggleVariants({variant, size, className}))}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport {Toggle, toggleVariants};\r\n"],"names":["toggleVariants","cva","Toggle","className","variant","size","props","TogglePrimitive","cn"],"mappings":";;;;;;AAQA,MAAMA,iBAAiBC,IACrB,y2BACA;IACE,UAAU;QACR,SAAS;YACP,SAAS;YACT,SACE;QACJ;QACA,MAAM;YACJ,SAAS;YACT,IAAI;YACJ,IAAI;QACN;IACF;IACA,iBAAiB;QACf,SAAS;QACT,MAAM;IACR;AACF;AAGF,SAASC,OAAO,EACdC,SAAS,EACTC,OAAO,EACPC,IAAI,EACJ,GAAGC,OAC+F;IAClG,OAAO,WAAP,GACE,IAACC,MAAoB;QACnB,aAAU;QACV,WAAWC,GAAGR,eAAe;YAACI;YAASC;YAAMF;QAAS;QACrD,GAAGG,KAAK;;AAGf"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
1
|
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
|
3
|
-
|
|
4
|
-
declare function
|
|
5
|
-
declare function
|
|
6
|
-
declare function
|
|
7
|
-
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
declare function TooltipProvider({ delayDuration, ...props }: Readonly<React.ComponentProps<typeof TooltipPrimitive.Provider>>): import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
declare function Tooltip({ ...props }: Readonly<React.ComponentProps<typeof TooltipPrimitive.Root>>): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
declare function TooltipTrigger({ ...props }: Readonly<React.ComponentProps<typeof TooltipPrimitive.Trigger>>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
declare function TooltipContent({ className, sideOffset, children, ...props }: Readonly<React.ComponentProps<typeof TooltipPrimitive.Content>>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
|
|
8
8
|
//# sourceMappingURL=tooltip.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tooltip.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tooltip.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,iBAAS,eAAe,CAAC,EAAC,aAAiB,EAAE,GAAG,KAAK,EAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC,2CAQvH;AAED,iBAAS,OAAO,CAAC,EAAC,GAAG,KAAK,EAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,2CASxF;AAED,iBAAS,cAAc,CAAC,EAAC,GAAG,KAAK,EAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC,2CAOlG;AAED,iBAAS,cAAc,CAAC,EAAC,SAAS,EAAE,UAAc,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC,2CAgBvI;AAED,OAAO,EAAC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAC,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
-
import "react";
|
|
4
3
|
import { Arrow, Content, Portal, Provider, Root, Trigger } from "@radix-ui/react-tooltip";
|
|
5
|
-
import
|
|
4
|
+
import "react";
|
|
5
|
+
import { cn } from "../../lib/utilities.js";
|
|
6
6
|
function TooltipProvider({ delayDuration = 0, ...props }) {
|
|
7
7
|
return /*#__PURE__*/ jsx(Provider, {
|
|
8
8
|
"data-slot": "tooltip-provider",
|
|
@@ -29,12 +29,12 @@ function TooltipContent({ className, sideOffset = 0, children, ...props }) {
|
|
|
29
29
|
children: /*#__PURE__*/ jsxs(Content, {
|
|
30
30
|
"data-slot": "tooltip-content",
|
|
31
31
|
sideOffset: sideOffset,
|
|
32
|
-
className: cn("
|
|
32
|
+
className: cn("animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md bg-neutral-900 px-3 py-1.5 text-xs text-balance text-neutral-50 dark:bg-neutral-50 dark:text-neutral-900", className),
|
|
33
33
|
...props,
|
|
34
34
|
children: [
|
|
35
35
|
children,
|
|
36
36
|
/*#__PURE__*/ jsx(Arrow, {
|
|
37
|
-
className: "
|
|
37
|
+
className: "fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-neutral-900 dark:bg-neutral-50"
|
|
38
38
|
})
|
|
39
39
|
]
|
|
40
40
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\ui\\tooltip.js","sources":["webpack://@arolariu/components/./src/components/ui/tooltip.tsx"],"sourcesContent":["\n\nimport * as
|
|
1
|
+
{"version":3,"file":"components\\ui\\tooltip.js","sources":["webpack://@arolariu/components/./src/components/ui/tooltip.tsx"],"sourcesContent":["\r\n\r\nimport * as TooltipPrimitive from \"@radix-ui/react-tooltip\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\n\r\nfunction TooltipProvider({delayDuration = 0, ...props}: Readonly<React.ComponentProps<typeof TooltipPrimitive.Provider>>) {\r\n return (\r\n <TooltipPrimitive.Provider\r\n data-slot='tooltip-provider'\r\n delayDuration={delayDuration}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction Tooltip({...props}: Readonly<React.ComponentProps<typeof TooltipPrimitive.Root>>) {\r\n return (\r\n <TooltipProvider>\r\n <TooltipPrimitive.Root\r\n data-slot='tooltip'\r\n {...props}\r\n />\r\n </TooltipProvider>\r\n );\r\n}\r\n\r\nfunction TooltipTrigger({...props}: Readonly<React.ComponentProps<typeof TooltipPrimitive.Trigger>>) {\r\n return (\r\n <TooltipPrimitive.Trigger\r\n data-slot='tooltip-trigger'\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction TooltipContent({className, sideOffset = 0, children, ...props}: Readonly<React.ComponentProps<typeof TooltipPrimitive.Content>>) {\r\n return (\r\n <TooltipPrimitive.Portal>\r\n <TooltipPrimitive.Content\r\n data-slot='tooltip-content'\r\n sideOffset={sideOffset}\r\n className={cn(\r\n \"animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md bg-neutral-900 px-3 py-1.5 text-xs text-balance text-neutral-50 dark:bg-neutral-50 dark:text-neutral-900\",\r\n className,\r\n )}\r\n {...props}>\r\n {children}\r\n <TooltipPrimitive.Arrow className='fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-neutral-900 dark:bg-neutral-50' />\r\n </TooltipPrimitive.Content>\r\n </TooltipPrimitive.Portal>\r\n );\r\n}\r\n\r\nexport {Tooltip, TooltipContent, TooltipProvider, TooltipTrigger};\r\n"],"names":["TooltipProvider","delayDuration","props","TooltipPrimitive","Tooltip","TooltipTrigger","TooltipContent","className","sideOffset","children","cn"],"mappings":";;;;;AAOA,SAASA,gBAAgB,EAACC,gBAAgB,CAAC,EAAE,GAAGC,OAAwE;IACtH,OAAO,WAAP,GACE,IAACC,UAAyB;QACxB,aAAU;QACV,eAAeF;QACd,GAAGC,KAAK;;AAGf;AAEA,SAASE,QAAQ,EAAC,GAAGF,OAAoE;IACvF,OAAO,WAAP,GACE,IAACF,iBAAAA;kBACC,kBAACG,MAAqB;YACpB,aAAU;YACT,GAAGD,KAAK;;;AAIjB;AAEA,SAASG,eAAe,EAAC,GAAGH,OAAuE;IACjG,OAAO,WAAP,GACE,IAACC,SAAwB;QACvB,aAAU;QACT,GAAGD,KAAK;;AAGf;AAEA,SAASI,eAAe,EAACC,SAAS,EAAEC,aAAa,CAAC,EAAEC,QAAQ,EAAE,GAAGP,OAAuE;IACtI,OAAO,WAAP,GACE,IAACC,QAAuB;kBACtB,mBAACA,SAAwB;YACvB,aAAU;YACV,YAAYK;YACZ,WAAWE,GACT,+cACAH;YAED,GAAGL,KAAK;;gBACRO;8BACD,IAACN,OAAsB;oBAAC,WAAU;;;;;AAI1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typewriter.d.ts","sourceRoot":"","sources":["../../../src/components/ui/typewriter.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"typewriter.d.ts","sourceRoot":"","sources":["../../../src/components/ui/typewriter.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,eAAO,MAAM,cAAc,GAAI,wCAI5B;IACD,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,EAAE,CAAC;IACJ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,KAAG,KAAK,CAAC,GAAG,CAAC,OAwEb,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,wCAIlC;IACD,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,EAAE,CAAC;IACJ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,KAAG,KAAK,CAAC,GAAG,CAAC,OAsEb,CAAC"}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
-
import {
|
|
4
|
-
import { cn } from "../../lib/utils.js";
|
|
3
|
+
import { cn } from "../../lib/utilities.js";
|
|
5
4
|
import { motion, stagger, useAnimate, useInView } from "motion/react";
|
|
5
|
+
import { useEffect } from "react";
|
|
6
6
|
const TypewriterText = ({ words, className, cursorClassName })=>{
|
|
7
7
|
const wordsArray = words.map((word)=>({
|
|
8
8
|
...word,
|
|
9
|
-
text:
|
|
9
|
+
text: [
|
|
10
|
+
...word.text
|
|
11
|
+
]
|
|
10
12
|
}));
|
|
11
13
|
const [scope, animate] = useAnimate();
|
|
12
14
|
const isInView = useInView(scope);
|
|
@@ -31,7 +33,7 @@ const TypewriterText = ({ words, className, cursorClassName })=>{
|
|
|
31
33
|
children: [
|
|
32
34
|
word.text.map((char, index)=>/*#__PURE__*/ jsx(motion.span, {
|
|
33
35
|
initial: {},
|
|
34
|
-
className: cn("
|
|
36
|
+
className: cn("hidden text-black opacity-0 dark:text-white", word.className),
|
|
35
37
|
children: char
|
|
36
38
|
}, `char-${index}`)),
|
|
37
39
|
"\xa0"
|
|
@@ -39,7 +41,7 @@ const TypewriterText = ({ words, className, cursorClassName })=>{
|
|
|
39
41
|
}, `word-${idx}`))
|
|
40
42
|
});
|
|
41
43
|
return /*#__PURE__*/ jsxs("div", {
|
|
42
|
-
className: cn("text-base sm:text-xl md:text-3xl lg:text-5xl
|
|
44
|
+
className: cn("text-center text-base font-bold sm:text-xl md:text-3xl lg:text-5xl", className),
|
|
43
45
|
children: [
|
|
44
46
|
renderWords(),
|
|
45
47
|
/*#__PURE__*/ jsx(motion.span, {
|
|
@@ -54,7 +56,7 @@ const TypewriterText = ({ words, className, cursorClassName })=>{
|
|
|
54
56
|
repeat: 1 / 0,
|
|
55
57
|
repeatType: "reverse"
|
|
56
58
|
},
|
|
57
|
-
className: cn("inline-block
|
|
59
|
+
className: cn("inline-block h-4 w-[4px] rounded-sm bg-blue-500 md:h-6 lg:h-10", cursorClassName)
|
|
58
60
|
})
|
|
59
61
|
]
|
|
60
62
|
});
|
|
@@ -62,14 +64,16 @@ const TypewriterText = ({ words, className, cursorClassName })=>{
|
|
|
62
64
|
const TypewriterTextSmooth = ({ words, className, cursorClassName })=>{
|
|
63
65
|
const wordsArray = words.map((word)=>({
|
|
64
66
|
...word,
|
|
65
|
-
text:
|
|
67
|
+
text: [
|
|
68
|
+
...word.text
|
|
69
|
+
]
|
|
66
70
|
}));
|
|
67
71
|
const renderWords = ()=>/*#__PURE__*/ jsx("div", {
|
|
68
72
|
children: wordsArray.map((word, idx)=>/*#__PURE__*/ jsxs("div", {
|
|
69
73
|
className: "inline-block",
|
|
70
74
|
children: [
|
|
71
75
|
word.text.map((char, index)=>/*#__PURE__*/ jsx("span", {
|
|
72
|
-
className: cn("dark:text-white
|
|
76
|
+
className: cn("text-black dark:text-white", word.className),
|
|
73
77
|
children: char
|
|
74
78
|
}, `char-${index}`)),
|
|
75
79
|
"\xa0"
|
|
@@ -77,7 +81,7 @@ const TypewriterTextSmooth = ({ words, className, cursorClassName })=>{
|
|
|
77
81
|
}, `word-${idx}`))
|
|
78
82
|
});
|
|
79
83
|
return /*#__PURE__*/ jsxs("div", {
|
|
80
|
-
className: cn("flex space-x-1
|
|
84
|
+
className: cn("my-6 flex space-x-1", className),
|
|
81
85
|
children: [
|
|
82
86
|
/*#__PURE__*/ jsxs(motion.div, {
|
|
83
87
|
className: "overflow-hidden pb-2",
|
|
@@ -94,7 +98,7 @@ const TypewriterTextSmooth = ({ words, className, cursorClassName })=>{
|
|
|
94
98
|
},
|
|
95
99
|
children: [
|
|
96
100
|
/*#__PURE__*/ jsxs("div", {
|
|
97
|
-
className: "text-xs sm:text-base md:text-xl
|
|
101
|
+
className: "lg:text:3xl text-xs font-bold sm:text-base md:text-xl xl:text-5xl",
|
|
98
102
|
style: {
|
|
99
103
|
whiteSpace: "nowrap"
|
|
100
104
|
},
|
|
@@ -118,7 +122,7 @@ const TypewriterTextSmooth = ({ words, className, cursorClassName })=>{
|
|
|
118
122
|
repeat: 1 / 0,
|
|
119
123
|
repeatType: "reverse"
|
|
120
124
|
},
|
|
121
|
-
className: cn("block
|
|
125
|
+
className: cn("block h-4 w-[4px] rounded-sm bg-blue-500 sm:h-6 xl:h-12", cursorClassName)
|
|
122
126
|
})
|
|
123
127
|
]
|
|
124
128
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\ui\\typewriter.js","sources":["webpack://@arolariu/components/./src/components/ui/typewriter.tsx"],"sourcesContent":["\n\
|
|
1
|
+
{"version":3,"file":"components\\ui\\typewriter.js","sources":["webpack://@arolariu/components/./src/components/ui/typewriter.tsx"],"sourcesContent":["\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport {motion, stagger, useAnimate, useInView} from \"motion/react\";\r\nimport * as React from \"react\";\r\nimport {useEffect} from \"react\";\r\n\r\nexport const TypewriterText = ({\r\n words,\r\n className,\r\n cursorClassName,\r\n}: {\r\n words: {\r\n text: string;\r\n className?: string;\r\n }[];\r\n className?: string;\r\n cursorClassName?: string;\r\n}): React.JSX.Element => {\r\n // split text inside of words into array of characters\r\n const wordsArray = words.map((word) => {\r\n return {\r\n ...word,\r\n text: [...word.text],\r\n };\r\n });\r\n\r\n const [scope, animate] = useAnimate();\r\n const isInView = useInView(scope);\r\n useEffect(() => {\r\n if (isInView) {\r\n animate(\r\n \"span\",\r\n {\r\n display: \"inline-block\",\r\n opacity: 1,\r\n width: \"fit-content\",\r\n },\r\n {\r\n duration: 0.3,\r\n delay: stagger(0.1),\r\n ease: \"easeInOut\",\r\n },\r\n );\r\n }\r\n }, [isInView]);\r\n\r\n const renderWords = () => {\r\n return (\r\n <motion.div\r\n ref={scope}\r\n className='inline'>\r\n {wordsArray.map((word, idx) => {\r\n return (\r\n <div\r\n key={`word-${idx}`}\r\n className='inline-block'>\r\n {word.text.map((char, index) => (\r\n <motion.span\r\n initial={{}}\r\n key={`char-${index}`}\r\n className={cn(`hidden text-black opacity-0 dark:text-white`, word.className)}>\r\n {char}\r\n </motion.span>\r\n ))}\r\n \r\n </div>\r\n );\r\n })}\r\n </motion.div>\r\n );\r\n };\r\n return (\r\n <div className={cn(\"text-center text-base font-bold sm:text-xl md:text-3xl lg:text-5xl\", className)}>\r\n {renderWords()}\r\n <motion.span\r\n initial={{\r\n opacity: 0,\r\n }}\r\n animate={{\r\n opacity: 1,\r\n }}\r\n transition={{\r\n duration: 0.8,\r\n repeat: Infinity,\r\n repeatType: \"reverse\",\r\n }}\r\n className={cn(\"inline-block h-4 w-[4px] rounded-sm bg-blue-500 md:h-6 lg:h-10\", cursorClassName)}></motion.span>\r\n </div>\r\n );\r\n};\r\n\r\nexport const TypewriterTextSmooth = ({\r\n words,\r\n className,\r\n cursorClassName,\r\n}: {\r\n words: {\r\n text: string;\r\n className?: string;\r\n }[];\r\n className?: string;\r\n cursorClassName?: string;\r\n}): React.JSX.Element => {\r\n // split text inside of words into array of characters\r\n const wordsArray = words.map((word) => {\r\n return {\r\n ...word,\r\n text: [...word.text],\r\n };\r\n });\r\n const renderWords = () => {\r\n return (\r\n <div>\r\n {wordsArray.map((word, idx) => {\r\n return (\r\n <div\r\n key={`word-${idx}`}\r\n className='inline-block'>\r\n {word.text.map((char, index) => (\r\n <span\r\n key={`char-${index}`}\r\n className={cn(`text-black dark:text-white`, word.className)}>\r\n {char}\r\n </span>\r\n ))}\r\n \r\n </div>\r\n );\r\n })}\r\n </div>\r\n );\r\n };\r\n\r\n return (\r\n <div className={cn(\"my-6 flex space-x-1\", className)}>\r\n <motion.div\r\n className='overflow-hidden pb-2'\r\n initial={{\r\n width: \"0%\",\r\n }}\r\n whileInView={{\r\n width: \"fit-content\",\r\n }}\r\n transition={{\r\n duration: 2,\r\n ease: \"linear\",\r\n delay: 1,\r\n }}>\r\n <div\r\n className='lg:text:3xl text-xs font-bold sm:text-base md:text-xl xl:text-5xl'\r\n style={{\r\n whiteSpace: \"nowrap\",\r\n }}>\r\n {renderWords()}{\" \"}\r\n </div>{\" \"}\r\n </motion.div>\r\n <motion.span\r\n initial={{\r\n opacity: 0,\r\n }}\r\n animate={{\r\n opacity: 1,\r\n }}\r\n transition={{\r\n duration: 0.8,\r\n\r\n repeat: Infinity,\r\n repeatType: \"reverse\",\r\n }}\r\n className={cn(\"block h-4 w-[4px] rounded-sm bg-blue-500 sm:h-6 xl:h-12\", cursorClassName)}></motion.span>\r\n </div>\r\n );\r\n};\r\n"],"names":["TypewriterText","words","className","cursorClassName","wordsArray","word","scope","animate","useAnimate","isInView","useInView","useEffect","stagger","renderWords","motion","idx","char","index","cn","Infinity","TypewriterTextSmooth"],"mappings":";;;;;AAOO,MAAMA,iBAAiB,CAAC,EAC7BC,KAAK,EACLC,SAAS,EACTC,eAAe,EAQhB;IAEC,MAAMC,aAAaH,MAAM,GAAG,CAAC,CAACI,OACrB;YACL,GAAGA,IAAI;YACP,MAAM;mBAAIA,KAAK,IAAI;aAAC;QACtB;IAGF,MAAM,CAACC,OAAOC,QAAQ,GAAGC;IACzB,MAAMC,WAAWC,UAAUJ;IAC3BK,UAAU;QACR,IAAIF,UACFF,QACE,QACA;YACE,SAAS;YACT,SAAS;YACT,OAAO;QACT,GACA;YACE,UAAU;YACV,OAAOK,QAAQ;YACf,MAAM;QACR;IAGN,GAAG;QAACH;KAAS;IAEb,MAAMI,cAAc,IACX,WAAP,GACE,IAACC,OAAO,GAAG;YACT,KAAKR;YACL,WAAU;sBACTF,WAAW,GAAG,CAAC,CAACC,MAAMU,MACd,WAAP,GACE,KAAC;oBAEC,WAAU;;wBACTV,KAAK,IAAI,CAAC,GAAG,CAAC,CAACW,MAAMC,QAAAA,WAAAA,GACpB,IAACH,OAAO,IAAI;gCACV,SAAS,CAAC;gCAEV,WAAWI,GAAG,+CAA+Cb,KAAK,SAAS;0CAC1EW;+BAFI,CAAC,KAAK,EAAEC,OAAO;wBAIrB;;mBATE,CAAC,KAAK,EAAEF,KAAK;;IAiB9B,OAAO,WAAP,GACE,KAAC;QAAI,WAAWG,GAAG,sEAAsEhB;;YACtFW;0BACD,IAACC,OAAO,IAAI;gBACV,SAAS;oBACP,SAAS;gBACX;gBACA,SAAS;oBACP,SAAS;gBACX;gBACA,YAAY;oBACV,UAAU;oBACV,QAAQK;oBACR,YAAY;gBACd;gBACA,WAAWD,GAAG,kEAAkEf;;;;AAGxF;AAEO,MAAMiB,uBAAuB,CAAC,EACnCnB,KAAK,EACLC,SAAS,EACTC,eAAe,EAQhB;IAEC,MAAMC,aAAaH,MAAM,GAAG,CAAC,CAACI,OACrB;YACL,GAAGA,IAAI;YACP,MAAM;mBAAIA,KAAK,IAAI;aAAC;QACtB;IAEF,MAAMQ,cAAc,IACX,WAAP,GACE,IAAC;sBACET,WAAW,GAAG,CAAC,CAACC,MAAMU,MACd,WAAP,GACE,KAAC;oBAEC,WAAU;;wBACTV,KAAK,IAAI,CAAC,GAAG,CAAC,CAACW,MAAMC,QAAAA,WAAAA,GACpB,IAAC;gCAEC,WAAWC,GAAG,8BAA8Bb,KAAK,SAAS;0CACzDW;+BAFI,CAAC,KAAK,EAAEC,OAAO;wBAIrB;;mBARE,CAAC,KAAK,EAAEF,KAAK;;IAiB9B,OAAO,WAAP,GACE,KAAC;QAAI,WAAWG,GAAG,uBAAuBhB;;0BACxC,KAACY,OAAO,GAAG;gBACT,WAAU;gBACV,SAAS;oBACP,OAAO;gBACT;gBACA,aAAa;oBACX,OAAO;gBACT;gBACA,YAAY;oBACV,UAAU;oBACV,MAAM;oBACN,OAAO;gBACT;;kCACA,KAAC;wBACC,WAAU;wBACV,OAAO;4BACL,YAAY;wBACd;;4BACCD;4BAAe;;;oBACX;;;0BAET,IAACC,OAAO,IAAI;gBACV,SAAS;oBACP,SAAS;gBACX;gBACA,SAAS;oBACP,SAAS;gBACX;gBACA,YAAY;oBACV,UAAU;oBAEV,QAAQK;oBACR,YAAY;gBACd;gBACA,WAAWD,GAAG,2DAA2Df;;;;AAGjF"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* A custom React hook that detects whether the current device is a mobile device
|
|
3
3
|
* based on the screen width.
|
|
4
|
-
*
|
|
5
4
|
* This hook uses a media query to check if the viewport width is less than the defined
|
|
6
5
|
* mobile breakpoint (768px). It updates the state when the window size changes.
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* false otherwise.
|
|
10
|
-
*
|
|
6
|
+
* @returns Returns true if the viewport width is less than the mobile breakpoint,
|
|
7
|
+
* false otherwise.
|
|
11
8
|
* @example
|
|
12
9
|
* ```tsx
|
|
13
10
|
* function MyComponent() {
|
|
@@ -22,4 +19,4 @@
|
|
|
22
19
|
* ```
|
|
23
20
|
*/
|
|
24
21
|
export declare function useIsMobile(): boolean;
|
|
25
|
-
//# sourceMappingURL=
|
|
22
|
+
//# sourceMappingURL=useIsMobile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useIsMobile.d.ts","sourceRoot":"","sources":["../../src/hooks/useIsMobile.tsx"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAgBrC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useEffect, useState } from "react";
|
|
3
|
+
const MOBILE_BREAKPOINT = 768;
|
|
4
|
+
function useIsMobile() {
|
|
5
|
+
const [isMobile, setIsMobile] = useState(null);
|
|
6
|
+
useEffect(()=>{
|
|
7
|
+
const mql = globalThis.window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
|
|
8
|
+
const onChange = ()=>{
|
|
9
|
+
setIsMobile(globalThis.window.innerWidth < MOBILE_BREAKPOINT);
|
|
10
|
+
};
|
|
11
|
+
mql.addEventListener("change", onChange);
|
|
12
|
+
setIsMobile(globalThis.window.innerWidth < MOBILE_BREAKPOINT);
|
|
13
|
+
return ()=>mql.removeEventListener("change", onChange);
|
|
14
|
+
}, []);
|
|
15
|
+
return Boolean(isMobile);
|
|
16
|
+
}
|
|
17
|
+
export { useIsMobile };
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=useIsMobile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks\\useIsMobile.js","sources":["webpack://@arolariu/components/./src/hooks/useIsMobile.tsx"],"sourcesContent":["\r\nimport * as React from \"react\";\r\n\r\nconst MOBILE_BREAKPOINT = 768;\r\n\r\n/**\r\n * A custom React hook that detects whether the current device is a mobile device\r\n * based on the screen width.\r\n * This hook uses a media query to check if the viewport width is less than the defined\r\n * mobile breakpoint (768px). It updates the state when the window size changes.\r\n * @returns Returns true if the viewport width is less than the mobile breakpoint,\r\n * false otherwise.\r\n * @example\r\n * ```tsx\r\n * function MyComponent() {\r\n * const isMobile = useIsMobile();\r\n *\r\n * return (\r\n * <div>\r\n * {isMobile ? 'Mobile View' : 'Desktop View'}\r\n * </div>\r\n * );\r\n * }\r\n * ```\r\n */\r\nexport function useIsMobile(): boolean {\r\n const [isMobile, setIsMobile] = React.useState<boolean | null>(null);\r\n\r\n React.useEffect(() => {\r\n const mql = globalThis.window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);\r\n const onChange = () => {\r\n // eslint-disable-next-line react-hooks-extra/no-direct-set-state-in-use-effect\r\n setIsMobile(globalThis.window.innerWidth < MOBILE_BREAKPOINT);\r\n };\r\n mql.addEventListener(\"change\", onChange);\r\n // eslint-disable-next-line react-hooks-extra/no-direct-set-state-in-use-effect\r\n setIsMobile(globalThis.window.innerWidth < MOBILE_BREAKPOINT);\r\n return () => mql.removeEventListener(\"change\", onChange);\r\n }, []);\r\n\r\n return Boolean(isMobile);\r\n}\r\n"],"names":["MOBILE_BREAKPOINT","useIsMobile","isMobile","setIsMobile","React","mql","globalThis","onChange","Boolean"],"mappings":";;AAGA,MAAMA,oBAAoB;AAsBnB,SAASC;IACd,MAAM,CAACC,UAAUC,YAAY,GAAGC,SAA+B;IAE/DA,UAAgB;QACd,MAAMC,MAAMC,WAAW,MAAM,CAAC,UAAU,CAAC,CAAC,YAAY,EAAEN,oBAAoB,EAAE,GAAG,CAAC;QAClF,MAAMO,WAAW;YAEfJ,YAAYG,WAAW,MAAM,CAAC,UAAU,GAAGN;QAC7C;QACAK,IAAI,gBAAgB,CAAC,UAAUE;QAE/BJ,YAAYG,WAAW,MAAM,CAAC,UAAU,GAAGN;QAC3C,OAAO,IAAMK,IAAI,mBAAmB,CAAC,UAAUE;IACjD,GAAG,EAAE;IAEL,OAAOC,QAAQN;AACjB"}
|