@alfalab/core-components-tabs 8.0.8 → 8.1.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.
- package/collapsible.d.ts +1 -6
- package/collapsible.js +5 -16
- package/components/primary-tablist/Component.collapsible.d.ts +2 -2
- package/components/primary-tablist/Component.collapsible.js +11 -11
- package/components/primary-tablist/Component.d.ts +2 -2
- package/components/primary-tablist/Component.desktop.js +8 -2
- package/components/primary-tablist/Component.js +8 -2
- package/components/primary-tablist/Component.mobile.js +12 -4
- package/components/primary-tablist/Component.responsive.js +7 -2
- package/components/primary-tablist/index.css +31 -29
- package/components/primary-tablist/mobile.css +34 -32
- package/components/scroll-controls/Component.d.ts +11 -0
- package/components/scroll-controls/Component.js +53 -0
- package/components/scroll-controls/index.css +94 -0
- package/components/scroll-controls/index.d.ts +1 -0
- package/components/scroll-controls/index.js +17 -0
- package/components/scroll-controls/utils.d.ts +7 -0
- package/components/scroll-controls/utils.js +56 -0
- package/components/scrollable-container/Component.d.ts +14 -2
- package/components/scrollable-container/Component.js +45 -8
- package/components/scrollable-container/index.css +10 -6
- package/components/scrollable-container/index.js +7 -0
- package/components/secondary-tablist/Component.d.ts +2 -2
- package/components/secondary-tablist/Component.desktop.js +8 -2
- package/components/secondary-tablist/Component.js +9 -3
- package/components/secondary-tablist/Component.mobile.d.ts +2 -2
- package/components/secondary-tablist/Component.mobile.js +10 -4
- package/components/secondary-tablist/Component.responsive.d.ts +1 -1
- package/components/secondary-tablist/Component.responsive.js +9 -3
- 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.d.ts +6 -0
- package/components/tabs/{Component.collabsible.desktop.js → Component.collapsible.js} +5 -6
- package/components/tabs/Component.d.ts +1 -1
- package/components/tabs/Component.desktop.js +8 -2
- package/components/tabs/Component.js +2 -2
- package/components/tabs/Component.mobile.d.ts +1 -1
- package/components/tabs/Component.mobile.js +8 -3
- package/components/tabs/Component.responsive.js +8 -3
- package/cssm/collapsible.d.ts +1 -6
- package/cssm/collapsible.js +4 -15
- package/cssm/components/primary-tablist/Component.collapsible.d.ts +2 -2
- package/cssm/components/primary-tablist/Component.collapsible.js +12 -11
- package/cssm/components/primary-tablist/Component.d.ts +2 -2
- package/cssm/components/primary-tablist/Component.desktop.js +8 -1
- package/cssm/components/primary-tablist/Component.js +9 -2
- package/cssm/components/primary-tablist/Component.mobile.js +8 -1
- package/cssm/components/primary-tablist/Component.responsive.js +7 -0
- package/cssm/components/primary-tablist/index.module.css +2 -0
- package/cssm/components/scroll-controls/Component.d.ts +11 -0
- package/cssm/components/scroll-controls/Component.js +52 -0
- package/cssm/components/scroll-controls/index.d.ts +1 -0
- package/cssm/components/scroll-controls/index.js +18 -0
- package/cssm/components/scroll-controls/index.module.css +93 -0
- package/cssm/components/scroll-controls/utils.d.ts +7 -0
- package/cssm/components/scroll-controls/utils.js +56 -0
- package/cssm/components/scrollable-container/Component.d.ts +14 -2
- package/cssm/components/scrollable-container/Component.js +45 -7
- package/cssm/components/scrollable-container/index.js +8 -0
- package/cssm/components/scrollable-container/index.module.css +5 -1
- package/cssm/components/secondary-tablist/Component.d.ts +2 -2
- package/cssm/components/secondary-tablist/Component.desktop.js +8 -1
- package/cssm/components/secondary-tablist/Component.js +10 -3
- package/cssm/components/secondary-tablist/Component.mobile.d.ts +2 -2
- package/cssm/components/secondary-tablist/Component.mobile.js +9 -2
- package/cssm/components/secondary-tablist/Component.responsive.d.ts +1 -1
- package/cssm/components/secondary-tablist/Component.responsive.js +9 -2
- package/cssm/components/tabs/Component.collapsible.d.ts +6 -0
- package/cssm/components/tabs/{Component.collabsible.desktop.js → Component.collapsible.js} +4 -5
- package/cssm/components/tabs/Component.d.ts +1 -1
- package/cssm/components/tabs/Component.desktop.js +7 -0
- package/cssm/components/tabs/Component.js +2 -2
- package/cssm/components/tabs/Component.mobile.d.ts +1 -1
- package/cssm/components/tabs/Component.mobile.js +7 -0
- package/cssm/components/tabs/Component.responsive.js +7 -0
- package/cssm/desktop.js +7 -0
- package/cssm/index-c76d6398.d.ts +0 -1
- package/cssm/index.js +7 -0
- package/cssm/mobile.js +7 -0
- package/cssm/shared.js +8 -1
- package/cssm/typings.d.ts +13 -2
- package/desktop.js +8 -2
- package/esm/collapsible.d.ts +1 -6
- package/esm/collapsible.js +4 -10
- package/esm/components/primary-tablist/Component.collapsible.d.ts +2 -2
- package/esm/components/primary-tablist/Component.collapsible.js +11 -11
- package/esm/components/primary-tablist/Component.d.ts +2 -2
- package/esm/components/primary-tablist/Component.desktop.js +8 -2
- package/esm/components/primary-tablist/Component.js +8 -2
- package/esm/components/primary-tablist/Component.mobile.js +11 -3
- package/esm/components/primary-tablist/Component.responsive.js +7 -2
- package/esm/components/primary-tablist/index.css +31 -29
- package/esm/components/primary-tablist/mobile.css +34 -32
- package/esm/components/scroll-controls/Component.d.ts +11 -0
- package/esm/components/scroll-controls/Component.js +43 -0
- package/esm/components/scroll-controls/index.css +94 -0
- package/esm/components/scroll-controls/index.d.ts +1 -0
- package/esm/components/scroll-controls/index.js +9 -0
- package/esm/components/scroll-controls/utils.d.ts +7 -0
- package/esm/components/scroll-controls/utils.js +50 -0
- package/esm/components/scrollable-container/Component.d.ts +14 -2
- package/esm/components/scrollable-container/Component.js +46 -9
- package/esm/components/scrollable-container/index.css +10 -6
- package/esm/components/scrollable-container/index.js +7 -0
- package/esm/components/secondary-tablist/Component.d.ts +2 -2
- package/esm/components/secondary-tablist/Component.desktop.js +8 -2
- package/esm/components/secondary-tablist/Component.js +9 -3
- package/esm/components/secondary-tablist/Component.mobile.d.ts +2 -2
- package/esm/components/secondary-tablist/Component.mobile.js +10 -4
- package/esm/components/secondary-tablist/Component.responsive.d.ts +1 -1
- package/esm/components/secondary-tablist/Component.responsive.js +9 -3
- 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.d.ts +6 -0
- package/esm/components/tabs/{Component.collabsible.desktop.js → Component.collapsible.js} +5 -6
- package/esm/components/tabs/Component.d.ts +1 -1
- package/esm/components/tabs/Component.desktop.js +8 -2
- package/esm/components/tabs/Component.js +2 -2
- package/esm/components/tabs/Component.mobile.d.ts +1 -1
- package/esm/components/tabs/Component.mobile.js +8 -3
- package/esm/components/tabs/Component.responsive.js +8 -3
- package/esm/desktop.js +8 -2
- package/esm/index-c76d6398.d.ts +0 -1
- package/esm/index.js +8 -3
- package/esm/index.module-7fe2e8dc.js +4 -0
- package/esm/index.module-fbff2d78.js +4 -0
- package/esm/mobile.js +8 -3
- package/esm/shared.js +7 -1
- package/esm/typings.d.ts +13 -2
- package/index-c76d6398.d.ts +0 -1
- package/index-ebda875c.d.ts +86 -21
- package/index.js +8 -3
- package/index.module-447ba3e0.js +6 -0
- package/index.module-ee99c069.js +6 -0
- package/mobile.js +8 -3
- package/modern/collapsible.d.ts +1 -6
- package/modern/collapsible.js +4 -10
- package/modern/components/primary-tablist/Component.collapsible.d.ts +2 -2
- package/modern/components/primary-tablist/Component.collapsible.js +11 -11
- package/modern/components/primary-tablist/Component.d.ts +2 -2
- package/modern/components/primary-tablist/Component.desktop.js +8 -2
- package/modern/components/primary-tablist/Component.js +8 -2
- package/modern/components/primary-tablist/Component.mobile.js +11 -3
- package/modern/components/primary-tablist/Component.responsive.js +7 -2
- package/modern/components/primary-tablist/index.css +31 -29
- package/modern/components/primary-tablist/mobile.css +34 -32
- package/modern/components/scroll-controls/Component.d.ts +11 -0
- package/modern/components/scroll-controls/Component.js +40 -0
- package/modern/components/scroll-controls/index.css +94 -0
- package/modern/components/scroll-controls/index.d.ts +1 -0
- package/modern/components/scroll-controls/index.js +8 -0
- package/modern/components/scroll-controls/utils.d.ts +7 -0
- package/modern/components/scroll-controls/utils.js +50 -0
- package/modern/components/scrollable-container/Component.d.ts +14 -2
- package/modern/components/scrollable-container/Component.js +44 -9
- package/modern/components/scrollable-container/index.css +10 -6
- package/modern/components/scrollable-container/index.js +6 -0
- package/modern/components/secondary-tablist/Component.d.ts +2 -2
- package/modern/components/secondary-tablist/Component.desktop.js +8 -2
- package/modern/components/secondary-tablist/Component.js +9 -3
- package/modern/components/secondary-tablist/Component.mobile.d.ts +2 -2
- package/modern/components/secondary-tablist/Component.mobile.js +9 -3
- package/modern/components/secondary-tablist/Component.responsive.d.ts +1 -1
- package/modern/components/secondary-tablist/Component.responsive.js +9 -3
- 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.d.ts +6 -0
- package/modern/components/tabs/{Component.collabsible.desktop.js → Component.collapsible.js} +4 -5
- package/modern/components/tabs/Component.d.ts +1 -1
- package/modern/components/tabs/Component.desktop.js +8 -2
- package/modern/components/tabs/Component.js +2 -2
- package/modern/components/tabs/Component.mobile.d.ts +1 -1
- package/modern/components/tabs/Component.mobile.js +8 -3
- package/modern/components/tabs/Component.responsive.js +8 -3
- package/modern/desktop.js +8 -2
- package/modern/index-c76d6398.d.ts +0 -1
- package/modern/index.js +8 -3
- package/modern/index.module-22ff4191.js +4 -0
- package/modern/index.module-3f8f9d5d.js +4 -0
- package/modern/mobile.js +8 -3
- package/modern/shared.js +6 -0
- package/modern/typings.d.ts +13 -2
- package/package.json +5 -2
- package/shared.js +7 -1
- package/src/collapsible.ts +1 -9
- package/src/components/primary-tablist/Component.collapsible.tsx +6 -7
- package/src/components/primary-tablist/Component.desktop.tsx +1 -1
- package/src/components/primary-tablist/Component.mobile.tsx +6 -1
- package/src/components/primary-tablist/Component.tsx +6 -2
- package/src/components/primary-tablist/index.module.css +4 -0
- package/src/components/scroll-controls/Component.tsx +78 -0
- package/src/components/scroll-controls/index.module.css +68 -0
- package/src/components/scroll-controls/index.ts +1 -0
- package/src/components/scroll-controls/utils.ts +60 -0
- package/src/components/scrollable-container/Component.tsx +81 -12
- package/src/components/scrollable-container/index.module.css +7 -1
- package/src/components/secondary-tablist/Component.desktop.tsx +1 -0
- package/src/components/secondary-tablist/Component.mobile.tsx +4 -2
- package/src/components/secondary-tablist/Component.responsive.tsx +1 -2
- package/src/components/secondary-tablist/Component.tsx +10 -2
- package/src/components/tabs/Component.collapsible.tsx +15 -0
- package/src/components/tabs/Component.mobile.tsx +1 -1
- package/src/components/tabs/Component.tsx +4 -0
- package/src/typings.ts +16 -0
- package/typings.d.ts +13 -2
- package/components/primary-tablist/Component.collapsible.desktop.d.ts +0 -5
- package/components/primary-tablist/Component.collapsible.desktop.js +0 -32
- package/components/primary-tablist/Component.collapsible.mobile.d.ts +0 -6
- package/components/primary-tablist/Component.collapsible.mobile.js +0 -35
- package/components/primary-tablist/Component.collapsible.responsive.d.ts +0 -5
- package/components/primary-tablist/Component.collapsible.responsive.js +0 -36
- package/components/tabs/Component.collabsible.desktop.d.ts +0 -6
- package/components/tabs/Component.collapsible.mobile.d.ts +0 -6
- package/components/tabs/Component.collapsible.mobile.js +0 -35
- package/components/tabs/Component.collapsible.responsive.d.ts +0 -6
- package/components/tabs/Component.collapsible.responsive.js +0 -37
- package/cssm/components/primary-tablist/Component.collapsible.desktop.d.ts +0 -5
- package/cssm/components/primary-tablist/Component.collapsible.desktop.js +0 -33
- package/cssm/components/primary-tablist/Component.collapsible.mobile.d.ts +0 -6
- package/cssm/components/primary-tablist/Component.collapsible.mobile.js +0 -37
- package/cssm/components/primary-tablist/Component.collapsible.responsive.d.ts +0 -5
- package/cssm/components/primary-tablist/Component.collapsible.responsive.js +0 -36
- package/cssm/components/tabs/Component.collabsible.desktop.d.ts +0 -6
- package/cssm/components/tabs/Component.collapsible.mobile.d.ts +0 -6
- package/cssm/components/tabs/Component.collapsible.mobile.js +0 -35
- package/cssm/components/tabs/Component.collapsible.responsive.d.ts +0 -6
- package/cssm/components/tabs/Component.collapsible.responsive.js +0 -37
- package/esm/components/primary-tablist/Component.collapsible.desktop.d.ts +0 -5
- package/esm/components/primary-tablist/Component.collapsible.desktop.js +0 -24
- package/esm/components/primary-tablist/Component.collapsible.mobile.d.ts +0 -6
- package/esm/components/primary-tablist/Component.collapsible.mobile.js +0 -26
- package/esm/components/primary-tablist/Component.collapsible.responsive.d.ts +0 -5
- package/esm/components/primary-tablist/Component.collapsible.responsive.js +0 -28
- package/esm/components/tabs/Component.collabsible.desktop.d.ts +0 -6
- package/esm/components/tabs/Component.collapsible.mobile.d.ts +0 -6
- package/esm/components/tabs/Component.collapsible.mobile.js +0 -27
- package/esm/components/tabs/Component.collapsible.responsive.d.ts +0 -6
- package/esm/components/tabs/Component.collapsible.responsive.js +0 -29
- package/esm/index.module-511c86f3.js +0 -4
- package/esm/index.module-ffeeb976.js +0 -4
- package/esm/mobile.module-34deaa77.js +0 -4
- package/index.module-0d8ea41a.js +0 -6
- package/index.module-38e4686f.js +0 -6
- package/mobile.module-a305e8da.js +0 -6
- package/modern/components/primary-tablist/Component.collapsible.desktop.d.ts +0 -5
- package/modern/components/primary-tablist/Component.collapsible.desktop.js +0 -20
- package/modern/components/primary-tablist/Component.collapsible.mobile.d.ts +0 -6
- package/modern/components/primary-tablist/Component.collapsible.mobile.js +0 -25
- package/modern/components/primary-tablist/Component.collapsible.responsive.d.ts +0 -5
- package/modern/components/primary-tablist/Component.collapsible.responsive.js +0 -26
- package/modern/components/tabs/Component.collabsible.desktop.d.ts +0 -6
- package/modern/components/tabs/Component.collapsible.mobile.d.ts +0 -6
- package/modern/components/tabs/Component.collapsible.mobile.js +0 -23
- package/modern/components/tabs/Component.collapsible.responsive.d.ts +0 -6
- package/modern/components/tabs/Component.collapsible.responsive.js +0 -25
- package/modern/index.module-4f82d773.js +0 -4
- package/modern/index.module-6f255828.js +0 -4
- package/modern/mobile.module-02182f0f.js +0 -4
- package/src/components/primary-tablist/Component.collapsible.desktop.tsx +0 -11
- package/src/components/primary-tablist/Component.collapsible.mobile.tsx +0 -27
- package/src/components/primary-tablist/Component.collapsible.responsive.tsx +0 -34
- package/src/components/tabs/Component.collabsible.desktop.tsx +0 -15
- package/src/components/tabs/Component.collapsible.mobile.tsx +0 -15
- package/src/components/tabs/Component.collapsible.responsive.tsx +0 -12
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { __rest, __assign } from 'tslib';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import {
|
|
3
|
+
import { CollapsiblePrimaryTabList } from '../primary-tablist/Component.collapsible.js';
|
|
4
4
|
import { Tabs } from './Component.js';
|
|
5
|
-
import '../primary-tablist/Component.collapsible.js';
|
|
6
5
|
import 'classnames';
|
|
7
6
|
import '@alfalab/core-components-badge/esm';
|
|
8
7
|
import '@alfalab/core-components-keyboard-focusable/esm';
|
|
@@ -16,11 +15,11 @@ import '../../hooks/use-tabs.js';
|
|
|
16
15
|
import '@alfalab/core-components-shared/esm';
|
|
17
16
|
import '../../synthetic-events.js';
|
|
18
17
|
import '../title/Component.js';
|
|
19
|
-
import '../../index.module-
|
|
18
|
+
import '../../index.module-7fe2e8dc.js';
|
|
20
19
|
|
|
21
|
-
var
|
|
20
|
+
var TabsCollapsible = function (_a) {
|
|
22
21
|
var restProps = __rest(_a, []);
|
|
23
|
-
return (React.createElement(Tabs, __assign({ TabList:
|
|
22
|
+
return (React.createElement(Tabs, __assign({ TabList: CollapsiblePrimaryTabList }, restProps)));
|
|
24
23
|
};
|
|
25
24
|
|
|
26
|
-
export {
|
|
25
|
+
export { TabsCollapsible };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { TabsProps } from "../../typings";
|
|
4
|
-
declare const Tabs: ({ TabList, className, containerClassName, size, defaultMatchMediaValue, children, selectedId, scrollable, collapsedTabsIds, fullWidthScroll, keepMounted, dataTestId, onChange, breakpoint, }: Omit<TabsProps, 'view'>) => React.JSX.Element;
|
|
4
|
+
declare const Tabs: ({ TabList, className, containerClassName, size, defaultMatchMediaValue, children, selectedId, scrollable, collapsedTabsIds, fullWidthScroll, keepMounted, dataTestId, onChange, breakpoint, tagShape, tagView, }: Omit<TabsProps, 'view'>) => React.JSX.Element;
|
|
5
5
|
export { Tabs };
|
|
@@ -10,11 +10,17 @@ import '../../hooks/use-tabs.js';
|
|
|
10
10
|
import '@alfalab/core-components-shared/esm';
|
|
11
11
|
import '../scrollable-container/Component.js';
|
|
12
12
|
import 'compute-scroll-into-view';
|
|
13
|
+
import '../scroll-controls/Component.js';
|
|
14
|
+
import 'lodash.debounce';
|
|
15
|
+
import '@alfalab/core-components-icon-button/esm';
|
|
16
|
+
import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
17
|
+
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
18
|
+
import '../scroll-controls/utils.js';
|
|
13
19
|
import '../title/Component.js';
|
|
14
|
-
import '../../index.module-
|
|
20
|
+
import '../../index.module-7fe2e8dc.js';
|
|
15
21
|
import '@alfalab/core-components-tag/esm/desktop';
|
|
16
22
|
import '../secondary-tablist/Component.js';
|
|
17
|
-
import '../../index.module-
|
|
23
|
+
import '../../index.module-fbff2d78.js';
|
|
18
24
|
|
|
19
25
|
var views = {
|
|
20
26
|
primary: PrimaryTabListDesktop,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { cloneElement } from 'react';
|
|
2
2
|
|
|
3
3
|
var Tabs = function (_a) {
|
|
4
|
-
var TabList = _a.TabList, className = _a.className, containerClassName = _a.containerClassName, size = _a.size, defaultMatchMediaValue = _a.defaultMatchMediaValue, children = _a.children, selectedId = _a.selectedId, scrollable = _a.scrollable, collapsedTabsIds = _a.collapsedTabsIds, _b = _a.fullWidthScroll, fullWidthScroll = _b === void 0 ? false : _b, _c = _a.keepMounted, keepMounted = _c === void 0 ? false : _c, dataTestId = _a.dataTestId, onChange = _a.onChange, _d = _a.breakpoint, breakpoint = _d === void 0 ? 1024 : _d;
|
|
4
|
+
var TabList = _a.TabList, className = _a.className, containerClassName = _a.containerClassName, size = _a.size, defaultMatchMediaValue = _a.defaultMatchMediaValue, children = _a.children, selectedId = _a.selectedId, scrollable = _a.scrollable, collapsedTabsIds = _a.collapsedTabsIds, _b = _a.fullWidthScroll, fullWidthScroll = _b === void 0 ? false : _b, _c = _a.keepMounted, keepMounted = _c === void 0 ? false : _c, dataTestId = _a.dataTestId, onChange = _a.onChange, _d = _a.breakpoint, breakpoint = _d === void 0 ? 1024 : _d, tagShape = _a.tagShape, tagView = _a.tagView;
|
|
5
5
|
var tabsArray = React.Children.toArray(children);
|
|
6
6
|
var titles = tabsArray.map(function (_a) {
|
|
7
7
|
var _b = _a.props, title = _b.title, id = _b.id, rightAddons = _b.rightAddons, disabled = _b.disabled, hidden = _b.hidden, toggleClassName = _b.toggleClassName, toggleTestId = _b.dataTestId;
|
|
@@ -17,7 +17,7 @@ var Tabs = function (_a) {
|
|
|
17
17
|
});
|
|
18
18
|
var tabs = tabsArray.filter(function (tab) { return tab.props.id === selectedId || tab.props.keepMounted || keepMounted; });
|
|
19
19
|
return (React.createElement("div", { className: className },
|
|
20
|
-
React.createElement(TabList, { containerClassName: containerClassName, size: size, titles: titles, selectedId: selectedId, scrollable: scrollable, collapsedTabsIds: collapsedTabsIds, onChange: onChange, dataTestId: dataTestId, defaultMatchMediaValue: defaultMatchMediaValue, fullWidthScroll: fullWidthScroll, breakpoint: breakpoint }),
|
|
20
|
+
React.createElement(TabList, { containerClassName: containerClassName, size: size, titles: titles, selectedId: selectedId, scrollable: scrollable, collapsedTabsIds: collapsedTabsIds, onChange: onChange, dataTestId: dataTestId, defaultMatchMediaValue: defaultMatchMediaValue, fullWidthScroll: fullWidthScroll, breakpoint: breakpoint, tagShape: tagShape, tagView: tagView }),
|
|
21
21
|
tabs.map(function (tab) { return cloneElement(tab, { hidden: tab.props.id !== selectedId }); })));
|
|
22
22
|
};
|
|
23
23
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { TabsProps } from "../../typings";
|
|
4
|
-
type TabsMobileProps = Omit<TabsProps, 'TabList' | '
|
|
4
|
+
type TabsMobileProps = Omit<TabsProps, 'TabList' | 'collapsedTabsIds'>;
|
|
5
5
|
declare const TabsMobile: ({ view, scrollable, ...restProps }: TabsMobileProps) => React.JSX.Element;
|
|
6
6
|
export { TabsMobileProps, TabsMobile };
|
|
@@ -10,12 +10,17 @@ import '../../hooks/use-tabs.js';
|
|
|
10
10
|
import '@alfalab/core-components-shared/esm';
|
|
11
11
|
import '../scrollable-container/Component.js';
|
|
12
12
|
import 'compute-scroll-into-view';
|
|
13
|
+
import '../scroll-controls/Component.js';
|
|
14
|
+
import 'lodash.debounce';
|
|
15
|
+
import '@alfalab/core-components-icon-button/esm';
|
|
16
|
+
import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
17
|
+
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
18
|
+
import '../scroll-controls/utils.js';
|
|
13
19
|
import '../title/Component.js';
|
|
14
|
-
import '../../index.module-
|
|
15
|
-
import '../../mobile.module-34deaa77.js';
|
|
20
|
+
import '../../index.module-7fe2e8dc.js';
|
|
16
21
|
import '@alfalab/core-components-tag/esm/mobile';
|
|
17
22
|
import '../secondary-tablist/Component.js';
|
|
18
|
-
import '../../index.module-
|
|
23
|
+
import '../../index.module-fbff2d78.js';
|
|
19
24
|
|
|
20
25
|
var views = {
|
|
21
26
|
primary: PrimaryTabListMobile,
|
|
@@ -12,14 +12,19 @@ import '../../hooks/use-tabs.js';
|
|
|
12
12
|
import '@alfalab/core-components-shared/esm';
|
|
13
13
|
import '../scrollable-container/Component.js';
|
|
14
14
|
import 'compute-scroll-into-view';
|
|
15
|
+
import '../scroll-controls/Component.js';
|
|
16
|
+
import 'lodash.debounce';
|
|
17
|
+
import '@alfalab/core-components-icon-button/esm';
|
|
18
|
+
import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
19
|
+
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
20
|
+
import '../scroll-controls/utils.js';
|
|
15
21
|
import '../title/Component.js';
|
|
16
|
-
import '../../index.module-
|
|
22
|
+
import '../../index.module-7fe2e8dc.js';
|
|
17
23
|
import '../primary-tablist/Component.mobile.js';
|
|
18
|
-
import '../../mobile.module-34deaa77.js';
|
|
19
24
|
import '../secondary-tablist/Component.desktop.js';
|
|
20
25
|
import '@alfalab/core-components-tag/esm/desktop';
|
|
21
26
|
import '../secondary-tablist/Component.js';
|
|
22
|
-
import '../../index.module-
|
|
27
|
+
import '../../index.module-fbff2d78.js';
|
|
23
28
|
import '../secondary-tablist/Component.mobile.js';
|
|
24
29
|
import '@alfalab/core-components-tag/esm/mobile';
|
|
25
30
|
|
package/esm/desktop.js
CHANGED
|
@@ -11,9 +11,15 @@ import './hooks/use-tabs.js';
|
|
|
11
11
|
import '@alfalab/core-components-shared/esm';
|
|
12
12
|
import './components/scrollable-container/Component.js';
|
|
13
13
|
import 'compute-scroll-into-view';
|
|
14
|
+
import './components/scroll-controls/Component.js';
|
|
15
|
+
import 'lodash.debounce';
|
|
16
|
+
import '@alfalab/core-components-icon-button/esm';
|
|
17
|
+
import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
18
|
+
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
19
|
+
import './components/scroll-controls/utils.js';
|
|
14
20
|
import './components/title/Component.js';
|
|
15
|
-
import './index.module-
|
|
21
|
+
import './index.module-7fe2e8dc.js';
|
|
16
22
|
import '@alfalab/core-components-tag/esm/desktop';
|
|
17
23
|
import './components/secondary-tablist/Component.js';
|
|
18
|
-
import './index.module-
|
|
24
|
+
import './index.module-fbff2d78.js';
|
|
19
25
|
import './components/tabs/Component.js';
|
package/esm/index-c76d6398.d.ts
CHANGED
|
@@ -137,5 +137,4 @@ type NavigationBarProps = {
|
|
|
137
137
|
declare const NavigationBar: React.ForwardRefExoticComponent<NavigationBarProps & React.RefAttributes<HTMLDivElement>>;
|
|
138
138
|
export { NavigationBar };
|
|
139
139
|
export * from "./Component-63dec22f";
|
|
140
|
-
export * from "./Component-8b2c2707";
|
|
141
140
|
export type { NavigationBarProps };
|
package/esm/index.js
CHANGED
|
@@ -13,14 +13,19 @@ import './hooks/use-tabs.js';
|
|
|
13
13
|
import '@alfalab/core-components-shared/esm';
|
|
14
14
|
import './components/scrollable-container/Component.js';
|
|
15
15
|
import 'compute-scroll-into-view';
|
|
16
|
+
import './components/scroll-controls/Component.js';
|
|
17
|
+
import 'lodash.debounce';
|
|
18
|
+
import '@alfalab/core-components-icon-button/esm';
|
|
19
|
+
import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
20
|
+
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
21
|
+
import './components/scroll-controls/utils.js';
|
|
16
22
|
import './components/title/Component.js';
|
|
17
|
-
import './index.module-
|
|
23
|
+
import './index.module-7fe2e8dc.js';
|
|
18
24
|
import './components/primary-tablist/Component.mobile.js';
|
|
19
|
-
import './mobile.module-34deaa77.js';
|
|
20
25
|
import './components/secondary-tablist/Component.desktop.js';
|
|
21
26
|
import '@alfalab/core-components-tag/esm/desktop';
|
|
22
27
|
import './components/secondary-tablist/Component.js';
|
|
23
|
-
import './index.module-
|
|
28
|
+
import './index.module-fbff2d78.js';
|
|
24
29
|
import './components/secondary-tablist/Component.mobile.js';
|
|
25
30
|
import '@alfalab/core-components-tag/esm/mobile';
|
|
26
31
|
import './components/tabs/Component.js';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var commonStyles = {"component":"tabs__component_1u3uq","fullWidthScroll":"tabs__fullWidthScroll_1u3uq","container":"tabs__container_1u3uq","title":"tabs__title_1u3uq","disabled":"tabs__disabled_1u3uq","focused":"tabs__focused_1u3uq","collapsed":"tabs__collapsed_1u3uq","selected":"tabs__selected_1u3uq","line":"tabs__line_1u3uq","option":"tabs__option_1u3uq","s":"tabs__s_1u3uq","xs":"tabs__xs_1u3uq","xxs":"tabs__xxs_1u3uq","pickerWrapper":"tabs__pickerWrapper_1u3uq","m":"tabs__m_1u3uq","l":"tabs__l_1u3uq","xl":"tabs__xl_1u3uq","rightAddons":"tabs__rightAddons_1u3uq"};
|
|
2
|
+
require('./components/primary-tablist/index.css')
|
|
3
|
+
|
|
4
|
+
export { commonStyles as c };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var commonStyles = {"component":"tabs__component_tc0jp","fullWidthScroll":"tabs__fullWidthScroll_tc0jp","container":"tabs__container_tc0jp","title":"tabs__title_tc0jp","xxs":"tabs__xxs_tc0jp","xs":"tabs__xs_tc0jp","s":"tabs__s_tc0jp","m":"tabs__m_tc0jp","l":"tabs__l_tc0jp","xl":"tabs__xl_tc0jp"};
|
|
2
|
+
require('./components/secondary-tablist/index.css')
|
|
3
|
+
|
|
4
|
+
export { commonStyles as c };
|
package/esm/mobile.js
CHANGED
|
@@ -11,10 +11,15 @@ import './hooks/use-tabs.js';
|
|
|
11
11
|
import '@alfalab/core-components-shared/esm';
|
|
12
12
|
import './components/scrollable-container/Component.js';
|
|
13
13
|
import 'compute-scroll-into-view';
|
|
14
|
+
import './components/scroll-controls/Component.js';
|
|
15
|
+
import 'lodash.debounce';
|
|
16
|
+
import '@alfalab/core-components-icon-button/esm';
|
|
17
|
+
import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
18
|
+
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
19
|
+
import './components/scroll-controls/utils.js';
|
|
14
20
|
import './components/title/Component.js';
|
|
15
|
-
import './index.module-
|
|
16
|
-
import './mobile.module-34deaa77.js';
|
|
21
|
+
import './index.module-7fe2e8dc.js';
|
|
17
22
|
import '@alfalab/core-components-tag/esm/mobile';
|
|
18
23
|
import './components/secondary-tablist/Component.js';
|
|
19
|
-
import './index.module-
|
|
24
|
+
import './index.module-fbff2d78.js';
|
|
20
25
|
import './components/tabs/Component.js';
|
package/esm/shared.js
CHANGED
|
@@ -4,7 +4,13 @@ export { useCollapsibleElements } from './hooks/use-collapsible-elements.js';
|
|
|
4
4
|
import 'react';
|
|
5
5
|
import 'classnames';
|
|
6
6
|
import 'compute-scroll-into-view';
|
|
7
|
-
import '
|
|
7
|
+
import './components/scroll-controls/Component.js';
|
|
8
8
|
import 'tslib';
|
|
9
|
+
import 'lodash.debounce';
|
|
10
|
+
import '@alfalab/core-components-icon-button/esm';
|
|
11
|
+
import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
12
|
+
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
13
|
+
import './components/scroll-controls/utils.js';
|
|
14
|
+
import '@alfalab/core-components-shared/esm';
|
|
9
15
|
import '@juggle/resize-observer';
|
|
10
16
|
import '@alfalab/hooks';
|
package/esm/typings.d.ts
CHANGED
|
@@ -69,6 +69,14 @@ type TabsProps = {
|
|
|
69
69
|
* @default 1024
|
|
70
70
|
*/
|
|
71
71
|
breakpoint?: number;
|
|
72
|
+
/**
|
|
73
|
+
* Форма тега (для view secondary только)
|
|
74
|
+
*/
|
|
75
|
+
tagShape?: TagProps['shape'];
|
|
76
|
+
/**
|
|
77
|
+
* Стиль тега (для view secondary только)
|
|
78
|
+
*/
|
|
79
|
+
tagView?: TagProps['view'];
|
|
72
80
|
};
|
|
73
81
|
type TabProps = {
|
|
74
82
|
/**
|
|
@@ -123,7 +131,7 @@ type TabListTitle = {
|
|
|
123
131
|
collapsed?: boolean;
|
|
124
132
|
dataTestId?: string;
|
|
125
133
|
};
|
|
126
|
-
type TabListProps = Pick<TabsProps, 'className' | 'containerClassName' | 'size' | 'defaultMatchMediaValue' | 'selectedId' | 'scrollable' | 'collapsedTabsIds' | 'onChange' | 'dataTestId' | 'fullWidthScroll'> & {
|
|
134
|
+
type TabListProps = Pick<TabsProps, 'className' | 'containerClassName' | 'size' | 'defaultMatchMediaValue' | 'selectedId' | 'scrollable' | 'collapsedTabsIds' | 'onChange' | 'dataTestId' | 'fullWidthScroll' | 'tagShape' | 'tagView'> & {
|
|
127
135
|
/**
|
|
128
136
|
* Заголовки табов
|
|
129
137
|
*/
|
|
@@ -144,4 +152,7 @@ type Styles = {
|
|
|
144
152
|
[key: string]: string;
|
|
145
153
|
};
|
|
146
154
|
};
|
|
147
|
-
|
|
155
|
+
type PlatformProps = {
|
|
156
|
+
platform: 'desktop' | 'mobile';
|
|
157
|
+
};
|
|
158
|
+
export { SelectedId, TabsProps, TabProps, TabListTitle, TabListProps, SecondaryTabListProps, UseTabsProps, Styles, PlatformProps };
|
package/index-c76d6398.d.ts
CHANGED
|
@@ -137,5 +137,4 @@ type NavigationBarProps = {
|
|
|
137
137
|
declare const NavigationBar: React.ForwardRefExoticComponent<NavigationBarProps & React.RefAttributes<HTMLDivElement>>;
|
|
138
138
|
export { NavigationBar };
|
|
139
139
|
export * from "./Component-63dec22f";
|
|
140
|
-
export * from "./Component-8b2c2707";
|
|
141
140
|
export type { NavigationBarProps };
|
package/index-ebda875c.d.ts
CHANGED
|
@@ -1,40 +1,105 @@
|
|
|
1
|
-
/// <reference types="react-transition-group" />
|
|
2
1
|
/// <reference types="react" />
|
|
2
|
+
/// <reference types="react-transition-group" />
|
|
3
3
|
import React from "react";
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
import { ButtonHTMLAttributes, ReactNode, RefObject } from "react";
|
|
5
|
+
type StyleColors = {
|
|
6
|
+
default: {
|
|
7
|
+
[key: string]: string;
|
|
8
|
+
};
|
|
9
|
+
inverted: {
|
|
10
|
+
[key: string]: string;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
type NativeProps = ButtonHTMLAttributes<HTMLButtonElement>;
|
|
14
|
+
type BaseTagProps = Omit<NativeProps, "onClick"> & {
|
|
8
15
|
/**
|
|
9
|
-
*
|
|
16
|
+
* Отображение кнопки в отмеченном (зажатом) состоянии
|
|
10
17
|
*/
|
|
11
|
-
|
|
18
|
+
checked?: boolean;
|
|
12
19
|
/**
|
|
13
|
-
*
|
|
20
|
+
* Размер компонента
|
|
21
|
+
*/
|
|
22
|
+
size?: "xxs" | "xs" | "s" | "m" | "l" | "xl";
|
|
23
|
+
/**
|
|
24
|
+
* Дочерние элементы.
|
|
14
25
|
*/
|
|
15
|
-
|
|
26
|
+
children?: ReactNode;
|
|
16
27
|
/**
|
|
17
|
-
*
|
|
28
|
+
* Дополнительный класс для обёртки children
|
|
18
29
|
*/
|
|
19
|
-
|
|
30
|
+
childrenClassName?: string;
|
|
20
31
|
/**
|
|
21
|
-
*
|
|
32
|
+
* Слот слева
|
|
22
33
|
*/
|
|
23
|
-
|
|
34
|
+
leftAddons?: ReactNode;
|
|
24
35
|
/**
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
* http://reactcommunity.org/react-transition-group/css-transition#CSSTransition-prop-classNames
|
|
36
|
+
* Слот справа
|
|
28
37
|
*/
|
|
29
|
-
|
|
38
|
+
rightAddons?: ReactNode;
|
|
30
39
|
/**
|
|
31
40
|
* Идентификатор для систем автоматизированного тестирования
|
|
32
41
|
*/
|
|
33
42
|
dataTestId?: string;
|
|
34
43
|
/**
|
|
35
|
-
*
|
|
44
|
+
* Обработчик нажатия
|
|
36
45
|
*/
|
|
37
|
-
|
|
46
|
+
onClick?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>, payload: {
|
|
47
|
+
checked: boolean;
|
|
48
|
+
name?: string;
|
|
49
|
+
}) => void;
|
|
50
|
+
/**
|
|
51
|
+
* ref на children
|
|
52
|
+
*/
|
|
53
|
+
childrenRef?: RefObject<HTMLSpanElement>;
|
|
54
|
+
/**
|
|
55
|
+
* Набор цветов для компонента
|
|
56
|
+
*/
|
|
57
|
+
colors?: "default" | "inverted";
|
|
58
|
+
/**
|
|
59
|
+
* @deprecated данный проп больше не используется, временно оставлен для обратной совместимости
|
|
60
|
+
* Используйте props shape и view
|
|
61
|
+
* Вариант тега
|
|
62
|
+
*/
|
|
63
|
+
variant?: "default" | "alt";
|
|
64
|
+
/**
|
|
65
|
+
* Форма тега
|
|
66
|
+
*/
|
|
67
|
+
shape?: "rounded" | "rectangular";
|
|
68
|
+
/**
|
|
69
|
+
* Стиль тега
|
|
70
|
+
*/
|
|
71
|
+
view?: "outlined" | "filled";
|
|
72
|
+
/**
|
|
73
|
+
* Основные стили компонента.
|
|
74
|
+
*/
|
|
75
|
+
styles?: {
|
|
76
|
+
[key: string]: string;
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* Стили компонента для default и inverted режима.
|
|
80
|
+
*/
|
|
81
|
+
colorStylesMap?: StyleColors;
|
|
38
82
|
};
|
|
39
|
-
declare const
|
|
40
|
-
|
|
83
|
+
declare const BaseTag: React.ForwardRefExoticComponent<Omit<NativeProps, "onClick"> & {
|
|
84
|
+
checked?: boolean | undefined;
|
|
85
|
+
size?: "s" | "xxs" | "xs" | "m" | "l" | "xl" | undefined;
|
|
86
|
+
children?: ReactNode;
|
|
87
|
+
childrenClassName?: string | undefined;
|
|
88
|
+
leftAddons?: ReactNode;
|
|
89
|
+
rightAddons?: ReactNode;
|
|
90
|
+
dataTestId?: string | undefined;
|
|
91
|
+
onClick?: ((event: React.MouseEvent<HTMLButtonElement, MouseEvent>, payload: {
|
|
92
|
+
checked: boolean;
|
|
93
|
+
name?: string;
|
|
94
|
+
}) => void) | undefined;
|
|
95
|
+
childrenRef?: React.RefObject<HTMLSpanElement> | undefined;
|
|
96
|
+
colors?: "default" | "inverted" | undefined;
|
|
97
|
+
variant?: "default" | "alt" | undefined;
|
|
98
|
+
shape?: "rounded" | "rectangular" | undefined;
|
|
99
|
+
view?: "outlined" | "filled" | undefined;
|
|
100
|
+
styles?: {
|
|
101
|
+
[key: string]: string;
|
|
102
|
+
} | undefined;
|
|
103
|
+
colorStylesMap?: StyleColors | undefined;
|
|
104
|
+
} & React.RefAttributes<HTMLButtonElement>>;
|
|
105
|
+
export { StyleColors, NativeProps, BaseTagProps, BaseTag };
|
package/index.js
CHANGED
|
@@ -17,14 +17,19 @@ require('./hooks/use-tabs.js');
|
|
|
17
17
|
require('@alfalab/core-components-shared');
|
|
18
18
|
require('./components/scrollable-container/Component.js');
|
|
19
19
|
require('compute-scroll-into-view');
|
|
20
|
+
require('./components/scroll-controls/Component.js');
|
|
21
|
+
require('lodash.debounce');
|
|
22
|
+
require('@alfalab/core-components-icon-button');
|
|
23
|
+
require('@alfalab/icons-glyph/ChevronLeftMIcon');
|
|
24
|
+
require('@alfalab/icons-glyph/ChevronRightMIcon');
|
|
25
|
+
require('./components/scroll-controls/utils.js');
|
|
20
26
|
require('./components/title/Component.js');
|
|
21
|
-
require('./index.module-
|
|
27
|
+
require('./index.module-ee99c069.js');
|
|
22
28
|
require('./components/primary-tablist/Component.mobile.js');
|
|
23
|
-
require('./mobile.module-a305e8da.js');
|
|
24
29
|
require('./components/secondary-tablist/Component.desktop.js');
|
|
25
30
|
require('@alfalab/core-components-tag/desktop');
|
|
26
31
|
require('./components/secondary-tablist/Component.js');
|
|
27
|
-
require('./index.module-
|
|
32
|
+
require('./index.module-447ba3e0.js');
|
|
28
33
|
require('./components/secondary-tablist/Component.mobile.js');
|
|
29
34
|
require('@alfalab/core-components-tag/mobile');
|
|
30
35
|
require('./components/tabs/Component.js');
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var commonStyles = {"component":"tabs__component_tc0jp","fullWidthScroll":"tabs__fullWidthScroll_tc0jp","container":"tabs__container_tc0jp","title":"tabs__title_tc0jp","xxs":"tabs__xxs_tc0jp","xs":"tabs__xs_tc0jp","s":"tabs__s_tc0jp","m":"tabs__m_tc0jp","l":"tabs__l_tc0jp","xl":"tabs__xl_tc0jp"};
|
|
4
|
+
require('./components/secondary-tablist/index.css')
|
|
5
|
+
|
|
6
|
+
exports.commonStyles = commonStyles;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var commonStyles = {"component":"tabs__component_1u3uq","fullWidthScroll":"tabs__fullWidthScroll_1u3uq","container":"tabs__container_1u3uq","title":"tabs__title_1u3uq","disabled":"tabs__disabled_1u3uq","focused":"tabs__focused_1u3uq","collapsed":"tabs__collapsed_1u3uq","selected":"tabs__selected_1u3uq","line":"tabs__line_1u3uq","option":"tabs__option_1u3uq","s":"tabs__s_1u3uq","xs":"tabs__xs_1u3uq","xxs":"tabs__xxs_1u3uq","pickerWrapper":"tabs__pickerWrapper_1u3uq","m":"tabs__m_1u3uq","l":"tabs__l_1u3uq","xl":"tabs__xl_1u3uq","rightAddons":"tabs__rightAddons_1u3uq"};
|
|
4
|
+
require('./components/primary-tablist/index.css')
|
|
5
|
+
|
|
6
|
+
exports.commonStyles = commonStyles;
|
package/mobile.js
CHANGED
|
@@ -15,12 +15,17 @@ require('./hooks/use-tabs.js');
|
|
|
15
15
|
require('@alfalab/core-components-shared');
|
|
16
16
|
require('./components/scrollable-container/Component.js');
|
|
17
17
|
require('compute-scroll-into-view');
|
|
18
|
+
require('./components/scroll-controls/Component.js');
|
|
19
|
+
require('lodash.debounce');
|
|
20
|
+
require('@alfalab/core-components-icon-button');
|
|
21
|
+
require('@alfalab/icons-glyph/ChevronLeftMIcon');
|
|
22
|
+
require('@alfalab/icons-glyph/ChevronRightMIcon');
|
|
23
|
+
require('./components/scroll-controls/utils.js');
|
|
18
24
|
require('./components/title/Component.js');
|
|
19
|
-
require('./index.module-
|
|
20
|
-
require('./mobile.module-a305e8da.js');
|
|
25
|
+
require('./index.module-ee99c069.js');
|
|
21
26
|
require('@alfalab/core-components-tag/mobile');
|
|
22
27
|
require('./components/secondary-tablist/Component.js');
|
|
23
|
-
require('./index.module-
|
|
28
|
+
require('./index.module-447ba3e0.js');
|
|
24
29
|
require('./components/tabs/Component.js');
|
|
25
30
|
|
|
26
31
|
|
package/modern/collapsible.d.ts
CHANGED
|
@@ -1,7 +1,2 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export * from "./components/tabs/Component.collabsible.desktop";
|
|
3
|
-
export * from "./components/tabs/Component.collapsible.mobile";
|
|
4
|
-
export * from "./components/primary-tablist/Component.collapsible.responsive";
|
|
5
|
-
export * from "./components/primary-tablist/Component.collapsible.desktop";
|
|
6
|
-
export * from "./components/primary-tablist/Component.collapsible.mobile";
|
|
1
|
+
export { TabsCollapsible, TabsCollapsibleProps } from "./components/tabs/Component.collapsible";
|
|
7
2
|
export * from "./components/tab/index";
|
package/modern/collapsible.js
CHANGED
|
@@ -1,19 +1,13 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export { TabsCollapsibleDesktop } from './components/tabs/Component.collabsible.desktop.js';
|
|
3
|
-
export { TabsCollapsibleMobile } from './components/tabs/Component.collapsible.mobile.js';
|
|
4
|
-
export { CollapsiblePrimaryTabListResponsive } from './components/primary-tablist/Component.collapsible.responsive.js';
|
|
5
|
-
export { CollapsiblePrimaryTabListDesktop } from './components/primary-tablist/Component.collapsible.desktop.js';
|
|
6
|
-
export { CollapsiblePrimaryTabListMobile } from './components/primary-tablist/Component.collapsible.mobile.js';
|
|
1
|
+
export { TabsCollapsible } from './components/tabs/Component.collapsible.js';
|
|
7
2
|
export { Tab } from './components/tab/Component.js';
|
|
8
3
|
import 'react';
|
|
9
|
-
import './components/tabs/Component.js';
|
|
10
|
-
import '@alfalab/core-components-mq/modern';
|
|
11
4
|
import './components/primary-tablist/Component.collapsible.js';
|
|
12
5
|
import 'classnames';
|
|
13
6
|
import '@alfalab/core-components-badge/modern';
|
|
14
7
|
import '@alfalab/core-components-keyboard-focusable/modern';
|
|
15
8
|
import '@alfalab/core-components-picker-button/modern/desktop';
|
|
16
9
|
import './hooks/use-tablist-titles.js';
|
|
10
|
+
import '@alfalab/core-components-mq/modern';
|
|
17
11
|
import './hooks/use-collapsible-elements.js';
|
|
18
12
|
import '@juggle/resize-observer';
|
|
19
13
|
import '@alfalab/hooks';
|
|
@@ -21,5 +15,5 @@ import './hooks/use-tabs.js';
|
|
|
21
15
|
import '@alfalab/core-components-shared/modern';
|
|
22
16
|
import './synthetic-events.js';
|
|
23
17
|
import './components/title/Component.js';
|
|
24
|
-
import './index.module-
|
|
25
|
-
import './
|
|
18
|
+
import './index.module-22ff4191.js';
|
|
19
|
+
import './components/tabs/Component.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import {
|
|
4
|
-
declare const CollapsiblePrimaryTabList: ({ size, className, containerClassName, titles,
|
|
3
|
+
import { TabListProps } from "../../typings";
|
|
4
|
+
declare const CollapsiblePrimaryTabList: ({ size, className, containerClassName, titles, selectedId, collapsedTabsIds, fullWidthScroll, onChange, dataTestId, breakpoint, defaultMatchMediaValue, }: TabListProps) => React.JSX.Element;
|
|
5
5
|
export { CollapsiblePrimaryTabList };
|
|
@@ -6,6 +6,7 @@ import { PickerButtonDesktop } from '@alfalab/core-components-picker-button/mode
|
|
|
6
6
|
import { useTablistTitles } from '../../hooks/use-tablist-titles.js';
|
|
7
7
|
import { createSyntheticMouseEvent } from '../../synthetic-events.js';
|
|
8
8
|
import { Title } from '../title/Component.js';
|
|
9
|
+
import { c as commonStyles } from '../../index.module-22ff4191.js';
|
|
9
10
|
import '@alfalab/core-components-mq/modern';
|
|
10
11
|
import '../../hooks/use-collapsible-elements.js';
|
|
11
12
|
import '@juggle/resize-observer';
|
|
@@ -13,8 +14,7 @@ import '@alfalab/hooks';
|
|
|
13
14
|
import '../../hooks/use-tabs.js';
|
|
14
15
|
import '@alfalab/core-components-shared/modern';
|
|
15
16
|
|
|
16
|
-
const
|
|
17
|
-
const CollapsiblePrimaryTabList = ({ size, className, containerClassName, titles = [], styles = DEFAULT_STYLES, selectedId = titles.length ? titles[0].id : undefined, collapsedTabsIds, fullWidthScroll, onChange, dataTestId, breakpoint = 1024, defaultMatchMediaValue, }) => {
|
|
17
|
+
const CollapsiblePrimaryTabList = ({ size = 'm', className, containerClassName, titles = [], selectedId = titles.length ? titles[0].id : undefined, collapsedTabsIds, fullWidthScroll, onChange, dataTestId, breakpoint = 1024, defaultMatchMediaValue, }) => {
|
|
18
18
|
const lineRef = useRef(null);
|
|
19
19
|
const { containerRef, addonRef, tablistTitles, selectedTab, getTabListItemProps } = useTablistTitles({
|
|
20
20
|
titles,
|
|
@@ -35,11 +35,11 @@ const CollapsiblePrimaryTabList = ({ size, className, containerClassName, titles
|
|
|
35
35
|
options.push({
|
|
36
36
|
key: title.title,
|
|
37
37
|
value: title.id,
|
|
38
|
-
content: React.createElement(Title, { ...title, styles:
|
|
38
|
+
content: React.createElement(Title, { ...title, styles: commonStyles, isOption: true }),
|
|
39
39
|
});
|
|
40
40
|
}
|
|
41
41
|
return options;
|
|
42
|
-
}, []), [tablistTitles
|
|
42
|
+
}, []), [tablistTitles]);
|
|
43
43
|
const collapsedAddonsLength = tablistTitles.filter((title) => title.collapsed && title.rightAddons).length;
|
|
44
44
|
const handleOptionsChange = (payload) => {
|
|
45
45
|
if (payload.selected?.value && onChange) {
|
|
@@ -48,14 +48,14 @@ const CollapsiblePrimaryTabList = ({ size, className, containerClassName, titles
|
|
|
48
48
|
onChange(syntheticMouseEvent, { selectedId: payload.selected.value });
|
|
49
49
|
}
|
|
50
50
|
};
|
|
51
|
-
const renderContent = () => (React.createElement("div", { role: 'tablist', "data-test-id": dataTestId, className: cn(
|
|
52
|
-
[
|
|
51
|
+
const renderContent = () => (React.createElement("div", { role: 'tablist', "data-test-id": dataTestId, className: cn(commonStyles.component, className, size && commonStyles[size], {
|
|
52
|
+
[commonStyles.fullWidthScroll]: fullWidthScroll,
|
|
53
53
|
}) },
|
|
54
|
-
tablistTitles.map(({ dataTestId: _, ...restTitleProps }, index) => (React.createElement(KeyboardFocusable, { key: restTitleProps.id }, (ref, focused) => (React.createElement(Title, { ...getTabListItemProps(index, ref), ...restTitleProps, focused: focused, styles:
|
|
55
|
-
collapsedOptions.length ? (React.createElement("span", { ref: addonRef, role: 'menu', className:
|
|
56
|
-
React.createElement(PickerButtonDesktop, { fieldClassName:
|
|
57
|
-
React.createElement("div", { className:
|
|
58
|
-
return (React.createElement("div", { ref: containerRef, className: cn(
|
|
54
|
+
tablistTitles.map(({ dataTestId: _, ...restTitleProps }, index) => (React.createElement(KeyboardFocusable, { key: restTitleProps.id }, (ref, focused) => (React.createElement(Title, { ...getTabListItemProps(index, ref), ...restTitleProps, focused: focused, styles: commonStyles }))))),
|
|
55
|
+
collapsedOptions.length ? (React.createElement("span", { ref: addonRef, role: 'menu', className: commonStyles.pickerWrapper },
|
|
56
|
+
React.createElement(PickerButtonDesktop, { fieldClassName: commonStyles.title, optionClassName: cn(commonStyles.pickerOption, size && commonStyles[size]), options: collapsedOptions, onChange: handleOptionsChange, rightAddons: collapsedAddonsLength ? (React.createElement(Badge, { view: 'count', content: collapsedAddonsLength })) : null, size: 'm', view: 'ghost', label: '\u0415\u0449\u0451', popoverPosition: 'bottom-end' }))) : null,
|
|
57
|
+
React.createElement("div", { className: commonStyles.line, ref: lineRef })));
|
|
58
|
+
return (React.createElement("div", { ref: containerRef, className: cn(commonStyles.container, containerClassName) }, renderContent()));
|
|
59
59
|
};
|
|
60
60
|
|
|
61
61
|
export { CollapsiblePrimaryTabList };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import { Styles, TabListProps } from "../../typings";
|
|
4
|
-
declare const PrimaryTabList: ({ size, styles, className, containerClassName, titles, selectedId, scrollable, fullWidthScroll, onChange, dataTestId, }: TabListProps & Styles) => React.JSX.Element;
|
|
3
|
+
import { PlatformProps, Styles, TabListProps } from "../../typings";
|
|
4
|
+
declare const PrimaryTabList: ({ size, styles, className, containerClassName, titles, selectedId, scrollable, fullWidthScroll, onChange, dataTestId, platform, }: TabListProps & Styles & PlatformProps) => React.JSX.Element;
|
|
5
5
|
export { PrimaryTabList };
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { PrimaryTabList } from './Component.js';
|
|
3
|
-
import { c as commonStyles } from '../../index.module-
|
|
3
|
+
import { c as commonStyles } from '../../index.module-22ff4191.js';
|
|
4
4
|
import 'classnames';
|
|
5
5
|
import '@alfalab/core-components-keyboard-focusable/modern';
|
|
6
6
|
import '../../hooks/use-tabs.js';
|
|
7
7
|
import '@alfalab/core-components-shared/modern';
|
|
8
8
|
import '../scrollable-container/Component.js';
|
|
9
9
|
import 'compute-scroll-into-view';
|
|
10
|
+
import '../scroll-controls/Component.js';
|
|
11
|
+
import 'lodash.debounce';
|
|
12
|
+
import '@alfalab/core-components-icon-button/modern';
|
|
13
|
+
import '@alfalab/icons-glyph/ChevronLeftMIcon';
|
|
14
|
+
import '@alfalab/icons-glyph/ChevronRightMIcon';
|
|
15
|
+
import '../scroll-controls/utils.js';
|
|
10
16
|
import '../title/Component.js';
|
|
11
17
|
|
|
12
|
-
const PrimaryTabListDesktop = ({ size = 'm', ...restProps }) => (React.createElement(PrimaryTabList, { ...restProps, size: size, styles: commonStyles }));
|
|
18
|
+
const PrimaryTabListDesktop = ({ size = 'm', ...restProps }) => (React.createElement(PrimaryTabList, { ...restProps, size: size, styles: commonStyles, platform: 'desktop' }));
|
|
13
19
|
|
|
14
20
|
export { PrimaryTabListDesktop };
|