@alfalab/core-components-steps 1.6.2 → 1.7.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.
Files changed (40) hide show
  1. package/Component.js +1 -1
  2. package/components/step/Component.js +1 -1
  3. package/components/step/index.css +56 -49
  4. package/components/step-indicator/Component.js +1 -1
  5. package/components/step-indicator/index.css +2 -2
  6. package/cssm/components/step/index.module.css +25 -18
  7. package/cssm/components/step-indicator/index.module.css +1 -1
  8. package/cssm/index.module.css +9 -5
  9. package/esm/Component.js +1 -1
  10. package/esm/components/step/Component.js +1 -1
  11. package/esm/components/step/index.css +56 -49
  12. package/esm/components/step-indicator/Component.js +1 -1
  13. package/esm/components/step-indicator/index.css +2 -2
  14. package/esm/index.css +12 -8
  15. package/index.css +12 -8
  16. package/modern/Component.js +1 -1
  17. package/modern/components/step/Component.js +1 -1
  18. package/modern/components/step/index.css +56 -49
  19. package/modern/components/step-indicator/Component.js +1 -1
  20. package/modern/components/step-indicator/index.css +2 -2
  21. package/modern/index.css +12 -8
  22. package/moderncssm/Component.d.ts +99 -0
  23. package/moderncssm/Component.js +39 -0
  24. package/moderncssm/components/step/Component.d.ts +80 -0
  25. package/moderncssm/components/step/Component.js +89 -0
  26. package/moderncssm/components/step/index.d.ts +1 -0
  27. package/moderncssm/components/step/index.js +1 -0
  28. package/moderncssm/components/step/index.module.css +170 -0
  29. package/moderncssm/components/step-indicator/Component.d.ts +6 -0
  30. package/moderncssm/components/step-indicator/Component.js +8 -0
  31. package/moderncssm/components/step-indicator/index.d.ts +1 -0
  32. package/moderncssm/components/step-indicator/index.js +1 -0
  33. package/moderncssm/components/step-indicator/index.module.css +3 -0
  34. package/moderncssm/index.d.ts +1 -0
  35. package/moderncssm/index.js +1 -0
  36. package/moderncssm/index.module.css +12 -0
  37. package/package.json +5 -3
  38. package/src/components/step/index.module.css +10 -10
  39. package/src/components/step-indicator/index.module.css +1 -1
  40. package/src/index.module.css +1 -1
@@ -1,16 +1,16 @@
1
- /* hash: hzyxv */
1
+ /* hash: uzdw6 */
2
2
  :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
