@alfalab/core-components-tabs 7.4.2 → 7.6.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 (104) hide show
  1. package/components/primary-tablist/Component.desktop.js +1 -1
  2. package/components/primary-tablist/Component.js +4 -1
  3. package/components/primary-tablist/Component.mobile.js +2 -2
  4. package/components/primary-tablist/Component.responsive.js +1 -1
  5. package/components/primary-tablist/index.css +29 -29
  6. package/components/primary-tablist/mobile.css +32 -32
  7. package/components/scrollable-container/Component.js +1 -1
  8. package/components/scrollable-container/index.css +5 -5
  9. package/components/secondary-tablist/Component.desktop.js +1 -1
  10. package/components/secondary-tablist/Component.mobile.js +2 -2
  11. package/components/secondary-tablist/Component.responsive.js +1 -1
  12. package/components/secondary-tablist/index.css +11 -11
  13. package/components/secondary-tablist/mobile.css +13 -13
  14. package/components/tab/Component.js +1 -1
  15. package/components/tab/index.css +3 -3
  16. package/components/tabs/Component.desktop.js +2 -2
  17. package/components/tabs/Component.js +2 -1
  18. package/components/tabs/Component.mobile.js +2 -2
  19. package/components/tabs/Component.responsive.js +2 -2
  20. package/cssm/components/primary-tablist/Component.js +4 -1
  21. package/cssm/components/tabs/Component.js +2 -1
  22. package/cssm/hooks/use-tablist-titles.d.ts +2 -0
  23. package/cssm/hooks/use-tabs.d.ts +1 -0
  24. package/cssm/hooks/use-tabs.js +6 -0
  25. package/cssm/index-3885b0d7.d.ts +2 -2
  26. package/cssm/typings.d.ts +1 -0
  27. package/desktop.js +2 -2
  28. package/esm/components/primary-tablist/Component.desktop.js +1 -1
  29. package/esm/components/primary-tablist/Component.js +5 -2
  30. package/esm/components/primary-tablist/Component.mobile.js +2 -2
  31. package/esm/components/primary-tablist/Component.responsive.js +1 -1
  32. package/esm/components/primary-tablist/index.css +29 -29
  33. package/esm/components/primary-tablist/mobile.css +32 -32
  34. package/esm/components/scrollable-container/Component.js +1 -1
  35. package/esm/components/scrollable-container/index.css +5 -5
  36. package/esm/components/secondary-tablist/Component.desktop.js +1 -1
  37. package/esm/components/secondary-tablist/Component.mobile.js +2 -2
  38. package/esm/components/secondary-tablist/Component.responsive.js +1 -1
  39. package/esm/components/secondary-tablist/index.css +11 -11
  40. package/esm/components/secondary-tablist/mobile.css +13 -13
  41. package/esm/components/tab/Component.js +1 -1
  42. package/esm/components/tab/index.css +3 -3
  43. package/esm/components/tabs/Component.desktop.js +2 -2
  44. package/esm/components/tabs/Component.js +2 -1
  45. package/esm/components/tabs/Component.mobile.js +2 -2
  46. package/esm/components/tabs/Component.responsive.js +2 -2
  47. package/esm/desktop.js +2 -2
  48. package/esm/hooks/use-tablist-titles.d.ts +2 -0
  49. package/esm/hooks/use-tabs.d.ts +1 -0
  50. package/esm/hooks/use-tabs.js +6 -0
  51. package/esm/index-3885b0d7.d.ts +2 -2
  52. package/esm/index.js +2 -2
  53. package/esm/index.module-72f734ce.js +4 -0
  54. package/esm/index.module-bd9d6b19.js +4 -0
  55. package/esm/mobile.js +2 -2
  56. package/esm/responsive.js +2 -2
  57. package/esm/typings.d.ts +1 -0
  58. package/hooks/use-tablist-titles.d.ts +2 -0
  59. package/hooks/use-tabs.d.ts +1 -0
  60. package/hooks/use-tabs.js +6 -0
  61. package/index-3885b0d7.d.ts +2 -2
  62. package/index.js +2 -2
  63. package/index.module-0f7a6fdd.js +6 -0
  64. package/index.module-56173cf5.js +6 -0
  65. package/mobile.js +2 -2
  66. package/modern/components/primary-tablist/Component.desktop.js +1 -1
  67. package/modern/components/primary-tablist/Component.js +1 -1
  68. package/modern/components/primary-tablist/Component.mobile.js +2 -2
  69. package/modern/components/primary-tablist/Component.responsive.js +1 -1
  70. package/modern/components/primary-tablist/index.css +29 -29
  71. package/modern/components/primary-tablist/mobile.css +32 -32
  72. package/modern/components/scrollable-container/Component.js +1 -1
  73. package/modern/components/scrollable-container/index.css +5 -5
  74. package/modern/components/secondary-tablist/Component.desktop.js +1 -1
  75. package/modern/components/secondary-tablist/Component.mobile.js +2 -2
  76. package/modern/components/secondary-tablist/Component.responsive.js +1 -1
  77. package/modern/components/secondary-tablist/index.css +11 -11
  78. package/modern/components/secondary-tablist/mobile.css +13 -13
  79. package/modern/components/tab/Component.js +1 -1
  80. package/modern/components/tab/index.css +3 -3
  81. package/modern/components/tabs/Component.desktop.js +2 -2
  82. package/modern/components/tabs/Component.js +2 -1
  83. package/modern/components/tabs/Component.mobile.js +2 -2
  84. package/modern/components/tabs/Component.responsive.js +2 -2
  85. package/modern/desktop.js +2 -2
  86. package/modern/hooks/use-tablist-titles.d.ts +2 -0
  87. package/modern/hooks/use-tabs.d.ts +1 -0
  88. package/modern/hooks/use-tabs.js +6 -0
  89. package/modern/index-3885b0d7.d.ts +2 -2
  90. package/modern/index.js +2 -2
  91. package/modern/index.module-2b4e7121.js +4 -0
  92. package/modern/index.module-e78fc797.js +4 -0
  93. package/modern/mobile.js +2 -2
  94. package/modern/responsive.js +2 -2
  95. package/modern/typings.d.ts +1 -0
  96. package/package.json +2 -2
  97. package/responsive.js +2 -2
  98. package/typings.d.ts +1 -0
  99. package/esm/index.module-ad30718b.js +0 -4
  100. package/esm/index.module-edd5702f.js +0 -4
  101. package/index.module-1aeb14d5.js +0 -6
  102. package/index.module-cfd2d08c.js +0 -6
  103. package/modern/index.module-be8fee8f.js +0 -4
  104. package/modern/index.module-c36d785f.js +0 -4
