@cloud-ru/ds-list 2.0.1 → 2.0.2
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/CHANGELOG.md +6 -0
- package/README.md +1 -1
- package/dist/cjs/components/Items/BaseItem/BaseItem.js +1 -1
- package/dist/cjs/components/Items/BaseItem/styles.module.css +42 -0
- package/dist/cjs/components/Items/SearchItem/SearchItem.js +1 -1
- package/dist/cjs/components/Items/SimpleItem/utils.d.ts +1 -1
- package/dist/cjs/components/Items/SimpleItem/utils.js +1 -1
- package/dist/cjs/components/Items/styles.module.css +9 -0
- package/dist/cjs/components/Items/types.d.ts +2 -2
- package/dist/cjs/components/Items/utils.js +1 -1
- package/dist/cjs/components/Lists/ListPrivate/ListPrivate.js +1 -1
- package/dist/cjs/components/Lists/ListPrivate/styles.module.css +2 -3
- package/dist/cjs/components/Lists/hooks.d.ts +1 -1
- package/dist/cjs/components/Lists/hooks.js +2 -2
- package/dist/cjs/helperComponents/DesktopDroplist/DesktopDroplist.js +1 -1
- package/dist/cjs/helperComponents/ItemContent/ItemContent.js +1 -1
- package/dist/cjs/helperComponents/ItemContent/styles.module.css +45 -24
- package/dist/cjs/helperComponents/Separator/Separator.js +3 -4
- package/dist/cjs/helperComponents/Separator/styles.module.css +69 -49
- package/dist/cjs/style.css +167 -76
- package/dist/esm/components/Items/BaseItem/BaseItem.js +1 -1
- package/dist/esm/components/Items/BaseItem/styles.module.css +42 -0
- package/dist/esm/components/Items/SearchItem/SearchItem.js +1 -1
- package/dist/esm/components/Items/SimpleItem/utils.d.ts +1 -1
- package/dist/esm/components/Items/SimpleItem/utils.js +1 -1
- package/dist/esm/components/Items/styles.module.css +9 -0
- package/dist/esm/components/Items/types.d.ts +2 -2
- package/dist/esm/components/Items/utils.js +1 -1
- package/dist/esm/components/Lists/ListPrivate/ListPrivate.js +1 -1
- package/dist/esm/components/Lists/ListPrivate/styles.module.css +2 -3
- package/dist/esm/components/Lists/hooks.d.ts +1 -1
- package/dist/esm/components/Lists/hooks.js +2 -2
- package/dist/esm/helperComponents/DesktopDroplist/DesktopDroplist.js +1 -1
- package/dist/esm/helperComponents/ItemContent/ItemContent.js +1 -1
- package/dist/esm/helperComponents/ItemContent/styles.module.css +45 -24
- package/dist/esm/helperComponents/Separator/Separator.js +3 -4
- package/dist/esm/helperComponents/Separator/styles.module.css +69 -49
- package/dist/esm/style.css +167 -76
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/src/components/Items/BaseItem/BaseItem.tsx +17 -10
- package/src/components/Items/BaseItem/styles.module.scss +57 -4
- package/src/components/Items/SearchItem/SearchItem.tsx +1 -1
- package/src/components/Items/SimpleItem/utils.ts +1 -1
- package/src/components/Items/styles.module.scss +10 -2
- package/src/components/Items/types.ts +3 -7
- package/src/components/Items/utils.ts +1 -1
- package/src/components/Lists/ListPrivate/ListPrivate.tsx +1 -1
- package/src/components/Lists/ListPrivate/styles.module.scss +5 -4
- package/src/components/Lists/hooks.ts +2 -2
- package/src/helperComponents/DesktopDroplist/DesktopDroplist.tsx +1 -1
- package/src/helperComponents/ItemContent/ItemContent.tsx +22 -20
- package/src/helperComponents/ItemContent/styles.module.scss +25 -15
- package/src/helperComponents/Separator/Separator.tsx +23 -22
- package/src/helperComponents/Separator/styles.module.scss +132 -101
- package/dist/cjs/helperComponents/Separator/constants.d.ts +0 -3
- package/dist/cjs/helperComponents/Separator/constants.js +0 -10
- package/dist/esm/helperComponents/Separator/constants.d.ts +0 -3
- package/dist/esm/helperComponents/Separator/constants.js +0 -7
- package/src/helperComponents/Separator/constants.ts +0 -11
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
$sizes: 's', 'm', 'l';
|
|
6
6
|
|
|
7
|
-
//
|
|
7
|
+
// Оба варианта группы (`subtitle` / `subtitleTertiary`) в мастере используют один и тот же
|
|
8
|
+
// текстовый стиль и различаются только цветом — см. `.label[data-group-variant]`.
|
|
8
9
|
$subtitle-typography-map: (
|
|
9
10
|
's': (
|
|
10
11
|
'weight': 'regular',
|
|
@@ -23,38 +24,18 @@ $subtitle-typography-map: (
|
|
|
23
24
|
),
|
|
24
25
|
);
|
|
25
26
|
|
|
26
|
-
// 'light' weight в base-styles отсутствует — используем 'regular', subtitleTertiary
|
|
27
|
-
// отличаем цветом (см. .label[data-group-variant='subtitleTertiary']).
|
|
28
|
-
$subtitle-tertiary-typography-map: (
|
|
29
|
-
's': (
|
|
30
|
-
'weight': 'regular',
|
|
31
|
-
'role': 'label',
|
|
32
|
-
'size': 'm',
|
|
33
|
-
),
|
|
34
|
-
'm': (
|
|
35
|
-
'weight': 'regular',
|
|
36
|
-
'role': 'label',
|
|
37
|
-
'size': 'l',
|
|
38
|
-
),
|
|
39
|
-
'l': (
|
|
40
|
-
'weight': 'regular',
|
|
41
|
-
'role': 'title',
|
|
42
|
-
'size': 'm',
|
|
43
|
-
),
|
|
44
|
-
);
|
|
45
|
-
|
|
46
27
|
$level: var(--level, 0);
|
|
47
28
|
|
|
48
29
|
// Composites dropList item.<size>.container-separator(-subheader) в токен-наборе отсутствуют —
|
|
49
30
|
// приближаем через list anatomy.size.<size>.listItem.padding-*.
|
|
50
|
-
// Figma listItemGroup: root flex, align-items:
|
|
31
|
+
// Figma listItemGroup: root flex, align-items: center, gap=listItem.gap,
|
|
51
32
|
// padding-top=subtitle.paddingTop, padding-bottom=listItem.paddingVertical,
|
|
52
33
|
// padding-horizontal=listItem.paddingHorizontal. Иконка и label — на одной линии по центру (textWrapper).
|
|
53
34
|
|
|
54
35
|
// Figma centeredWrapper (list.listItem.centeredWrapper): padding-vertical вокруг иконки.
|
|
55
36
|
// Размер иконочного слота — общий с listItem (см. icons.$iconSizeMap).
|
|
56
37
|
// Используем content-box, чтобы padding не зажимал SVG.
|
|
57
|
-
.
|
|
38
|
+
.centeredWrapper {
|
|
58
39
|
display: inline-flex;
|
|
59
40
|
flex-grow: 0;
|
|
60
41
|
flex-shrink: 0;
|
|
@@ -93,7 +74,6 @@ $level: var(--level, 0);
|
|
|
93
74
|
@each $size in $sizes {
|
|
94
75
|
&[data-size='#{$size}'] {
|
|
95
76
|
$subtitle: base.simple-var($subtitle-typography-map, $size);
|
|
96
|
-
$subtitleTertiary: base.simple-var($subtitle-tertiary-typography-map, $size);
|
|
97
77
|
$itemPaddingLeft: base.simple-var(list.$list, 'anatomy', 'size', $size, 'listItem', 'padding-left');
|
|
98
78
|
$itemGap: base.simple-var(list.$list, 'anatomy', 'size', $size, 'listItem', 'gap');
|
|
99
79
|
|
|
@@ -112,7 +92,7 @@ $level: var(--level, 0);
|
|
|
112
92
|
);
|
|
113
93
|
}
|
|
114
94
|
|
|
115
|
-
.
|
|
95
|
+
.centeredWrapper {
|
|
116
96
|
width: base.simple-var(icons.$iconSizeMap, $size);
|
|
117
97
|
height: base.simple-var(icons.$iconSizeMap, $size);
|
|
118
98
|
padding-top: base.simple-var(
|
|
@@ -135,69 +115,101 @@ $level: var(--level, 0);
|
|
|
135
115
|
);
|
|
136
116
|
}
|
|
137
117
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
118
|
+
// Раскладка повторяет мастер listItemGroup: root → contentWrapper → textWrapper →
|
|
119
|
+
// textContent → headline. Вертикальные поля несёт textWrapper, горизонтальные — textContent.
|
|
120
|
+
.textWrapper {
|
|
121
|
+
gap: $itemGap;
|
|
122
|
+
padding-top: base.simple-var(
|
|
123
|
+
list.$list,
|
|
124
|
+
'anatomy',
|
|
125
|
+
'size',
|
|
126
|
+
$size,
|
|
127
|
+
'listItem',
|
|
128
|
+
'contentWrapper',
|
|
129
|
+
'textWrapper',
|
|
130
|
+
'padding-top'
|
|
131
|
+
);
|
|
132
|
+
padding-bottom: base.simple-var(
|
|
133
|
+
list.$list,
|
|
134
|
+
'anatomy',
|
|
135
|
+
'size',
|
|
136
|
+
$size,
|
|
137
|
+
'listItem',
|
|
138
|
+
'contentWrapper',
|
|
139
|
+
'textWrapper',
|
|
140
|
+
'padding-bottom'
|
|
141
|
+
);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.textContent {
|
|
145
|
+
gap: base.simple-var(
|
|
146
|
+
list.$list,
|
|
147
|
+
'anatomy',
|
|
148
|
+
'size',
|
|
149
|
+
$size,
|
|
150
|
+
'listItem',
|
|
151
|
+
'contentWrapper',
|
|
152
|
+
'textWrapper',
|
|
153
|
+
'textContent',
|
|
154
|
+
'gap'
|
|
155
|
+
);
|
|
156
|
+
padding-right: base.simple-var(
|
|
157
|
+
list.$list,
|
|
158
|
+
'anatomy',
|
|
159
|
+
'size',
|
|
160
|
+
$size,
|
|
161
|
+
'listItem',
|
|
162
|
+
'contentWrapper',
|
|
163
|
+
'textWrapper',
|
|
164
|
+
'textContent',
|
|
165
|
+
'padding-right'
|
|
166
|
+
);
|
|
167
|
+
padding-left: base.simple-var(
|
|
168
|
+
list.$list,
|
|
169
|
+
'anatomy',
|
|
170
|
+
'size',
|
|
171
|
+
$size,
|
|
172
|
+
'listItem',
|
|
173
|
+
'contentWrapper',
|
|
174
|
+
'textWrapper',
|
|
175
|
+
'textContent',
|
|
176
|
+
'padding-left'
|
|
177
|
+
);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
.headline {
|
|
181
|
+
@include base.composite-var(
|
|
182
|
+
base.$base-styles,
|
|
183
|
+
'sn',
|
|
184
|
+
base.simple-var($subtitle, 'weight'),
|
|
185
|
+
base.simple-var($subtitle, 'role'),
|
|
186
|
+
base.simple-var($subtitle, 'size')
|
|
187
|
+
);
|
|
188
|
+
|
|
189
|
+
gap: base.simple-var(
|
|
190
|
+
list.$list,
|
|
191
|
+
'anatomy',
|
|
192
|
+
'size',
|
|
193
|
+
$size,
|
|
194
|
+
'listItem',
|
|
195
|
+
'contentWrapper',
|
|
196
|
+
'textWrapper',
|
|
197
|
+
'textContent',
|
|
198
|
+
'headline',
|
|
199
|
+
'gap'
|
|
200
|
+
);
|
|
201
|
+
min-height: base.simple-var(
|
|
202
|
+
list.$list,
|
|
203
|
+
'anatomy',
|
|
204
|
+
'size',
|
|
205
|
+
$size,
|
|
206
|
+
'listItem',
|
|
207
|
+
'contentWrapper',
|
|
208
|
+
'textWrapper',
|
|
209
|
+
'textContent',
|
|
210
|
+
'headline',
|
|
211
|
+
'min-height'
|
|
212
|
+
);
|
|
201
213
|
}
|
|
202
214
|
}
|
|
203
215
|
}
|
|
@@ -220,9 +232,30 @@ $level: var(--level, 0);
|
|
|
220
232
|
}
|
|
221
233
|
}
|
|
222
234
|
|
|
223
|
-
.
|
|
235
|
+
.contentWrapper {
|
|
236
|
+
display: flex;
|
|
237
|
+
flex: 1 1 auto;
|
|
238
|
+
align-items: center;
|
|
239
|
+
min-width: 0;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
.textWrapper {
|
|
243
|
+
display: flex;
|
|
244
|
+
flex: 1 1 auto;
|
|
245
|
+
align-items: center;
|
|
246
|
+
min-width: 0;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
.textContent {
|
|
250
|
+
display: flex;
|
|
251
|
+
flex-direction: column;
|
|
252
|
+
min-width: 0;
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
.headline {
|
|
224
256
|
overflow: hidden;
|
|
225
|
-
|
|
257
|
+
display: flex;
|
|
258
|
+
align-items: center;
|
|
226
259
|
|
|
227
260
|
&[data-group-variant='subtitle'] {
|
|
228
261
|
color: base.$sn-theme-color-available-version-textMain;
|
|
@@ -234,22 +267,20 @@ $level: var(--level, 0);
|
|
|
234
267
|
}
|
|
235
268
|
|
|
236
269
|
.divider {
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
.labelEnd {
|
|
243
|
-
display: flex;
|
|
244
|
-
flex: 1 0 0;
|
|
245
|
-
flex-direction: column;
|
|
246
|
-
align-items: flex-end;
|
|
247
|
-
justify-content: center;
|
|
270
|
+
position: absolute;
|
|
271
|
+
right: 0;
|
|
272
|
+
bottom: 0;
|
|
273
|
+
left: 0;
|
|
248
274
|
|
|
275
|
+
width: auto;
|
|
249
276
|
min-width: 0;
|
|
250
277
|
}
|
|
251
278
|
|
|
252
279
|
.selectButton {
|
|
253
280
|
display: flex;
|
|
281
|
+
flex-shrink: 0;
|
|
254
282
|
justify-content: flex-end;
|
|
283
|
+
|
|
284
|
+
// Кнопка выравнивается по правому краю строки заголовка.
|
|
285
|
+
margin-left: auto;
|
|
255
286
|
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SELECT_BUTTON_SIZE_MAP = void 0;
|
|
4
|
-
// @cloud-ru/ds-button пока без выделенного ButtonFunction и размера `xs` (Phase 5 cross-package blocker):
|
|
5
|
-
// маппим размеры списка на ближайшие доступные `Button` size.
|
|
6
|
-
exports.SELECT_BUTTON_SIZE_MAP = {
|
|
7
|
-
s: 's',
|
|
8
|
-
m: 's',
|
|
9
|
-
l: 'm',
|
|
10
|
-
};
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ButtonProps } from '@cloud-ru/ds-button';
|
|
2
|
-
|
|
3
|
-
import { Size } from '../../types';
|
|
4
|
-
|
|
5
|
-
// @cloud-ru/ds-button пока без выделенного ButtonFunction и размера `xs` (Phase 5 cross-package blocker):
|
|
6
|
-
// маппим размеры списка на ближайшие доступные `Button` size.
|
|
7
|
-
export const SELECT_BUTTON_SIZE_MAP: Record<Size, ButtonProps['size']> = {
|
|
8
|
-
s: 's',
|
|
9
|
-
m: 's',
|
|
10
|
-
l: 'm',
|
|
11
|
-
};
|