@yuva-devlab/ui 1.4.4 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +117 -33
- package/dist/common.css +0 -40
- package/dist/components/accordion/accordion.mdx +18 -0
- package/dist/components/alert/alert.css +2 -2
- package/dist/components/alert-dialog/alert-dialog.mdx +18 -0
- package/dist/components/aspect-ratio/aspect-ratio.mdx +22 -0
- package/dist/components/badge/badge.css +31 -27
- package/dist/components/badge/badge.mdx +6 -4
- package/dist/components/breadcrumb/breadcrumb.mdx +18 -0
- package/dist/components/calendar/calendar-nav.css +111 -0
- package/dist/components/calendar/calendar.css +27 -82
- package/dist/components/calendar/calendar.mdx +18 -0
- package/dist/components/card/card.css +4 -4
- package/dist/components/carousel/carousel.css +4 -4
- package/dist/components/carousel/carousel.mdx +18 -0
- package/dist/components/chain-of-thought/chain-of-thought.css +72 -0
- package/dist/components/chain-of-thought/chain-of-thought.mdx +18 -0
- package/dist/components/chart/chart.css +86 -0
- package/dist/components/chart/chart.mdx +18 -0
- package/dist/components/checkbox/checkbox.css +11 -0
- package/dist/components/checkpoint/checkpoint.css +54 -0
- package/dist/components/checkpoint/checkpoint.mdx +18 -0
- package/dist/components/code-block/code-block.css +84 -0
- package/dist/components/code-block/code-block.mdx +26 -0
- package/dist/components/collapsible/collapsible.mdx +18 -0
- package/dist/components/command/command.css +3 -3
- package/dist/components/command/command.mdx +18 -0
- package/dist/components/confirm-dialog/confirm-dialog.mdx +18 -0
- package/dist/components/confirmation/confirmation.css +75 -0
- package/dist/components/confirmation/confirmation.mdx +22 -0
- package/dist/components/context/context.css +80 -0
- package/dist/components/context/context.mdx +18 -0
- package/dist/components/context-menu/context-menu.mdx +18 -0
- package/dist/components/copy-button/copy-button.mdx +18 -0
- package/dist/components/data-table/data-table.css +71 -0
- package/dist/components/data-table/data-table.mdx +22 -0
- package/dist/components/date-picker/date-picker.css +2 -2
- package/dist/components/date-picker/date-picker.mdx +18 -0
- package/dist/components/dialog/dialog.css +6 -6
- package/dist/components/drawer/drawer.mdx +18 -0
- package/dist/components/dropdown-menu/dropdown-menu.css +18 -0
- package/dist/components/dropdown-menu/dropdown-menu.mdx +18 -0
- package/dist/components/empty-state/empty-state.css +67 -0
- package/dist/components/empty-state/empty-state.mdx +18 -0
- package/dist/components/file-tree/file-tree.css +58 -0
- package/dist/components/file-tree/file-tree.mdx +18 -0
- package/dist/components/form/form.mdx +18 -0
- package/dist/components/hover-card/hover-card.mdx +18 -0
- package/dist/components/input-number/input-number.css +95 -0
- package/dist/components/input-number/input-number.mdx +34 -0
- package/dist/components/input-otp/input-otp.mdx +18 -0
- package/dist/components/kbd/kbd.css +78 -0
- package/dist/components/kbd/kbd.mdx +30 -0
- package/dist/components/label/label.mdx +18 -0
- package/dist/components/layout/layout.css +158 -0
- package/dist/components/layout/layout.mdx +30 -0
- package/dist/components/loading-state/loading-state.css +11 -0
- package/dist/components/loading-state/loading-state.mdx +18 -0
- package/dist/components/menubar/menubar.css +4 -4
- package/dist/components/menubar/menubar.mdx +18 -0
- package/dist/components/message/message.css +89 -0
- package/dist/components/message/message.mdx +14 -0
- package/dist/components/metric-card/metric-card.mdx +18 -0
- package/dist/components/model-selector/model-selector.css +138 -0
- package/dist/components/model-selector/model-selector.mdx +26 -0
- package/dist/components/multi-select/multi-select.css +212 -0
- package/dist/components/multi-select/multi-select.mdx +30 -0
- package/dist/components/navigation-menu/navigation-menu.css +2 -2
- package/dist/components/navigation-menu/navigation-menu.mdx +18 -0
- package/dist/components/pagination/pagination.css +8 -2
- package/dist/components/pagination/pagination.mdx +18 -0
- package/dist/components/panel/panel.mdx +18 -0
- package/dist/components/password-input/password-input.css +21 -0
- package/dist/components/password-input/password-input.mdx +30 -0
- package/dist/components/plan/plan.css +106 -0
- package/dist/components/plan/plan.mdx +22 -0
- package/dist/components/popover/popover.css +2 -7
- package/dist/components/popover/popover.mdx +18 -0
- package/dist/components/prompt-input/prompt-input.css +140 -0
- package/dist/components/prompt-input/prompt-input.mdx +22 -0
- package/dist/components/queue/queue.css +76 -0
- package/dist/components/queue/queue.mdx +18 -0
- package/dist/components/radio-group/radio-group.mdx +18 -0
- package/dist/components/resizable/resizable.mdx +18 -0
- package/dist/components/scroll-area/scroll-area.mdx +18 -0
- package/dist/components/search-input/search-input.css +21 -0
- package/dist/components/search-input/search-input.mdx +30 -0
- package/dist/components/searchable-select/searchable-select.css +26 -3
- package/dist/components/searchable-select/searchable-select.mdx +18 -0
- package/dist/components/secret-reveal-card/secret-reveal-card.css +6 -0
- package/dist/components/secret-reveal-card/secret-reveal-card.mdx +18 -0
- package/dist/components/select/select.css +17 -2
- package/dist/components/separator/separator.mdx +18 -0
- package/dist/components/sheet/sheet.css +5 -1
- package/dist/components/sheet/sheet.mdx +18 -0
- package/dist/components/sidebar/sidebar-menu.css +183 -0
- package/dist/components/sidebar/sidebar-submenu.css +69 -0
- package/dist/components/sidebar/sidebar.css +171 -4
- package/dist/components/sidebar/sidebar.mdx +18 -0
- package/dist/components/slider/slider.mdx +18 -0
- package/dist/components/sonner/sonner.css +68 -17
- package/dist/components/sonner/sonner.mdx +5 -3
- package/dist/components/sources/sources.css +105 -0
- package/dist/components/sources/sources.mdx +18 -0
- package/dist/components/stack-trace/stack-trace.css +105 -0
- package/dist/components/stack-trace/stack-trace.mdx +18 -0
- package/dist/components/status-chip/status-chip.mdx +18 -0
- package/dist/components/subagent/subagent.css +70 -0
- package/dist/components/subagent/subagent.mdx +18 -0
- package/dist/components/suggestion/suggestion.css +52 -0
- package/dist/components/suggestion/suggestion.mdx +14 -0
- package/dist/components/table/table.css +5 -3
- package/dist/components/tabs/tabs.css +3 -3
- package/dist/components/terminal/terminal.css +60 -0
- package/dist/components/terminal/terminal.mdx +26 -0
- package/dist/components/test-results/test-results.css +108 -0
- package/dist/components/test-results/test-results.mdx +18 -0
- package/dist/components/textarea/textarea.css +3 -3
- package/dist/components/textarea/textarea.mdx +18 -0
- package/dist/components/toggle/toggle.css +9 -9
- package/dist/components/toggle/toggle.mdx +18 -0
- package/dist/components/toggle-group/toggle-group.mdx +18 -0
- package/dist/components/tool-call/tool-call.css +111 -0
- package/dist/components/tool-call/tool-call.mdx +22 -0
- package/dist/components/tooltip/tooltip.mdx +18 -0
- package/dist/components/trace/trace.css +100 -0
- package/dist/components/trace/trace.mdx +18 -0
- package/dist/components/typography/heading.mdx +36 -0
- package/dist/components/typography/text.mdx +34 -0
- package/dist/components/typography/typography.css +98 -0
- package/dist/components.css +4454 -1179
- package/dist/index.cjs +4094 -1125
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1742 -248
- package/dist/index.d.ts +1742 -248
- package/dist/index.js +4088 -1156
- package/dist/index.js.map +1 -1
- package/dist/preset.css +1 -4
- package/dist/styles/common.css +0 -40
- package/dist/styles/components.css +4454 -1179
- package/dist/styles/preset.css +1 -4
- package/dist/styles/styles.css +7 -4
- package/dist/styles/utilities.css +137 -0
- package/dist/styles.css +7 -4
- package/dist/utilities.css +137 -0
- package/package.json +5 -6
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
.dl-popover {
|
|
2
2
|
z-index: 50;
|
|
3
3
|
width: 18rem;
|
|
4
|
-
border-radius: var(--radius
|
|
4
|
+
border-radius: var(--radius, 0.5rem);
|
|
5
5
|
border: 1px solid var(--border);
|
|
6
6
|
background-color: var(--popover);
|
|
7
7
|
color: var(--popover-foreground);
|
|
8
|
-
padding: 1rem;
|
|
8
|
+
padding: var(--space-4, 1rem);
|
|
9
9
|
box-shadow: 0 4px 24px rgb(0 0 0/0.12);
|
|
10
10
|
outline: none;
|
|
11
11
|
}
|
|
@@ -15,8 +15,3 @@
|
|
|
15
15
|
.dl-popover[data-state="closed"] {
|
|
16
16
|
animation: dl-fade-out 150ms ease;
|
|
17
17
|
}
|
|
18
|
-
|
|
19
|
-
.dl-popover.dl-date-picker-content {
|
|
20
|
-
width: auto;
|
|
21
|
-
padding: 0;
|
|
22
|
-
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Meta, Title, Description, Canvas, Controls } from "@storybook/blocks";
|
|
2
|
+
import * as PopoverStories from "./popover.stories";
|
|
3
|
+
|
|
4
|
+
<Meta of={PopoverStories} />
|
|
5
|
+
|
|
6
|
+
<Title />
|
|
7
|
+
|
|
8
|
+
# Popover
|
|
9
|
+
|
|
10
|
+
Floating contextual overlay anchored to a trigger element with focus management.
|
|
11
|
+
|
|
12
|
+
## Default
|
|
13
|
+
|
|
14
|
+
<Canvas of={PopoverStories.Default} />
|
|
15
|
+
|
|
16
|
+
## Component Properties
|
|
17
|
+
|
|
18
|
+
<Controls />
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
.dl-prompt-input {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
width: 100%;
|
|
5
|
+
border-radius: var(--radius-lg, 0.5rem);
|
|
6
|
+
border: 1px solid var(--border);
|
|
7
|
+
background-color: var(--card, var(--background));
|
|
8
|
+
box-shadow: 0 2px 8px rgb(0 0 0 / 0.05);
|
|
9
|
+
transition:
|
|
10
|
+
border-color 0.15s ease,
|
|
11
|
+
box-shadow 0.15s ease;
|
|
12
|
+
overflow: hidden;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.dl-prompt-input:focus-within {
|
|
16
|
+
border-color: var(--ring);
|
|
17
|
+
box-shadow: 0 0 0 1px var(--ring);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.dl-prompt-input--disabled {
|
|
21
|
+
opacity: 0.5;
|
|
22
|
+
cursor: not-allowed;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.dl-prompt-input__attachments {
|
|
26
|
+
display: flex;
|
|
27
|
+
flex-wrap: wrap;
|
|
28
|
+
gap: 0.375rem;
|
|
29
|
+
padding: 0.5rem 0.75rem 0;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.dl-prompt-input__chip {
|
|
33
|
+
display: inline-flex;
|
|
34
|
+
align-items: center;
|
|
35
|
+
gap: 0.375rem;
|
|
36
|
+
padding: 0.1875rem 0.5rem;
|
|
37
|
+
border-radius: var(--radius-sm, 0.25rem);
|
|
38
|
+
background-color: var(--secondary);
|
|
39
|
+
color: var(--secondary-foreground);
|
|
40
|
+
font-size: 0.75rem;
|
|
41
|
+
border: 1px solid var(--border);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.dl-prompt-input__chip-name {
|
|
45
|
+
max-width: 10rem;
|
|
46
|
+
overflow: hidden;
|
|
47
|
+
text-overflow: ellipsis;
|
|
48
|
+
white-space: nowrap;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.dl-prompt-input__chip-remove {
|
|
52
|
+
background: transparent;
|
|
53
|
+
border: none;
|
|
54
|
+
cursor: pointer;
|
|
55
|
+
padding: 0;
|
|
56
|
+
color: var(--muted-foreground);
|
|
57
|
+
display: inline-flex;
|
|
58
|
+
align-items: center;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.dl-prompt-input__chip-remove:hover {
|
|
62
|
+
color: var(--foreground);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.dl-prompt-input__textarea {
|
|
66
|
+
width: 100%;
|
|
67
|
+
min-height: 3.5rem;
|
|
68
|
+
max-height: 14rem;
|
|
69
|
+
padding: 0.75rem 0.875rem;
|
|
70
|
+
border: none;
|
|
71
|
+
background: transparent;
|
|
72
|
+
color: var(--foreground);
|
|
73
|
+
font-family: inherit;
|
|
74
|
+
font-size: 0.875rem;
|
|
75
|
+
line-height: 1.4;
|
|
76
|
+
resize: none;
|
|
77
|
+
outline: none;
|
|
78
|
+
box-sizing: border-box;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.dl-prompt-input__textarea::placeholder {
|
|
82
|
+
color: var(--muted-foreground);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.dl-prompt-input__toolbar {
|
|
86
|
+
display: flex;
|
|
87
|
+
align-items: center;
|
|
88
|
+
justify-content: space-between;
|
|
89
|
+
padding: 0.375rem 0.75rem 0.625rem;
|
|
90
|
+
gap: 0.5rem;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.dl-prompt-input__left-actions,
|
|
94
|
+
.dl-prompt-input__right-actions {
|
|
95
|
+
display: flex;
|
|
96
|
+
align-items: center;
|
|
97
|
+
gap: 0.375rem;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.dl-prompt-input__btn {
|
|
101
|
+
display: inline-flex;
|
|
102
|
+
align-items: center;
|
|
103
|
+
justify-content: center;
|
|
104
|
+
width: 1.875rem;
|
|
105
|
+
height: 1.875rem;
|
|
106
|
+
border-radius: 9999px;
|
|
107
|
+
border: 1px solid var(--border);
|
|
108
|
+
background-color: transparent;
|
|
109
|
+
color: var(--muted-foreground);
|
|
110
|
+
cursor: pointer;
|
|
111
|
+
transition: all 0.15s ease;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.dl-prompt-input__btn:hover:not(:disabled) {
|
|
115
|
+
background-color: var(--accent);
|
|
116
|
+
color: var(--foreground);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.dl-prompt-input__btn:disabled {
|
|
120
|
+
opacity: 0.4;
|
|
121
|
+
cursor: not-allowed;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.dl-prompt-input__btn--send {
|
|
125
|
+
background-color: var(--primary);
|
|
126
|
+
color: var(--primary-foreground);
|
|
127
|
+
border-color: var(--primary);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
.dl-prompt-input__btn--send:hover:not(:disabled) {
|
|
131
|
+
opacity: 0.9;
|
|
132
|
+
background-color: var(--primary);
|
|
133
|
+
color: var(--primary-foreground);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
.dl-prompt-input__btn--stop {
|
|
137
|
+
background-color: var(--destructive);
|
|
138
|
+
color: var(--destructive-foreground);
|
|
139
|
+
border-color: var(--destructive);
|
|
140
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Meta, Title, Description, Canvas } from "@storybook/blocks";
|
|
2
|
+
import * as PromptInputStories from "./prompt-input.stories";
|
|
3
|
+
|
|
4
|
+
<Meta of={PromptInputStories} />
|
|
5
|
+
|
|
6
|
+
<Title />
|
|
7
|
+
|
|
8
|
+
# Prompt Input
|
|
9
|
+
|
|
10
|
+
Comprehensive message composition control for conversational AI, with auto-resizing textarea, Enter submission, file attachments, model selectors, and stop generation controls.
|
|
11
|
+
|
|
12
|
+
## Default Input
|
|
13
|
+
|
|
14
|
+
<Canvas of={PromptInputStories.Default} />
|
|
15
|
+
|
|
16
|
+
## With Files and Model Tag
|
|
17
|
+
|
|
18
|
+
<Canvas of={PromptInputStories.WithAttachmentsAndModel} />
|
|
19
|
+
|
|
20
|
+
## Generation / Streaming State
|
|
21
|
+
|
|
22
|
+
<Canvas of={PromptInputStories.StreamingState} />
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
.dl-queue {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
width: 100%;
|
|
5
|
+
border-radius: var(--radius-md, 0.375rem);
|
|
6
|
+
border: 1px solid var(--border);
|
|
7
|
+
background-color: var(--card, var(--background));
|
|
8
|
+
overflow: hidden;
|
|
9
|
+
font-size: 0.8125rem;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.dl-queue__header {
|
|
13
|
+
display: flex;
|
|
14
|
+
align-items: center;
|
|
15
|
+
justify-content: space-between;
|
|
16
|
+
padding: 0.5rem 0.75rem;
|
|
17
|
+
background-color: var(--muted);
|
|
18
|
+
border-bottom: 1px solid var(--border);
|
|
19
|
+
font-weight: 600;
|
|
20
|
+
color: var(--foreground);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.dl-queue__list {
|
|
24
|
+
display: flex;
|
|
25
|
+
flex-direction: column;
|
|
26
|
+
divide-y: 1px solid var(--border);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.dl-queue-item {
|
|
30
|
+
display: flex;
|
|
31
|
+
align-items: center;
|
|
32
|
+
justify-content: space-between;
|
|
33
|
+
padding: 0.5rem 0.75rem;
|
|
34
|
+
gap: 0.5rem;
|
|
35
|
+
transition: background-color 0.12s ease;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.dl-queue-item:hover {
|
|
39
|
+
background-color: var(--accent);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.dl-queue-item__info {
|
|
43
|
+
display: flex;
|
|
44
|
+
align-items: center;
|
|
45
|
+
gap: 0.5rem;
|
|
46
|
+
min-width: 0;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.dl-queue-item__index {
|
|
50
|
+
display: inline-flex;
|
|
51
|
+
align-items: center;
|
|
52
|
+
justify-content: center;
|
|
53
|
+
width: 1.25rem;
|
|
54
|
+
height: 1.25rem;
|
|
55
|
+
border-radius: 9999px;
|
|
56
|
+
background-color: var(--muted);
|
|
57
|
+
font-size: 0.6875rem;
|
|
58
|
+
font-weight: 600;
|
|
59
|
+
color: var(--muted-foreground);
|
|
60
|
+
shrink: 0;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.dl-queue-item__title {
|
|
64
|
+
overflow: hidden;
|
|
65
|
+
text-overflow: ellipsis;
|
|
66
|
+
white-space: nowrap;
|
|
67
|
+
font-weight: 500;
|
|
68
|
+
color: var(--foreground);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.dl-queue-item__actions {
|
|
72
|
+
display: flex;
|
|
73
|
+
align-items: center;
|
|
74
|
+
gap: 0.5rem;
|
|
75
|
+
shrink: 0;
|
|
76
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Meta, Title, Description, Canvas, Controls } from "@storybook/blocks";
|
|
2
|
+
import * as QueueStories from "./queue.stories";
|
|
3
|
+
|
|
4
|
+
<Meta of={QueueStories} />
|
|
5
|
+
|
|
6
|
+
<Title />
|
|
7
|
+
|
|
8
|
+
# Queue
|
|
9
|
+
|
|
10
|
+
Agent task execution queue container tracking scheduled, running, and queued jobs with priority indicators.
|
|
11
|
+
|
|
12
|
+
## Default
|
|
13
|
+
|
|
14
|
+
<Canvas of={QueueStories.Default} />
|
|
15
|
+
|
|
16
|
+
## Component Properties
|
|
17
|
+
|
|
18
|
+
<Controls />
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Meta, Title, Description, Canvas, Controls } from "@storybook/blocks";
|
|
2
|
+
import * as RadioGroupStories from "./radio-group.stories";
|
|
3
|
+
|
|
4
|
+
<Meta of={RadioGroupStories} />
|
|
5
|
+
|
|
6
|
+
<Title />
|
|
7
|
+
|
|
8
|
+
# Radio Group
|
|
9
|
+
|
|
10
|
+
Set of checkable buttons—known as radio buttons—where no more than one button can be checked at a time.
|
|
11
|
+
|
|
12
|
+
## Default
|
|
13
|
+
|
|
14
|
+
<Canvas of={RadioGroupStories.Default} />
|
|
15
|
+
|
|
16
|
+
## Component Properties
|
|
17
|
+
|
|
18
|
+
<Controls />
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Meta, Title, Description, Canvas, Controls } from "@storybook/blocks";
|
|
2
|
+
import * as ResizableStories from "./resizable.stories";
|
|
3
|
+
|
|
4
|
+
<Meta of={ResizableStories} />
|
|
5
|
+
|
|
6
|
+
<Title />
|
|
7
|
+
|
|
8
|
+
# Resizable Panels
|
|
9
|
+
|
|
10
|
+
Accessible resizable panel layout groups supporting horizontal and vertical split ratios.
|
|
11
|
+
|
|
12
|
+
## Default
|
|
13
|
+
|
|
14
|
+
<Canvas of={ResizableStories.Default} />
|
|
15
|
+
|
|
16
|
+
## Component Properties
|
|
17
|
+
|
|
18
|
+
<Controls />
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Meta, Title, Description, Canvas, Controls } from "@storybook/blocks";
|
|
2
|
+
import * as ScrollAreaStories from "./scroll-area.stories";
|
|
3
|
+
|
|
4
|
+
<Meta of={ScrollAreaStories} />
|
|
5
|
+
|
|
6
|
+
<Title />
|
|
7
|
+
|
|
8
|
+
# Scroll Area
|
|
9
|
+
|
|
10
|
+
Custom scrollable view with cross-browser custom styled scrollbars.
|
|
11
|
+
|
|
12
|
+
## Default
|
|
13
|
+
|
|
14
|
+
<Canvas of={ScrollAreaStories.Default} />
|
|
15
|
+
|
|
16
|
+
## Component Properties
|
|
17
|
+
|
|
18
|
+
<Controls />
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
.dl-search-clear-btn {
|
|
2
|
+
display: inline-flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
justify-content: center;
|
|
5
|
+
background: transparent;
|
|
6
|
+
border: none;
|
|
7
|
+
cursor: pointer;
|
|
8
|
+
padding: 0;
|
|
9
|
+
color: var(--muted-foreground);
|
|
10
|
+
transition: color 0.15s ease;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.dl-search-clear-btn:hover {
|
|
14
|
+
color: var(--foreground);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.dl-search-clear-btn:focus-visible {
|
|
18
|
+
outline: 2px solid var(--ring);
|
|
19
|
+
outline-offset: 2px;
|
|
20
|
+
border-radius: var(--radius-sm, 0.25rem);
|
|
21
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Meta, Title, Description, Canvas, Controls } from "@storybook/blocks";
|
|
2
|
+
import * as SearchInputStories from "./search-input.stories";
|
|
3
|
+
|
|
4
|
+
<Meta of={SearchInputStories} />
|
|
5
|
+
|
|
6
|
+
<Title />
|
|
7
|
+
|
|
8
|
+
# Search Input
|
|
9
|
+
|
|
10
|
+
Standardized search field equipped with a persistent search icon, an instant-clear action, and an asynchronous loading spinner.
|
|
11
|
+
|
|
12
|
+
## Default
|
|
13
|
+
|
|
14
|
+
<Canvas of={SearchInputStories.Default} />
|
|
15
|
+
|
|
16
|
+
## With Query & Clear Action
|
|
17
|
+
|
|
18
|
+
<Canvas of={SearchInputStories.WithValue} />
|
|
19
|
+
|
|
20
|
+
## Background Loading State
|
|
21
|
+
|
|
22
|
+
<Canvas of={SearchInputStories.LoadingState} />
|
|
23
|
+
|
|
24
|
+
## Disabled State
|
|
25
|
+
|
|
26
|
+
<Canvas of={SearchInputStories.Disabled} />
|
|
27
|
+
|
|
28
|
+
## Component Properties
|
|
29
|
+
|
|
30
|
+
<Controls />
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
align-items: center;
|
|
23
23
|
gap: 0.5rem;
|
|
24
24
|
border-bottom: 1px solid var(--border);
|
|
25
|
-
padding: 0.5rem;
|
|
25
|
+
padding: var(--space-2, 0.5rem);
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
.dl-searchable-select-search-icon {
|
|
@@ -34,10 +34,10 @@
|
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
.dl-searchable-select-search-input {
|
|
37
|
-
height: 2rem;
|
|
37
|
+
height: var(--control-height-sm, 2rem);
|
|
38
38
|
border: none;
|
|
39
39
|
background: transparent;
|
|
40
|
-
padding-inline: 0.25rem;
|
|
40
|
+
padding-inline: var(--space-1, 0.25rem);
|
|
41
41
|
font-size: 0.875rem;
|
|
42
42
|
box-shadow: none;
|
|
43
43
|
}
|
|
@@ -64,6 +64,10 @@
|
|
|
64
64
|
color: var(--muted-foreground);
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
+
.dl-searchable-select-group {
|
|
68
|
+
padding-block: 0.25rem;
|
|
69
|
+
}
|
|
70
|
+
|
|
67
71
|
.dl-searchable-select-group-header {
|
|
68
72
|
padding-inline: 0.5rem;
|
|
69
73
|
padding-block: 0.25rem;
|
|
@@ -101,6 +105,19 @@
|
|
|
101
105
|
font-weight: 500;
|
|
102
106
|
}
|
|
103
107
|
|
|
108
|
+
.dl-searchable-select-item-text {
|
|
109
|
+
flex: 1 1 0%;
|
|
110
|
+
overflow: hidden;
|
|
111
|
+
text-overflow: ellipsis;
|
|
112
|
+
white-space: nowrap;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.dl-searchable-select-truncate {
|
|
116
|
+
overflow: hidden;
|
|
117
|
+
text-overflow: ellipsis;
|
|
118
|
+
white-space: nowrap;
|
|
119
|
+
}
|
|
120
|
+
|
|
104
121
|
.dl-searchable-select-add {
|
|
105
122
|
border-top: 1px solid var(--border);
|
|
106
123
|
background-color: color-mix(in oklch, var(--muted) 30%, transparent);
|
|
@@ -126,3 +143,9 @@
|
|
|
126
143
|
.dl-searchable-select-add-btn:hover {
|
|
127
144
|
background-color: color-mix(in oklch, var(--primary) 10%, transparent);
|
|
128
145
|
}
|
|
146
|
+
|
|
147
|
+
.dl-searchable-select-add-icon {
|
|
148
|
+
width: 0.875rem;
|
|
149
|
+
height: 0.875rem;
|
|
150
|
+
flex-shrink: 0;
|
|
151
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Meta, Title, Description, Canvas, Controls } from "@storybook/blocks";
|
|
2
|
+
import * as SearchableSelectStories from "./searchable-select.stories";
|
|
3
|
+
|
|
4
|
+
<Meta of={SearchableSelectStories} />
|
|
5
|
+
|
|
6
|
+
<Title />
|
|
7
|
+
|
|
8
|
+
# Searchable Select
|
|
9
|
+
|
|
10
|
+
Single and multi-select combobox with real-time text query filtering and selection tags.
|
|
11
|
+
|
|
12
|
+
## Default
|
|
13
|
+
|
|
14
|
+
<Canvas of={SearchableSelectStories.Default} />
|
|
15
|
+
|
|
16
|
+
## Component Properties
|
|
17
|
+
|
|
18
|
+
<Controls />
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Meta, Title, Description, Canvas, Controls } from "@storybook/blocks";
|
|
2
|
+
import * as SecretRevealCardStories from "./secret-reveal-card.stories";
|
|
3
|
+
|
|
4
|
+
<Meta of={SecretRevealCardStories} />
|
|
5
|
+
|
|
6
|
+
<Title />
|
|
7
|
+
|
|
8
|
+
# Secret Reveal Card
|
|
9
|
+
|
|
10
|
+
Secure credential display container with masked characters and timed reveal functionality.
|
|
11
|
+
|
|
12
|
+
## Default
|
|
13
|
+
|
|
14
|
+
<Canvas of={SecretRevealCardStories.Default} />
|
|
15
|
+
|
|
16
|
+
## Component Properties
|
|
17
|
+
|
|
18
|
+
<Controls />
|
|
@@ -32,12 +32,23 @@
|
|
|
32
32
|
opacity: 0.5;
|
|
33
33
|
cursor: not-allowed;
|
|
34
34
|
}
|
|
35
|
-
.dl-select-trigger
|
|
35
|
+
.dl-select-trigger svg {
|
|
36
36
|
opacity: 0.5;
|
|
37
37
|
width: 1rem;
|
|
38
38
|
height: 1rem;
|
|
39
39
|
flex-shrink: 0;
|
|
40
40
|
}
|
|
41
|
+
.dl-select-scroll-btn {
|
|
42
|
+
display: flex;
|
|
43
|
+
cursor: default;
|
|
44
|
+
align-items: center;
|
|
45
|
+
justify-content: center;
|
|
46
|
+
padding-block: 0.25rem;
|
|
47
|
+
}
|
|
48
|
+
.dl-select-scroll-btn svg {
|
|
49
|
+
width: 1rem;
|
|
50
|
+
height: 1rem;
|
|
51
|
+
}
|
|
41
52
|
|
|
42
53
|
/* Sizes */
|
|
43
54
|
.dl-select-trigger--sm {
|
|
@@ -59,7 +70,7 @@
|
|
|
59
70
|
max-height: 24rem;
|
|
60
71
|
min-width: var(--radix-select-trigger-width, 8rem);
|
|
61
72
|
width: var(--radix-select-trigger-width, max-content);
|
|
62
|
-
max-width:
|
|
73
|
+
max-width: max-content;
|
|
63
74
|
overflow: hidden;
|
|
64
75
|
border-radius: var(--radius-md, 0.375rem);
|
|
65
76
|
border: 1px solid var(--border);
|
|
@@ -112,6 +123,10 @@
|
|
|
112
123
|
width: 0.875rem;
|
|
113
124
|
height: 0.875rem;
|
|
114
125
|
}
|
|
126
|
+
.dl-select-item__indicator svg {
|
|
127
|
+
width: 0.75rem;
|
|
128
|
+
height: 0.75rem;
|
|
129
|
+
}
|
|
115
130
|
.dl-select-label {
|
|
116
131
|
padding: 0.25rem 0.5rem;
|
|
117
132
|
font-size: 0.6875rem;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Meta, Title, Description, Canvas, Controls } from "@storybook/blocks";
|
|
2
|
+
import * as SeparatorStories from "./separator.stories";
|
|
3
|
+
|
|
4
|
+
<Meta of={SeparatorStories} />
|
|
5
|
+
|
|
6
|
+
<Title />
|
|
7
|
+
|
|
8
|
+
# Separator
|
|
9
|
+
|
|
10
|
+
Visual or semantic divider between sections of content supporting horizontal and vertical orientations.
|
|
11
|
+
|
|
12
|
+
## Default
|
|
13
|
+
|
|
14
|
+
<Canvas of={SeparatorStories.Default} />
|
|
15
|
+
|
|
16
|
+
## Component Properties
|
|
17
|
+
|
|
18
|
+
<Controls />
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
z-index: 50;
|
|
7
7
|
gap: 1rem;
|
|
8
8
|
background-color: var(--background);
|
|
9
|
-
padding: 1.5rem;
|
|
9
|
+
padding: var(--dialog-padding, 1.5rem);
|
|
10
10
|
box-shadow: 0 8px 40px rgb(0 0 0/0.2);
|
|
11
11
|
}
|
|
12
12
|
.dl-sheet-content--right {
|
|
@@ -63,6 +63,10 @@
|
|
|
63
63
|
outline: 2px solid var(--ring);
|
|
64
64
|
outline-offset: 2px;
|
|
65
65
|
}
|
|
66
|
+
.dl-sheet-close svg {
|
|
67
|
+
width: 1rem;
|
|
68
|
+
height: 1rem;
|
|
69
|
+
}
|
|
66
70
|
.dl-sheet__header {
|
|
67
71
|
display: flex;
|
|
68
72
|
flex-direction: column;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Meta, Title, Description, Canvas, Controls } from "@storybook/blocks";
|
|
2
|
+
import * as SheetStories from "./sheet.stories";
|
|
3
|
+
|
|
4
|
+
<Meta of={SheetStories} />
|
|
5
|
+
|
|
6
|
+
<Title />
|
|
7
|
+
|
|
8
|
+
# Sheet
|
|
9
|
+
|
|
10
|
+
Extends the Dialog component to display content that complements the main screen from any edge.
|
|
11
|
+
|
|
12
|
+
## Default
|
|
13
|
+
|
|
14
|
+
<Canvas of={SheetStories.Default} />
|
|
15
|
+
|
|
16
|
+
## Component Properties
|
|
17
|
+
|
|
18
|
+
<Controls />
|