@@ -1,4 +1,4 @@
1
- /* hash: 4ds89 */
1
+ /* hash: disc0 */
2
2
  :root {
3
3
  }/* deprecated */:root {
4
4
  --color-light-border-accent: #ef3124;
@@ -90,11 +90,11 @@
90
90
  /* size l */
91
91
 
92
92
  /* size xl */
93
- }.tabs__component_loi8q {
93
+ }.tabs__component_929ww {
94
94
  position: relative;
95
95
  display: inline-flex;
96
96
  min-width: 100%
97
- }.tabs__component_loi8q:before {
97
+ }.tabs__component_929ww:before {
98
98
  content: '';
99
99
  display: block;
100
100
  position: absolute;
@@ -102,17 +102,17 @@
102
102
  height: 1px;
103
103
  width: 100%;
104
104
  background-color: var(--primary-tablist-bottom-border-color);
105
- }.tabs__fullWidthScroll_loi8q {
105
+ }.tabs__fullWidthScroll_929ww {
106
106
  min-width: calc(100% - 2 * var(--gap-m));
107
107
  margin: 0 var(--gap-m);
108
- }.tabs__container_loi8q {
108
+ }.tabs__container_929ww {
109
109
  position: relative;
110
110
  overflow: hidden;
111
111
 
112
112
  /* focus-outline fix */
113
113
  margin: var(--gap-2xs-neg) 0 var(--gap-2xs-neg) var(--gap-2xs-neg);
114
114
  padding: var(--gap-2xs) 0 var(--gap-2xs) var(--gap-2xs);
115
- }.tabs__title_loi8q {
115
+ }.tabs__title_929ww {
116
116
  display: flex;
117
117
  align-items: center;
118
118
  height: 100%;
@@ -129,76 +129,76 @@
129
129
  user-select: none;
130
130
  cursor: pointer;
131
131
  outline: none
132
- }.tabs__title_loi8q:not(.tabs__disabled_loi8q):hover {
132
+ }.tabs__title_929ww:not(.tabs__disabled_929ww):hover {
133
133
  color: var(--primary-tablist-hover-color);
134
- }.tabs__focused_loi8q {
134
+ }.tabs__focused_929ww {
135
135
  outline: 2px solid var(--focus-color);
136
136
  outline-offset: 2px;
137
- }.tabs__collapsed_loi8q {
137
+ }.tabs__collapsed_929ww {
138
138
  order: 99;
139
139
  visibility: collapse;
140
- }.tabs__selected_loi8q {
140
+ }.tabs__selected_929ww {
141
141
  cursor: default;
142
142
  color: var(--primary-tablist-selected-color);
143
- }.tabs__disabled_loi8q {
143
+ }.tabs__disabled_929ww {
144
144
  cursor: var(--disabled-cursor);
145
145
  color: var(--primary-tablist-disabled-color);
146
- }.tabs__line_loi8q {
146
+ }.tabs__line_929ww {
147
147
  position: absolute;
148
148
  height: 3px;
149
149
  bottom: 0;
150
150
  left: 0;
151
151
  background-color: var(--primary-tablist-line-color);
152
152
  transition: transform 0.2s ease, width 0.2s ease;
153
- }/* sizes */.tabs__s_loi8q .tabs__title_loi8q, .tabs__xs_loi8q .tabs__title_loi8q, .tabs__xxs_loi8q .tabs__title_loi8q {
153
+ }/* sizes */.tabs__s_929ww .tabs__title_929ww, .tabs__xs_929ww .tabs__title_929ww, .tabs__xxs_929ww .tabs__title_929ww {
154
154
  padding: var(--primary-tablist-s-padding);
155
155
  font-size: var(--primary-tablist-s-font-size);
156
156
  font-weight: var(--primary-tablist-s-font-weight);
157
157
  font-family: var(--primary-tablist-s-font-family);
158
158
  line-height: 24px;
159
- }.tabs__s_loi8q .tabs__title_loi8q + .tabs__title_loi8q, .tabs__xs_loi8q .tabs__title_loi8q + .tabs__title_loi8q, .tabs__xxs_loi8q .tabs__title_loi8q + .tabs__title_loi8q {
159
+ }.tabs__s_929ww .tabs__title_929ww + .tabs__title_929ww, .tabs__xs_929ww .tabs__title_929ww + .tabs__title_929ww, .tabs__xxs_929ww .tabs__title_929ww + .tabs__title_929ww {
160
160
  margin-left: var(--primary-tablist-s-gaps);
161
- }.tabs__s_loi8q .tabs__pickerWrapper_loi8q, .tabs__xs_loi8q .tabs__pickerWrapper_loi8q, .tabs__xxs_loi8q .tabs__pickerWrapper_loi8q {
161
+ }.tabs__s_929ww .tabs__pickerWrapper_929ww, .tabs__xs_929ww .tabs__pickerWrapper_929ww, .tabs__xxs_929ww .tabs__pickerWrapper_929ww {
162
162
  margin-left: var(--primary-tablist-s-gaps);
163
- }.tabs__s_loi8q .tabs__option_loi8q, .tabs__xs_loi8q .tabs__option_loi8q, .tabs__xxs_loi8q .tabs__option_loi8q {
163
+ }.tabs__s_929ww .tabs__option_929ww, .tabs__xs_929ww .tabs__option_929ww, .tabs__xxs_929ww .tabs__option_929ww {
164
164
  padding: 0;
165
- }.tabs__m_loi8q .tabs__title_loi8q {
165
+ }.tabs__m_929ww .tabs__title_929ww {
166
166
  padding: var(--primary-tablist-m-padding);
167
167
  font-size: var(--primary-tablist-m-font-size);
168
168
  font-weight: var(--primary-tablist-m-font-weight);
169
169
  font-family: var(--primary-tablist-m-font-family);
170
170
  line-height: 24px;
171
- }.tabs__m_loi8q .tabs__title_loi8q + .tabs__title_loi8q {
171
+ }.tabs__m_929ww .tabs__title_929ww + .tabs__title_929ww {
172
172
  margin-left: var(--primary-tablist-m-gaps);
173
- }.tabs__m_loi8q .tabs__pickerWrapper_loi8q {
173
+ }.tabs__m_929ww .tabs__pickerWrapper_929ww {
174
174
  margin-left: var(--primary-tablist-m-gaps);
175
- }.tabs__m_loi8q .tabs__option_loi8q {
175
+ }.tabs__m_929ww .tabs__option_929ww {
176
176
  padding: 0;
177
- }.tabs__l_loi8q .tabs__title_loi8q {
177
+ }.tabs__l_929ww .tabs__title_929ww {
178
178
  padding: var(--primary-tablist-l-padding);
179
179
  font-size: var(--primary-tablist-l-font-size);
180
180
  font-weight: var(--primary-tablist-l-font-weight);
181
181
  font-family: var(--primary-tablist-l-font-family);
182
182
  line-height: 24px;
183
- }.tabs__l_loi8q .tabs__title_loi8q + .tabs__title_loi8q {
183
+ }.tabs__l_929ww .tabs__title_929ww + .tabs__title_929ww {
184
184
  margin-left: var(--primary-tablist-l-gaps);
185
- }.tabs__l_loi8q .tabs__pickerWrapper_loi8q {
185
+ }.tabs__l_929ww .tabs__pickerWrapper_929ww {
186
186
  margin-left: var(--primary-tablist-l-gaps);
187
- }.tabs__l_loi8q .tabs__option_loi8q {
187
+ }.tabs__l_929ww .tabs__option_929ww {
188
188
  padding: 0;
189
- }.tabs__xl_loi8q .tabs__title_loi8q {
189
+ }.tabs__xl_929ww .tabs__title_929ww {
190
190
  padding: var(--primary-tablist-xl-padding);
191
191
  font-size: var(--primary-tablist-xl-font-size);
192
192
  font-weight: var(--primary-tablist-xl-font-weight);
193
193
  font-family: var(--primary-tablist-xl-font-family);
194
194
  line-height: 32px;
195
- }.tabs__xl_loi8q .tabs__title_loi8q + .tabs__title_loi8q {
195
+ }.tabs__xl_929ww .tabs__title_929ww + .tabs__title_929ww {
196
196
  margin-left: var(--primary-tablist-xl-gaps);
197
- }.tabs__xl_loi8q .tabs__pickerWrapper_loi8q {
197
+ }.tabs__xl_929ww .tabs__pickerWrapper_929ww {
198
198
  margin-left: var(--primary-tablist-xl-gaps);
199
- }.tabs__xl_loi8q .tabs__option_loi8q {
199
+ }.tabs__xl_929ww .tabs__option_929ww {
200
200
  padding: 0;
201
- }.tabs__rightAddons_loi8q {
201
+ }.tabs__rightAddons_929ww {
202
202
  display: flex;
203
203
  justify-content: center;
204
204
  align-items: center;
@@ -1090,13 +1090,13 @@
1090
1090
 
1091
1091
  /* size xl */
1092
1092
  --secondary-tablist-xl-gaps: var(--gap-m);
1093
- } .tabs__title_oi5bf {
1094
- } .tabs__mobile_oi5bf .tabs__title_oi5bf {
1093
+ } .tabs__title_1e8y8 {
1094
+ } .tabs__mobile_1e8y8 .tabs__title_1e8y8 {
1095
1095
  padding: var(--primary-tablist-mobile-padding);
1096
1096
  font-size: var(--primary-tablist-mobile-font-size);
1097
1097
  font-weight: var(--primary-tablist-mobile-font-weight);
1098
1098
  font-family: var(--primary-tablist-mobile-font-family);
1099
1099
  line-height: var(--primary-tablist-mobile-line-height)
1100
- } .tabs__mobile_oi5bf .tabs__title_oi5bf + .tabs__title_oi5bf {
1100
+ } .tabs__mobile_1e8y8 .tabs__title_1e8y8 + .tabs__title_1e8y8 {
1101
1101
  margin-left: var(--primary-tablist-mobile-gaps);
1102
1102
  }
