@alfalab/core-components-tabs 8.6.8 → 8.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/components/primary-tablist/Component.collapsible.js +2 -2
  2. package/components/primary-tablist/Component.desktop.js +1 -1
  3. package/components/primary-tablist/Component.mobile.js +2 -2
  4. package/components/primary-tablist/index.css +133 -133
  5. package/components/primary-tablist/mobile.css +394 -368
  6. package/components/scroll-controls/Component.js +1 -1
  7. package/components/scroll-controls/index.css +12 -12
  8. package/components/scrollable-container/Component.js +1 -1
  9. package/components/scrollable-container/index.css +6 -6
  10. package/components/secondary-tablist/Component.desktop.js +1 -1
  11. package/components/secondary-tablist/Component.mobile.js +2 -2
  12. package/components/secondary-tablist/index.css +11 -11
  13. package/components/secondary-tablist/mobile.css +186 -160
  14. package/components/tab/Component.js +1 -1
  15. package/components/tab/index.css +3 -3
  16. package/components/tabs/Component.d.ts +1 -1
  17. package/components/tabs/Component.js +2 -2
  18. package/components/title/Component.d.ts +1 -1
  19. package/cssm/components/primary-tablist/Component.collapsible.js +1 -1
  20. package/cssm/components/primary-tablist/index.module.css +1 -1
  21. package/cssm/components/tabs/Component.d.ts +1 -1
  22. package/cssm/components/tabs/Component.js +2 -2
  23. package/cssm/components/title/Component.d.ts +1 -1
  24. package/cssm/hooks/use-tablist-titles.d.ts +1 -1
  25. package/cssm/typings.d.ts +7 -2
  26. package/esm/components/primary-tablist/Component.collapsible.js +2 -2
  27. package/esm/components/primary-tablist/Component.desktop.js +1 -1
  28. package/esm/components/primary-tablist/Component.mobile.js +2 -2
  29. package/esm/components/primary-tablist/index.css +133 -133
  30. package/esm/components/primary-tablist/mobile.css +394 -368
  31. package/esm/components/scroll-controls/Component.js +1 -1
  32. package/esm/components/scroll-controls/index.css +12 -12
  33. package/esm/components/scrollable-container/Component.js +1 -1
  34. package/esm/components/scrollable-container/index.css +6 -6
  35. package/esm/components/secondary-tablist/Component.desktop.js +1 -1
  36. package/esm/components/secondary-tablist/Component.mobile.js +2 -2
  37. package/esm/components/secondary-tablist/index.css +11 -11
  38. package/esm/components/secondary-tablist/mobile.css +186 -160
  39. package/esm/components/tab/Component.js +1 -1
  40. package/esm/components/tab/index.css +3 -3
  41. package/esm/components/tabs/Component.d.ts +1 -1
  42. package/esm/components/tabs/Component.js +2 -2
  43. package/esm/components/title/Component.d.ts +1 -1
  44. package/esm/hooks/use-tablist-titles.d.ts +1 -1
  45. package/esm/index.module-7f53615c.js +4 -0
  46. package/esm/index.module-f25eb728.js +4 -0
  47. package/esm/typings.d.ts +7 -2
  48. package/hooks/use-tablist-titles.d.ts +1 -1
  49. package/index.module-1eb43fb9.js +6 -0
  50. package/index.module-c88e5a5a.js +6 -0
  51. package/modern/components/primary-tablist/Component.collapsible.js +2 -2
  52. package/modern/components/primary-tablist/Component.desktop.js +1 -1
  53. package/modern/components/primary-tablist/Component.mobile.js +2 -2
  54. package/modern/components/primary-tablist/index.css +133 -133
  55. package/modern/components/primary-tablist/mobile.css +394 -368
  56. package/modern/components/scroll-controls/Component.js +1 -1
  57. package/modern/components/scroll-controls/index.css +12 -12
  58. package/modern/components/scrollable-container/Component.js +1 -1
  59. package/modern/components/scrollable-container/index.css +6 -6
  60. package/modern/components/secondary-tablist/Component.desktop.js +1 -1
  61. package/modern/components/secondary-tablist/Component.mobile.js +2 -2
  62. package/modern/components/secondary-tablist/index.css +11 -11
  63. package/modern/components/secondary-tablist/mobile.css +186 -160
  64. package/modern/components/tab/Component.js +1 -1
  65. package/modern/components/tab/index.css +3 -3
  66. package/modern/components/tabs/Component.d.ts +1 -1
  67. package/modern/components/tabs/Component.js +2 -2
  68. package/modern/components/title/Component.d.ts +1 -1
  69. package/modern/hooks/use-tablist-titles.d.ts +1 -1
  70. package/modern/index.module-8121bd57.js +4 -0
  71. package/modern/index.module-c6da7192.js +4 -0
  72. package/modern/typings.d.ts +7 -2
  73. package/package.json +3 -3
  74. package/src/components/primary-tablist/Component.collapsible.tsx +1 -1
  75. package/src/components/tabs/Component.tsx +2 -1
  76. package/src/components/title/Component.tsx +4 -1
  77. package/src/typings.ts +7 -2
  78. package/typings.d.ts +7 -2
  79. package/esm/index.module-72926b9d.js +0 -4
  80. package/esm/index.module-98725e10.js +0 -4
  81. package/index.module-4fce9d75.js +0 -6
  82. package/index.module-5e20b70a.js +0 -6
  83. package/modern/index.module-322d9547.js +0 -4
  84. package/modern/index.module-6c45f929.js +0 -4
