@alfalab/core-components-tabs 8.5.0 → 8.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/collapsible/index.js +2 -1
- package/components/primary-tablist/Component.collapsible.js +6 -4
- package/components/primary-tablist/Component.desktop.js +2 -1
- package/components/primary-tablist/Component.js +2 -1
- package/components/primary-tablist/Component.mobile.js +3 -2
- package/components/primary-tablist/Component.responsive.js +2 -1
- package/components/primary-tablist/index.css +30 -30
- package/components/primary-tablist/mobile.css +33 -33
- package/components/scroll-controls/Component.js +1 -1
- package/components/scroll-controls/index.css +14 -14
- package/components/scrollable-container/Component.js +1 -1
- package/components/scrollable-container/index.css +6 -6
- package/components/secondary-tablist/Component.desktop.js +2 -1
- package/components/secondary-tablist/Component.js +1 -0
- package/components/secondary-tablist/Component.mobile.js +3 -2
- package/components/secondary-tablist/Component.responsive.js +2 -1
- package/components/secondary-tablist/index.css +11 -11
- package/components/secondary-tablist/mobile.css +13 -13
- package/components/tab/Component.js +1 -1
- package/components/tab/index.css +3 -3
- package/components/tabs/Component.collapsible.js +2 -1
- package/components/tabs/Component.desktop.js +3 -2
- package/components/tabs/Component.js +2 -1
- package/components/tabs/Component.mobile.js +3 -2
- package/components/tabs/Component.responsive.js +3 -2
- package/cssm/collapsible/index.js +1 -0
- package/cssm/components/primary-tablist/Component.collapsible.js +5 -3
- package/cssm/components/primary-tablist/Component.desktop.js +1 -0
- package/cssm/components/primary-tablist/Component.js +2 -1
- package/cssm/components/primary-tablist/Component.mobile.js +1 -0
- package/cssm/components/primary-tablist/Component.responsive.js +1 -0
- package/cssm/components/secondary-tablist/Component.desktop.js +1 -0
- package/cssm/components/secondary-tablist/Component.js +1 -0
- package/cssm/components/secondary-tablist/Component.mobile.js +1 -0
- package/cssm/components/secondary-tablist/Component.responsive.js +1 -0
- package/cssm/components/tabs/Component.collapsible.js +1 -0
- package/cssm/components/tabs/Component.desktop.js +1 -0
- package/cssm/components/tabs/Component.js +2 -1
- package/cssm/components/tabs/Component.mobile.js +1 -0
- package/cssm/components/tabs/Component.responsive.js +1 -0
- package/cssm/desktop/index.js +1 -0
- package/cssm/hooks/use-tablist-titles.d.ts +2 -1
- package/cssm/hooks/use-tablist-titles.js +1 -0
- package/cssm/hooks/use-tabs.d.ts +2 -1
- package/cssm/hooks/use-tabs.js +17 -6
- package/cssm/index.js +1 -0
- package/cssm/mobile/index.js +1 -0
- package/cssm/shared/index.js +1 -0
- package/cssm/typings.d.ts +6 -1
- package/desktop/index.js +3 -2
- package/esm/collapsible/index.js +2 -1
- package/esm/components/primary-tablist/Component.collapsible.js +7 -5
- package/esm/components/primary-tablist/Component.desktop.js +2 -1
- package/esm/components/primary-tablist/Component.js +2 -1
- package/esm/components/primary-tablist/Component.mobile.js +3 -2
- package/esm/components/primary-tablist/Component.responsive.js +2 -1
- package/esm/components/primary-tablist/index.css +30 -30
- package/esm/components/primary-tablist/mobile.css +33 -33
- package/esm/components/scroll-controls/Component.js +1 -1
- package/esm/components/scroll-controls/index.css +14 -14
- package/esm/components/scrollable-container/Component.js +1 -1
- package/esm/components/scrollable-container/index.css +6 -6
- package/esm/components/secondary-tablist/Component.desktop.js +2 -1
- package/esm/components/secondary-tablist/Component.js +1 -0
- package/esm/components/secondary-tablist/Component.mobile.js +3 -2
- package/esm/components/secondary-tablist/Component.responsive.js +2 -1
- package/esm/components/secondary-tablist/index.css +11 -11
- package/esm/components/secondary-tablist/mobile.css +13 -13
- package/esm/components/tab/Component.js +1 -1
- package/esm/components/tab/index.css +3 -3
- package/esm/components/tabs/Component.collapsible.js +2 -1
- package/esm/components/tabs/Component.desktop.js +3 -2
- package/esm/components/tabs/Component.js +2 -1
- package/esm/components/tabs/Component.mobile.js +3 -2
- package/esm/components/tabs/Component.responsive.js +3 -2
- package/esm/desktop/index.js +3 -2
- package/esm/hooks/use-tablist-titles.d.ts +2 -1
- package/esm/hooks/use-tablist-titles.js +1 -0
- package/esm/hooks/use-tabs.d.ts +2 -1
- package/esm/hooks/use-tabs.js +13 -6
- package/esm/index.js +3 -2
- package/esm/index.module-1e961bec.js +4 -0
- package/esm/index.module-b07a0a20.js +4 -0
- package/esm/mobile/index.js +3 -2
- package/esm/shared/index.js +1 -0
- package/esm/typings.d.ts +6 -1
- package/hooks/use-tablist-titles.d.ts +2 -1
- package/hooks/use-tablist-titles.js +1 -0
- package/hooks/use-tabs.d.ts +2 -1
- package/hooks/use-tabs.js +17 -6
- package/index.js +3 -2
- package/index.module-6c875fed.js +6 -0
- package/index.module-dcd338c3.js +6 -0
- package/mobile/index.js +3 -2
- package/modern/collapsible/index.js +2 -1
- package/modern/components/primary-tablist/Component.collapsible.js +5 -4
- package/modern/components/primary-tablist/Component.desktop.js +2 -1
- package/modern/components/primary-tablist/Component.js +2 -1
- package/modern/components/primary-tablist/Component.mobile.js +3 -2
- package/modern/components/primary-tablist/Component.responsive.js +2 -1
- package/modern/components/primary-tablist/index.css +30 -30
- package/modern/components/primary-tablist/mobile.css +33 -33
- package/modern/components/scroll-controls/Component.js +1 -1
- package/modern/components/scroll-controls/index.css +14 -14
- package/modern/components/scrollable-container/Component.js +1 -1
- package/modern/components/scrollable-container/index.css +6 -6
- package/modern/components/secondary-tablist/Component.desktop.js +2 -1
- package/modern/components/secondary-tablist/Component.js +1 -0
- package/modern/components/secondary-tablist/Component.mobile.js +3 -2
- package/modern/components/secondary-tablist/Component.responsive.js +2 -1
- package/modern/components/secondary-tablist/index.css +11 -11
- package/modern/components/secondary-tablist/mobile.css +13 -13
- package/modern/components/tab/Component.js +1 -1
- package/modern/components/tab/index.css +3 -3
- package/modern/components/tabs/Component.collapsible.js +2 -1
- package/modern/components/tabs/Component.desktop.js +3 -2
- package/modern/components/tabs/Component.js +2 -1
- package/modern/components/tabs/Component.mobile.js +3 -2
- package/modern/components/tabs/Component.responsive.js +3 -2
- package/modern/desktop/index.js +3 -2
- package/modern/hooks/use-tablist-titles.d.ts +2 -1
- package/modern/hooks/use-tablist-titles.js +1 -0
- package/modern/hooks/use-tabs.d.ts +2 -1
- package/modern/hooks/use-tabs.js +13 -6
- package/modern/index.js +3 -2
- package/modern/index.module-11a3c51b.js +4 -0
- package/modern/index.module-b0eb0617.js +4 -0
- package/modern/mobile/index.js +3 -2
- package/modern/shared/index.js +1 -0
- package/modern/typings.d.ts +6 -1
- package/package.json +5 -5
- package/shared/index.js +1 -0
- package/src/components/primary-tablist/Component.collapsible.tsx +22 -12
- package/src/components/primary-tablist/Component.tsx +1 -1
- package/src/components/tabs/Component.tsx +2 -0
- package/src/hooks/use-tabs.tsx +23 -6
- package/src/typings.ts +7 -1
- package/typings.d.ts +6 -1
- package/esm/index.module-77f20a83.js +0 -4
- package/esm/index.module-b2867cef.js +0 -4
- package/index.module-269f7642.js +0 -6
- package/index.module-3e51b518.js +0 -6
- package/modern/index.module-2ee1459e.js +0 -4
- package/modern/index.module-5572b7e8.js +0 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: 19flh */
|
|
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
|
-
}.
|
|
54
|
+
}.tabs__component_1du2s {
|
|
55
55
|
position: relative;
|
|
56
56
|
display: inline-flex;
|
|
57
|
-
}.
|
|
57
|
+
}.tabs__fullWidthScroll_1du2s {
|
|
58
58
|
margin: 0 var(--gap-m);
|
|
59
|
-
}.
|
|
59
|
+
}.tabs__container_1du2s {
|
|
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
|
-
}.
|
|
65
|
+
}.tabs__title_1du2s {
|
|
66
66
|
white-space: nowrap;
|
|
67
|
-
}/* sizes */.
|
|
67
|
+
}/* sizes */.tabs__xxs_1du2s .tabs__title_1du2s + .tabs__title_1du2s {
|
|
68
68
|
margin-left: var(--secondary-tablist-xxs-gaps);
|
|
69
|
-
}.
|
|
69
|
+
}.tabs__xs_1du2s .tabs__title_1du2s + .tabs__title_1du2s {
|
|
70
70
|
margin-left: var(--secondary-tablist-xs-gaps);
|
|
71
|
-
}.
|
|
71
|
+
}.tabs__s_1du2s .tabs__title_1du2s + .tabs__title_1du2s {
|
|
72
72
|
margin-left: var(--secondary-tablist-s-gaps);
|
|
73
|
-
}.
|
|
73
|
+
}.tabs__m_1du2s .tabs__title_1du2s + .tabs__title_1du2s {
|
|
74
74
|
margin-left: var(--secondary-tablist-m-gaps);
|
|
75
|
-
}.
|
|
75
|
+
}.tabs__l_1du2s .tabs__title_1du2s + .tabs__title_1du2s {
|
|
76
76
|
margin-left: var(--secondary-tablist-l-gaps);
|
|
77
|
-
}.
|
|
77
|
+
}.tabs__xl_1du2s .tabs__title_1du2s + .tabs__title_1du2s {
|
|
78
78
|
margin-left: var(--secondary-tablist-xl-gaps);
|
|
79
79
|
} :root {
|
|
80
80
|
--color-dark-indigo: #0b1f35;
|
|
@@ -1637,7 +1637,7 @@
|
|
|
1637
1637
|
|
|
1638
1638
|
/* size xl */
|
|
1639
1639
|
--secondary-tablist-xl-gaps: var(--gap-m);
|
|
1640
|
-
} .
|
|
1641
|
-
} .
|
|
1640
|
+
} .tabs__title_1kd50 {
|
|
1641
|
+
} .tabs__mobile_1kd50 .tabs__title_1kd50 + .tabs__title_1kd50 {
|
|
1642
1642
|
margin-left: var(--secondary-tablist-mobile-gaps);
|
|
1643
1643
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import cn from 'classnames';
|
|
3
3
|
|
|
4
|
-
const styles = {"component":"
|
|
4
|
+
const styles = {"component":"tabs__component_fie4e","hidden":"tabs__hidden_fie4e"};
|
|
5
5
|
require('./index.css')
|
|
6
6
|
|
|
7
7
|
const Tab = ({ children, hidden, className, disabled, dataTestId }) => children ? (React.createElement("div", { className: cn(styles.component, {
|
|
@@ -11,10 +11,11 @@ import '../../hooks/use-collapsible-elements.js';
|
|
|
11
11
|
import '@juggle/resize-observer';
|
|
12
12
|
import '@alfalab/hooks';
|
|
13
13
|
import '../../hooks/use-tabs.js';
|
|
14
|
+
import 'react-merge-refs';
|
|
14
15
|
import '@alfalab/core-components-shared/modern';
|
|
15
16
|
import '../../synthetic-events.js';
|
|
16
17
|
import '../title/Component.js';
|
|
17
|
-
import '../../index.module-
|
|
18
|
+
import '../../index.module-b0eb0617.js';
|
|
18
19
|
|
|
19
20
|
const TabsCollapsible = ({ ...restProps }) => (React.createElement(Tabs, { TabList: CollapsiblePrimaryTabList, ...restProps }));
|
|
20
21
|
|
|
@@ -8,6 +8,7 @@ import 'classnames';
|
|
|
8
8
|
import '@alfalab/core-components-keyboard-focusable/modern';
|
|
9
9
|
import '@alfalab/core-components-shared/modern';
|
|
10
10
|
import '../../hooks/use-tabs.js';
|
|
11
|
+
import 'react-merge-refs';
|
|
11
12
|
import '../scrollable-container/Component.js';
|
|
12
13
|
import 'compute-scroll-into-view';
|
|
13
14
|
import '../scroll-controls/Component.js';
|
|
@@ -17,10 +18,10 @@ import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
|
17
18
|
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
18
19
|
import '../scroll-controls/utils.js';
|
|
19
20
|
import '../title/Component.js';
|
|
20
|
-
import '../../index.module-
|
|
21
|
+
import '../../index.module-b0eb0617.js';
|
|
21
22
|
import '@alfalab/core-components-tag/modern/desktop';
|
|
22
23
|
import '../secondary-tablist/Component.js';
|
|
23
|
-
import '../../index.module-
|
|
24
|
+
import '../../index.module-11a3c51b.js';
|
|
24
25
|
|
|
25
26
|
const views = {
|
|
26
27
|
primary: PrimaryTabListDesktop,
|
|
@@ -2,7 +2,7 @@ import React, { cloneElement } from 'react';
|
|
|
2
2
|
|
|
3
3
|
const Tabs = ({ TabList, className, containerClassName, size, defaultMatchMediaValue, children, selectedId, scrollable, collapsedTabsIds, fullWidthScroll = false, keepMounted = false, dataTestId, onChange, breakpoint = 1024, tagShape, tagView, }) => {
|
|
4
4
|
const tabsArray = React.Children.toArray(children);
|
|
5
|
-
const titles = tabsArray.map(({ props: { title, id, rightAddons, disabled, hidden, toggleClassName, dataTestId: toggleTestId, }, }) => ({
|
|
5
|
+
const titles = tabsArray.map(({ props: { title, id, rightAddons, disabled, hidden, toggleClassName, dataTestId: toggleTestId, toggleRef, }, }) => ({
|
|
6
6
|
title,
|
|
7
7
|
id,
|
|
8
8
|
disabled,
|
|
@@ -10,6 +10,7 @@ const Tabs = ({ TabList, className, containerClassName, size, defaultMatchMediaV
|
|
|
10
10
|
hidden,
|
|
11
11
|
toggleClassName,
|
|
12
12
|
dataTestId: toggleTestId,
|
|
13
|
+
toggleRef,
|
|
13
14
|
}));
|
|
14
15
|
const tabs = tabsArray.filter((tab) => tab.props.id === selectedId || tab.props.keepMounted || keepMounted);
|
|
15
16
|
return (React.createElement("div", { className: className },
|
|
@@ -8,6 +8,7 @@ import '@juggle/resize-observer';
|
|
|
8
8
|
import '@alfalab/core-components-keyboard-focusable/modern';
|
|
9
9
|
import '@alfalab/core-components-shared/modern';
|
|
10
10
|
import '../../hooks/use-tabs.js';
|
|
11
|
+
import 'react-merge-refs';
|
|
11
12
|
import '../scrollable-container/Component.js';
|
|
12
13
|
import 'compute-scroll-into-view';
|
|
13
14
|
import '../scroll-controls/Component.js';
|
|
@@ -17,10 +18,10 @@ import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
|
17
18
|
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
18
19
|
import '../scroll-controls/utils.js';
|
|
19
20
|
import '../title/Component.js';
|
|
20
|
-
import '../../index.module-
|
|
21
|
+
import '../../index.module-b0eb0617.js';
|
|
21
22
|
import '@alfalab/core-components-tag/modern/mobile';
|
|
22
23
|
import '../secondary-tablist/Component.js';
|
|
23
|
-
import '../../index.module-
|
|
24
|
+
import '../../index.module-11a3c51b.js';
|
|
24
25
|
|
|
25
26
|
const views = {
|
|
26
27
|
primary: PrimaryTabListMobile,
|
|
@@ -10,6 +10,7 @@ import 'classnames';
|
|
|
10
10
|
import '@alfalab/core-components-keyboard-focusable/modern';
|
|
11
11
|
import '@alfalab/core-components-shared/modern';
|
|
12
12
|
import '../../hooks/use-tabs.js';
|
|
13
|
+
import 'react-merge-refs';
|
|
13
14
|
import '../scrollable-container/Component.js';
|
|
14
15
|
import 'compute-scroll-into-view';
|
|
15
16
|
import '../scroll-controls/Component.js';
|
|
@@ -19,12 +20,12 @@ import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
|
19
20
|
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
20
21
|
import '../scroll-controls/utils.js';
|
|
21
22
|
import '../title/Component.js';
|
|
22
|
-
import '../../index.module-
|
|
23
|
+
import '../../index.module-b0eb0617.js';
|
|
23
24
|
import '../primary-tablist/Component.mobile.js';
|
|
24
25
|
import '../secondary-tablist/Component.desktop.js';
|
|
25
26
|
import '@alfalab/core-components-tag/modern/desktop';
|
|
26
27
|
import '../secondary-tablist/Component.js';
|
|
27
|
-
import '../../index.module-
|
|
28
|
+
import '../../index.module-11a3c51b.js';
|
|
28
29
|
import '../secondary-tablist/Component.mobile.js';
|
|
29
30
|
import '@alfalab/core-components-tag/modern/mobile';
|
|
30
31
|
|
package/modern/desktop/index.js
CHANGED
|
@@ -9,6 +9,7 @@ import 'classnames';
|
|
|
9
9
|
import '@alfalab/core-components-keyboard-focusable/modern';
|
|
10
10
|
import '@alfalab/core-components-shared/modern';
|
|
11
11
|
import '../hooks/use-tabs.js';
|
|
12
|
+
import 'react-merge-refs';
|
|
12
13
|
import '../components/scrollable-container/Component.js';
|
|
13
14
|
import 'compute-scroll-into-view';
|
|
14
15
|
import '../components/scroll-controls/Component.js';
|
|
@@ -18,8 +19,8 @@ import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
|
18
19
|
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
19
20
|
import '../components/scroll-controls/utils.js';
|
|
20
21
|
import '../components/title/Component.js';
|
|
21
|
-
import '../index.module-
|
|
22
|
+
import '../index.module-b0eb0617.js';
|
|
22
23
|
import '@alfalab/core-components-tag/modern/desktop';
|
|
23
24
|
import '../components/secondary-tablist/Component.js';
|
|
24
|
-
import '../index.module-
|
|
25
|
+
import '../index.module-11a3c51b.js';
|
|
25
26
|
import '../components/tabs/Component.js';
|
|
@@ -13,6 +13,7 @@ declare const useTablistTitles: ({ titles, selectedId, collapsedTabsIds, breakpo
|
|
|
13
13
|
hidden?: boolean | undefined;
|
|
14
14
|
toggleClassName?: string | undefined;
|
|
15
15
|
dataTestId?: string | undefined;
|
|
16
|
+
toggleRef?: import("react").Ref<HTMLDivElement> | undefined;
|
|
16
17
|
}[];
|
|
17
18
|
selectedTab: HTMLButtonElement | null;
|
|
18
19
|
focusedTab: HTMLButtonElement | null;
|
|
@@ -23,7 +24,7 @@ declare const useTablistTitles: ({ titles, selectedId, collapsedTabsIds, breakpo
|
|
|
23
24
|
selected: boolean;
|
|
24
25
|
'data-test-id': string | undefined;
|
|
25
26
|
disabled: boolean | undefined;
|
|
26
|
-
ref: (
|
|
27
|
+
ref: (instance: HTMLElement | null) => void;
|
|
27
28
|
onKeyDown: (event: import("react").KeyboardEvent<HTMLButtonElement>) => void;
|
|
28
29
|
onClick: (event?: import("react").MouseEvent<Element, MouseEvent> | undefined) => void;
|
|
29
30
|
};
|
|
@@ -4,6 +4,7 @@ import { useCollapsibleElements } from './use-collapsible-elements.js';
|
|
|
4
4
|
import { useTabs } from './use-tabs.js';
|
|
5
5
|
import '@juggle/resize-observer';
|
|
6
6
|
import '@alfalab/hooks';
|
|
7
|
+
import 'react-merge-refs';
|
|
7
8
|
import '@alfalab/core-components-shared/modern';
|
|
8
9
|
|
|
9
10
|
const useTablistTitles = ({ titles = [], selectedId, collapsedTabsIds, breakpoint, onChange, defaultMatchMediaValue, }) => {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
import { KeyboardEvent, MouseEvent, MutableRefObject } from 'react';
|
|
2
3
|
import { UseTabsProps } from "../typings";
|
|
3
4
|
declare function useTabs({ titles, selectedId, onChange }: UseTabsProps): {
|
|
@@ -8,7 +9,7 @@ declare function useTabs({ titles, selectedId, onChange }: UseTabsProps): {
|
|
|
8
9
|
selected: boolean;
|
|
9
10
|
'data-test-id': string | undefined;
|
|
10
11
|
disabled: boolean | undefined;
|
|
11
|
-
ref: (
|
|
12
|
+
ref: (instance: HTMLElement | null) => void;
|
|
12
13
|
onKeyDown: (event: KeyboardEvent<HTMLButtonElement>) => void;
|
|
13
14
|
onClick: (event?: MouseEvent) => void;
|
|
14
15
|
};
|
package/modern/hooks/use-tabs.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { useState, useRef, useCallback } from 'react';
|
|
2
|
+
import mergeRefs from 'react-merge-refs';
|
|
2
3
|
import { getDataTestId } from '@alfalab/core-components-shared/modern';
|
|
3
4
|
|
|
4
5
|
function useTabs({ titles = [], selectedId, onChange }) {
|
|
@@ -69,6 +70,17 @@ function useTabs({ titles = [], selectedId, onChange }) {
|
|
|
69
70
|
const getTabListItemProps = (index, outerRef) => {
|
|
70
71
|
const item = titles[index];
|
|
71
72
|
const itemSelected = item.id === selectedId;
|
|
73
|
+
const refs = [
|
|
74
|
+
(node) => {
|
|
75
|
+
// eslint-disable-next-line no-param-reassign
|
|
76
|
+
if (outerRef)
|
|
77
|
+
outerRef.current = node;
|
|
78
|
+
handleItemRef(node, item, index);
|
|
79
|
+
},
|
|
80
|
+
];
|
|
81
|
+
if (item.toggleRef) {
|
|
82
|
+
refs.push(item.toggleRef);
|
|
83
|
+
}
|
|
72
84
|
return {
|
|
73
85
|
role: 'tab',
|
|
74
86
|
tabIndex: itemSelected ? 0 : -1,
|
|
@@ -76,12 +88,7 @@ function useTabs({ titles = [], selectedId, onChange }) {
|
|
|
76
88
|
selected: itemSelected,
|
|
77
89
|
'data-test-id': getDataTestId(item.dataTestId, 'toggle'),
|
|
78
90
|
disabled: item.disabled,
|
|
79
|
-
ref: (
|
|
80
|
-
// eslint-disable-next-line no-param-reassign
|
|
81
|
-
if (outerRef)
|
|
82
|
-
outerRef.current = node;
|
|
83
|
-
handleItemRef(node, item, index);
|
|
84
|
-
},
|
|
91
|
+
ref: mergeRefs(refs),
|
|
85
92
|
onKeyDown: handleKeyDown,
|
|
86
93
|
onClick: (event) => handleItemClick(event, item),
|
|
87
94
|
};
|
package/modern/index.js
CHANGED
|
@@ -11,6 +11,7 @@ import 'classnames';
|
|
|
11
11
|
import '@alfalab/core-components-keyboard-focusable/modern';
|
|
12
12
|
import '@alfalab/core-components-shared/modern';
|
|
13
13
|
import './hooks/use-tabs.js';
|
|
14
|
+
import 'react-merge-refs';
|
|
14
15
|
import './components/scrollable-container/Component.js';
|
|
15
16
|
import 'compute-scroll-into-view';
|
|
16
17
|
import './components/scroll-controls/Component.js';
|
|
@@ -20,12 +21,12 @@ import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
|
20
21
|
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
21
22
|
import './components/scroll-controls/utils.js';
|
|
22
23
|
import './components/title/Component.js';
|
|
23
|
-
import './index.module-
|
|
24
|
+
import './index.module-b0eb0617.js';
|
|
24
25
|
import './components/primary-tablist/Component.mobile.js';
|
|
25
26
|
import './components/secondary-tablist/Component.desktop.js';
|
|
26
27
|
import '@alfalab/core-components-tag/modern/desktop';
|
|
27
28
|
import './components/secondary-tablist/Component.js';
|
|
28
|
-
import './index.module-
|
|
29
|
+
import './index.module-11a3c51b.js';
|
|
29
30
|
import './components/secondary-tablist/Component.mobile.js';
|
|
30
31
|
import '@alfalab/core-components-tag/modern/mobile';
|
|
31
32
|
import './components/tabs/Component.js';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
const commonStyles = {"component":"tabs__component_1du2s","fullWidthScroll":"tabs__fullWidthScroll_1du2s","container":"tabs__container_1du2s","title":"tabs__title_1du2s","xxs":"tabs__xxs_1du2s","xs":"tabs__xs_1du2s","s":"tabs__s_1du2s","m":"tabs__m_1du2s","l":"tabs__l_1du2s","xl":"tabs__xl_1du2s"};
|
|
2
|
+
require('./components/secondary-tablist/index.css')
|
|
3
|
+
|
|
4
|
+
export { commonStyles as c };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
const styles = {"component":"tabs__component_18t44","fullWidthScroll":"tabs__fullWidthScroll_18t44","container":"tabs__container_18t44","title":"tabs__title_18t44","disabled":"tabs__disabled_18t44","focused":"tabs__focused_18t44","collapsed":"tabs__collapsed_18t44","selected":"tabs__selected_18t44","line":"tabs__line_18t44","option":"tabs__option_18t44","s":"tabs__s_18t44","xs":"tabs__xs_18t44","xxs":"tabs__xxs_18t44","pickerWrapper":"tabs__pickerWrapper_18t44","m":"tabs__m_18t44","l":"tabs__l_18t44","xl":"tabs__xl_18t44","rightAddons":"tabs__rightAddons_18t44"};
|
|
2
|
+
require('./components/primary-tablist/index.css')
|
|
3
|
+
|
|
4
|
+
export { styles as s };
|
package/modern/mobile/index.js
CHANGED
|
@@ -9,6 +9,7 @@ import '@juggle/resize-observer';
|
|
|
9
9
|
import '@alfalab/core-components-keyboard-focusable/modern';
|
|
10
10
|
import '@alfalab/core-components-shared/modern';
|
|
11
11
|
import '../hooks/use-tabs.js';
|
|
12
|
+
import 'react-merge-refs';
|
|
12
13
|
import '../components/scrollable-container/Component.js';
|
|
13
14
|
import 'compute-scroll-into-view';
|
|
14
15
|
import '../components/scroll-controls/Component.js';
|
|
@@ -18,8 +19,8 @@ import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
|
18
19
|
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
19
20
|
import '../components/scroll-controls/utils.js';
|
|
20
21
|
import '../components/title/Component.js';
|
|
21
|
-
import '../index.module-
|
|
22
|
+
import '../index.module-b0eb0617.js';
|
|
22
23
|
import '@alfalab/core-components-tag/modern/mobile';
|
|
23
24
|
import '../components/secondary-tablist/Component.js';
|
|
24
|
-
import '../index.module-
|
|
25
|
+
import '../index.module-11a3c51b.js';
|
|
25
26
|
import '../components/tabs/Component.js';
|
package/modern/shared/index.js
CHANGED
|
@@ -10,6 +10,7 @@ import '@alfalab/core-components-icon-button/modern';
|
|
|
10
10
|
import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
11
11
|
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
12
12
|
import '../components/scroll-controls/utils.js';
|
|
13
|
+
import 'react-merge-refs';
|
|
13
14
|
import '@alfalab/core-components-shared/modern';
|
|
14
15
|
import '@juggle/resize-observer';
|
|
15
16
|
import '@alfalab/hooks';
|
package/modern/typings.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC, MouseEvent, ReactElement, ReactNode } from 'react';
|
|
1
|
+
import { FC, MouseEvent, ReactElement, ReactNode, Ref } from 'react';
|
|
2
2
|
import { TagProps } from "@alfalab/core-components-tag";
|
|
3
3
|
type SelectedId = string | number;
|
|
4
4
|
type TabsProps = {
|
|
@@ -119,6 +119,10 @@ type TabProps = {
|
|
|
119
119
|
* Идентификатор для систем автоматизированного тестирования
|
|
120
120
|
*/
|
|
121
121
|
dataTestId?: string;
|
|
122
|
+
/**
|
|
123
|
+
* Реф для кнопки переключения таба
|
|
124
|
+
*/
|
|
125
|
+
toggleRef?: Ref<HTMLDivElement>;
|
|
122
126
|
};
|
|
123
127
|
type TabListTitle = {
|
|
124
128
|
title: string;
|
|
@@ -130,6 +134,7 @@ type TabListTitle = {
|
|
|
130
134
|
selected?: boolean;
|
|
131
135
|
collapsed?: boolean;
|
|
132
136
|
dataTestId?: string;
|
|
137
|
+
toggleRef?: Ref<HTMLDivElement>;
|
|
133
138
|
};
|
|
134
139
|
type TabListProps = Pick<TabsProps, 'className' | 'containerClassName' | 'size' | 'defaultMatchMediaValue' | 'selectedId' | 'scrollable' | 'collapsedTabsIds' | 'onChange' | 'dataTestId' | 'fullWidthScroll' | 'tagShape' | 'tagView'> & {
|
|
135
140
|
/**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alfalab/core-components-tabs",
|
|
3
|
-
"version": "8.5.
|
|
3
|
+
"version": "8.5.2",
|
|
4
4
|
"description": "Tabs components",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"license": "MIT",
|
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
"dependencies": {
|
|
17
17
|
"@alfalab/core-components-keyboard-focusable": "^4.1.0",
|
|
18
18
|
"@alfalab/core-components-tag": "^8.0.1",
|
|
19
|
-
"@alfalab/core-components-picker-button": "^11.5.
|
|
20
|
-
"@alfalab/core-components-badge": "^5.5.
|
|
19
|
+
"@alfalab/core-components-picker-button": "^11.5.2",
|
|
20
|
+
"@alfalab/core-components-badge": "^5.5.1",
|
|
21
21
|
"@alfalab/core-components-mq": "^4.2.0",
|
|
22
22
|
"@alfalab/hooks": "^1.13.0",
|
|
23
|
-
"@alfalab/core-components-shared": "^0.9.
|
|
24
|
-
"@alfalab/core-components-icon-button": "^6.5.
|
|
23
|
+
"@alfalab/core-components-shared": "^0.9.1",
|
|
24
|
+
"@alfalab/core-components-icon-button": "^6.5.1",
|
|
25
25
|
"@alfalab/icons-glyph": "^2.139.0",
|
|
26
26
|
"classnames": "^2.3.1",
|
|
27
27
|
"compute-scroll-into-view": "^3.1.0",
|
package/shared/index.js
CHANGED
|
@@ -15,6 +15,7 @@ require('@alfalab/core-components-icon-button');
|
|
|
15
15
|
require('@alfalab/icons-glyph/ChevronLeftMIcon');
|
|
16
16
|
require('@alfalab/icons-glyph/ChevronRightMIcon');
|
|
17
17
|
require('../components/scroll-controls/utils.js');
|
|
18
|
+
require('react-merge-refs');
|
|
18
19
|
require('@alfalab/core-components-shared');
|
|
19
20
|
require('@juggle/resize-observer');
|
|
20
21
|
require('@alfalab/hooks');
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { useEffect, useMemo, useRef } from 'react';
|
|
1
|
+
import React, { Ref, useEffect, useMemo, useRef } from 'react';
|
|
2
2
|
import cn from 'classnames';
|
|
3
3
|
|
|
4
4
|
import { Badge } from '@alfalab/core-components-badge';
|
|
@@ -49,17 +49,27 @@ export const CollapsiblePrimaryTabList = ({
|
|
|
49
49
|
|
|
50
50
|
const collapsedOptions = useMemo(
|
|
51
51
|
() =>
|
|
52
|
-
tablistTitles.reduce<PickerButtonDesktopProps['options']>(
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
52
|
+
tablistTitles.reduce<PickerButtonDesktopProps['options']>(
|
|
53
|
+
(options, { toggleRef, ...title }) => {
|
|
54
|
+
if (title.collapsed) {
|
|
55
|
+
options.push({
|
|
56
|
+
key: title.title,
|
|
57
|
+
value: title.id,
|
|
58
|
+
content: (
|
|
59
|
+
<Title
|
|
60
|
+
{...title}
|
|
61
|
+
ref={toggleRef as Ref<HTMLButtonElement>}
|
|
62
|
+
styles={styles}
|
|
63
|
+
isOption={true}
|
|
64
|
+
/>
|
|
65
|
+
),
|
|
66
|
+
});
|
|
67
|
+
}
|
|
60
68
|
|
|
61
|
-
|
|
62
|
-
|
|
69
|
+
return options;
|
|
70
|
+
},
|
|
71
|
+
[],
|
|
72
|
+
),
|
|
63
73
|
[tablistTitles],
|
|
64
74
|
);
|
|
65
75
|
|
|
@@ -86,7 +96,7 @@ export const CollapsiblePrimaryTabList = ({
|
|
|
86
96
|
[styles.fullWidthScroll]: fullWidthScroll,
|
|
87
97
|
})}
|
|
88
98
|
>
|
|
89
|
-
{tablistTitles.map(({ dataTestId: _, ...restTitleProps }, index) => (
|
|
99
|
+
{tablistTitles.map(({ dataTestId: _, toggleRef: __, ...restTitleProps }, index) => (
|
|
90
100
|
<KeyboardFocusable key={restTitleProps.id}>
|
|
91
101
|
{(ref, focused) => (
|
|
92
102
|
<Title
|
|
@@ -59,7 +59,7 @@ export const PrimaryTabList = ({
|
|
|
59
59
|
[styles.fullWidthScroll]: fullWidthScroll,
|
|
60
60
|
})}
|
|
61
61
|
>
|
|
62
|
-
{titles.map(({ dataTestId: _, ...restTitleProps }, index) => (
|
|
62
|
+
{titles.map(({ dataTestId: _, toggleRef: __, ...restTitleProps }, index) => (
|
|
63
63
|
<KeyboardFocusable key={restTitleProps.id}>
|
|
64
64
|
{(ref, focused) => (
|
|
65
65
|
<Title
|
|
@@ -31,6 +31,7 @@ export const Tabs = ({
|
|
|
31
31
|
hidden,
|
|
32
32
|
toggleClassName,
|
|
33
33
|
dataTestId: toggleTestId,
|
|
34
|
+
toggleRef,
|
|
34
35
|
},
|
|
35
36
|
}) => ({
|
|
36
37
|
title,
|
|
@@ -40,6 +41,7 @@ export const Tabs = ({
|
|
|
40
41
|
hidden,
|
|
41
42
|
toggleClassName,
|
|
42
43
|
dataTestId: toggleTestId,
|
|
44
|
+
toggleRef,
|
|
43
45
|
}),
|
|
44
46
|
);
|
|
45
47
|
|
package/src/hooks/use-tabs.tsx
CHANGED
|
@@ -1,4 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
KeyboardEvent,
|
|
3
|
+
MouseEvent,
|
|
4
|
+
MutableRefObject,
|
|
5
|
+
Ref,
|
|
6
|
+
useCallback,
|
|
7
|
+
useRef,
|
|
8
|
+
useState,
|
|
9
|
+
} from 'react';
|
|
10
|
+
import mergeRefs from 'react-merge-refs';
|
|
2
11
|
|
|
3
12
|
import { getDataTestId } from '@alfalab/core-components-shared';
|
|
4
13
|
|
|
@@ -104,6 +113,18 @@ export function useTabs({ titles = [], selectedId, onChange }: UseTabsProps) {
|
|
|
104
113
|
const item = titles[index];
|
|
105
114
|
const itemSelected = item.id === selectedId;
|
|
106
115
|
|
|
116
|
+
const refs: Array<Ref<HTMLElement>> = [
|
|
117
|
+
(node: HTMLButtonElement) => {
|
|
118
|
+
// eslint-disable-next-line no-param-reassign
|
|
119
|
+
if (outerRef) outerRef.current = node;
|
|
120
|
+
handleItemRef(node, item, index);
|
|
121
|
+
},
|
|
122
|
+
];
|
|
123
|
+
|
|
124
|
+
if (item.toggleRef) {
|
|
125
|
+
refs.push(item.toggleRef);
|
|
126
|
+
}
|
|
127
|
+
|
|
107
128
|
return {
|
|
108
129
|
role: 'tab',
|
|
109
130
|
tabIndex: itemSelected ? 0 : -1,
|
|
@@ -111,11 +132,7 @@ export function useTabs({ titles = [], selectedId, onChange }: UseTabsProps) {
|
|
|
111
132
|
selected: itemSelected,
|
|
112
133
|
'data-test-id': getDataTestId(item.dataTestId, 'toggle'),
|
|
113
134
|
disabled: item.disabled,
|
|
114
|
-
ref: (
|
|
115
|
-
// eslint-disable-next-line no-param-reassign
|
|
116
|
-
if (outerRef) outerRef.current = node;
|
|
117
|
-
handleItemRef(node, item, index);
|
|
118
|
-
},
|
|
135
|
+
ref: mergeRefs(refs),
|
|
119
136
|
onKeyDown: handleKeyDown,
|
|
120
137
|
onClick: (event?: MouseEvent) => handleItemClick(event as MouseEvent, item),
|
|
121
138
|
};
|
package/src/typings.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC, MouseEvent, ReactElement, ReactNode } from 'react';
|
|
1
|
+
import { FC, MouseEvent, ReactElement, ReactNode, Ref } from 'react';
|
|
2
2
|
|
|
3
3
|
import { TagProps } from '@alfalab/core-components-tag';
|
|
4
4
|
|
|
@@ -147,6 +147,11 @@ export type TabProps = {
|
|
|
147
147
|
* Идентификатор для систем автоматизированного тестирования
|
|
148
148
|
*/
|
|
149
149
|
dataTestId?: string;
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
* Реф для кнопки переключения таба
|
|
153
|
+
*/
|
|
154
|
+
toggleRef?: Ref<HTMLDivElement>;
|
|
150
155
|
};
|
|
151
156
|
|
|
152
157
|
export type TabListTitle = {
|
|
@@ -159,6 +164,7 @@ export type TabListTitle = {
|
|
|
159
164
|
selected?: boolean;
|
|
160
165
|
collapsed?: boolean;
|
|
161
166
|
dataTestId?: string;
|
|
167
|
+
toggleRef?: Ref<HTMLDivElement>;
|
|
162
168
|
};
|
|
163
169
|
|
|
164
170
|
export type TabListProps = Pick<
|
package/typings.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC, MouseEvent, ReactElement, ReactNode } from 'react';
|
|
1
|
+
import { FC, MouseEvent, ReactElement, ReactNode, Ref } from 'react';
|
|
2
2
|
import { TagProps } from "@alfalab/core-components-tag";
|
|
3
3
|
type SelectedId = string | number;
|
|
4
4
|
type TabsProps = {
|
|
@@ -119,6 +119,10 @@ type TabProps = {
|
|
|
119
119
|
* Идентификатор для систем автоматизированного тестирования
|
|
120
120
|
*/
|
|
121
121
|
dataTestId?: string;
|
|
122
|
+
/**
|
|
123
|
+
* Реф для кнопки переключения таба
|
|
124
|
+
*/
|
|
125
|
+
toggleRef?: Ref<HTMLDivElement>;
|
|
122
126
|
};
|
|
123
127
|
type TabListTitle = {
|
|
124
128
|
title: string;
|
|
@@ -130,6 +134,7 @@ type TabListTitle = {
|
|
|
130
134
|
selected?: boolean;
|
|
131
135
|
collapsed?: boolean;
|
|
132
136
|
dataTestId?: string;
|
|
137
|
+
toggleRef?: Ref<HTMLDivElement>;
|
|
133
138
|
};
|
|
134
139
|
type TabListProps = Pick<TabsProps, 'className' | 'containerClassName' | 'size' | 'defaultMatchMediaValue' | 'selectedId' | 'scrollable' | 'collapsedTabsIds' | 'onChange' | 'dataTestId' | 'fullWidthScroll' | 'tagShape' | 'tagView'> & {
|
|
135
140
|
/**
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
var commonStyles = {"component":"tabs__component_14u7v","fullWidthScroll":"tabs__fullWidthScroll_14u7v","container":"tabs__container_14u7v","title":"tabs__title_14u7v","xxs":"tabs__xxs_14u7v","xs":"tabs__xs_14u7v","s":"tabs__s_14u7v","m":"tabs__m_14u7v","l":"tabs__l_14u7v","xl":"tabs__xl_14u7v"};
|
|
2
|
-
require('./components/secondary-tablist/index.css')
|
|
3
|
-
|
|
4
|
-
export { commonStyles as c };
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
var styles = {"component":"tabs__component_fqd0f","fullWidthScroll":"tabs__fullWidthScroll_fqd0f","container":"tabs__container_fqd0f","title":"tabs__title_fqd0f","disabled":"tabs__disabled_fqd0f","focused":"tabs__focused_fqd0f","collapsed":"tabs__collapsed_fqd0f","selected":"tabs__selected_fqd0f","line":"tabs__line_fqd0f","option":"tabs__option_fqd0f","s":"tabs__s_fqd0f","xs":"tabs__xs_fqd0f","xxs":"tabs__xxs_fqd0f","pickerWrapper":"tabs__pickerWrapper_fqd0f","m":"tabs__m_fqd0f","l":"tabs__l_fqd0f","xl":"tabs__xl_fqd0f","rightAddons":"tabs__rightAddons_fqd0f"};
|
|
2
|
-
require('./components/primary-tablist/index.css')
|
|
3
|
-
|
|
4
|
-
export { styles as s };
|
package/index.module-269f7642.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var commonStyles = {"component":"tabs__component_14u7v","fullWidthScroll":"tabs__fullWidthScroll_14u7v","container":"tabs__container_14u7v","title":"tabs__title_14u7v","xxs":"tabs__xxs_14u7v","xs":"tabs__xs_14u7v","s":"tabs__s_14u7v","m":"tabs__m_14u7v","l":"tabs__l_14u7v","xl":"tabs__xl_14u7v"};
|
|
4
|
-
require('./components/secondary-tablist/index.css')
|
|
5
|
-
|
|
6
|
-
exports.commonStyles = commonStyles;
|
package/index.module-3e51b518.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var styles = {"component":"tabs__component_fqd0f","fullWidthScroll":"tabs__fullWidthScroll_fqd0f","container":"tabs__container_fqd0f","title":"tabs__title_fqd0f","disabled":"tabs__disabled_fqd0f","focused":"tabs__focused_fqd0f","collapsed":"tabs__collapsed_fqd0f","selected":"tabs__selected_fqd0f","line":"tabs__line_fqd0f","option":"tabs__option_fqd0f","s":"tabs__s_fqd0f","xs":"tabs__xs_fqd0f","xxs":"tabs__xxs_fqd0f","pickerWrapper":"tabs__pickerWrapper_fqd0f","m":"tabs__m_fqd0f","l":"tabs__l_fqd0f","xl":"tabs__xl_fqd0f","rightAddons":"tabs__rightAddons_fqd0f"};
|
|
4
|
-
require('./components/primary-tablist/index.css')
|
|
5
|
-
|
|
6
|
-
exports.styles = styles;
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
const styles = {"component":"tabs__component_fqd0f","fullWidthScroll":"tabs__fullWidthScroll_fqd0f","container":"tabs__container_fqd0f","title":"tabs__title_fqd0f","disabled":"tabs__disabled_fqd0f","focused":"tabs__focused_fqd0f","collapsed":"tabs__collapsed_fqd0f","selected":"tabs__selected_fqd0f","line":"tabs__line_fqd0f","option":"tabs__option_fqd0f","s":"tabs__s_fqd0f","xs":"tabs__xs_fqd0f","xxs":"tabs__xxs_fqd0f","pickerWrapper":"tabs__pickerWrapper_fqd0f","m":"tabs__m_fqd0f","l":"tabs__l_fqd0f","xl":"tabs__xl_fqd0f","rightAddons":"tabs__rightAddons_fqd0f"};
|
|
2
|
-
require('./components/primary-tablist/index.css')
|
|
3
|
-
|
|
4
|
-
export { styles as s };
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
const commonStyles = {"component":"tabs__component_14u7v","fullWidthScroll":"tabs__fullWidthScroll_14u7v","container":"tabs__container_14u7v","title":"tabs__title_14u7v","xxs":"tabs__xxs_14u7v","xs":"tabs__xs_14u7v","s":"tabs__s_14u7v","m":"tabs__m_14u7v","l":"tabs__l_14u7v","xl":"tabs__xl_14u7v"};
|
|
2
|
-
require('./components/secondary-tablist/index.css')
|
|
3
|
-
|
|
4
|
-
export { commonStyles as c };
|