@revikornmann/muka-ui 0.28.1 → 0.30.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/dist/cjs/components/Alert/Alert.css +12 -3
- package/dist/cjs/components/Alert/Alert.js +1 -1
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/Badge/Badge.css +27 -0
- package/dist/cjs/components/Badge/Badge.js +14 -5
- package/dist/cjs/components/Badge/Badge.js.map +1 -1
- package/dist/cjs/components/ChatComposer/ChatComposer.css +121 -1
- package/dist/cjs/components/ChatComposer/ChatComposer.js +148 -21
- package/dist/cjs/components/ChatComposer/ChatComposer.js.map +1 -1
- package/dist/cjs/components/ChatComposer/index.js.map +1 -1
- package/dist/cjs/components/PhotoUploader/PhotoUploader.css +6 -18
- package/dist/cjs/components/PhotoUploader/PhotoUploader.js +15 -16
- package/dist/cjs/components/PhotoUploader/PhotoUploader.js.map +1 -1
- package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.css +26 -12
- package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.js +49 -40
- package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.js.map +1 -1
- package/dist/cjs/components/ProgressTracker/ProgressTracker.css +23 -5
- package/dist/cjs/components/ProgressTracker/ProgressTracker.js +8 -6
- package/dist/cjs/components/ProgressTracker/ProgressTracker.js.map +1 -1
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/esm/components/Alert/Alert.css +12 -3
- package/dist/esm/components/Alert/Alert.js +1 -1
- package/dist/esm/components/Alert/Alert.js.map +1 -1
- package/dist/esm/components/Badge/Badge.css +27 -0
- package/dist/esm/components/Badge/Badge.js +14 -5
- package/dist/esm/components/Badge/Badge.js.map +1 -1
- package/dist/esm/components/ChatComposer/ChatComposer.css +121 -1
- package/dist/esm/components/ChatComposer/ChatComposer.js +150 -23
- package/dist/esm/components/ChatComposer/ChatComposer.js.map +1 -1
- package/dist/esm/components/ChatComposer/index.js +1 -1
- package/dist/esm/components/ChatComposer/index.js.map +1 -1
- package/dist/esm/components/PhotoUploader/PhotoUploader.css +6 -18
- package/dist/esm/components/PhotoUploader/PhotoUploader.js +15 -16
- package/dist/esm/components/PhotoUploader/PhotoUploader.js.map +1 -1
- package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.css +26 -12
- package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.js +49 -40
- package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.js.map +1 -1
- package/dist/esm/components/ProgressTracker/ProgressTracker.css +23 -5
- package/dist/esm/components/ProgressTracker/ProgressTracker.js +8 -6
- package/dist/esm/components/ProgressTracker/ProgressTracker.js.map +1 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/index.js.map +1 -1
- package/dist/styles/components/Alert.css +12 -3
- package/dist/styles/components/Badge.css +27 -0
- package/dist/styles/components/ChatComposer.css +121 -1
- package/dist/styles/components/PhotoUploader.css +6 -18
- package/dist/styles/components/ProgressAccordeon.css +26 -12
- package/dist/styles/components/ProgressTracker.css +23 -5
- package/dist/styles/index.css +2743 -2567
- package/dist/styles/muka-dark.css +2743 -2567
- package/dist/styles/muka-light.css +2743 -2567
- package/dist/styles/wireframe-dark.css +2743 -2567
- package/dist/styles/wireframe-light.css +2743 -2567
- package/dist/types/components/Alert/Alert.d.ts +2 -2
- package/dist/types/components/Alert/Alert.d.ts.map +1 -1
- package/dist/types/components/Badge/Badge.d.ts +7 -5
- package/dist/types/components/Badge/Badge.d.ts.map +1 -1
- package/dist/types/components/ChatComposer/ChatComposer.d.ts +83 -12
- package/dist/types/components/ChatComposer/ChatComposer.d.ts.map +1 -1
- package/dist/types/components/ChatComposer/index.d.ts +1 -1
- package/dist/types/components/ChatComposer/index.d.ts.map +1 -1
- package/dist/types/components/PhotoUploader/PhotoUploader.d.ts +8 -8
- package/dist/types/components/PhotoUploader/PhotoUploader.d.ts.map +1 -1
- package/dist/types/components/ProgressAccordeon/ProgressAccordeon.d.ts +36 -29
- package/dist/types/components/ProgressAccordeon/ProgressAccordeon.d.ts.map +1 -1
- package/dist/types/components/ProgressTracker/ProgressTracker.d.ts +10 -4
- package/dist/types/components/ProgressTracker/ProgressTracker.d.ts.map +1 -1
- package/dist/types/components/index.d.ts +1 -1
- package/dist/types/components/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -60,6 +60,33 @@
|
|
|
60
60
|
padding-left: var(--badge-padding-leading-lg);
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
+
/* Icon-only — square, sized to the badge height (Figma: 24 / 32 / 40).
|
|
64
|
+
* Padding resets at size+icon-only specificity so `--has-icon` leading padding
|
|
65
|
+
* cannot win and shift the icon off-center. */
|
|
66
|
+
.muka-badge--icon-only {
|
|
67
|
+
justify-content: center;
|
|
68
|
+
align-items: center;
|
|
69
|
+
gap: 0;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.muka-badge--sm.muka-badge--icon-only,
|
|
73
|
+
.muka-badge--md.muka-badge--icon-only,
|
|
74
|
+
.muka-badge--lg.muka-badge--icon-only {
|
|
75
|
+
padding: 0;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.muka-badge--sm.muka-badge--icon-only {
|
|
79
|
+
width: var(--badge-size-height-sm);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.muka-badge--md.muka-badge--icon-only {
|
|
83
|
+
width: var(--badge-size-height-md);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.muka-badge--lg.muka-badge--icon-only {
|
|
87
|
+
width: var(--badge-size-height-lg);
|
|
88
|
+
}
|
|
89
|
+
|
|
63
90
|
/* Leading icon slot — Figma icon sizes: sm 16, md 20, lg 24 (matches Chip) */
|
|
64
91
|
.muka-badge__icon {
|
|
65
92
|
display: inline-flex;
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
pointer-events: none;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
/* ─── Input row
|
|
20
|
+
/* ─── Input row (default layout) ───────────────────────── */
|
|
21
21
|
|
|
22
22
|
.muka-chat-composer__row {
|
|
23
23
|
display: flex;
|
|
@@ -43,6 +43,19 @@
|
|
|
43
43
|
transition: border-color 0.12s ease;
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
+
.muka-chat-composer--options .muka-chat-composer__field {
|
|
47
|
+
flex: 1 1 auto;
|
|
48
|
+
width: auto;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/* Options input row: text field + mic / send beside it */
|
|
52
|
+
.muka-chat-composer__options-input {
|
|
53
|
+
display: flex;
|
|
54
|
+
align-items: flex-end;
|
|
55
|
+
gap: var(--spacing-3);
|
|
56
|
+
width: 100%;
|
|
57
|
+
}
|
|
58
|
+
|
|
46
59
|
.muka-chat-composer__field:focus-within {
|
|
47
60
|
border-color: var(--input-field-color-focus-border, var(--color-action-default));
|
|
48
61
|
}
|
|
@@ -116,6 +129,113 @@
|
|
|
116
129
|
transform: translateY(-50%);
|
|
117
130
|
}
|
|
118
131
|
|
|
132
|
+
/* ─── Options mode (Figma State=Options / State7 / State8) ─ */
|
|
133
|
+
|
|
134
|
+
.muka-chat-composer__prompt {
|
|
135
|
+
display: flex;
|
|
136
|
+
align-items: flex-start;
|
|
137
|
+
gap: var(--spacing-3);
|
|
138
|
+
width: 100%;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
.muka-chat-composer__prompt-step {
|
|
142
|
+
flex-shrink: 0;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
.muka-chat-composer__prompt-text {
|
|
146
|
+
display: flex;
|
|
147
|
+
flex-direction: column;
|
|
148
|
+
gap: var(--spacing-1);
|
|
149
|
+
min-width: 0;
|
|
150
|
+
flex: 1 1 auto;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
.muka-chat-composer__prompt-heading {
|
|
154
|
+
color: var(--color-text-default-default);
|
|
155
|
+
font-family: var(--text-heading-sm-fontFamily);
|
|
156
|
+
font-weight: var(--text-heading-sm-fontWeight);
|
|
157
|
+
font-size: var(--text-heading-sm-fontSize);
|
|
158
|
+
line-height: var(--text-heading-sm-lineHeight);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
.muka-chat-composer__prompt-description {
|
|
162
|
+
color: var(--color-text-subtle-default);
|
|
163
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
164
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
165
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
166
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.muka-chat-composer__choices {
|
|
170
|
+
width: 100%;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
.muka-chat-composer__choices-card {
|
|
174
|
+
width: 100%;
|
|
175
|
+
overflow: hidden;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
/* Choice rows: the ListItem is the interactive control; the Radio/Checkbox is
|
|
179
|
+
decorative for AT (aria-hidden) and sits in the leading slot. */
|
|
180
|
+
.muka-chat-composer__choice-control {
|
|
181
|
+
display: inline-flex;
|
|
182
|
+
align-items: center;
|
|
183
|
+
pointer-events: none;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
.muka-chat-composer__choice-control .muka-radio,
|
|
187
|
+
.muka-chat-composer__choice-control .muka-checkbox {
|
|
188
|
+
pointer-events: none;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/*
|
|
192
|
+
* Multi-step footer (Figma Canned responses). Previous (muted) | centered
|
|
193
|
+
* progress | Next/Send (muted when not ready, primary when ready — never
|
|
194
|
+
* disabled for unreadiness).
|
|
195
|
+
*/
|
|
196
|
+
.muka-chat-composer__footer {
|
|
197
|
+
position: relative;
|
|
198
|
+
display: flex;
|
|
199
|
+
align-items: center;
|
|
200
|
+
justify-content: space-between;
|
|
201
|
+
gap: var(--spacing-2);
|
|
202
|
+
width: 100%;
|
|
203
|
+
min-height: var(--input-field-height-lg, 48px);
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
.muka-chat-composer__footer-spacer {
|
|
207
|
+
display: inline-block;
|
|
208
|
+
/* Approximate width of a Previous button so Next stays right-aligned when
|
|
209
|
+
there is no back control (step 1 of N). */
|
|
210
|
+
min-width: 7rem;
|
|
211
|
+
flex-shrink: 0;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
.muka-chat-composer__footer-back {
|
|
215
|
+
flex-shrink: 0;
|
|
216
|
+
z-index: 1;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
.muka-chat-composer__footer-action {
|
|
220
|
+
flex-shrink: 0;
|
|
221
|
+
margin-left: auto;
|
|
222
|
+
z-index: 1;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
.muka-chat-composer__progress {
|
|
226
|
+
position: absolute;
|
|
227
|
+
left: 50%;
|
|
228
|
+
top: 50%;
|
|
229
|
+
transform: translate(-50%, -50%);
|
|
230
|
+
color: var(--color-text-subtle-default);
|
|
231
|
+
font-family: var(--text-label-lg-regular-fontFamily, var(--text-body-base-regular-fontFamily));
|
|
232
|
+
font-weight: var(--text-label-lg-regular-fontWeight, var(--text-body-base-regular-fontWeight));
|
|
233
|
+
font-size: var(--text-label-lg-regular-fontSize, var(--text-body-base-regular-fontSize));
|
|
234
|
+
line-height: var(--text-label-lg-regular-lineHeight, var(--text-body-base-regular-lineHeight));
|
|
235
|
+
white-space: nowrap;
|
|
236
|
+
pointer-events: none;
|
|
237
|
+
}
|
|
238
|
+
|
|
119
239
|
/* ─── Print ────────────────────────────────────────────── */
|
|
120
240
|
|
|
121
241
|
@media print {
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
padding: 0;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
/* ─── Drop zone card
|
|
45
|
+
/* ─── Drop zone card (button + "or drop here") ────────── */
|
|
46
46
|
.muka-photo-uploader__dropzone {
|
|
47
47
|
display: flex;
|
|
48
48
|
flex-direction: column;
|
|
@@ -66,24 +66,12 @@
|
|
|
66
66
|
background-color: var(--color-surface-level1);
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
-
.muka-photo-uploader__dropzone:focus-visible {
|
|
70
|
-
outline: 2px solid var(--color-border-focus);
|
|
71
|
-
outline-offset: 2px;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
.muka-photo-uploader__dropzone-icon {
|
|
75
|
-
display: flex;
|
|
76
|
-
align-items: center;
|
|
77
|
-
justify-content: center;
|
|
78
|
-
color: var(--color-icon-subtle-default);
|
|
79
|
-
}
|
|
80
|
-
|
|
81
69
|
.muka-photo-uploader__dropzone-text {
|
|
82
|
-
font-family: var(--text-
|
|
83
|
-
font-size: var(--text-
|
|
84
|
-
font-weight: var(--text-
|
|
85
|
-
line-height: var(--text-
|
|
86
|
-
color: var(--color-text-
|
|
70
|
+
font-family: var(--text-subheading-sm-fontFamily);
|
|
71
|
+
font-size: var(--text-subheading-sm-fontSize);
|
|
72
|
+
font-weight: var(--text-subheading-sm-fontWeight);
|
|
73
|
+
line-height: var(--text-subheading-sm-lineHeight);
|
|
74
|
+
color: var(--color-text-default-default);
|
|
87
75
|
}
|
|
88
76
|
|
|
89
77
|
/* ─── Disabled ────────────────────────────────────────── */
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
/* Per-state gap: content-bearing steps are tighter, header-only steps looser */
|
|
15
15
|
.muka-progress-accordeon--current,
|
|
16
|
+
.muka-progress-accordeon--current.muka-progress-accordeon--expanded,
|
|
16
17
|
.muka-progress-accordeon--past.muka-progress-accordeon--expanded,
|
|
17
18
|
.muka-progress-accordeon--upcoming.muka-progress-accordeon--expanded {
|
|
18
19
|
gap: var(--spacing-6);
|
|
@@ -20,7 +21,8 @@
|
|
|
20
21
|
|
|
21
22
|
.muka-progress-accordeon--upcoming,
|
|
22
23
|
.muka-progress-accordeon--past.muka-progress-accordeon--collapsed,
|
|
23
|
-
.muka-progress-accordeon--upcoming.muka-progress-accordeon--collapsed
|
|
24
|
+
.muka-progress-accordeon--upcoming.muka-progress-accordeon--collapsed,
|
|
25
|
+
.muka-progress-accordeon--current.muka-progress-accordeon--collapsed {
|
|
24
26
|
gap: var(--spacing-8);
|
|
25
27
|
}
|
|
26
28
|
|
|
@@ -165,32 +167,44 @@
|
|
|
165
167
|
width: 100%;
|
|
166
168
|
}
|
|
167
169
|
|
|
168
|
-
/* ─── Collapse/expand animation (
|
|
169
|
-
|
|
170
|
-
intrinsic
|
|
171
|
-
--motion-duration-view
|
|
172
|
-
.muka-progress-
|
|
170
|
+
/* ─── Collapse/expand animation (any expandable step) ──────
|
|
171
|
+
Animates grid-template-rows 1fr ↔ 0fr so the panel (slot + actions) grows and
|
|
172
|
+
shrinks to its intrinsic height. Opacity fades with the same duration.
|
|
173
|
+
Under prefers-reduced-motion, --motion-duration-view is 0ms. */
|
|
174
|
+
.muka-progress-accordeon__panel-wrapper {
|
|
173
175
|
display: grid;
|
|
174
176
|
grid-template-rows: 1fr;
|
|
175
|
-
|
|
177
|
+
opacity: 1;
|
|
178
|
+
transition:
|
|
179
|
+
grid-template-rows var(--motion-duration-view) var(--motion-easing-enter),
|
|
180
|
+
opacity var(--motion-duration-view) var(--motion-easing-enter);
|
|
176
181
|
}
|
|
177
182
|
|
|
178
|
-
.muka-progress-
|
|
183
|
+
.muka-progress-accordeon__panel-wrapper--collapsed {
|
|
179
184
|
grid-template-rows: 0fr;
|
|
185
|
+
opacity: 0;
|
|
186
|
+
transition:
|
|
187
|
+
grid-template-rows var(--motion-duration-view) var(--motion-easing-exit),
|
|
188
|
+
opacity calc(var(--motion-duration-view) * 0.6) var(--motion-easing-exit);
|
|
180
189
|
}
|
|
181
190
|
|
|
182
191
|
/* The direct grid child clips and must have NO padding/border of its own —
|
|
183
192
|
min-height:0 lets it shrink, and with no padding the 0fr track reaches a true
|
|
184
193
|
0 height (padding on the item would leave a residual gap when collapsed). */
|
|
185
|
-
.muka-progress-
|
|
194
|
+
.muka-progress-accordeon__panel-clip {
|
|
186
195
|
overflow: hidden;
|
|
187
196
|
min-height: 0;
|
|
188
197
|
}
|
|
189
198
|
|
|
190
|
-
/*
|
|
191
|
-
|
|
192
|
-
.muka-progress-
|
|
199
|
+
/* Header↔content spacing + slot/actions gap live inside the clip so they
|
|
200
|
+
collapse together with the panel. */
|
|
201
|
+
.muka-progress-accordeon__panel {
|
|
202
|
+
display: flex;
|
|
203
|
+
flex-direction: column;
|
|
204
|
+
align-items: stretch;
|
|
205
|
+
gap: var(--spacing-6);
|
|
193
206
|
padding-top: var(--spacing-4);
|
|
207
|
+
width: 100%;
|
|
194
208
|
}
|
|
195
209
|
|
|
196
210
|
/* ─── Action buttons (current state) ─────────────────────── */
|
|
@@ -58,17 +58,26 @@
|
|
|
58
58
|
color: var(--color-text-default-inverse);
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--
|
|
61
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--interactive {
|
|
62
62
|
cursor: pointer;
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--
|
|
65
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--interactive:focus-visible {
|
|
66
|
+
outline: 2px solid var(--color-border-focus);
|
|
67
|
+
outline-offset: 2px;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--past.muka-progress-tracker__indicator--interactive:hover {
|
|
66
71
|
background-color: var(--alias-color-accent-pressed);
|
|
67
72
|
}
|
|
68
73
|
|
|
69
|
-
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--
|
|
70
|
-
|
|
71
|
-
|
|
74
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--current.muka-progress-tracker__indicator--interactive:hover {
|
|
75
|
+
background-color: var(--alias-color-accent-hover);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/* Upcoming (clickableSteps="all"): a 4px halo, the vertical hover's 40px circle */
|
|
79
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--upcoming.muka-progress-tracker__indicator--interactive:hover {
|
|
80
|
+
box-shadow: 0 0 0 4px var(--color-surface-level1);
|
|
72
81
|
}
|
|
73
82
|
|
|
74
83
|
/* Current: accent default circle with white number */
|
|
@@ -141,6 +150,15 @@
|
|
|
141
150
|
font-weight: var(--text-label-sm-bold-fontWeight);
|
|
142
151
|
}
|
|
143
152
|
|
|
153
|
+
/* Selected step: a pill behind the label (horizontal), matching the vertical
|
|
154
|
+
selected pill's surface. The label stays centred under its indicator. */
|
|
155
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__step[data-selected='true'] .muka-progress-tracker__label {
|
|
156
|
+
padding: 0 var(--spacing-2);
|
|
157
|
+
border-radius: var(--border-radius-full);
|
|
158
|
+
background-color: var(--color-surface-level1);
|
|
159
|
+
max-width: calc(120px + 2 * var(--spacing-2));
|
|
160
|
+
}
|
|
161
|
+
|
|
144
162
|
/* ─── Connectors layer (behind indicators) — horizontal ─── */
|
|
145
163
|
.muka-progress-tracker--horizontal .muka-progress-tracker__connectors {
|
|
146
164
|
display: flex;
|