@@ -2,7 +2,7 @@ import React, { useEffect } from 'react';
2
2
  import cn from 'classnames';
3
3
  import computeScrollIntoView from 'compute-scroll-into-view';
4
4
 
5
- const styles = {"container":"tabs__container_1yggt","fullWidthScroll":"tabs__fullWidthScroll_1yggt"};
5
+ const styles = {"container":"tabs__container_7i1f1","fullWidthScroll":"tabs__fullWidthScroll_7i1f1"};
6
6
  require('./index.css')
7
7
 
8
8
  /**
@@ -1,4 +1,4 @@
1
- /* hash: 2v90q */
1
+ /* hash: 1m2av */
2
2
  :root {
3
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
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 */
@@ -42,7 +42,7 @@
42
42
  /* size l */
43
43
 
44
44
  /* size xl */
45
- } .tabs__container_1yggt {
45
+ } .tabs__container_7i1f1 {
46
46
  position: relative;
47
47
  overflow-x: auto;
48
48
  overflow-y: hidden;
@@ -52,10 +52,10 @@
52
52
  /* focus-outline fix */
53
53
  margin: var(--gap-2xs-neg) 0 var(--gap-2xs-neg) var(--gap-2xs-neg);
54
54
  padding: var(--gap-2xs) 0 var(--gap-2xs) var(--gap-2xs)
55
- } .tabs__container_1yggt::-webkit-scrollbar {
55
+ } .tabs__container_7i1f1::-webkit-scrollbar {
56
56
  display: none;
57
- } .tabs__container_1yggt > * {
57
+ } .tabs__container_7i1f1 > * {
58
58
  flex-shrink: 0;
59
- } .tabs__fullWidthScroll_1yggt {
59
+ } .tabs__fullWidthScroll_7i1f1 {
60
60
  margin: 0 var(--gap-m-neg);
61
61
  }
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { SecondaryTabList } from './Component.js';
3
- import { c as commonStyles } from '../../index.module-be8fee8f.js';
3
+ import { c as commonStyles } from '../../index.module-e78fc797.js';
4
4
  import 'classnames';
