@cloud-ru/ds-list 2.0.1-preview-04507fc5.0 → 2.0.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.
Files changed (26) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/cjs/components/Items/BaseItem/styles.module.css +0 -12
  3. package/dist/cjs/components/Items/styles.module.css +0 -12
  4. package/dist/cjs/components/Lists/ListPrivate/styles.module.css +1 -1
  5. package/dist/cjs/helperComponents/Separator/Separator.js +2 -1
  6. package/dist/cjs/helperComponents/Separator/constants.d.ts +3 -0
  7. package/dist/cjs/helperComponents/Separator/constants.js +10 -0
  8. package/dist/cjs/helperComponents/Separator/styles.module.css +3 -12
  9. package/dist/cjs/style.css +4 -37
  10. package/dist/esm/components/Items/BaseItem/styles.module.css +0 -12
  11. package/dist/esm/components/Items/styles.module.css +0 -12
  12. package/dist/esm/components/Lists/ListPrivate/styles.module.css +1 -1
  13. package/dist/esm/helperComponents/Separator/Separator.js +2 -1
  14. package/dist/esm/helperComponents/Separator/constants.d.ts +3 -0
  15. package/dist/esm/helperComponents/Separator/constants.js +7 -0
  16. package/dist/esm/helperComponents/Separator/styles.module.css +3 -12
  17. package/dist/esm/style.css +4 -37
  18. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  19. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  20. package/package.json +18 -18
  21. package/src/components/Items/BaseItem/styles.module.scss +0 -7
  22. package/src/components/Items/styles.module.scss +0 -8
  23. package/src/components/Lists/ListPrivate/styles.module.scss +1 -1
  24. package/src/helperComponents/Separator/Separator.tsx +2 -1
  25. package/src/helperComponents/Separator/constants.ts +11 -0
  26. package/src/helperComponents/Separator/styles.module.scss +1 -25
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloud-ru/ds-list",
3
- "version": "2.0.1-preview-04507fc5.0",
3
+ "version": "2.0.1",
4
4
  "description": "Списочный UI — компонент List для плоских/вложенных списков с выбором, группами и поиском и Droplist — тот же список в поповере.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -48,24 +48,24 @@
48
48
  "@tanstack/react-virtual": "^3.14.8",
49
49
  "classnames": "^2.5.1",
50
50
  "merge-refs": "^2.0.0",
51
- "@cloud-ru/ds-adaptive": "1.0.1",
52
- "@cloud-ru/ds-bottom-sheet": "1.0.2",
53
- "@cloud-ru/ds-button": "1.0.1",
54
- "@cloud-ru/ds-divider": "1.0.1",
55
- "@cloud-ru/ds-drag-and-drop": "1.1.1",
56
- "@cloud-ru/ds-dropdown": "1.0.3-preview-04507fc5.0",
57
- "@cloud-ru/ds-icons": "1.0.1",
58
- "@cloud-ru/ds-info-block": "1.0.1",
59
- "@cloud-ru/ds-materials": "1.0.1",
60
- "@cloud-ru/ds-loader": "1.0.1",
61
- "@cloud-ru/ds-portal-context": "1.0.1",
62
- "@cloud-ru/ds-scroll": "1.0.1",
63
- "@cloud-ru/ds-search-private": "1.0.2",
64
- "@cloud-ru/ds-toggles": "1.1.1",
65
- "@cloud-ru/ds-truncate-string": "1.0.2",
66
- "@cloud-ru/ds-utils": "1.1.0"
51
+ "@cloud-ru/ds-drag-and-drop": "^1.1.1",
52
+ "@cloud-ru/ds-divider": "^1.0.1",
53
+ "@cloud-ru/ds-adaptive": "^1.0.1",
54
+ "@cloud-ru/ds-info-block": "^1.0.1",
55
+ "@cloud-ru/ds-materials": "^1.0.1",
56
+ "@cloud-ru/ds-dropdown": "^1.0.3",
57
+ "@cloud-ru/ds-loader": "^1.0.1",
58
+ "@cloud-ru/ds-portal-context": "^1.0.1",
59
+ "@cloud-ru/ds-icons": "^1.0.2",
60
+ "@cloud-ru/ds-bottom-sheet": "^1.0.3",
61
+ "@cloud-ru/ds-scroll": "^1.0.2",
62
+ "@cloud-ru/ds-search-private": "^1.0.3",
63
+ "@cloud-ru/ds-toggles": "^1.1.2",
64
+ "@cloud-ru/ds-truncate-string": "^1.0.3",
65
+ "@cloud-ru/ds-utils": "^1.1.0",
66
+ "@cloud-ru/ds-button": "^1.0.1"
67
67
  },
68
68
  "peerDependencies": {
69
- "@cloud-ru/ds-locale": "1.0.0"
69
+ "@cloud-ru/ds-locale": "^1.0.0"
70
70
  }
71
71
  }