3
3
  } /* deprecated */ :root {
4
- --color-light-border-link: #2288fa;
5
4
  --color-light-neutral-translucent-1300: rgba(3, 3, 6, 0.88);
6
5
  --color-light-neutral-translucent-300: rgba(15, 25, 55, 0.1);
6
+ --color-light-status-info: #2288fa;
7
7
  --color-light-status-positive: #0cc44d;
8
8
  --color-light-text-primary: rgba(3, 3, 6, 0.88);
9
9
  --color-light-text-primary-inverted: rgba(255, 255, 255, 0.94);
10
10
  --color-light-transparent-default-hover: rgba(38, 55, 88, 0.06);
11
- --color-light-transparent-default-press: rgba(30, 43, 68, 0.08); /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
12
- } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
13
- } :root {
11
+ --color-light-transparent-default-press: rgba(30, 43, 68, 0.08); /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
12
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
13
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
14
14
  } :root {
15
15
 
16
16
  /* Hard */
@@ -18,38 +18,45 @@
18
18
  /* Up */
19
19
 
20
20
  /* Hard up */
21
- } :root {
21
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
22
22
  --border-radius-circle: 50%;
23
+
24
+ /* новые значения, используйте их */
23
25
  } :root {
24
- --gap-3xs: 2px;
25
- --gap-2xs: 4px;
26
- --gap-xs: 8px;
26
+ --gap-3xs: 2px; /* deprecated */
27
+ --gap-2xs: 4px; /* deprecated */
28
+ --gap-xs: 8px; /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
29
+
30
+ /* новые значения, используйте их */
31
+ --gap-2: var(--gap-3xs);
32
+ --gap-4: var(--gap-2xs);
33
+ --gap-8: var(--gap-xs);
27
34
  } :root {
28
35
  } :root {
29
- --focus-color: var(--color-light-border-link);
36
+ --focus-color: var(--color-light-status-info);
30
37
  } :root {
31
38
  --steps-option-svg-color: var(--color-light-status-positive);
32
39
  --steps-dash-border: 2px solid var(--color-light-status-positive);
33
- } .steps__step_x2lwq {
40
+ } .steps__step_14of2 {
34
41
  display: flex;
35
42
  outline: none
36
- } .steps__step_x2lwq:not(.steps__vertical_x2lwq) {
43
+ } .steps__step_14of2:not(.steps__vertical_14of2) {
37
44
  align-items: center;
38
- } .steps__step_x2lwq.steps__interactive_x2lwq:not(.steps__disabled_x2lwq):hover {
45
+ } .steps__step_14of2.steps__interactive_14of2:not(.steps__disabled_14of2):hover {
39
46
  cursor: pointer;
40
- } .steps__step_x2lwq.steps__disabled_x2lwq:hover .steps__text_x2lwq {
47
+ } .steps__step_14of2.steps__disabled_14of2:hover .steps__text_14of2 {
41
48
  background: unset;
42
- } .steps__step_x2lwq.steps__disabled_x2lwq .steps__indicator_x2lwq {
49
+ } .steps__step_14of2.steps__disabled_14of2 .steps__indicator_14of2 {
43
50
  cursor: unset;
44
- } .steps__indicator_x2lwq {
51
+ } .steps__indicator_14of2 {
45
52
  cursor: pointer;
46
53
  display: flex;
47
54
  align-items: center;
48
- margin-right: var(--gap-2xs)
49
- } .steps__indicator_x2lwq.steps__vertical_x2lwq {
55
+ margin-right: var(--gap-4)
56
+ } .steps__indicator_14of2.steps__vertical_14of2 {
50
57
  flex-direction: column;
51
- margin-right: var(--gap-xs);
52
- } .steps__option_x2lwq {
58
+ margin-right: var(--gap-8);
59
+ } .steps__option_14of2 {
53
60
  font-size: 14px;
54
61
  line-height: 20px;
55
62
  font-weight: 700;
@@ -62,55 +69,55 @@
62
69
  min-width: 24px;
63
70
  height: 24px;
64
71
  border-radius: var(--border-radius-circle)
65
- } .steps__option_x2lwq.steps__vertical_x2lwq {
66
- margin-top: var(--gap-xs);
67
- } .steps__dash_x2lwq {
72
+ } .steps__option_14of2.steps__vertical_14of2 {
73
+ margin-top: var(--gap-8);
74
+ } .steps__dash_14of2 {
68
75
  flex: 1 1 auto;
69
76
  min-width: 24px;
70
77
  border-top: 2px solid var(--color-light-neutral-translucent-300);
71
- margin-right: var(--gap-xs)
72
- } .steps__dash_x2lwq.steps__size-16_x2lwq {
78
+ margin-right: var(--gap-8)
79
+ } .steps__dash_14of2.steps__size-16_14of2 {
73
80
  min-width: 16px;
74
- } .steps__dash_x2lwq.steps__size-8_x2lwq {
81
+ } .steps__dash_14of2.steps__size-8_14of2 {
75
82
  min-width: 8px;
76
- } .steps__dash_x2lwq.steps__completed_x2lwq {
83
+ } .steps__dash_14of2.steps__completed_14of2 {
77
84
  border-top: var(--steps-dash-border);
78
- } .steps__dash_x2lwq.steps__vertical_x2lwq {
85
+ } .steps__dash_14of2.steps__vertical_14of2 {
79
86
  min-width: unset;
80
87
  min-height: 24px;
81
88
  margin-right: 0;
82
- margin-top: var(--gap-xs);
89
+ margin-top: var(--gap-8);
83
90
  border-left: 2px solid var(--color-light-neutral-translucent-300);
84
91
  border-top: none
85
- } .steps__dash_x2lwq.steps__vertical_x2lwq.steps__size-16_x2lwq {
92
+ } .steps__dash_14of2.steps__vertical_14of2.steps__size-16_14of2 {
86
93
  min-height: 16px;
87
- } .steps__dash_x2lwq.steps__vertical_x2lwq.steps__size-8_x2lwq {
94
+ } .steps__dash_14of2.steps__vertical_14of2.steps__size-8_14of2 {
88
95
  min-height: 8px;
89
- } .steps__dash_x2lwq.steps__completed_x2lwq.steps__vertical_x2lwq {
96
+ } .steps__dash_14of2.steps__completed_14of2.steps__vertical_14of2 {
90
97
  border-left: var(--steps-dash-border);
91
- } .steps__text_x2lwq {
98
+ } .steps__text_14of2 {
92
99
  font-size: 16px;
93
100
  line-height: 24px;
94
101
  font-weight: 400;
95
102
 
96
103
  transition: background 0.2s;
97
- padding: var(--gap-xs);
104
+ padding: var(--gap-8);
98
105
  color: var(--color-light-text-primary);
99
- border-radius: var(--gap-xs);
106
+ border-radius: var(--gap-8);
100
107
  height: min-content
101
- } .steps__text_x2lwq.steps__interactive_x2lwq:not(.steps__disabled_x2lwq):hover {
108
+ } .steps__text_14of2.steps__interactive_14of2:not(.steps__disabled_14of2):hover {
102
109
  background: var(--color-light-transparent-default-hover);
103
- } .steps__text_x2lwq.steps__interactive_x2lwq:not(.steps__disabled_x2lwq):active {
110
+ } .steps__text_14of2.steps__interactive_14of2:not(.steps__disabled_14of2):active {
104
111
  background: var(--color-light-transparent-default-press);
105
- } .steps__focused_x2lwq {
106
- outline: var(--gap-3xs) solid var(--focus-color);
107
- outline-offset: var(--gap-3xs);
108
- } .steps__selected_x2lwq .steps__text_x2lwq {
112
+ } .steps__focused_14of2 {
113
+ outline: var(--gap-2) solid var(--focus-color);
114
+ outline-offset: var(--gap-2);
115
+ } .steps__selected_14of2 .steps__text_14of2 {
109
116
  color: var(--color-light-text-primary);
110
- } .steps__selected_x2lwq .steps__option_x2lwq {
117
+ } .steps__selected_14of2 .steps__option_14of2 {
111
118
  color: var(--color-light-text-primary-inverted);
112
119
  background: var(--color-light-neutral-translucent-1300);
113
- } .steps__checkbox_x2lwq {
120
+ } .steps__checkbox_14of2 {
114
121
  display: flex;
115
122
  justify-content: center;
116
123
  align-items: center;
@@ -118,20 +125,20 @@
118
125
  width: 20px;
119
126
  height: 20px;
120
127
  border: 2px solid var(--color-light-neutral-translucent-300);
121
- } .steps__dot_x2lwq {
128
+ } .steps__dot_14of2 {
122
129
  width: 10px;
123
130
  height: 10px;
124
131
  border-radius: var(--border-radius-circle);
125
132
  background: var(--color-light-neutral-translucent-300);
126
- } .steps__selected_x2lwq .steps__checkbox_x2lwq {
133
+ } .steps__selected_14of2 .steps__checkbox_14of2 {
127
134
  border: 2px solid var(--color-light-neutral-translucent-1300)
128
- } .steps__selected_x2lwq .steps__checkbox_x2lwq .steps__dot_x2lwq {
135
+ } .steps__selected_14of2 .steps__checkbox_14of2 .steps__dot_14of2 {
129
136
  background: var(--color-light-neutral-translucent-1300);
130
- } .steps__option_x2lwq:not(.steps__error_x2lwq).steps__unordered_x2lwq {
137
+ } .steps__option_14of2:not(.steps__error_14of2).steps__unordered_14of2 {
131
138
  background: unset;
132
- } .steps__completedIndicator_x2lwq > [class*='positive'] {
139
+ } .steps__completedIndicator_14of2 > [class*='positive'] {
133
140
  color: var(--steps-option-svg-color);
134
141
  background-color: var(--steps-option-svg-color);
135
- } .steps__fullWidth_x2lwq {
142
+ } .steps__fullWidth_14of2 {
136
143
  width: 100%;
137
144
  }
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import cn from 'classnames';
3
3
  import { Badge } from '@alfalab/core-components-badge/modern';