5
5
  import '@alfalab/core-components-tag/modern';
6
6
  import '../../hooks/use-tabs.js';
@@ -1,13 +1,13 @@
1
1
  import React from 'react';
2
2
  import cn from 'classnames';
3
3
  import { SecondaryTabList } from './Component.js';
4
- import { c as commonStyles } from '../../index.module-be8fee8f.js';
4
+ import { c as commonStyles } from '../../index.module-e78fc797.js';
5
5
  import '@alfalab/core-components-tag/modern';
6
6
  import '../../hooks/use-tabs.js';
7
7
  import '../scrollable-container/Component.js';
8
8
  import 'compute-scroll-into-view';
9
9
 
10
- const mobileStyles = {"title":"tabs__title_x8j59 tabs__title_1ygxv","mobile":"tabs__mobile_x8j59"};
10
+ const mobileStyles = {"title":"tabs__title_2f5to tabs__title_p6mqe","mobile":"tabs__mobile_2f5to"};
11
11
  require('./mobile.css')
12
12
 
13
13
  const styles = {
@@ -8,7 +8,7 @@ import '@alfalab/core-components-tag/modern';
8
8
  import '../../hooks/use-tabs.js';
9
9
  import '../scrollable-container/Component.js';
10
10
  import 'compute-scroll-into-view';
11
- import '../../index.module-be8fee8f.js';
11
+ import '../../index.module-e78fc797.js';
12
12
 
13
13
  const SecondaryTabListResponsive = ({ size, defaultMatch = 'desktop', fullWidthScroll, ...restProps }) => {
14
14
  const [view] = useMedia([
@@ -1,4 +1,4 @@
1
- /* hash: 7j3yl */
1
+ /* hash: go42c */
2
2
  :root {
3
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
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 */
@@ -50,29 +50,29 @@
50
50
 
51
51
  /* size xl */
52
52
  --secondary-tablist-xl-gaps: var(--gap-m);
53
- } .tabs__component_1ygxv {
53
+ } .tabs__component_p6mqe {
54
54
  position: relative;
55
55
  display: inline-flex;
56
- } .tabs__fullWidthScroll_1ygxv {
56
+ } .tabs__fullWidthScroll_p6mqe {
57
57
  margin: 0 var(--gap-m);
58
- } .tabs__container_1ygxv {
58
+ } .tabs__container_p6mqe {
59
59
  overflow: hidden;
60
60
 
61
61
  /* focus-outline fix */
62
62
  margin: var(--gap-2xs-neg) 0 var(--gap-2xs-neg) var(--gap-2xs-neg);
63
63
  padding: var(--gap-2xs) 0 var(--gap-2xs) var(--gap-2xs);
64
- } .tabs__title_1ygxv {
64
+ } .tabs__title_p6mqe {
65
65
  white-space: nowrap;
66
- } /* sizes */ .tabs__xxs_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
66
+ } /* sizes */ .tabs__xxs_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
67
67
  margin-left: var(--secondary-tablist-xxs-gaps);
68
- } .tabs__xs_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
68
+ } .tabs__xs_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
69
69
  margin-left: var(--secondary-tablist-xs-gaps);
70
- } .tabs__s_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
70
+ } .tabs__s_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
71
71
  margin-left: var(--secondary-tablist-s-gaps);