@@ -185,13 +185,6 @@ $level: var(--level, 0);
185
185
  min-height: base.simple-var(icons.$iconSizeMap, $size);
186
186
  padding-top: base.simple-var(list.$list, 'anatomy', 'size', $size, 'listItem', 'centeredWrapper', 'padding-top');
187
187
  padding-bottom: base.simple-var(list.$list, 'anatomy', 'size', $size, 'listItem', 'centeredWrapper', 'padding-bottom');
188
-
189
- // Ширина слота здесь `auto`, поэтому размер иконки из `@cloud-ru/ds-icons` перебивается
190
- // только через `max-*`.
191
- > svg {
192
- max-width: base.simple-var(icons.$iconSizeMap, $size);
193
- max-height: base.simple-var(icons.$iconSizeMap, $size);
194
- }
195
188
  }
196
189
 
197
190
  .groupIndicator {
@@ -94,14 +94,6 @@ $sizes: 's', 'm', 'l';
94
94
  @each $size in $sizes {
95
95
  &[data-size='#{$size}'] {
96
96
  @include base.composite-var(list.$list, 'anatomy', 'size', $size, 'listItem');
97
-
98
- // listItem.gap относится к детям корня, а contentWrapper в разметке схлопнут — иначе
99
- // gap сложился бы с textContent.padding-horizontal и удвоил отступ.
100
- gap: 0;
101
-
102
- .groupIndicator {
103
- margin-left: base.simple-var(list.$list, 'anatomy', 'size', $size, 'listItem', 'gap');
104
- }
105
97
  }
106
98
  }
107
99
 
@@ -67,7 +67,7 @@ $loader-height: (
67
67
 
68
68
  &[data-divider] {
69
69
  margin-bottom: popupPrivate.$sn-popupPrivate-anatomy-dropdown-header-gap;
70
- padding-bottom: popupPrivate.$sn-popupPrivate-anatomy-dropdown-header-gap;
70
+ padding-bottom: popupPrivate.$sn-popupPrivate-anatomy-dropdown-header-headlineWrapper-paddingHorizontal;
71
71
  border-bottom: base.$sn-primitive-strokeWeight-strokeRegular solid base.$sn-theme-color-available-borderColor;
72
72
  }
73
73
  }
@@ -7,6 +7,7 @@ import { useCollapseLevelContext, useNewListContext } from '../../components/Lis
7
7
  import { TEST_IDS } from '../../constants';
8
8
  import { listLocale } from '../../locale';
9
9
  import { stopPropagation } from '../../utils';
10
+ import { SELECT_BUTTON_SIZE_MAP } from './constants';
10
11
  import styles from './styles.module.scss';
11
12
 
12
13
  export type SeparatorProps = {
@@ -52,7 +53,7 @@ export function Separator({
52
53
  <Button
53
54
  view='function'
54
55
  appearance='neutral'
55
- size={size}
56
+ size={SELECT_BUTTON_SIZE_MAP[size]}
56
57
  tabIndex={0}
57
58
  data-test-id={TEST_IDS.bulkSelectButton}
58
59
  onClick={(e: MouseEvent<HTMLElement>) => {
@@ -0,0 +1,11 @@
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
+ };
@@ -97,7 +97,7 @@ $level: var(--level, 0);
97
97
  $itemPaddingLeft: base.simple-var(list.$list, 'anatomy', 'size', $size, 'listItem', 'padding-left');
98
98
  $itemGap: base.simple-var(list.$list, 'anatomy', 'size', $size, 'listItem', 'gap');
99
99
 
100
- // Зазор между иконкой и текстом даёт textContent.padding-horizontal (см. .label ниже).
100
+ gap: $itemGap;
101
101
  padding: base.simple-var(list.$list, 'anatomy', 'size', $size, 'subtitle', 'padding-top')
102
102
  base.simple-var(list.$list, 'anatomy', 'size', $size, 'listItem', 'padding-right')
103
103
  base.simple-var(list.$list, 'anatomy', 'size', $size, 'listItem', 'padding-bottom')
@@ -112,30 +112,6 @@ $level: var(--level, 0);
112
112
  );
113
113
  }
114
114
 
115
- // textWrapper.padding-vertical для слота кнопки; на .label тот же токен приходит ниже.
116
- .labelEnd {
117
- padding-top: base.simple-var(
118
- list.$list,
119
- 'anatomy',
120
- 'size',
121
- $size,
122
- 'listItem',
123
- 'contentWrapper',
124
- 'textWrapper',
125
- 'padding-top'
126
- );
127
- padding-bottom: base.simple-var(
128
- list.$list,
129
- 'anatomy',
130
- 'size',
131
- $size,
132
- 'listItem',
133
- 'contentWrapper',
134
- 'textWrapper',
135
- 'padding-bottom'
136
- );
137
- }
138
-
139
115
  .beforeContent {
140
116
  width: base.simple-var(icons.$iconSizeMap, $size);
141
117
  height: base.simple-var(icons.$iconSizeMap, $size);