4
4
 
5
- const styles = {"component":"steps__component_j5e09"};
5
+ const styles = {"component":"steps__component_18el7"};
6
6
  require('./index.css')
7
7
 
8
8
  const StepIndicator = ({ content, iconColor, className }) => (React.createElement(Badge, { size: 'l', view: 'icon', iconColor: iconColor, className: cn(styles.component, className), content: content }));
@@ -1,4 +1,4 @@
1
- /* hash: wog03 */
2
- .steps__component_j5e09 {
1
+ /* hash: 19nuy */
2
+ .steps__component_18el7.steps__component_18el7 {
3
3
  padding: 0;
4
4
  }
package/modern/index.css CHANGED
@@ -1,8 +1,8 @@
1
- /* hash: 15d60 */
1
+ /* hash: jq6h1 */
2
2
  :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
3
- } /* deprecated */ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
4
- } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
5
- } :root {
3
+ } /* deprecated */ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
4
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
5
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
6
6
  } :root {
7
7
 
8
8
  /* Hard */
@@ -10,15 +10,19 @@
10
10
  /* Up */
11
11
 
12
12
  /* Hard up */
13
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
14
+
15
+ /* новые значения, используйте их */
16
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
17
+
18
+ /* новые значения, используйте их */
13
19
  } :root {
14
20
  } :root {
15
- } :root {
16
- } :root {
17
- } .steps__component_7b4f4 {
21
+ } .steps__component_t81r1 {
18
22
  display: flex;
19
23
  align-items: center;
20
24
  flex-direction: row
21
- } .steps__component_7b4f4.steps__vertical_7b4f4 {
25
+ } .steps__component_t81r1.steps__vertical_t81r1 {
22
26
  flex-direction: column;
23
27
  align-items: flex-start;
24
28
  }