72
- } .tabs__m_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
72
+ } .tabs__m_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
73
73
  margin-left: var(--secondary-tablist-m-gaps);
74
- } .tabs__l_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
74
+ } .tabs__l_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
75
75
  margin-left: var(--secondary-tablist-l-gaps);
76
- } .tabs__xl_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
76
+ } .tabs__xl_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
77
77
  margin-left: var(--secondary-tablist-xl-gaps);
78
78
  }
@@ -1,4 +1,4 @@
1
- /* hash: 1qxs9 */
1
+ /* hash: 7qqf9 */
2
2
  :root {
3
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
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 */
@@ -51,30 +51,30 @@
51
51
 
52
52
  /* size xl */
53
53
  --secondary-tablist-xl-gaps: var(--gap-m);
54
- }.tabs__component_1ygxv {
54
+ }.tabs__component_p6mqe {
55
55
  position: relative;
56
56
  display: inline-flex;
57
- }.tabs__fullWidthScroll_1ygxv {
57
+ }.tabs__fullWidthScroll_p6mqe {
58
58
  margin: 0 var(--gap-m);
59
- }.tabs__container_1ygxv {
59
+ }.tabs__container_p6mqe {
60
60
  overflow: hidden;
61
61
 
62
62
  /* focus-outline fix */
63
63
  margin: var(--gap-2xs-neg) 0 var(--gap-2xs-neg) var(--gap-2xs-neg);
64
64
  padding: var(--gap-2xs) 0 var(--gap-2xs) var(--gap-2xs);
65
- }.tabs__title_1ygxv {
65
+ }.tabs__title_p6mqe {
66
66
  white-space: nowrap;
67
- }/* sizes */.tabs__xxs_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
67
+ }/* sizes */.tabs__xxs_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
68
68
  margin-left: var(--secondary-tablist-xxs-gaps);
69
- }.tabs__xs_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
69
+ }.tabs__xs_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
70
70
  margin-left: var(--secondary-tablist-xs-gaps);
71
- }.tabs__s_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
71
+ }.tabs__s_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
72
72
  margin-left: var(--secondary-tablist-s-gaps);
73
- }.tabs__m_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
73
+ }.tabs__m_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
74
74
  margin-left: var(--secondary-tablist-m-gaps);
75
- }.tabs__l_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
75
+ }.tabs__l_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
76
76
  margin-left: var(--secondary-tablist-l-gaps);
77
- }.tabs__xl_1ygxv .tabs__title_1ygxv + .tabs__title_1ygxv {
77
+ }.tabs__xl_p6mqe .tabs__title_p6mqe + .tabs__title_p6mqe {
78
78
  margin-left: var(--secondary-tablist-xl-gaps);
79
79
  } :root {
80
80
  --color-dark-indigo: #0b1f35;
@@ -963,7 +963,7 @@
963
963
 
964
964
  /* size xl */
965
965
  --secondary-tablist-xl-gaps: var(--gap-m);
966
- } .tabs__title_x8j59 {
967
- } .tabs__mobile_x8j59 .tabs__title_x8j59 + .tabs__title_x8j59 {
966
+ } .tabs__title_2f5to {
967
+ } .tabs__mobile_2f5to .tabs__title_2f5to + .tabs__title_2f5to {
968
968
  margin-left: var(--secondary-tablist-mobile-gaps);
969
969
  }
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import cn from 'classnames';
3
3
 
4
- const styles = {"component":"tabs__component_198fw","hidden":"tabs__hidden_198fw"};
4
+ const styles = {"component":"tabs__component_1luo8","hidden":"tabs__hidden_1luo8"};
5
5
  require('./index.css')
6
6
 