@@ -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, tagShape, tagView, textStyle, }: 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, textStyle, style, }: Omit<TabsProps, 'view'>) => React.JSX.Element;
5
5
  export { Tabs };
@@ -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, tagShape = _a.tagShape, tagView = _a.tagView, textStyle = _a.textStyle;
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, textStyle = _a.textStyle, style = _a.style;
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, toggleRef = _b.toggleRef;
@@ -17,7 +17,7 @@ var Tabs = function (_a) {
17
17
  });
18
18
  });
19
19
  var tabs = tabsArray.filter(function (tab) { return tab.props.id === selectedId || tab.props.keepMounted || keepMounted; });
20
- return (React.createElement("div", { className: className },
20
+ return (React.createElement("div", { className: className, style: style },
21
21
  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, textStyle: textStyle }),
22
22
  tabs.map(function (tab) { return cloneElement(tab, { hidden: tab.props.id !== selectedId }); })));
23
23
  };
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import React from 'react';
3
3
  import { Styles, TabListTitle } from "../../typings";
4
- declare const Title: React.ForwardRefExoticComponent<TabListTitle & Styles & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "id"> & {
4
+ declare const Title: React.ForwardRefExoticComponent<TabListTitle & Styles & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "title" | "id"> & {
5
5
  focused?: boolean | undefined;
6
6
  isOption?: boolean | undefined;
7
7
  } & React.RefAttributes<HTMLButtonElement>>;
@@ -6,7 +6,7 @@ declare const useTablistTitles: ({ titles, selectedId, collapsedTabsIds, breakpo
6
6
  tablistTitles: {
7
7
  collapsed: boolean;
8
8
  selected: boolean;
9
- title: string;
9
+ title: string | number | boolean | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | import("react").ReactFragment | import("react").ReactPortal;
10
10
  id: import("../typings").SelectedId;
11
11
  disabled?: boolean | undefined;
12
12
  rightAddons?: import("react").ReactNode;
@@ -0,0 +1,4 @@
1
+ var styles = {"component":"tabs__component_15a3z","desktop":"tabs__desktop_15a3z","paragraph-primary-large":"tabs__paragraph-primary-large_15a3z","title":"tabs__title_15a3z","paragraph-primary-medium":"tabs__paragraph-primary-medium_15a3z","paragraph-primary-small":"tabs__paragraph-primary-small_15a3z","action-primary-large":"tabs__action-primary-large_15a3z","action-primary-medium":"tabs__action-primary-medium_15a3z","action-primary-small":"tabs__action-primary-small_15a3z","accent-primary-large":"tabs__accent-primary-large_15a3z","accent-primary-medium":"tabs__accent-primary-medium_15a3z","accent-primary-small":"tabs__accent-primary-small_15a3z","pickerWrapper":"tabs__pickerWrapper_15a3z","option":"tabs__option_15a3z","scrollControls":"tabs__scrollControls_15a3z","headline-system-xlarge":"tabs__headline-system-xlarge_15a3z","headline-system-large":"tabs__headline-system-large_15a3z","headline-system-medium":"tabs__headline-system-medium_15a3z","headline-system-small":"tabs__headline-system-small_15a3z","headline-system-xsmall":"tabs__headline-system-xsmall_15a3z","headline-xlarge":"tabs__headline-xlarge_15a3z","headline-large":"tabs__headline-large_15a3z","headline-medium":"tabs__headline-medium_15a3z","headline-small":"tabs__headline-small_15a3z","headline-xsmall":"tabs__headline-xsmall_15a3z","fullWidthScroll":"tabs__fullWidthScroll_15a3z","container":"tabs__container_15a3z","disabled":"tabs__disabled_15a3z","focused":"tabs__focused_15a3z","collapsed":"tabs__collapsed_15a3z","selected":"tabs__selected_15a3z","line":"tabs__line_15a3z","s":"tabs__s_15a3z","xs":"tabs__xs_15a3z","xxs":"tabs__xxs_15a3z","m":"tabs__m_15a3z","l":"tabs__l_15a3z","xl":"tabs__xl_15a3z","rightAddons":"tabs__rightAddons_15a3z","rightAddonsMarginZero":"tabs__rightAddonsMarginZero_15a3z"};
2
+ require('./components/primary-tablist/index.css')
3
+
4
+ export { styles as s };
@@ -0,0 +1,4 @@
1
+ var commonStyles = {"component":"tabs__component_1rzwq","fullWidthScroll":"tabs__fullWidthScroll_1rzwq","container":"tabs__container_1rzwq","title":"tabs__title_1rzwq","xxs":"tabs__xxs_1rzwq","xs":"tabs__xs_1rzwq","s":"tabs__s_1rzwq","m":"tabs__m_1rzwq","l":"tabs__l_1rzwq","xl":"tabs__xl_1rzwq"};
2
+ require('./components/secondary-tablist/index.css')
3
+
4
+ export { commonStyles as c };
package/esm/typings.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { FC, MouseEvent, ReactElement, ReactNode, Ref } from 'react';
2
3
  import { TagProps } from "@alfalab/core-components-tag";
3
4
  type SelectedId = string | number;
@@ -81,6 +82,10 @@ type TabsProps = {
81
82
  * Стиль тега (для view secondary только)
82
83
  */
83
84
  tagView?: TagProps['view'];
85
+ /**
86
+ * Дополнительные инлайн стили для враппера
87
+ */
88
+ style?: React.CSSProperties;
84
89
  };
85
90
  type TabProps = {
86
91
  /**
@@ -90,7 +95,7 @@ type TabProps = {
90
95
  /**
91
96
  * Заголовок таба
92
97
  */
93
- title: string;
98
+ title: NonNullable<ReactNode>;
94
99
  /**
95
100
  * Дополнительный класс для контейнера содержимого таба
96
101
  */
@@ -129,7 +134,7 @@ type TabProps = {
129
134
  toggleRef?: Ref<HTMLDivElement>;
130
135
  };
131
136
  type TabListTitle = {
132
- title: string;
137
+ title: NonNullable<ReactNode>;
133
138
  id: SelectedId;
134
139
  disabled?: boolean;
135
140
  rightAddons?: ReactNode;
@@ -6,7 +6,7 @@ declare const useTablistTitles: ({ titles, selectedId, collapsedTabsIds, breakpo
6
6
  tablistTitles: {
7
7
  collapsed: boolean;
8
8
  selected: boolean;
9
- title: string;
9
+ title: string | number | boolean | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | import("react").ReactFragment | import("react").ReactPortal;
10
10
  id: import("../typings").SelectedId;
11
11
  disabled?: boolean | undefined;
12
12
  rightAddons?: import("react").ReactNode;
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var styles = {"component":"tabs__component_15a3z","desktop":"tabs__desktop_15a3z","paragraph-primary-large":"tabs__paragraph-primary-large_15a3z","title":"tabs__title_15a3z","paragraph-primary-medium":"tabs__paragraph-primary-medium_15a3z","paragraph-primary-small":"tabs__paragraph-primary-small_15a3z","action-primary-large":"tabs__action-primary-large_15a3z","action-primary-medium":"tabs__action-primary-medium_15a3z","action-primary-small":"tabs__action-primary-small_15a3z","accent-primary-large":"tabs__accent-primary-large_15a3z","accent-primary-medium":"tabs__accent-primary-medium_15a3z","accent-primary-small":"tabs__accent-primary-small_15a3z","pickerWrapper":"tabs__pickerWrapper_15a3z","option":"tabs__option_15a3z","scrollControls":"tabs__scrollControls_15a3z","headline-system-xlarge":"tabs__headline-system-xlarge_15a3z","headline-system-large":"tabs__headline-system-large_15a3z","headline-system-medium":"tabs__headline-system-medium_15a3z","headline-system-small":"tabs__headline-system-small_15a3z","headline-system-xsmall":"tabs__headline-system-xsmall_15a3z","headline-xlarge":"tabs__headline-xlarge_15a3z","headline-large":"tabs__headline-large_15a3z","headline-medium":"tabs__headline-medium_15a3z","headline-small":"tabs__headline-small_15a3z","headline-xsmall":"tabs__headline-xsmall_15a3z","fullWidthScroll":"tabs__fullWidthScroll_15a3z","container":"tabs__container_15a3z","disabled":"tabs__disabled_15a3z","focused":"tabs__focused_15a3z","collapsed":"tabs__collapsed_15a3z","selected":"tabs__selected_15a3z","line":"tabs__line_15a3z","s":"tabs__s_15a3z","xs":"tabs__xs_15a3z","xxs":"tabs__xxs_15a3z","m":"tabs__m_15a3z","l":"tabs__l_15a3z","xl":"tabs__xl_15a3z","rightAddons":"tabs__rightAddons_15a3z","rightAddonsMarginZero":"tabs__rightAddonsMarginZero_15a3z"};
4
+ require('./components/primary-tablist/index.css')
5
+
6
+ exports.styles = styles;
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var commonStyles = {"component":"tabs__component_1rzwq","fullWidthScroll":"tabs__fullWidthScroll_1rzwq","container":"tabs__container_1rzwq","title":"tabs__title_1rzwq","xxs":"tabs__xxs_1rzwq","xs":"tabs__xs_1rzwq","s":"tabs__s_1rzwq","m":"tabs__m_1rzwq","l":"tabs__l_1rzwq","xl":"tabs__xl_1rzwq"};
4
+ require('./components/secondary-tablist/index.css')
5
+
6
+ exports.commonStyles = commonStyles;
@@ -6,7 +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 { s as styles } from '../../index.module-6c45f929.js';
9
+ import { s as styles } from '../../index.module-c6da7192.js';
10
10
 
11
11
  const CollapsiblePrimaryTabList = ({ size = 'm', className, containerClassName, titles = [], selectedId = titles.length ? titles[0].id : undefined, collapsedTabsIds, fullWidthScroll, onChange, dataTestId, breakpoint = 1024, defaultMatchMediaValue, textStyle, }) => {
12
12
  const lineRef = useRef(null);
@@ -27,7 +27,7 @@ const CollapsiblePrimaryTabList = ({ size = 'm', className, containerClassName,
27
27
  const collapsedOptions = useMemo(() => tablistTitles.reduce((options, { toggleRef, ...title }) => {
28
28
  if (title.collapsed) {
29
29
  options.push({
30
- key: title.title,
30
+ key: String(title.id),
31
31
  value: title.id,
32
32
  content: (React.createElement(Title, { ...title, ref: toggleRef, styles: styles, isOption: true })),
33
33
  });
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { PrimaryTabList } from './Component.js';
3
- import { s as styles } from '../../index.module-6c45f929.js';
3
+ import { s as styles } from '../../index.module-c6da7192.js';
4
4
 
5
5
  const PrimaryTabListDesktop = ({ size = 'm', ...restProps }) => (React.createElement(PrimaryTabList, { ...restProps, size: size, styles: styles, platform: 'desktop' }));
6
6
 
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
2
  import { PrimaryTabList } from './Component.js';
3
- import { s as styles$1 } from '../../index.module-6c45f929.js';
3
+ import { s as styles$1 } from '../../index.module-c6da7192.js';
4
4
 
5
- const mobileStyles = {"title":"tabs__title_18jc9 tabs__title_17jvt","mobile":"tabs__mobile_18jc9","paragraph-primary-large":"tabs__paragraph-primary-large_18jc9","paragraph-primary-medium":"tabs__paragraph-primary-medium_18jc9","paragraph-primary-small":"tabs__paragraph-primary-small_18jc9","action-primary-large":"tabs__action-primary-large_18jc9","action-primary-medium":"tabs__action-primary-medium_18jc9","action-primary-small":"tabs__action-primary-small_18jc9","accent-primary-large":"tabs__accent-primary-large_18jc9","accent-primary-medium":"tabs__accent-primary-medium_18jc9","accent-primary-small":"tabs__accent-primary-small_18jc9","pickerWrapper":"tabs__pickerWrapper_18jc9","option":"tabs__option_18jc9","scrollControls":"tabs__scrollControls_18jc9","headline-system-xlarge":"tabs__headline-system-xlarge_18jc9","headline-system-large":"tabs__headline-system-large_18jc9","headline-system-medium":"tabs__headline-system-medium_18jc9","headline-system-small":"tabs__headline-system-small_18jc9","headline-system-xsmall":"tabs__headline-system-xsmall_18jc9","headline-xlarge":"tabs__headline-xlarge_18jc9","headline-large":"tabs__headline-large_18jc9","headline-medium":"tabs__headline-medium_18jc9","headline-small":"tabs__headline-small_18jc9","headline-xsmall":"tabs__headline-xsmall_18jc9"};
5
+ const mobileStyles = {"title":"tabs__title_i1462 tabs__title_15a3z","mobile":"tabs__mobile_i1462","paragraph-primary-large":"tabs__paragraph-primary-large_i1462","paragraph-primary-medium":"tabs__paragraph-primary-medium_i1462","paragraph-primary-small":"tabs__paragraph-primary-small_i1462","action-primary-large":"tabs__action-primary-large_i1462","action-primary-medium":"tabs__action-primary-medium_i1462","action-primary-small":"tabs__action-primary-small_i1462","accent-primary-large":"tabs__accent-primary-large_i1462","accent-primary-medium":"tabs__accent-primary-medium_i1462","accent-primary-small":"tabs__accent-primary-small_i1462","pickerWrapper":"tabs__pickerWrapper_i1462","option":"tabs__option_i1462","scrollControls":"tabs__scrollControls_i1462","headline-system-xlarge":"tabs__headline-system-xlarge_i1462","headline-system-large":"tabs__headline-system-large_i1462","headline-system-medium":"tabs__headline-system-medium_i1462","headline-system-small":"tabs__headline-system-small_i1462","headline-system-xsmall":"tabs__headline-system-xsmall_i1462","headline-xlarge":"tabs__headline-xlarge_i1462","headline-large":"tabs__headline-large_i1462","headline-medium":"tabs__headline-medium_i1462","headline-small":"tabs__headline-small_i1462","headline-xsmall":"tabs__headline-xsmall_i1462"};
6
6
  require('./mobile.css')
7
7
 
8
8
  const styles = {