webcake-ui-kit 1.1.4 → 1.1.5
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/package.json +1 -1
- package/src/components/button/Button.vue +1 -1
- package/src/components/button/button.css +52 -3
- package/src/components/dialog/Dialog.vue +21 -21
- package/src/components/dialog/dialog.css +3 -35
- package/src/components/input/input.css +1 -1
- package/src/icons/BaseIcon.vue +1 -18
- package/src/styles/icons.css +16 -0
package/package.json
CHANGED
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
/* ============================================================
|
|
35
35
|
Sizes
|
|
36
36
|
============================================================ */
|
|
37
|
-
.ui-btn--
|
|
37
|
+
.ui-btn--mini {
|
|
38
38
|
height: 24px;
|
|
39
39
|
padding: var(--spacing-3) var(--spacing-xs);
|
|
40
40
|
gap: var(--spacing-6);
|
|
@@ -42,6 +42,22 @@
|
|
|
42
42
|
line-height: var(--paragraph-mini-line-height);
|
|
43
43
|
letter-spacing: var(--paragraph-mini-letter-spacing);
|
|
44
44
|
}
|
|
45
|
+
|
|
46
|
+
.ui-btn--mini .ui-btn__icon,
|
|
47
|
+
.ui-btn--mini ::v-deep svg {
|
|
48
|
+
width: 16px;
|
|
49
|
+
height: 16px;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.ui-btn--xs {
|
|
53
|
+
height: 28px;
|
|
54
|
+
padding: var(--spacing-2xs) var(--spacing-xs);
|
|
55
|
+
gap: var(--spacing-6);
|
|
56
|
+
font-size: var(--paragraph-mini-font-size);
|
|
57
|
+
line-height: var(--paragraph-mini-line-height);
|
|
58
|
+
letter-spacing: var(--paragraph-mini-letter-spacing);
|
|
59
|
+
}
|
|
60
|
+
|
|
45
61
|
.ui-btn--xs .ui-btn__icon,
|
|
46
62
|
.ui-btn--xs ::v-deep svg {
|
|
47
63
|
width: 16px;
|
|
@@ -56,6 +72,7 @@
|
|
|
56
72
|
line-height: var(--paragraph-small-line-height);
|
|
57
73
|
letter-spacing: var(--paragraph-small-letter-spacing);
|
|
58
74
|
}
|
|
75
|
+
|
|
59
76
|
.ui-btn--sm .ui-btn__icon,
|
|
60
77
|
.ui-btn--sm ::v-deep svg {
|
|
61
78
|
width: 20px;
|
|
@@ -70,6 +87,7 @@
|
|
|
70
87
|
line-height: var(--paragraph-small-line-height);
|
|
71
88
|
letter-spacing: var(--paragraph-small-letter-spacing);
|
|
72
89
|
}
|
|
90
|
+
|
|
73
91
|
.ui-btn--md .ui-btn__icon,
|
|
74
92
|
.ui-btn--md ::v-deep svg {
|
|
75
93
|
width: 20px;
|
|
@@ -84,6 +102,7 @@
|
|
|
84
102
|
line-height: var(--paragraph-small-line-height);
|
|
85
103
|
letter-spacing: var(--paragraph-small-letter-spacing);
|
|
86
104
|
}
|
|
105
|
+
|
|
87
106
|
.ui-btn--lg .ui-btn__icon,
|
|
88
107
|
.ui-btn--lg ::v-deep svg {
|
|
89
108
|
width: 20px;
|
|
@@ -98,6 +117,7 @@
|
|
|
98
117
|
line-height: var(--paragraph-regular-line-height);
|
|
99
118
|
letter-spacing: var(--paragraph-regular-letter-spacing);
|
|
100
119
|
}
|
|
120
|
+
|
|
101
121
|
.ui-btn--xl .ui-btn__icon,
|
|
102
122
|
.ui-btn--xl ::v-deep svg {
|
|
103
123
|
width: 20px;
|
|
@@ -112,9 +132,15 @@
|
|
|
112
132
|
.ui-btn--round-default {
|
|
113
133
|
border-radius: var(--radius-10);
|
|
114
134
|
}
|
|
115
|
-
|
|
135
|
+
|
|
136
|
+
.ui-btn--mini.ui-btn--round-default {
|
|
116
137
|
border-radius: var(--rounded-lg);
|
|
117
138
|
}
|
|
139
|
+
|
|
140
|
+
.ui-btn--xs.ui-btn--round-default {
|
|
141
|
+
border-radius: var(--radius);
|
|
142
|
+
}
|
|
143
|
+
|
|
118
144
|
.ui-btn--round-round {
|
|
119
145
|
border-radius: var(--rounded-full);
|
|
120
146
|
}
|
|
@@ -128,6 +154,7 @@
|
|
|
128
154
|
background: var(--primary-brand-bg);
|
|
129
155
|
color: var(--inverse-fg);
|
|
130
156
|
}
|
|
157
|
+
|
|
131
158
|
.ui-btn--primary:hover,
|
|
132
159
|
.ui-btn--primary:active {
|
|
133
160
|
background: var(--primary-brand-hover);
|
|
@@ -138,6 +165,7 @@
|
|
|
138
165
|
background: var(--button-black);
|
|
139
166
|
color: var(--button-black-fg);
|
|
140
167
|
}
|
|
168
|
+
|
|
141
169
|
.ui-btn--neutral:hover,
|
|
142
170
|
.ui-btn--neutral:active {
|
|
143
171
|
background: var(--button-black-hover);
|
|
@@ -148,6 +176,7 @@
|
|
|
148
176
|
background: var(--secondary-bg);
|
|
149
177
|
color: var(--secondary-fg);
|
|
150
178
|
}
|
|
179
|
+
|
|
151
180
|
.ui-btn--secondary:hover,
|
|
152
181
|
.ui-btn--secondary:active {
|
|
153
182
|
background: var(--secondary-hover);
|
|
@@ -160,6 +189,7 @@
|
|
|
160
189
|
border: 1px solid var(--border-primary);
|
|
161
190
|
box-shadow: var(--shadow-xs);
|
|
162
191
|
}
|
|
192
|
+
|
|
163
193
|
.ui-btn--outline:hover,
|
|
164
194
|
.ui-btn--outline:active {
|
|
165
195
|
background: var(--outline-hover);
|
|
@@ -171,6 +201,7 @@
|
|
|
171
201
|
background: var(--ghost);
|
|
172
202
|
color: var(--primary-fg);
|
|
173
203
|
}
|
|
204
|
+
|
|
174
205
|
.ui-btn--ghost:hover,
|
|
175
206
|
.ui-btn--ghost:active {
|
|
176
207
|
background: var(--ghost-hover);
|
|
@@ -181,6 +212,7 @@
|
|
|
181
212
|
background: var(--destructive);
|
|
182
213
|
color: var(--destructive-inverse-fg);
|
|
183
214
|
}
|
|
215
|
+
|
|
184
216
|
.ui-btn--destructive:hover,
|
|
185
217
|
.ui-btn--destructive:active {
|
|
186
218
|
background: var(--destructive-hover);
|
|
@@ -190,7 +222,10 @@
|
|
|
190
222
|
.ui-btn--link {
|
|
191
223
|
background: var(--ghost);
|
|
192
224
|
color: var(--primary-brand-fg);
|
|
225
|
+
height: fit-content;
|
|
226
|
+
padding: 0;
|
|
193
227
|
}
|
|
228
|
+
|
|
194
229
|
.ui-btn--link:hover,
|
|
195
230
|
.ui-btn--link:active {
|
|
196
231
|
color: var(--primary-brand-hover);
|
|
@@ -202,19 +237,24 @@
|
|
|
202
237
|
.ui-btn:focus {
|
|
203
238
|
outline: none;
|
|
204
239
|
}
|
|
240
|
+
|
|
205
241
|
.ui-btn:focus-visible {
|
|
206
242
|
outline: none;
|
|
207
243
|
box-shadow: 0 0 0 3px var(--focus-ring);
|
|
208
244
|
}
|
|
245
|
+
|
|
209
246
|
.ui-btn--secondary:focus-visible {
|
|
210
247
|
background: var(--secondary-hover);
|
|
211
248
|
}
|
|
249
|
+
|
|
212
250
|
.ui-btn--outline:focus-visible {
|
|
213
251
|
border-color: var(--border-focus);
|
|
214
252
|
}
|
|
253
|
+
|
|
215
254
|
.ui-btn--destructive:focus-visible {
|
|
216
255
|
box-shadow: 0 0 0 3px var(--focus-ring-error);
|
|
217
256
|
}
|
|
257
|
+
|
|
218
258
|
/* ============================================================
|
|
219
259
|
Disabled
|
|
220
260
|
============================================================ */
|
|
@@ -234,22 +274,31 @@
|
|
|
234
274
|
gap: 0;
|
|
235
275
|
}
|
|
236
276
|
|
|
237
|
-
.ui-btn--icon-only.ui-btn--
|
|
277
|
+
.ui-btn--icon-only.ui-btn--mini {
|
|
238
278
|
width: 24px;
|
|
239
279
|
padding: var(--spacing-3xs);
|
|
240
280
|
}
|
|
281
|
+
|
|
282
|
+
.ui-btn--icon-only.ui-btn--xs {
|
|
283
|
+
width: 28px;
|
|
284
|
+
padding: var(--spacing-6);
|
|
285
|
+
}
|
|
286
|
+
|
|
241
287
|
.ui-btn--icon-only.ui-btn--sm {
|
|
242
288
|
width: 32px;
|
|
243
289
|
padding: var(--spacing-6);
|
|
244
290
|
}
|
|
291
|
+
|
|
245
292
|
.ui-btn--icon-only.ui-btn--md {
|
|
246
293
|
width: 36px;
|
|
247
294
|
padding: var(--spacing-xs);
|
|
248
295
|
}
|
|
296
|
+
|
|
249
297
|
.ui-btn--icon-only.ui-btn--lg {
|
|
250
298
|
width: 40px;
|
|
251
299
|
padding: var(--spacing-10);
|
|
252
300
|
}
|
|
301
|
+
|
|
253
302
|
.ui-btn--icon-only.ui-btn--xl {
|
|
254
303
|
width: 48px;
|
|
255
304
|
padding: var(--spacing-sm);
|
|
@@ -33,35 +33,35 @@
|
|
|
33
33
|
</slot>
|
|
34
34
|
|
|
35
35
|
<div class="ui-dialog-header__actions">
|
|
36
|
-
<
|
|
36
|
+
<Button
|
|
37
37
|
v-if="minimizable"
|
|
38
|
-
type="button"
|
|
39
|
-
class="ui-dialog-header__icon-btn"
|
|
40
38
|
:aria-label="minimized ? 'Restore' : 'Minimize'"
|
|
39
|
+
size="sm"
|
|
40
|
+
variant="ghost"
|
|
41
41
|
@click="toggleMinimize"
|
|
42
42
|
>
|
|
43
|
-
<
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
<template #icon>
|
|
44
|
+
<WkiMinus v-if="!minimized" />
|
|
45
|
+
<WkiUnfoldVertical v-else />
|
|
46
|
+
</template>
|
|
47
|
+
</Button>
|
|
48
|
+
<Button
|
|
47
49
|
v-if="fullscreen"
|
|
48
|
-
type="button"
|
|
49
|
-
class="ui-dialog-header__icon-btn"
|
|
50
50
|
:aria-label="isFullscreen ? 'Exit fullscreen' : 'Fullscreen'"
|
|
51
|
+
size="sm"
|
|
52
|
+
variant="ghost"
|
|
51
53
|
@click="toggleFullscreen"
|
|
52
54
|
>
|
|
53
|
-
<
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
>
|
|
63
|
-
<WkiX />
|
|
64
|
-
</button>
|
|
55
|
+
<template #icon>
|
|
56
|
+
<WkiExpand v-if="!isFullscreen" />
|
|
57
|
+
<WkiShrink v-else />
|
|
58
|
+
</template>
|
|
59
|
+
</Button>
|
|
60
|
+
<Button v-if="closable" aria-label="Close" size="sm" variant="ghost" @click="handleCancel">
|
|
61
|
+
<template #icon>
|
|
62
|
+
<WkiX />
|
|
63
|
+
</template>
|
|
64
|
+
</Button>
|
|
65
65
|
</div>
|
|
66
66
|
</div>
|
|
67
67
|
</div>
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
border-radius: var(--rounded-xl);
|
|
65
65
|
box-shadow: var(--shadow-lg);
|
|
66
66
|
overflow: hidden;
|
|
67
|
-
max-height: 100%;
|
|
67
|
+
max-height: 100%;
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
.ui-dialog-content {
|
|
@@ -157,40 +157,6 @@
|
|
|
157
157
|
flex-shrink: 0;
|
|
158
158
|
}
|
|
159
159
|
|
|
160
|
-
.ui-dialog-header__icon-btn {
|
|
161
|
-
display: inline-flex;
|
|
162
|
-
align-items: center;
|
|
163
|
-
justify-content: center;
|
|
164
|
-
flex-shrink: 0;
|
|
165
|
-
min-width: 32px;
|
|
166
|
-
min-height: 32px;
|
|
167
|
-
padding: var(--spacing-6);
|
|
168
|
-
margin: 0;
|
|
169
|
-
background: var(--ghost);
|
|
170
|
-
color: var(--primary-fg);
|
|
171
|
-
border: 0;
|
|
172
|
-
border-radius: var(--rounded-xl);
|
|
173
|
-
cursor: pointer;
|
|
174
|
-
transition: background-color 0.15s ease;
|
|
175
|
-
-webkit-appearance: none;
|
|
176
|
-
appearance: none;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
.ui-dialog-header__icon-btn svg {
|
|
180
|
-
display: block;
|
|
181
|
-
width: 20px;
|
|
182
|
-
height: 20px;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
.ui-dialog-header__icon-btn:hover {
|
|
186
|
-
background: var(--ghost-hover);
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
.ui-dialog-header__icon-btn:focus-visible {
|
|
190
|
-
outline: none;
|
|
191
|
-
box-shadow: var(--shadow-focus-ring);
|
|
192
|
-
}
|
|
193
|
-
|
|
194
160
|
/* ── body ─────────────────────────────────────────────────────────────── */
|
|
195
161
|
.ui-dialog-body {
|
|
196
162
|
padding: var(--spacing-md);
|
|
@@ -238,6 +204,7 @@
|
|
|
238
204
|
.ui-dialog-fade-leave-active {
|
|
239
205
|
transition: opacity 0.2s ease;
|
|
240
206
|
}
|
|
207
|
+
|
|
241
208
|
.ui-dialog-fade-enter,
|
|
242
209
|
.ui-dialog-fade-enter-from,
|
|
243
210
|
.ui-dialog-fade-leave-to {
|
|
@@ -250,6 +217,7 @@
|
|
|
250
217
|
opacity 0.2s ease,
|
|
251
218
|
transform 0.2s ease;
|
|
252
219
|
}
|
|
220
|
+
|
|
253
221
|
.ui-dialog-zoom-enter,
|
|
254
222
|
.ui-dialog-zoom-enter-from,
|
|
255
223
|
.ui-dialog-zoom-leave-to {
|
package/src/icons/BaseIcon.vue
CHANGED
|
@@ -44,21 +44,4 @@ export default {
|
|
|
44
44
|
}
|
|
45
45
|
</script>
|
|
46
46
|
|
|
47
|
-
<style>
|
|
48
|
-
.wki-base-icon {
|
|
49
|
-
display: inline-flex;
|
|
50
|
-
align-items: center;
|
|
51
|
-
justify-content: center;
|
|
52
|
-
flex-shrink: 0;
|
|
53
|
-
vertical-align: middle;
|
|
54
|
-
line-height: 0;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
.wki-base-icon svg {
|
|
58
|
-
width: var(--wki-icon-size);
|
|
59
|
-
height: var(--wki-icon-size);
|
|
60
|
-
color: var(--wki-icon-color);
|
|
61
|
-
stroke-width: var(--wki-icon-stroke-width);
|
|
62
|
-
fill: var(--wki-icon-fill);
|
|
63
|
-
}
|
|
64
|
-
</style>
|
|
47
|
+
<style src="../styles/icons.css"></style>
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
.wki-base-icon {
|
|
2
|
+
display: inline-flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
justify-content: center;
|
|
5
|
+
flex-shrink: 0;
|
|
6
|
+
vertical-align: middle;
|
|
7
|
+
line-height: 0;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.wki-base-icon svg {
|
|
11
|
+
width: var(--wki-icon-size);
|
|
12
|
+
height: var(--wki-icon-size);
|
|
13
|
+
color: var(--wki-icon-color);
|
|
14
|
+
stroke-width: var(--wki-icon-stroke-width);
|
|
15
|
+
fill: var(--wki-icon-fill);
|
|
16
|
+
}
|