7
7
  const Tab = ({ children, hidden, className, disabled, dataTestId }) => children ? (React.createElement("div", { className: cn(styles.component, {
@@ -1,8 +1,8 @@
1
- /* hash: 10ni1 */
2
- .tabs__component_198fw {
1
+ /* hash: ktfua */
2
+ .tabs__component_1luo8 {
3
3
  outline: none;
4
4
  }
5
5
 
6
- .tabs__hidden_198fw {
6
+ .tabs__hidden_1luo8 {
7
7
  display: none;
8
8
  }
@@ -16,10 +16,10 @@ import '../../synthetic-events.js';
16
16
  import '../scrollable-container/Component.js';
17
17
  import 'compute-scroll-into-view';
18
18
  import '../title/Component.js';
19
- import '../../index.module-c36d785f.js';
19
+ import '../../index.module-2b4e7121.js';
20
20
  import '../secondary-tablist/Component.js';
21
21
  import '@alfalab/core-components-tag/modern';
22
- import '../../index.module-be8fee8f.js';
22
+ import '../../index.module-e78fc797.js';
23
23
 
24
24
  const views = {
25
25
  primary: PrimaryTabListDesktop,
@@ -2,13 +2,14 @@ import React, { cloneElement } from 'react';
2
2
 
3
3
  const Tabs = ({ TabList, className, containerClassName, size, defaultMatch, children, selectedId, scrollable, collapsible, collapsedTabsIds, fullWidthScroll = false, keepMounted = false, dataTestId, onChange, }) => {
4
4
  const tabsArray = React.Children.toArray(children);
5
- const titles = tabsArray.map(({ props: { title, id, rightAddons, disabled, hidden, toggleClassName } }) => ({
5
+ const titles = tabsArray.map(({ props: { title, id, rightAddons, disabled, hidden, toggleClassName, dataTestId: toggleTestId, }, }) => ({
6
6
  title,
7
7
  id,
8
8
  disabled,
9
9
  rightAddons,
10
10
  hidden,
11
11
  toggleClassName,
12
+ dataTestId: toggleTestId,
12
13
  }));
13
14
  const tabs = tabsArray.filter((tab) => tab.props.id === selectedId || tab.props.keepMounted || keepMounted);
14
15
  return (React.createElement("div", { className: className },
@@ -16,10 +16,10 @@ import '../../synthetic-events.js';
16
16
  import '../scrollable-container/Component.js';
17
17
  import 'compute-scroll-into-view';
18
18
  import '../title/Component.js';
19
- import '../../index.module-c36d785f.js';
19
+ import '../../index.module-2b4e7121.js';
20
20
  import '../secondary-tablist/Component.js';
21
21
  import '@alfalab/core-components-tag/modern';
22
- import '../../index.module-be8fee8f.js';
22
+ import '../../index.module-e78fc797.js';
23
23
 
24
24
  const views = {
25
25
  primary: PrimaryTabListMobile,
@@ -17,12 +17,12 @@ import '../../synthetic-events.js';
17
17
  import '../scrollable-container/Component.js';
18
18
  import 'compute-scroll-into-view';
19
19
  import '../title/Component.js';
20
- import '../../index.module-c36d785f.js';
20
+ import '../../index.module-2b4e7121.js';
21
21
  import '../primary-tablist/Component.mobile.js';
22
22
  import '../secondary-tablist/Component.desktop.js';
23
23
  import '../secondary-tablist/Component.js';
24
24
  import '@alfalab/core-components-tag/modern';
25
- import '../../index.module-be8fee8f.js';
25
+ import '../../index.module-e78fc797.js';
26
26
  import '../secondary-tablist/Component.mobile.js';
27
27
 
28
28
  const views = {
package/modern/desktop.js CHANGED
@@ -15,10 +15,10 @@ import './hooks/use-tablist-titles.js';
15
15
  import '@alfalab/hooks';
16
16
  import './synthetic-events.js';
17
17
  import './components/title/Component.js';
18
- import './index.module-c36d785f.js';
18
+ import './index.module-2b4e7121.js';
19
19
  import 'compute-scroll-into-view';
20
20
  import './components/secondary-tablist/Component.js';
21
21
  import '@alfalab/core-components-tag/modern';
22
- import './index.module-be8fee8f.js';
22
+ import './index.module-e78fc797.js';
23
23
  import './components/tabs/Component.js';
24
24
  import '@juggle/resize-observer';
@@ -12,6 +12,7 @@ declare const useTablistTitles: ({ titles, selectedId, collapsible, collapsedTab
12
12
  rightAddons?: import("react").ReactNode;
13
13
  hidden?: boolean | undefined;
14
14
  toggleClassName?: string | undefined;
15
+ dataTestId?: string | undefined;
15
16
  }[];
16
17
  selectedTab: HTMLButtonElement | null;
17
18
  focusedTab: HTMLButtonElement | null;
@@ -19,6 +20,7 @@ declare const useTablistTitles: ({ titles, selectedId, collapsible, collapsedTab
19
20
  role: string;
20
21
  tabIndex: number;
21
22
  'aria-selected': boolean;
23
+ 'data-test-id': string | undefined;
22
24
  disabled: boolean | undefined;
23
25
  ref: (node: HTMLButtonElement) => void;
24
26
  onKeyDown: (event: import("react").KeyboardEvent<HTMLButtonElement>) => void;
@@ -5,6 +5,7 @@ declare function useTabs({ titles, selectedId, onChange }: UseTabsProps): {
5
5
  role: string;
6
6
  tabIndex: number;
7
7
  'aria-selected': boolean;
8
+ 'data-test-id': string | undefined;
8
9
  disabled: boolean | undefined;
9
10
  ref: (node: HTMLButtonElement) => void;
10
11
  onKeyDown: (event: KeyboardEvent<HTMLButtonElement>) => void;
@@ -1,5 +1,10 @@
1
1
  import { useState, useRef, useCallback } from 'react';
2
2
 
3
+ const getDataTestId = (dataTestId, element) => {
4
+ const elementPart = element ? `-${element.toLowerCase()}` : '';
5
+ return dataTestId ? `${dataTestId}${elementPart}` : undefined;
6
+ };
7
+
3
8
  function useTabs({ titles = [], selectedId, onChange }) {
4
9
  const [selectedTab, setSelectedTab] = useState(null);
5
10
  const [focusedTab, setFocusedTab] = useState(null);
@@ -72,6 +77,7 @@ function useTabs({ titles = [], selectedId, onChange }) {
72
77
  role: 'tab',
73
78
  tabIndex: itemSelected ? 0 : -1,
74
79
  'aria-selected': itemSelected,
80
+ 'data-test-id': getDataTestId(item.dataTestId, 'toggle'),
75
81
  disabled: item.disabled,
76
82
  ref: (node) => {
77
83
  // eslint-disable-next-line no-param-reassign
@@ -1,3 +1,3 @@
1
- declare const getDataTestId: (dataTestId?: string, element?: string) => string | undefined;
2
1
  declare const isClient: () => boolean;
3
- export { getDataTestId, isClient };
2
+ export { isClient };
3
+ export * from "./hooks/use-tabs";
package/modern/index.js CHANGED
@@ -17,12 +17,12 @@ import './hooks/use-collapsible-elements.js';
17
17
  import '@juggle/resize-observer';
18
18
  import './synthetic-events.js';
19
19
  import './components/title/Component.js';
20
- import './index.module-c36d785f.js';
20
+ import './index.module-2b4e7121.js';
21
21
  import './components/primary-tablist/Component.mobile.js';
22
22
  import 'compute-scroll-into-view';
23
23
  import './components/secondary-tablist/Component.desktop.js';
24
24
  import './components/secondary-tablist/Component.js';
25
25
  import '@alfalab/core-components-tag/modern';
26
- import './index.module-be8fee8f.js';
26
+ import './index.module-e78fc797.js';
27
27
  import './components/secondary-tablist/Component.mobile.js';
28
28
  import './components/tabs/Component.js';
@@ -0,0 +1,4 @@
1
+ const commonStyles = {"component":"tabs__component_929ww","fullWidthScroll":"tabs__fullWidthScroll_929ww","container":"tabs__container_929ww","title":"tabs__title_929ww","disabled":"tabs__disabled_929ww","focused":"tabs__focused_929ww","collapsed":"tabs__collapsed_929ww","selected":"tabs__selected_929ww","line":"tabs__line_929ww","s":"tabs__s_929ww","xs":"tabs__xs_929ww","xxs":"tabs__xxs_929ww","pickerWrapper":"tabs__pickerWrapper_929ww","option":"tabs__option_929ww","m":"tabs__m_929ww","l":"tabs__l_929ww","xl":"tabs__xl_929ww","rightAddons":"tabs__rightAddons_929ww"};
2
+ require('./components/primary-tablist/index.css')
3
+
4
+ export { commonStyles as c };
@@ -0,0 +1,4 @@
1
+ const commonStyles = {"component":"tabs__component_p6mqe","fullWidthScroll":"tabs__fullWidthScroll_p6mqe","container":"tabs__container_p6mqe","title":"tabs__title_p6mqe","xxs":"tabs__xxs_p6mqe","xs":"tabs__xs_p6mqe","s":"tabs__s_p6mqe","m":"tabs__m_p6mqe","l":"tabs__l_p6mqe","xl":"tabs__xl_p6mqe"};
2
+ require('./components/secondary-tablist/index.css')
3
+
4
+ export { commonStyles as c };
package/modern/mobile.js CHANGED
@@ -16,9 +16,9 @@ import './hooks/use-collapsible-elements.js';
16
16
  import '@juggle/resize-observer';
17
17
  import './synthetic-events.js';
18
18
  import './components/title/Component.js';
19
- import './index.module-c36d785f.js';
19
+ import './index.module-2b4e7121.js';
20
20
  import 'compute-scroll-into-view';
21
21
  import './components/secondary-tablist/Component.js';
22
22
  import '@alfalab/core-components-tag/modern';
23
- import './index.module-be8fee8f.js';
23
+ import './index.module-e78fc797.js';
24
24
  import './components/tabs/Component.js';
@@ -16,13 +16,13 @@ import '@alfalab/core-components-picker-button/modern/desktop';
16
16
  import './hooks/use-tablist-titles.js';
17
17
  import './synthetic-events.js';
18
18
  import './components/title/Component.js';
19
- import './index.module-c36d785f.js';
19
+ import './index.module-2b4e7121.js';
20
20
  import './components/primary-tablist/Component.mobile.js';
21
21
  import 'compute-scroll-into-view';
22
22
  import './components/secondary-tablist/Component.desktop.js';
23
23
  import './components/secondary-tablist/Component.js';
24
24
  import '@alfalab/core-components-tag/modern';
25
- import './index.module-be8fee8f.js';
25
+ import './index.module-e78fc797.js';
26
26
  import './components/secondary-tablist/Component.mobile.js';
27
27
  import './components/tabs/Component.js';
28
28
  import '@juggle/resize-observer';
@@ -121,6 +121,7 @@ type TabListTitle = {
121
121
  toggleClassName?: string;
122
122
  selected?: boolean;
123
123
  collapsed?: boolean;
124
+ dataTestId?: string;
124
125
  };
125
126
  type TabListProps = Pick<TabsProps, 'className' | 'containerClassName' | 'size' | 'defaultMatch' | 'selectedId' | 'scrollable' | 'collapsible' | 'collapsedTabsIds' | 'onChange' | 'dataTestId' | 'fullWidthScroll'> & {
126
127
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alfalab/core-components-tabs",
3
- "version": "7.4.2",
3
+ "version": "7.6.0",
4
4
  "description": "Tabs components",
5
5
  "keywords": [],
6
6
  "license": "MIT",
@@ -19,7 +19,7 @@
19
19
  "dependencies": {
20
20
  "@alfalab/core-components-keyboard-focusable": "^4.0.5",
21
21
  "@alfalab/core-components-tag": "^5.3.1",
22
- "@alfalab/core-components-picker-button": "^10.3.21",
22
+ "@alfalab/core-components-picker-button": "^10.3.23",
23
23
  "@alfalab/core-components-badge": "^5.1.0",
24
24
  "classnames": "^2.3.1",
25
25
  "compute-scroll-into-view": "^1.0.20",
package/responsive.js CHANGED
@@ -21,13 +21,13 @@ require('@alfalab/core-components-picker-button/desktop');
21
21
  require('./hooks/use-tablist-titles.js');
22
22
  require('./synthetic-events.js');
23
23
  require('./components/title/Component.js');
24
- require('./index.module-cfd2d08c.js');
24
+ require('./index.module-0f7a6fdd.js');
25
25
  require('./components/primary-tablist/Component.mobile.js');
26
26
  require('compute-scroll-into-view');
27
27
  require('./components/secondary-tablist/Component.desktop.js');
28
28
  require('./components/secondary-tablist/Component.js');
29
29
  require('@alfalab/core-components-tag');
30
- require('./index.module-1aeb14d5.js');
30
+ require('./index.module-56173cf5.js');
31
31
  require('./components/secondary-tablist/Component.mobile.js');
32
32
  require('./components/tabs/Component.js');
33
33
  require('@juggle/resize-observer');
package/typings.d.ts CHANGED
@@ -121,6 +121,7 @@ type TabListTitle = {
121
121
  toggleClassName?: string;
122
122
  selected?: boolean;
123
123
  collapsed?: boolean;
124
+ dataTestId?: string;
124
125
  };
125
126
  type TabListProps = Pick<TabsProps, 'className' | 'containerClassName' | 'size' | 'defaultMatch' | 'selectedId' | 'scrollable' | 'collapsible' | 'collapsedTabsIds' | 'onChange' | 'dataTestId' | 'fullWidthScroll'> & {
126
127
  /**
@@ -1,4 +0,0 @@
1
- var commonStyles = {"component":"tabs__component_loi8q","fullWidthScroll":"tabs__fullWidthScroll_loi8q","container":"tabs__container_loi8q","title":"tabs__title_loi8q","disabled":"tabs__disabled_loi8q","focused":"tabs__focused_loi8q","collapsed":"tabs__collapsed_loi8q","selected":"tabs__selected_loi8q","line":"tabs__line_loi8q","s":"tabs__s_loi8q","xs":"tabs__xs_loi8q","xxs":"tabs__xxs_loi8q","pickerWrapper":"tabs__pickerWrapper_loi8q","option":"tabs__option_loi8q","m":"tabs__m_loi8q","l":"tabs__l_loi8q","xl":"tabs__xl_loi8q","rightAddons":"tabs__rightAddons_loi8q"};
2
- require('./components/primary-tablist/index.css')
3
-
4
- export { commonStyles as c };
@@ -1,4 +0,0 @@
1
- var commonStyles = {"component":"tabs__component_1ygxv","fullWidthScroll":"tabs__fullWidthScroll_1ygxv","container":"tabs__container_1ygxv","title":"tabs__title_1ygxv","xxs":"tabs__xxs_1ygxv","xs":"tabs__xs_1ygxv","s":"tabs__s_1ygxv","m":"tabs__m_1ygxv","l":"tabs__l_1ygxv","xl":"tabs__xl_1ygxv"};
2
- require('./components/secondary-tablist/index.css')
3
-
4
- export { commonStyles as c };