@@ -0,0 +1,99 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { ReactNode } from "react";
4
+ import { StepIndicatorProps } from "./components/step-indicator/index";
5
+ type StepsProps = {
6
+ /**
7
+ * Дополнительный класс
8
+ */
9
+ className?: string;
10
+ /**
11
+ * Дочерние элементы
12
+ */
13
+ children: ReactNode;
14
+ /**
15
+ * Активный шаг, указанный по умолчанию
16
+ * @default 1
17
+ */
18
+ defaultActiveStep?: number;
19
+ /**
20
+ * Активный шаг
21
+ */
22
+ activeStep?: number;
23
+ /**
24
+ * Управление возможностью отключения пометки пройденного шага
25
+ * @default true
26
+ */
27
+ isMarkCompletedSteps?: boolean;
28
+ /**
29
+ * Управление ориентацией компонента
30
+ * @default false
31
+ */
32
+ isVerticalAlign?: boolean;
33
+ /**
34
+ * Управление отображением номера шага
35
+ */
36
+ ordered?: boolean;
37
+ /**
38
+ * Включение / отключение интерактивности шагов
39
+ */
40
+ interactive?: boolean;
41
+ /**
42
+ * Растягивание шагов на всю ширину блока для вертикальной ориентации
43
+ * @default false
44
+ */
45
+ fullWidth?: boolean;
46
+ /**
47
+ * Минимальное расстояние между шагами
48
+ * @default 24
49
+ */
50
+ minSpaceBetweenSteps?: 8 | 16 | 24;
51
+ /**
52
+ * Кастомный метод для управления состоянием disabled шага и
53
+ * возможностью перехода на этот шаг
54
+ * @param stepNumber - номер шага
55
+ * @return Флаг состояния disabled
56
+ */
57
+ checkIsStepDisabled?: (stepNumber: number) => boolean;
58
+ /**
59
+ * Кастомный метод для управления состоянием шага error
60
+ * @param stepNumber - номер шага
61
+ * @return Флаг состояния error
62
+ */
63
+ checkIsStepError?: (stepNumber: number) => boolean;
64
+ /**
65
+ * Кастомный метод для управления состоянием шага warning
66
+ * @param stepNumber - номер шага
67
+ * @return Флаг состояния warning
68
+ */
69
+ checkIsStepWarning?: (stepNumber: number) => boolean;
70
+ /**
71
+ * Кастомный метод для управления состоянием шага waiting
72
+ * @param stepNumber - номер шага
73
+ * @return Флаг состояния waiting
74
+ */
75
+ checkIsStepWaiting?: (stepNumber: number) => boolean;
76
+ /**
77
+ * Кастомный метод для управления состоянием шага positive
78
+ * @param stepNumber - номер шага
79
+ * @return Флаг состояния positive
80
+ */
81
+ checkIsStepPositive?: (stepNumber: number) => boolean;
82
+ /**
83
+ * Кастомный метод для установки кастомного индикатора шага
84
+ * @param stepNumber - номер шага
85
+ * @return Объект StepIndicatorProps { className, content, iconColor } или null
86
+ */
87
+ checkIsStepCustom?: (stepNumber: number) => StepIndicatorProps | null;
88
+ /**
89
+ * Обработчик клика на шаг
90
+ * @param stepNumber - номер активного шага
91
+ */
92
+ onChange?: (stepNumber: number) => void;
93
+ /**
94
+ * Идентификатор для систем автоматизированного тестирования
95
+ */
96
+ dataTestId?: string;
97
+ };
98
+ declare const Steps: React.FC<StepsProps>;
99
+ export { StepsProps, Steps };
@@ -0,0 +1,39 @@
1
+ import React, { useState } from 'react';
2
+ import cn from 'classnames';
3
+ import { Step } from './components/step/Component.js';
4
+ import styles from './index.module.css';
5
+
6
+ const Steps = ({ className, children, defaultActiveStep = 1, activeStep: activeStepProp, isMarkCompletedSteps = true, isVerticalAlign = false, ordered = true, interactive = true, fullWidth = false, minSpaceBetweenSteps = 24, checkIsStepDisabled, checkIsStepError, checkIsStepWarning, checkIsStepWaiting, checkIsStepPositive, checkIsStepCustom, onChange, dataTestId, }) => {
7
+ const uncontrolled = activeStepProp === undefined;
8
+ const [activeStep, setActiveStep] = useState(defaultActiveStep);
9
+ const stepsLength = React.Children.count(children);
10
+ const handleStepClick = (stepNumber) => {
11
+ if (uncontrolled) {
12
+ setActiveStep(stepNumber);
13
+ }
14
+ if (onChange) {
15
+ onChange(stepNumber);
16
+ }
17
+ };
18
+ if (!stepsLength)
19
+ return null;
20
+ const visibleActiveStep = uncontrolled ? activeStep : activeStepProp;
21
+ return (React.createElement("div", { className: cn(className, styles.component, {
22
+ [styles.vertical]: isVerticalAlign,
23
+ }), "data-test-id": dataTestId }, React.Children.map(children, (step, index) => {
24
+ const stepNumber = index + 1;
25
+ const isSelected = stepNumber === visibleActiveStep;
26
+ const isStepCompleted = isMarkCompletedSteps && stepNumber < visibleActiveStep;
27
+ const disabled = checkIsStepDisabled ? checkIsStepDisabled(stepNumber) : false;
28
+ const isPositive = checkIsStepPositive ? checkIsStepPositive(stepNumber) : false;
29
+ const isError = checkIsStepError ? checkIsStepError(stepNumber) : false;
30
+ const isWarning = checkIsStepWarning ? checkIsStepWarning(stepNumber) : false;
31
+ const isWaiting = checkIsStepWaiting ? checkIsStepWaiting(stepNumber) : false;
32
+ const customStepIndicator = checkIsStepCustom && checkIsStepCustom(stepNumber);
33
+ const isNotLastStep = stepsLength !== stepNumber;
34
+ const isInteractive = !disabled && interactive;
35
+ return (React.createElement(Step, { stepNumber: stepNumber, isSelected: isSelected, isStepCompleted: isStepCompleted, disabled: disabled, isPositive: isPositive, isError: isError, isWarning: isWarning, isWaiting: isWaiting, customStepIndicator: customStepIndicator, onClick: handleStepClick, ordered: ordered, interactive: isInteractive, isVerticalAlign: isVerticalAlign, isNotLastStep: isNotLastStep, key: stepNumber, fullWidth: fullWidth, minSpaceBetweenSteps: minSpaceBetweenSteps }, step));
36
+ })));
37
+ };
38
+
39
+ export { Steps };
@@ -0,0 +1,80 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { ReactNode } from "react";
4
+ import { StepIndicatorProps } from "../step-indicator/index";
5
+ type StepProps = {
6
+ /**
7
+ * Название шага
8
+ */
9
+ children: ReactNode;
10
+ /**
11
+ * Номер шага
12
+ */
13
+ stepNumber: number;
14
+ /**
15
+ * Маркер того, что текущий шаг выбран
16
+ */
17
+ isSelected: boolean;
18
+ /**
19
+ * Маркер того, что текущий шаг доступен для клика
20
+ */
21
+ disabled: boolean;
22
+ /**
23
+ * Управление отображением номера шага
24
+ */
25
+ ordered?: boolean;
26
+ /**
27
+ * Включение / отключение интерактивности шагов
28
+ */
29
+ interactive?: boolean;
30
+ /**
31
+ * Маркер того, что текущий шаг находится в состоянии "Positive"
32
+ */
33
+ isPositive: boolean;
34
+ /**
35
+ * Маркер того, что текущий шаг находится в состоянии "Error"
36
+ */
37
+ isError: boolean;
38
+ /**
39
+ * Маркер того, что текущий шаг находится в состоянии "Warning"
40
+ */
41
+ isWarning: boolean;
42
+ /**
43
+ * Маркер того, что текущий шаг находится в состоянии "Waiting"
44
+ */
45
+ isWaiting: boolean;
46
+ /**
47
+ * Маркер того, что текущий шаг нужно пометить как завершенный
48
+ */
49
+ isStepCompleted: boolean;
50
+ /**
51
+ * Свойства кастомного индикатора текущего шага
52
+ */
53
+ customStepIndicator?: StepIndicatorProps | null;
54
+ /**
55
+ * Управление ориентацией компонента
56
+ * @default false
57
+ */
58
+ isVerticalAlign?: boolean;
59
+ /**
60
+ * Указывает, является ли текущий шаг последним в списке
61
+ */
62
+ isNotLastStep?: boolean;
63
+ /**
64
+ * Маркер того, что шаг растягивается на всю ширину блока
65
+ * для вертикальной ориентации
66
+ */
67
+ fullWidth?: boolean;
68
+ /**
69
+ * Минимальное расстояние между шагами
70
+ * @default 24
71
+ */
72
+ minSpaceBetweenSteps?: 8 | 16 | 24;
73
+ /**
74
+ * Обработчик нажатия на текущей шаг
75
+ * @param stepNumber - номер шага
76
+ */
77
+ onClick: (stepNumber: number) => void;
78
+ };
79
+ declare const Step: React.FC<StepProps>;
80
+ export { StepProps, Step };
@@ -0,0 +1,89 @@
1
+ import React, { useRef } from 'react';
2
+ import cn from 'classnames';
3
+ import { useFocus } from '@alfalab/hooks';
4
+ import { CheckmarkCircleMIcon } from '@alfalab/icons-glyph/CheckmarkCircleMIcon';
5
+ import { ClockMIcon } from '@alfalab/icons-glyph/ClockMIcon';
6
+ import { ExclamationCircleMIcon } from '@alfalab/icons-glyph/ExclamationCircleMIcon';
7
+ import { StepIndicator } from '../step-indicator/Component.js';
8
+ import styles from './index.module.css';
9
+
10
+ const SIZE_TO_CLASSNAME_MAP = {
11
+ 8: 'size-8',
12
+ 16: 'size-16',
13
+ 24: 'size-24',
14
+ };
15
+ const Step = ({ children, stepNumber, isSelected, disabled, ordered, isPositive, isError, isWarning, isWaiting, customStepIndicator, isStepCompleted, onClick, interactive, isVerticalAlign, isNotLastStep, fullWidth, minSpaceBetweenSteps = 24, }) => {
16
+ const stepRef = useRef(null);
17
+ const [focused] = useFocus(stepRef, 'keyboard');
18
+ const handleButtonClick = () => {
19
+ if (!disabled && interactive && onClick) {
20
+ onClick(stepNumber);
21
+ }
22
+ };
23
+ const handleTextClick = (e) => {
24
+ if (!interactive) {
25
+ e.stopPropagation();
26
+ }
27
+ };
28
+ const handleKeyDown = (event) => {
29
+ if (event.key === 'Enter') {
30
+ handleButtonClick();
31
+ }
32
+ };
33
+ const getStepIndicator = () => {
34
+ if (customStepIndicator) {
35
+ return React.createElement(StepIndicator, { ...customStepIndicator });
36
+ }
37
+ if (isError) {
38
+ return React.createElement(StepIndicator, { iconColor: 'negative', content: React.createElement(ExclamationCircleMIcon, null) });
39
+ }
40
+ if (isWarning) {
41
+ return React.createElement(StepIndicator, { iconColor: 'attention', content: React.createElement(ExclamationCircleMIcon, null) });
42
+ }
43
+ if (isWaiting) {
44
+ return React.createElement(StepIndicator, { iconColor: 'secondary', content: React.createElement(ClockMIcon, null) });
45
+ }
46
+ if (isPositive) {
47
+ return React.createElement(StepIndicator, { iconColor: 'positive', content: React.createElement(CheckmarkCircleMIcon, null) });
48
+ }
49
+ if (isStepCompleted) {
50
+ return (React.createElement(StepIndicator, { iconColor: 'positive', content: React.createElement(CheckmarkCircleMIcon, null), className: styles.completedIndicator }));
51
+ }
52
+ if (!ordered) {
53
+ return (React.createElement("div", { className: styles.checkbox },
54
+ React.createElement("span", { className: styles.dot })));
55
+ }
56
+ return stepNumber;
57
+ };
58
+ const renderDash = () => (React.createElement("div", { className: cn(styles.dash, {
59
+ [styles.vertical]: isVerticalAlign,
60
+ [styles.completed]: isStepCompleted,
61
+ }, styles[SIZE_TO_CLASSNAME_MAP[minSpaceBetweenSteps]]) }));
62
+ return (React.createElement("div", { role: 'button', tabIndex: 0, ref: stepRef, className: cn(styles.step, {
63
+ [styles.completed]: isStepCompleted,
64
+ [styles.error]: isError,
65
+ [styles.selected]: isSelected,
66
+ [styles.disabled]: disabled,
67
+ [styles.focused]: focused,
68
+ [styles.vertical]: isVerticalAlign,
69
+ [styles.interactive]: interactive,
70
+ [styles.fullWidth]: fullWidth && isVerticalAlign,
71
+ }), onClick: handleButtonClick, onKeyDown: handleKeyDown },
72
+ React.createElement("div", { className: cn(styles.indicator, {
73
+ [styles.vertical]: isVerticalAlign,
74
+ [styles.interactive]: interactive,
75
+ }) },
76
+ React.createElement("div", { className: cn(styles.option, {
77
+ [styles.unordered]: !ordered,
78
+ [styles.vertical]: isVerticalAlign,
79
+ [styles.error]: isError,
80
+ }) }, getStepIndicator()),
81
+ isNotLastStep && isVerticalAlign && renderDash()),
82
+ React.createElement("div", { className: cn(styles.text, {
83
+ [styles.interactive]: interactive,
84
+ [styles.fullWidth]: fullWidth && isVerticalAlign,
85
+ }), onClick: handleTextClick }, children),
86
+ isNotLastStep && !isVerticalAlign && renderDash()));
87
+ };
88
+
89
+ export { Step };
@@ -0,0 +1 @@
1
+ export * from "./Component";
@@ -0,0 +1 @@
1
+ export { Step } from './Component.js';