linkedunion-design-kit 1.9.6-beta.0 → 1.9.6-beta.1
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/dist/build/types/validator.js +12 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/src/components/Badge/Badge.stories.d.ts +1 -1
- package/dist/src/components/Badge/Badge.stories.js +1 -1
- package/dist/src/components/Button/Button/Button.module.css +1 -1
- package/dist/src/components/Card/MultipleNews/MultiNews.js +2 -2
- package/dist/src/components/Pagination/pagination.js +7 -7
- package/dist/src/components/Skeleton/skeleton.stories.d.ts +3 -1
- package/dist/src/components/Skeleton/skeleton.stories.js +48 -38
- package/dist/src/components/Title/Title.module.css +1 -1
- package/dist/src/components/Typography/Heading/heading.module.css +1 -1
- package/dist/src/components/VerticalTabs/VerticalTabs.d.ts +18 -0
- package/dist/src/components/VerticalTabs/VerticalTabs.js +60 -0
- package/dist/src/components/VerticalTabs/VerticalTabs.stories.d.ts +11 -0
- package/dist/src/components/VerticalTabs/VerticalTabs.stories.js +100 -0
- package/dist/src/components/VerticalTabs/VerticalTabs.test.d.ts +1 -0
- package/dist/src/components/VerticalTabs/VerticalTabs.test.js +48 -0
- package/dist/styles/global.css +118 -6
- package/package.json +2 -2
- package/dist/app/layout.jsx +0 -13
- package/dist/app/page.jsx +0 -5
- package/dist/src/components/Accordion/Accordion.stories.jsx +0 -33
- package/dist/src/components/Accordion/accordion.jsx +0 -59
- package/dist/src/components/Alerts/Alert/alert.jsx +0 -152
- package/dist/src/components/Alerts/Alert/alert.stories.jsx +0 -344
- package/dist/src/components/Alerts/AlertDialog/alert-dialog.jsx +0 -170
- package/dist/src/components/Alerts/AlertDialog/alert-dialog.stories.jsx +0 -552
- package/dist/src/components/AppIcons/AndroidIcon.jsx +0 -24
- package/dist/src/components/AppIcons/AppIcon.jsx +0 -29
- package/dist/src/components/AppIcons/AppIcon.stories.jsx +0 -223
- package/dist/src/components/AppIcons/AppleIcon.jsx +0 -31
- package/dist/src/components/AppIcons/PlayStoreIcon.jsx +0 -29
- package/dist/src/components/Avatar/Avatar/Avatar.jsx +0 -45
- package/dist/src/components/Avatar/Avatar/Avatar.stories.jsx +0 -95
- package/dist/src/components/Avatar/Avatar/Avatar.test.jsx +0 -9
- package/dist/src/components/Avatar/Avatar/type.d.ts +0 -12
- package/dist/src/components/Avatar/AvatarGroup/AvatarGroup.jsx +0 -17
- package/dist/src/components/Avatar/AvatarGroup/AvatarGroup.stories.jsx +0 -32
- package/dist/src/components/Avatar/StatusIndicator/StatusIndicator.jsx +0 -20
- package/dist/src/components/Avatar/StatusIndicator/StatusIndicator.stories.jsx +0 -50
- package/dist/src/components/Badge/Badge.jsx +0 -54
- package/dist/src/components/Badge/Badge.stories.jsx +0 -201
- package/dist/src/components/Button/Button/Button.jsx +0 -96
- package/dist/src/components/Button/Button/Button.stories.jsx +0 -283
- package/dist/src/components/Button/Button/Button.test.jsx +0 -73
- package/dist/src/components/Button/IconButton/IconButton.jsx +0 -63
- package/dist/src/components/Button/IconButton/IconButton.stories.jsx +0 -128
- package/dist/src/components/Button/IconButton/IconButton.test.jsx +0 -28
- package/dist/src/components/Card/MultipleNews/MultiNews.jsx +0 -70
- package/dist/src/components/Card/MultipleNews/MultiNews.stories.jsx +0 -101
- package/dist/src/components/Card/PostByCategory/PostByCategory.jsx +0 -60
- package/dist/src/components/Card/PostByCategory/PostByCategory.stories.jsx +0 -102
- package/dist/src/components/Card/SinglePost/SinglePost.jsx +0 -26
- package/dist/src/components/Card/SinglePost/SinglePost.stories.jsx +0 -63
- package/dist/src/components/Card/card.jsx +0 -20
- package/dist/src/components/Card/contactProfile/ContactProfile.jsx +0 -60
- package/dist/src/components/Card/contactProfile/ContactProfile.stories.jsx +0 -99
- package/dist/src/components/Card/photoAlbum/PhotoAlbum.jsx +0 -41
- package/dist/src/components/Card/photoAlbum/PhotoAlbum.stories.jsx +0 -51
- package/dist/src/components/Card/photoGallery/PhotoGallery.jsx +0 -17
- package/dist/src/components/Card/photoGallery/PhotoGallery.stories.jsx +0 -34
- package/dist/src/components/Checkbox/checkbox.jsx +0 -47
- package/dist/src/components/Checkbox/checkbox.stories.jsx +0 -113
- package/dist/src/components/ColorPicker/ColorPicker.jsx +0 -67
- package/dist/src/components/ColorPicker/ColorPicker.stories.jsx +0 -138
- package/dist/src/components/Colors/color.jsx +0 -5
- package/dist/src/components/Colors/color.stories.jsx +0 -20
- package/dist/src/components/Colors/color.test.jsx +0 -23
- package/dist/src/components/Dropdown/Combobox/Combobox.jsx +0 -198
- package/dist/src/components/Dropdown/Combobox/Combobox.stories.jsx +0 -289
- package/dist/src/components/Dropdown/Combobox/utils/renderBadge.jsx +0 -7
- package/dist/src/components/Dropdown/DropdownMenu/DropdownMenu.jsx +0 -102
- package/dist/src/components/Dropdown/DropdownMenu/DropdownMenu.stories.jsx +0 -464
- package/dist/src/components/Dropdown/DropdownMenu/SelectAllSection.jsx +0 -19
- package/dist/src/components/Dropdown/Select.stories.jsx +0 -201
- package/dist/src/components/Dropdown/select.jsx +0 -93
- package/dist/src/components/Icons/LUIcon.jsx +0 -41
- package/dist/src/components/Icons/LUIcon.test.jsx +0 -308
- package/dist/src/components/Icons/stories/IconDropdown.jsx +0 -67
- package/dist/src/components/Icons/stories/IconGallery.jsx +0 -77
- package/dist/src/components/Icons/stories/InteractiveIconSelector.jsx +0 -86
- package/dist/src/components/Icons/stories/LUIcon.stories.jsx +0 -108
- package/dist/src/components/ImageUploader/ImageUploader.stories.jsx +0 -50
- package/dist/src/components/ImageUploader/imageUploader.jsx +0 -94
- package/dist/src/components/Images/LuImage.jsx +0 -19
- package/dist/src/components/Images/LuImage.stories.jsx +0 -154
- package/dist/src/components/Images/LuImage.test.jsx +0 -44
- package/dist/src/components/Input/Input.stories.jsx +0 -250
- package/dist/src/components/Input/input.jsx +0 -110
- package/dist/src/components/Label/Label.jsx +0 -32
- package/dist/src/components/Label/Label.stories.jsx +0 -30
- package/dist/src/components/Pagination/pagination.jsx +0 -65
- package/dist/src/components/Pagination/pagination.stories.jsx +0 -301
- package/dist/src/components/RadioGroup/RadioGroup.stories.jsx +0 -146
- package/dist/src/components/RadioGroup/radio-group.jsx +0 -49
- package/dist/src/components/Slider/Slider.stories.jsx +0 -159
- package/dist/src/components/Slider/slider.jsx +0 -31
- package/dist/src/components/SweetAlert/SweetAlert.jsx +0 -147
- package/dist/src/components/SweetAlert/SweetAlert.stories.jsx +0 -505
- package/dist/src/components/Switch/Switch.stories.jsx +0 -66
- package/dist/src/components/Switch/switch.jsx +0 -61
- package/dist/src/components/Table/Table.jsx +0 -221
- package/dist/src/components/Table/Table.stories.jsx +0 -652
- package/dist/src/components/Tabs/Tabs.stories.jsx +0 -29
- package/dist/src/components/Tabs/tabs.jsx +0 -32
- package/dist/src/components/Title/Title.jsx +0 -8
- package/dist/src/components/Title/Title.stories.jsx +0 -37
- package/dist/src/components/Title/Title.test.jsx +0 -24
- package/dist/src/components/ToolTip/Tooltip.jsx +0 -18
- package/dist/src/components/ToolTip/Tooltip.stories.jsx +0 -25
- package/dist/src/components/Typography/Body/Body.stories.jsx +0 -34
- package/dist/src/components/Typography/Body/body.jsx +0 -52
- package/dist/src/components/Typography/Caption/Caption.stories.jsx +0 -24
- package/dist/src/components/Typography/Caption/caption.jsx +0 -25
- package/dist/src/components/Typography/Display/Display.stories.jsx +0 -24
- package/dist/src/components/Typography/Display/display.jsx +0 -39
- package/dist/src/components/Typography/Heading/Heading.stories.jsx +0 -37
- package/dist/src/components/Typography/Heading/heading.jsx +0 -53
- package/dist/src/components/ui/avatar.d.ts +0 -6
- package/dist/src/components/ui/avatar.js +0 -38
- package/dist/src/components/ui/avatar.jsx +0 -27
- package/dist/src/components/ui/button.d.ts +0 -10
- package/dist/src/components/ui/button.js +0 -56
- package/dist/src/components/ui/button.jsx +0 -45
- package/dist/src/components/ui/collapsible.jsx +0 -5
- package/dist/src/components/ui/command.jsx +0 -67
- package/dist/src/components/ui/dialog.jsx +0 -66
- package/dist/src/components/ui/popover.jsx +0 -33
- package/dist/src/components/ui/tooltip.jsx +0 -38
- package/dist/src/components/ui/typography.jsx +0 -56
- /package/dist/{src/components/Avatar/Avatar/type.js → build/types/validator.d.ts} +0 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { render, screen } from "@testing-library/react";
|
|
3
|
+
import { Tabs, TabsList, TabsTrigger, TabsContent, TabsHeading, tabSizes, } from "./VerticalTabs";
|
|
4
|
+
var Dummy_label = "Account";
|
|
5
|
+
describe("VerticalTabs Component", function () {
|
|
6
|
+
it("renders Tabs with TabsHeading", function () {
|
|
7
|
+
render(_jsxs(Tabs, { defaultValue: "account", children: [_jsx(TabsHeading, { children: "Test Heading" }), _jsx(TabsList, { children: _jsx(TabsTrigger, { value: "account", children: Dummy_label }) }), _jsx(TabsContent, { value: "account", children: "Account Settings" })] }));
|
|
8
|
+
expect(screen.getByText("Test Heading")).toBeInTheDocument();
|
|
9
|
+
});
|
|
10
|
+
it("renders TabsHeading with children", function () {
|
|
11
|
+
render(_jsx(TabsHeading, { children: "Custom Heading" }));
|
|
12
|
+
expect(screen.getByText("Custom Heading")).toBeInTheDocument();
|
|
13
|
+
});
|
|
14
|
+
it("renders Tabs with different sizes", function () {
|
|
15
|
+
Object.keys(tabSizes).forEach(function (size) {
|
|
16
|
+
render(_jsxs(Tabs, { defaultValue: "account", size: size, children: [_jsxs(TabsHeading, { children: [size, " Tabs"] }), _jsxs(TabsList, { children: [_jsx(TabsTrigger, { value: "account", children: "Account" }), _jsx(TabsTrigger, { value: "password", children: "Password" })] }), _jsx(TabsContent, { value: "account", children: "Account Settings" }), _jsx(TabsContent, { value: "password", children: "Change Password" })] }));
|
|
17
|
+
expect(screen.getByText("".concat(size, " Tabs"))).toBeInTheDocument();
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
it("renders TabsList and TabsTrigger", function () {
|
|
21
|
+
render(_jsxs(Tabs, { defaultValue: "account", children: [_jsx(TabsList, { children: _jsx(TabsTrigger, { value: "account", children: Dummy_label }) }), _jsx(TabsContent, { value: "account", children: "Account Settings" })] }));
|
|
22
|
+
expect(screen.getByText(Dummy_label)).toBeInTheDocument();
|
|
23
|
+
});
|
|
24
|
+
it("renders TabsContent when trigger is active", function () {
|
|
25
|
+
render(_jsxs(Tabs, { defaultValue: "account", children: [_jsxs(TabsList, { children: [_jsx(TabsTrigger, { value: "account", children: Dummy_label }), _jsx(TabsTrigger, { value: "password", children: "Password" })] }), _jsx(TabsContent, { value: "account", children: "Account Settings" }), _jsx(TabsContent, { value: "password", children: "Change Password" })] }));
|
|
26
|
+
expect(screen.getByText("Account Settings")).toBeInTheDocument();
|
|
27
|
+
expect(screen.queryByText("Change Password")).not.toBeInTheDocument();
|
|
28
|
+
});
|
|
29
|
+
it("renders without heading prop", function () {
|
|
30
|
+
render(_jsxs(Tabs, { defaultValue: "account", children: [_jsx(TabsList, { children: _jsx(TabsTrigger, { value: "account", children: Dummy_label }) }), _jsx(TabsContent, { value: "account", children: "Account Settings" })] }));
|
|
31
|
+
expect(screen.queryByText("Test Heading")).not.toBeInTheDocument();
|
|
32
|
+
});
|
|
33
|
+
it("renders only active tab content", function () {
|
|
34
|
+
render(_jsxs(Tabs, { defaultValue: "account", children: [_jsxs(TabsList, { children: [_jsx(TabsTrigger, { value: "account", children: "Account" }), _jsx(TabsTrigger, { value: "password", children: "Password" })] }), _jsx(TabsContent, { value: "account", children: "Account Settings" }), _jsx(TabsContent, { value: "password", children: "Change Password" })] }));
|
|
35
|
+
expect(screen.getByText("Account Settings")).toBeInTheDocument();
|
|
36
|
+
expect(screen.queryByText("Change Password")).not.toBeInTheDocument();
|
|
37
|
+
});
|
|
38
|
+
it("applies additional className to TabsTrigger", function () {
|
|
39
|
+
render(_jsxs(Tabs, { defaultValue: "account", children: [_jsx(TabsList, { children: _jsx(TabsTrigger, { value: "account", className: "custom-class", children: Dummy_label }) }), _jsx(TabsContent, { value: "account", children: "Account Settings" })] }));
|
|
40
|
+
var trigger = screen.getByText(Dummy_label);
|
|
41
|
+
expect(trigger).toHaveClass("custom-class");
|
|
42
|
+
});
|
|
43
|
+
it("renders correctly without a className prop", function () {
|
|
44
|
+
render(_jsxs(Tabs, { defaultValue: "account", children: [_jsx(TabsList, { children: _jsx(TabsTrigger, { value: "account", children: Dummy_label }) }), _jsx(TabsContent, { value: "account", children: "Account Settings" })] }));
|
|
45
|
+
var trigger = screen.getByText(Dummy_label);
|
|
46
|
+
expect(trigger.className).not.toMatch(/custom-class/);
|
|
47
|
+
});
|
|
48
|
+
});
|
package/dist/styles/global.css
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! tailwindcss v4.1.
|
|
1
|
+
/*! tailwindcss v4.1.13 | MIT License | https://tailwindcss.com */
|
|
2
2
|
@layer properties;
|
|
3
3
|
@layer theme, base, components, utilities;
|
|
4
4
|
@layer theme {
|
|
@@ -51,6 +51,8 @@
|
|
|
51
51
|
--radius-2xl: 1rem;
|
|
52
52
|
--radius-3xl: 1.5rem;
|
|
53
53
|
--ease-out: cubic-bezier(0, 0, 0.2, 1);
|
|
54
|
+
--animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
|
|
55
|
+
--aspect-video: 16 / 9;
|
|
54
56
|
--default-transition-duration: 150ms;
|
|
55
57
|
--default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
56
58
|
--default-font-family: var(--font-sans);
|
|
@@ -189,6 +191,9 @@
|
|
|
189
191
|
::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
|
|
190
192
|
padding-block: 0;
|
|
191
193
|
}
|
|
194
|
+
::-webkit-calendar-picker-indicator {
|
|
195
|
+
line-height: 1;
|
|
196
|
+
}
|
|
192
197
|
:-moz-ui-invalid {
|
|
193
198
|
box-shadow: none;
|
|
194
199
|
}
|
|
@@ -219,7 +224,7 @@
|
|
|
219
224
|
padding: 0;
|
|
220
225
|
margin: -1px;
|
|
221
226
|
overflow: hidden;
|
|
222
|
-
clip:
|
|
227
|
+
clip-path: inset(50%);
|
|
223
228
|
white-space: nowrap;
|
|
224
229
|
border-width: 0;
|
|
225
230
|
}
|
|
@@ -394,6 +399,9 @@
|
|
|
394
399
|
.mt-6 {
|
|
395
400
|
margin-top: calc(var(--spacing) * 6);
|
|
396
401
|
}
|
|
402
|
+
.mr-1 {
|
|
403
|
+
margin-right: calc(var(--spacing) * 1);
|
|
404
|
+
}
|
|
397
405
|
.mr-2 {
|
|
398
406
|
margin-right: calc(var(--spacing) * 2);
|
|
399
407
|
}
|
|
@@ -451,6 +459,9 @@
|
|
|
451
459
|
.inline {
|
|
452
460
|
display: inline;
|
|
453
461
|
}
|
|
462
|
+
.inline-block {
|
|
463
|
+
display: inline-block;
|
|
464
|
+
}
|
|
454
465
|
.inline-flex {
|
|
455
466
|
display: inline-flex;
|
|
456
467
|
}
|
|
@@ -505,9 +516,15 @@
|
|
|
505
516
|
.aspect-16\/10 {
|
|
506
517
|
aspect-ratio: 16/10;
|
|
507
518
|
}
|
|
519
|
+
.aspect-\[3\/4\] {
|
|
520
|
+
aspect-ratio: 3/4;
|
|
521
|
+
}
|
|
508
522
|
.aspect-square {
|
|
509
523
|
aspect-ratio: 1 / 1;
|
|
510
524
|
}
|
|
525
|
+
.aspect-video {
|
|
526
|
+
aspect-ratio: var(--aspect-video);
|
|
527
|
+
}
|
|
511
528
|
.\!size-3 {
|
|
512
529
|
width: calc(var(--spacing) * 3) !important;
|
|
513
530
|
height: calc(var(--spacing) * 3) !important;
|
|
@@ -597,12 +614,18 @@
|
|
|
597
614
|
.h-1\.5 {
|
|
598
615
|
height: calc(var(--spacing) * 1.5);
|
|
599
616
|
}
|
|
617
|
+
.h-1\/3 {
|
|
618
|
+
height: calc(1/3 * 100%);
|
|
619
|
+
}
|
|
600
620
|
.h-2 {
|
|
601
621
|
height: calc(var(--spacing) * 2);
|
|
602
622
|
}
|
|
603
623
|
.h-2\.5 {
|
|
604
624
|
height: calc(var(--spacing) * 2.5);
|
|
605
625
|
}
|
|
626
|
+
.h-3 {
|
|
627
|
+
height: calc(var(--spacing) * 3);
|
|
628
|
+
}
|
|
606
629
|
.h-3\.5 {
|
|
607
630
|
height: calc(var(--spacing) * 3.5);
|
|
608
631
|
}
|
|
@@ -618,6 +641,9 @@
|
|
|
618
641
|
.h-6 {
|
|
619
642
|
height: calc(var(--spacing) * 6);
|
|
620
643
|
}
|
|
644
|
+
.h-7 {
|
|
645
|
+
height: calc(var(--spacing) * 7);
|
|
646
|
+
}
|
|
621
647
|
.h-8 {
|
|
622
648
|
height: calc(var(--spacing) * 8);
|
|
623
649
|
}
|
|
@@ -651,6 +677,15 @@
|
|
|
651
677
|
.h-40 {
|
|
652
678
|
height: calc(var(--spacing) * 40);
|
|
653
679
|
}
|
|
680
|
+
.h-48 {
|
|
681
|
+
height: calc(var(--spacing) * 48);
|
|
682
|
+
}
|
|
683
|
+
.h-64 {
|
|
684
|
+
height: calc(var(--spacing) * 64);
|
|
685
|
+
}
|
|
686
|
+
.h-\[1\.125rem\] {
|
|
687
|
+
height: 1.125rem;
|
|
688
|
+
}
|
|
654
689
|
.h-\[var\(--radix-select-trigger-height\)\] {
|
|
655
690
|
height: var(--radix-select-trigger-height);
|
|
656
691
|
}
|
|
@@ -723,6 +758,9 @@
|
|
|
723
758
|
.w-3\.5 {
|
|
724
759
|
width: calc(var(--spacing) * 3.5);
|
|
725
760
|
}
|
|
761
|
+
.w-3\/4 {
|
|
762
|
+
width: calc(3/4 * 100%);
|
|
763
|
+
}
|
|
726
764
|
.w-4 {
|
|
727
765
|
width: calc(var(--spacing) * 4);
|
|
728
766
|
}
|
|
@@ -759,6 +797,12 @@
|
|
|
759
797
|
.w-20 {
|
|
760
798
|
width: calc(var(--spacing) * 20);
|
|
761
799
|
}
|
|
800
|
+
.w-24 {
|
|
801
|
+
width: calc(var(--spacing) * 24);
|
|
802
|
+
}
|
|
803
|
+
.w-28 {
|
|
804
|
+
width: calc(var(--spacing) * 28);
|
|
805
|
+
}
|
|
762
806
|
.w-32 {
|
|
763
807
|
width: calc(var(--spacing) * 32);
|
|
764
808
|
}
|
|
@@ -780,6 +824,12 @@
|
|
|
780
824
|
.w-64 {
|
|
781
825
|
width: calc(var(--spacing) * 64);
|
|
782
826
|
}
|
|
827
|
+
.w-80 {
|
|
828
|
+
width: calc(var(--spacing) * 80);
|
|
829
|
+
}
|
|
830
|
+
.w-96 {
|
|
831
|
+
width: calc(var(--spacing) * 96);
|
|
832
|
+
}
|
|
783
833
|
.w-\[52px\] {
|
|
784
834
|
width: 52px;
|
|
785
835
|
}
|
|
@@ -795,9 +845,6 @@
|
|
|
795
845
|
.max-w-40 {
|
|
796
846
|
max-width: calc(var(--spacing) * 40);
|
|
797
847
|
}
|
|
798
|
-
.max-w-48 {
|
|
799
|
-
max-width: calc(var(--spacing) * 48);
|
|
800
|
-
}
|
|
801
848
|
.max-w-\[17ch\] {
|
|
802
849
|
max-width: 17ch;
|
|
803
850
|
}
|
|
@@ -900,6 +947,9 @@
|
|
|
900
947
|
.animate-in {
|
|
901
948
|
animation: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);
|
|
902
949
|
}
|
|
950
|
+
.animate-pulse {
|
|
951
|
+
animation: var(--animate-pulse);
|
|
952
|
+
}
|
|
903
953
|
.cursor-default {
|
|
904
954
|
cursor: default;
|
|
905
955
|
}
|
|
@@ -966,6 +1016,9 @@
|
|
|
966
1016
|
.justify-center {
|
|
967
1017
|
justify-content: center;
|
|
968
1018
|
}
|
|
1019
|
+
.justify-start {
|
|
1020
|
+
justify-content: flex-start;
|
|
1021
|
+
}
|
|
969
1022
|
.\!gap-1 {
|
|
970
1023
|
gap: calc(var(--spacing) * 1) !important;
|
|
971
1024
|
}
|
|
@@ -1030,6 +1083,13 @@
|
|
|
1030
1083
|
margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
|
|
1031
1084
|
}
|
|
1032
1085
|
}
|
|
1086
|
+
.space-y-8 {
|
|
1087
|
+
:where(& > :not(:last-child)) {
|
|
1088
|
+
--tw-space-y-reverse: 0;
|
|
1089
|
+
margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
|
|
1090
|
+
margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
|
|
1091
|
+
}
|
|
1092
|
+
}
|
|
1033
1093
|
.-space-x-2 {
|
|
1034
1094
|
:where(& > :not(:last-child)) {
|
|
1035
1095
|
--tw-space-x-reverse: 0;
|
|
@@ -1132,6 +1192,10 @@
|
|
|
1132
1192
|
.rounded-xs {
|
|
1133
1193
|
border-radius: var(--radius-xs);
|
|
1134
1194
|
}
|
|
1195
|
+
.rounded-t-md {
|
|
1196
|
+
border-top-left-radius: var(--radius-md);
|
|
1197
|
+
border-top-right-radius: var(--radius-md);
|
|
1198
|
+
}
|
|
1135
1199
|
.\!border {
|
|
1136
1200
|
border-style: var(--tw-border-style) !important;
|
|
1137
1201
|
border-width: 1px !important;
|
|
@@ -1857,6 +1921,12 @@
|
|
|
1857
1921
|
.\!text-black {
|
|
1858
1922
|
color: #030404 !important;
|
|
1859
1923
|
}
|
|
1924
|
+
.\!text-gray-50 {
|
|
1925
|
+
color: #fafafa !important;
|
|
1926
|
+
}
|
|
1927
|
+
.\!text-gray-950 {
|
|
1928
|
+
color: #18191A !important;
|
|
1929
|
+
}
|
|
1860
1930
|
.\!text-primary-foreground {
|
|
1861
1931
|
color: var(--primary-foreground) !important;
|
|
1862
1932
|
}
|
|
@@ -2169,7 +2239,7 @@
|
|
|
2169
2239
|
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
|
|
2170
2240
|
}
|
|
2171
2241
|
.transition {
|
|
2172
|
-
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display,
|
|
2242
|
+
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
|
|
2173
2243
|
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
2174
2244
|
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
2175
2245
|
}
|
|
@@ -3488,6 +3558,12 @@
|
|
|
3488
3558
|
background-color: #fffdf5;
|
|
3489
3559
|
}
|
|
3490
3560
|
}
|
|
3561
|
+
.focus-visible\:ring-2 {
|
|
3562
|
+
&:focus-visible {
|
|
3563
|
+
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
|
|
3564
|
+
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
|
3565
|
+
}
|
|
3566
|
+
}
|
|
3491
3567
|
.focus-visible\:ring-4 {
|
|
3492
3568
|
&:focus-visible {
|
|
3493
3569
|
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
|
|
@@ -3530,6 +3606,11 @@
|
|
|
3530
3606
|
--tw-ring-color: #e0061b;
|
|
3531
3607
|
}
|
|
3532
3608
|
}
|
|
3609
|
+
.focus-visible\:ring-ring {
|
|
3610
|
+
&:focus-visible {
|
|
3611
|
+
--tw-ring-color: var(--ring);
|
|
3612
|
+
}
|
|
3613
|
+
}
|
|
3533
3614
|
.focus-visible\:ring-ring\/50 {
|
|
3534
3615
|
&:focus-visible {
|
|
3535
3616
|
--tw-ring-color: var(--ring);
|
|
@@ -3543,6 +3624,12 @@
|
|
|
3543
3624
|
--tw-ring-color: #ffd333;
|
|
3544
3625
|
}
|
|
3545
3626
|
}
|
|
3627
|
+
.focus-visible\:ring-offset-2 {
|
|
3628
|
+
&:focus-visible {
|
|
3629
|
+
--tw-ring-offset-width: 2px;
|
|
3630
|
+
--tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
|
|
3631
|
+
}
|
|
3632
|
+
}
|
|
3546
3633
|
.focus-visible\:outline-hidden {
|
|
3547
3634
|
&:focus-visible {
|
|
3548
3635
|
--tw-outline-style: none;
|
|
@@ -3915,6 +4002,16 @@
|
|
|
3915
4002
|
background-color: #276ab3;
|
|
3916
4003
|
}
|
|
3917
4004
|
}
|
|
4005
|
+
.data-\[state\=active\]\:bg-gray-950 {
|
|
4006
|
+
&[data-state="active"] {
|
|
4007
|
+
background-color: #18191A;
|
|
4008
|
+
}
|
|
4009
|
+
}
|
|
4010
|
+
.data-\[state\=active\]\:\!text-gray-50 {
|
|
4011
|
+
&[data-state="active"] {
|
|
4012
|
+
color: #fafafa !important;
|
|
4013
|
+
}
|
|
4014
|
+
}
|
|
3918
4015
|
.data-\[state\=active\]\:text-blue-50 {
|
|
3919
4016
|
&[data-state="active"] {
|
|
3920
4017
|
color: #fbfcfe;
|
|
@@ -4059,6 +4156,11 @@
|
|
|
4059
4156
|
width: 100%;
|
|
4060
4157
|
}
|
|
4061
4158
|
}
|
|
4159
|
+
.max-sm\:flex-col {
|
|
4160
|
+
@media (width < 40rem) {
|
|
4161
|
+
flex-direction: column;
|
|
4162
|
+
}
|
|
4163
|
+
}
|
|
4062
4164
|
.sm\:col-span-2 {
|
|
4063
4165
|
@media (width >= 40rem) {
|
|
4064
4166
|
grid-column: span 2 / span 2;
|
|
@@ -4074,6 +4176,11 @@
|
|
|
4074
4176
|
max-height: 320px;
|
|
4075
4177
|
}
|
|
4076
4178
|
}
|
|
4179
|
+
.sm\:max-w-48 {
|
|
4180
|
+
@media (width >= 40rem) {
|
|
4181
|
+
max-width: calc(var(--spacing) * 48);
|
|
4182
|
+
}
|
|
4183
|
+
}
|
|
4077
4184
|
.sm\:max-w-lg {
|
|
4078
4185
|
@media (width >= 40rem) {
|
|
4079
4186
|
max-width: var(--container-lg);
|
|
@@ -4913,6 +5020,11 @@
|
|
|
4913
5020
|
syntax: "*";
|
|
4914
5021
|
inherits: false;
|
|
4915
5022
|
}
|
|
5023
|
+
@keyframes pulse {
|
|
5024
|
+
50% {
|
|
5025
|
+
opacity: 0.5;
|
|
5026
|
+
}
|
|
5027
|
+
}
|
|
4916
5028
|
@keyframes enter {
|
|
4917
5029
|
from {
|
|
4918
5030
|
opacity: var(--tw-enter-opacity,1);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "linkedunion-design-kit",
|
|
3
|
-
"version": "1.9.6-beta.
|
|
3
|
+
"version": "1.9.6-beta.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"@radix-ui/react-slider": "^1.3.5",
|
|
54
54
|
"@radix-ui/react-slot": "^1.2.3",
|
|
55
55
|
"@radix-ui/react-switch": "^1.1.4",
|
|
56
|
-
"@radix-ui/react-tabs": "^1.1.
|
|
56
|
+
"@radix-ui/react-tabs": "^1.1.13",
|
|
57
57
|
"@radix-ui/react-tooltip": "^1.2.3",
|
|
58
58
|
"@storybook/testing-library": "^0.2.2",
|
|
59
59
|
"@tailwindcss/cli": "^4.1.3",
|
package/dist/app/layout.jsx
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Inter } from "next/font/google";
|
|
2
|
-
import "@/styles/globals.css";
|
|
3
|
-
var inter = Inter({ subsets: ["latin"] });
|
|
4
|
-
export var metadata = {
|
|
5
|
-
title: "Create Next App",
|
|
6
|
-
description: "Generated by create next app",
|
|
7
|
-
};
|
|
8
|
-
export default function RootLayout(_a) {
|
|
9
|
-
var children = _a.children;
|
|
10
|
-
return (<html lang="en">
|
|
11
|
-
<body className={inter.className}>{children}</body>
|
|
12
|
-
</html>);
|
|
13
|
-
}
|
package/dist/app/page.jsx
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { Accordion, AccordionContent, AccordionItem, AccordionTrigger, } from "../../components/Accordion/accordion";
|
|
2
|
-
import ColorPicker from "../ColorPicker/ColorPicker";
|
|
3
|
-
export default {
|
|
4
|
-
title: "Components/Accordion",
|
|
5
|
-
component: Accordion,
|
|
6
|
-
tags: ["autodocs"],
|
|
7
|
-
};
|
|
8
|
-
var Template = function (args) { return (<Accordion type="single" collapsible defaultValue="menus" {...args}></Accordion>); };
|
|
9
|
-
export var _Accordion = Template.bind({});
|
|
10
|
-
_Accordion.args = {
|
|
11
|
-
children: (<>
|
|
12
|
-
<AccordionItem value="menus">
|
|
13
|
-
<AccordionTrigger>Menus</AccordionTrigger>
|
|
14
|
-
<AccordionContent>
|
|
15
|
-
<ColorPicker value="#000000" onChange={function () { return console.log("color"); }}/>
|
|
16
|
-
</AccordionContent>
|
|
17
|
-
</AccordionItem>
|
|
18
|
-
<AccordionItem value="second">
|
|
19
|
-
<AccordionTrigger>Menus</AccordionTrigger>
|
|
20
|
-
<AccordionContent>
|
|
21
|
-
<ColorPicker value="#000000" onChange={function () { return console.log("color"); }}/>
|
|
22
|
-
</AccordionContent>
|
|
23
|
-
</AccordionItem>
|
|
24
|
-
</>),
|
|
25
|
-
};
|
|
26
|
-
_Accordion.argTypes = {
|
|
27
|
-
children: {
|
|
28
|
-
description: "Pass `AccordionItem` components as children. Each item includes an `AccordionTrigger` (the clickable label) and `AccordionContent` (collapsible body). You can customize both with any valid React nodes \n\nFor more details and usage examples, refer to the [ShadCN Accordion documentation](https://ui.shadcn.com/docs/components/accordion).",
|
|
29
|
-
table: {
|
|
30
|
-
type: { summary: "React.ReactNode" },
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
};
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
-
var t = {};
|
|
3
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
-
t[p] = s[p];
|
|
5
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
-
t[p[i]] = s[p[i]];
|
|
9
|
-
}
|
|
10
|
-
return t;
|
|
11
|
-
};
|
|
12
|
-
import * as React from "react";
|
|
13
|
-
import * as AccordionPrimitive from "@radix-ui/react-accordion";
|
|
14
|
-
import { cn } from "../../lib/utils";
|
|
15
|
-
import LUIcon from "../Icons/LUIcon";
|
|
16
|
-
function Accordion(_a) {
|
|
17
|
-
var props = __rest(_a, []);
|
|
18
|
-
return <AccordionPrimitive.Root data-slot="accordion" {...props}/>;
|
|
19
|
-
}
|
|
20
|
-
function AccordionItem(_a) {
|
|
21
|
-
var className = _a.className, props = __rest(_a, ["className"]);
|
|
22
|
-
return (<AccordionPrimitive.Item data-slot="accordion-item" className={cn("!py-5 !border-b last:!border-b !border-gray-100", className)} {...props}/>);
|
|
23
|
-
}
|
|
24
|
-
function AccordionTrigger(_a) {
|
|
25
|
-
var className = _a.className, children = _a.children, props = __rest(_a, ["className", "children"]);
|
|
26
|
-
var ref = React.useRef(null);
|
|
27
|
-
var _b = React.useState(false), isOpen = _b[0], setIsOpen = _b[1];
|
|
28
|
-
React.useEffect(function () {
|
|
29
|
-
var updateOpenState = function () {
|
|
30
|
-
if (ref.current) {
|
|
31
|
-
var state = ref.current.getAttribute("data-state");
|
|
32
|
-
setIsOpen(state === "open");
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
updateOpenState();
|
|
36
|
-
// Create a mutation observer to watch for attribute changes
|
|
37
|
-
var observer = new MutationObserver(updateOpenState);
|
|
38
|
-
if (ref.current) {
|
|
39
|
-
observer.observe(ref.current, {
|
|
40
|
-
attributes: true,
|
|
41
|
-
attributeFilter: ["data-state"],
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
return function () { return observer.disconnect(); };
|
|
45
|
-
}, []);
|
|
46
|
-
return (<AccordionPrimitive.Header className="flex">
|
|
47
|
-
<AccordionPrimitive.Trigger ref={ref} data-slot="accordion-trigger" className={cn("flex items-center gap-2 cursor-pointer !text-sm !font-normal !leading-normal grow m-0", className)} {...props}>
|
|
48
|
-
<LUIcon color="light-gray" icon={isOpen ? "minus" : "plus"} size="md" className="pointer-events-none shrink-0"/>
|
|
49
|
-
{children}
|
|
50
|
-
</AccordionPrimitive.Trigger>
|
|
51
|
-
</AccordionPrimitive.Header>);
|
|
52
|
-
}
|
|
53
|
-
function AccordionContent(_a) {
|
|
54
|
-
var className = _a.className, children = _a.children, props = __rest(_a, ["className", "children"]);
|
|
55
|
-
return (<AccordionPrimitive.Content data-slot="accordion-content" className="data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down !overflow-visible !text-sm !py-2" {...props}>
|
|
56
|
-
<div className={cn(className)}>{children}</div>
|
|
57
|
-
</AccordionPrimitive.Content>);
|
|
58
|
-
}
|
|
59
|
-
export { Accordion, AccordionItem, AccordionTrigger, AccordionContent };
|
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
-
var t = {};
|
|
3
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
-
t[p] = s[p];
|
|
5
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
-
t[p[i]] = s[p[i]];
|
|
9
|
-
}
|
|
10
|
-
return t;
|
|
11
|
-
};
|
|
12
|
-
import * as React from "react";
|
|
13
|
-
import { createContext, useContext, Children, isValidElement, cloneElement, } from "react";
|
|
14
|
-
import { cva } from "class-variance-authority";
|
|
15
|
-
import { cn } from "../../../lib/utils";
|
|
16
|
-
import LUIcon from "../../Icons/LUIcon";
|
|
17
|
-
import { Button } from "../../Button/Button/Button";
|
|
18
|
-
var alertVariants = cva("grid w-full gap-4 rounded-lg border-l-4 p-4", {
|
|
19
|
-
variants: {
|
|
20
|
-
size: {
|
|
21
|
-
lg: "[&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-size)]:size-9 gap-4 [&_h2[data-slot='alert-dialog-title']]:text-2xl [&_h2[data-slot='alert-dialog-title']]:font-medium [&_p[data-slot='alert-dialog-description']]:text-lg [&_p[data-slot='alert-dialog-description']]:font-normal",
|
|
22
|
-
md: "[&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-size)]:size-8 gap-3 [&_h2[data-slot='alert-dialog-title']]:text-xl [&_h2[data-slot='alert-dialog-title']]:font-medium [&_p[data-slot='alert-dialog-description']]:text-base [&_p[data-slot='alert-dialog-description']]:font-normal",
|
|
23
|
-
sm: "[&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-size)]:size-7 gap-2 [&_h2[data-slot='alert-dialog-title']]:text-lg [&_h2[data-slot='alert-dialog-title']]:font-medium [&_p[data-slot='alert-dialog-description']]:text-sm [&_p[data-slot='alert-dialog-description']]:font-normal",
|
|
24
|
-
},
|
|
25
|
-
shadow: {
|
|
26
|
-
none: "",
|
|
27
|
-
lg: "shadow-lg",
|
|
28
|
-
},
|
|
29
|
-
color: {
|
|
30
|
-
blue: "bg-gray-50 text-blue-900 border-blue-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-blue-600 [&_h2[data-slot='alert-dialog-title']]:text-blue-600",
|
|
31
|
-
red: "bg-gray-50 text-red-900 border-red-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-red-600 [&_h2[data-slot='alert-dialog-title']]:text-red-600",
|
|
32
|
-
indigo: "bg-gray-50 text-indigo-900 border-indigo-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-indigo-600 [&_h2[data-slot='alert-dialog-title']]:text-indigo-600",
|
|
33
|
-
yellow: "bg-gray-50 text-yellow-900 border-yellow-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-yellow-600 [&_h2[data-slot='alert-dialog-title']]:text-yellow-600",
|
|
34
|
-
green: "bg-gray-50 text-green-900 border-green-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-green-600 [&_h2[data-slot='alert-dialog-title']]:text-green-600",
|
|
35
|
-
gray: "bg-gray-50 text-gray-900 border-gray-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-gray-600 [&_h2[data-slot='alert-dialog-title']]:text-gray-600",
|
|
36
|
-
},
|
|
37
|
-
variant: {
|
|
38
|
-
outline: "",
|
|
39
|
-
fill: "",
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
defaultVariants: {
|
|
43
|
-
size: "md",
|
|
44
|
-
shadow: "none",
|
|
45
|
-
color: "blue",
|
|
46
|
-
variant: "outline",
|
|
47
|
-
},
|
|
48
|
-
compoundVariants: [
|
|
49
|
-
{
|
|
50
|
-
color: "blue",
|
|
51
|
-
variant: "fill",
|
|
52
|
-
class: "bg-blue-100 text-blue-900 border-blue-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-blue-600 [&_h2[data-slot='alert-dialog-title']]:text-blue-600",
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
color: "red",
|
|
56
|
-
variant: "fill",
|
|
57
|
-
class: "bg-red-100 text-red-900 border-red-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-red-600 [&_h2[data-slot='alert-dialog-title']]:text-red-600",
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
color: "indigo",
|
|
61
|
-
variant: "fill",
|
|
62
|
-
class: "bg-indigo-100 text-indigo-900 border-indigo-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-indigo-600 [&_h2[data-slot='alert-dialog-title']]:text-indigo-600",
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
color: "yellow",
|
|
66
|
-
variant: "fill",
|
|
67
|
-
class: "bg-yellow-100 text-yellow-900 border-yellow-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-yellow-600 [&_h2[data-slot='alert-dialog-title']]:text-yellow-600",
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
color: "green",
|
|
71
|
-
variant: "fill",
|
|
72
|
-
class: "bg-green-100 text-green-900 border-green-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-green-600 [&_h2[data-slot='alert-dialog-title']]:text-green-600",
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
color: "gray",
|
|
76
|
-
variant: "fill",
|
|
77
|
-
class: "bg-gray-100 text-gray-900 border-gray-600 [&_[data-slot='alert-dialog-header']_svg:not(.lu-icon-custom-color)]:text-gray-600 [&_h2[data-slot='alert-dialog-title']]:text-gray-600",
|
|
78
|
-
},
|
|
79
|
-
],
|
|
80
|
-
});
|
|
81
|
-
// Create context for Alert color
|
|
82
|
-
var AlertContext = createContext({});
|
|
83
|
-
var useAlertContext = function () { return useContext(AlertContext); };
|
|
84
|
-
export function Alert(_a) {
|
|
85
|
-
var className = _a.className, size = _a.size, shadow = _a.shadow, color = _a.color, variant = _a.variant, props = __rest(_a, ["className", "size", "shadow", "color", "variant"]);
|
|
86
|
-
return (<AlertContext.Provider value={{ color: color || undefined }}>
|
|
87
|
-
<div data-slot="inline-alert" className={cn(alertVariants({
|
|
88
|
-
size: size,
|
|
89
|
-
shadow: shadow,
|
|
90
|
-
color: color,
|
|
91
|
-
variant: variant,
|
|
92
|
-
}), className)} {...props}/>
|
|
93
|
-
</AlertContext.Provider>);
|
|
94
|
-
}
|
|
95
|
-
export function AlertHeader(_a) {
|
|
96
|
-
var className = _a.className, children = _a.children, props = __rest(_a, ["className", "children"]);
|
|
97
|
-
// Check if children contains LUIcon
|
|
98
|
-
var childrenArray = Children.toArray(children);
|
|
99
|
-
var hasIcon = childrenArray.some(function (child) { return isValidElement(child) && child.type === LUIcon; });
|
|
100
|
-
if (hasIcon) {
|
|
101
|
-
var iconWithClass_1 = null;
|
|
102
|
-
var otherChildren_1 = [];
|
|
103
|
-
childrenArray.forEach(function (child) {
|
|
104
|
-
if (isValidElement(child) && child.type === LUIcon) {
|
|
105
|
-
var iconElement = child;
|
|
106
|
-
// If LUIcon has a size prop, add .lu-icon-custom-size to className
|
|
107
|
-
var hasSizeProp = !!iconElement.props.size;
|
|
108
|
-
// If LUIcon has a color prop, add .lu-icon-custom-color to className
|
|
109
|
-
var hasColorProp = !!iconElement.props.color;
|
|
110
|
-
iconWithClass_1 = cloneElement(iconElement, {
|
|
111
|
-
className: cn(iconElement.props.className, hasSizeProp && "lu-icon-custom-size", hasColorProp && "lu-icon-custom-color"),
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
115
|
-
otherChildren_1.push(child);
|
|
116
|
-
}
|
|
117
|
-
});
|
|
118
|
-
return (<div data-slot="alert-dialog-header" className={cn("flex flex-row gap-3 items-start text-left", className)} {...props}>
|
|
119
|
-
{iconWithClass_1}
|
|
120
|
-
<div>{otherChildren_1}</div>
|
|
121
|
-
</div>);
|
|
122
|
-
}
|
|
123
|
-
return (<div data-slot="alert-dialog-header" className={cn("flex flex-col gap-2 text-center sm:text-left", className)} {...props}>
|
|
124
|
-
{children}
|
|
125
|
-
</div>);
|
|
126
|
-
}
|
|
127
|
-
export function AlertTitle(_a) {
|
|
128
|
-
var className = _a.className, props = __rest(_a, ["className"]);
|
|
129
|
-
return (<h2 data-slot="alert-dialog-title" className={cn("text-lg font-semibold", className)} {...props}/>);
|
|
130
|
-
}
|
|
131
|
-
export function AlertDescription(_a) {
|
|
132
|
-
var className = _a.className, props = __rest(_a, ["className"]);
|
|
133
|
-
return (<p data-slot="alert-dialog-description" className={cn("text-black text-sm", className)} {...props}/>);
|
|
134
|
-
}
|
|
135
|
-
export function AlertFooter(_a) {
|
|
136
|
-
var className = _a.className, props = __rest(_a, ["className"]);
|
|
137
|
-
return (<div data-slot="alert-dialog-footer" className={cn("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", className)} {...props}/>);
|
|
138
|
-
}
|
|
139
|
-
// Also create a simple button component that matches the style of AlertDialogAction
|
|
140
|
-
export var AlertAction = function (_a) {
|
|
141
|
-
var className = _a.className, colorProp = _a.color, props = __rest(_a, ["className", "color"]);
|
|
142
|
-
var contextColor = useAlertContext().color;
|
|
143
|
-
var color = colorProp || contextColor || undefined;
|
|
144
|
-
return (<Button variant="link" color={color} data-slot="alert-dialog-action" className={cn("h-auto p-0", className)} {...props}/>);
|
|
145
|
-
};
|
|
146
|
-
// And a cancel button that matches AlertDialogCancel
|
|
147
|
-
export var AlertCancel = function (_a) {
|
|
148
|
-
var className = _a.className, colorProp = _a.color, props = __rest(_a, ["className", "color"]);
|
|
149
|
-
var contextColor = useAlertContext().color;
|
|
150
|
-
var color = colorProp || contextColor || undefined;
|
|
151
|
-
return (<Button variant="link" color={color} data-slot="alert-dialog-cancel" className={cn("h-auto p-0", className)} {...props}/>);
|
|
152
|
-
};
|