@cloud-ru/uikit-product-site-header 0.4.8 → 0.4.10

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 (140) hide show
  1. package/CHANGELOG.md +28 -1
  2. package/dist/cjs/components/HeaderItems/HeaderItem.d.ts +10 -0
  3. package/dist/cjs/components/HeaderItems/HeaderItem.js +74 -0
  4. package/dist/cjs/components/HeaderItems/index.d.ts +2 -0
  5. package/dist/cjs/components/HeaderItems/index.js +18 -0
  6. package/dist/cjs/components/HeaderItems/styles.module.css +44 -0
  7. package/dist/cjs/components/HeaderItems/types.d.ts +12 -0
  8. package/dist/cjs/components/HeaderItems/types.js +2 -0
  9. package/dist/cjs/components/SiteHeaderBasic/SiteHeaderBasic.d.ts +45 -0
  10. package/dist/cjs/components/SiteHeaderBasic/SiteHeaderBasic.js +38 -0
  11. package/dist/cjs/components/SiteHeaderBasic/index.d.ts +1 -0
  12. package/dist/cjs/components/SiteHeaderBasic/index.js +17 -0
  13. package/dist/cjs/components/SiteHeaderBasic/styles.module.css +66 -0
  14. package/dist/cjs/components/SubHeader/SubHeader.d.ts +17 -0
  15. package/dist/cjs/components/SubHeader/SubHeader.js +23 -0
  16. package/dist/cjs/components/SubHeader/index.d.ts +1 -0
  17. package/dist/cjs/components/SubHeader/index.js +17 -0
  18. package/dist/cjs/components/SubHeader/styles.module.css +34 -0
  19. package/dist/cjs/components/UserDetailsDropdown/UserDetailsDropdown.d.ts +7 -0
  20. package/dist/cjs/components/UserDetailsDropdown/UserDetailsDropdown.js +14 -0
  21. package/dist/cjs/components/UserDetailsDropdown/index.d.ts +1 -0
  22. package/dist/cjs/components/UserDetailsDropdown/index.js +17 -0
  23. package/dist/cjs/components/UserDetailsDropdown/styles.module.css +13 -0
  24. package/dist/cjs/components/UserDetailsInline/UserDetailsInline.d.ts +8 -0
  25. package/dist/cjs/components/UserDetailsInline/UserDetailsInline.js +16 -0
  26. package/dist/cjs/components/UserDetailsInline/index.d.ts +1 -0
  27. package/dist/cjs/components/UserDetailsInline/index.js +17 -0
  28. package/dist/cjs/components/UserDetailsInline/styles.module.css +6 -0
  29. package/dist/cjs/components/index.d.ts +5 -0
  30. package/dist/cjs/components/index.js +21 -0
  31. package/dist/cjs/helperComponents/ButtonBurger/ButtonBurger.d.ts +6 -0
  32. package/dist/cjs/helperComponents/ButtonBurger/ButtonBurger.js +12 -0
  33. package/dist/cjs/helperComponents/ButtonBurger/index.d.ts +1 -0
  34. package/dist/cjs/helperComponents/ButtonBurger/index.js +17 -0
  35. package/dist/cjs/helperComponents/ButtonBurger/styles.module.css +17 -0
  36. package/dist/cjs/helperComponents/LinkItemHeader/LinkItemHeader.d.ts +10 -0
  37. package/dist/cjs/helperComponents/LinkItemHeader/LinkItemHeader.js +19 -0
  38. package/dist/cjs/helperComponents/LinkItemHeader/index.d.ts +1 -0
  39. package/dist/cjs/helperComponents/LinkItemHeader/index.js +17 -0
  40. package/dist/cjs/helperComponents/LinkItemHeader/styles.module.css +46 -0
  41. package/dist/cjs/helperComponents/LogoContent/LogoContent.d.ts +7 -0
  42. package/dist/cjs/helperComponents/LogoContent/LogoContent.js +14 -0
  43. package/dist/cjs/helperComponents/LogoContent/index.d.ts +1 -0
  44. package/dist/cjs/helperComponents/LogoContent/index.js +17 -0
  45. package/dist/cjs/helperComponents/LogoContent/styles.module.css +35 -0
  46. package/dist/cjs/helperComponents/MobileMenu/MobileMenu.d.ts +9 -0
  47. package/dist/cjs/helperComponents/MobileMenu/MobileMenu.js +12 -0
  48. package/dist/cjs/helperComponents/MobileMenu/index.d.ts +1 -0
  49. package/dist/cjs/helperComponents/MobileMenu/index.js +17 -0
  50. package/dist/cjs/helperComponents/MobileMenu/styles.module.css +7 -0
  51. package/dist/cjs/helperComponents/MoreButton/MoreButton.d.ts +7 -0
  52. package/dist/cjs/helperComponents/MoreButton/MoreButton.js +29 -0
  53. package/dist/cjs/helperComponents/MoreButton/index.d.ts +1 -0
  54. package/dist/cjs/helperComponents/MoreButton/index.js +17 -0
  55. package/dist/cjs/helperComponents/MoreButton/styles.module.css +33 -0
  56. package/dist/cjs/helperComponents/UserInfo/UserInfo.d.ts +7 -0
  57. package/dist/cjs/helperComponents/UserInfo/UserInfo.js +15 -0
  58. package/dist/cjs/helperComponents/UserInfo/index.d.ts +1 -0
  59. package/dist/cjs/helperComponents/UserInfo/index.js +17 -0
  60. package/dist/cjs/helperComponents/UserInfo/styles.module.css +13 -0
  61. package/dist/cjs/helperComponents/index.d.ts +5 -0
  62. package/dist/cjs/helperComponents/index.js +21 -0
  63. package/dist/cjs/hooks/index.d.ts +2 -0
  64. package/dist/cjs/hooks/index.js +18 -0
  65. package/dist/cjs/hooks/useHeaderPosition.d.ts +6 -0
  66. package/dist/cjs/hooks/useHeaderPosition.js +47 -0
  67. package/dist/cjs/hooks/useResizeObserver.d.ts +3 -0
  68. package/dist/cjs/hooks/useResizeObserver.js +21 -0
  69. package/dist/cjs/index.d.ts +1 -0
  70. package/dist/cjs/index.js +17 -0
  71. package/dist/esm/components/HeaderItems/HeaderItem.d.ts +10 -0
  72. package/dist/esm/components/HeaderItems/HeaderItem.js +68 -0
  73. package/dist/esm/components/HeaderItems/index.d.ts +2 -0
  74. package/dist/esm/components/HeaderItems/index.js +2 -0
  75. package/dist/esm/components/HeaderItems/styles.module.css +44 -0
  76. package/dist/esm/components/HeaderItems/types.d.ts +12 -0
  77. package/dist/esm/components/HeaderItems/types.js +1 -0
  78. package/dist/esm/components/SiteHeaderBasic/SiteHeaderBasic.d.ts +45 -0
  79. package/dist/esm/components/SiteHeaderBasic/SiteHeaderBasic.js +32 -0
  80. package/dist/esm/components/SiteHeaderBasic/index.d.ts +1 -0
  81. package/dist/esm/components/SiteHeaderBasic/index.js +1 -0
  82. package/dist/esm/components/SiteHeaderBasic/styles.module.css +66 -0
  83. package/dist/esm/components/SubHeader/SubHeader.d.ts +17 -0
  84. package/dist/esm/components/SubHeader/SubHeader.js +17 -0
  85. package/dist/esm/components/SubHeader/index.d.ts +1 -0
  86. package/dist/esm/components/SubHeader/index.js +1 -0
  87. package/dist/esm/components/SubHeader/styles.module.css +34 -0
  88. package/dist/esm/components/UserDetailsDropdown/UserDetailsDropdown.d.ts +7 -0
  89. package/dist/esm/components/UserDetailsDropdown/UserDetailsDropdown.js +8 -0
  90. package/dist/esm/components/UserDetailsDropdown/index.d.ts +1 -0
  91. package/dist/esm/components/UserDetailsDropdown/index.js +1 -0
  92. package/dist/esm/components/UserDetailsDropdown/styles.module.css +13 -0
  93. package/dist/esm/components/UserDetailsInline/UserDetailsInline.d.ts +8 -0
  94. package/dist/esm/components/UserDetailsInline/UserDetailsInline.js +10 -0
  95. package/dist/esm/components/UserDetailsInline/index.d.ts +1 -0
  96. package/dist/esm/components/UserDetailsInline/index.js +1 -0
  97. package/dist/esm/components/UserDetailsInline/styles.module.css +6 -0
  98. package/dist/esm/components/index.d.ts +5 -0
  99. package/dist/esm/components/index.js +5 -0
  100. package/dist/esm/helperComponents/ButtonBurger/ButtonBurger.d.ts +6 -0
  101. package/dist/esm/helperComponents/ButtonBurger/ButtonBurger.js +6 -0
  102. package/dist/esm/helperComponents/ButtonBurger/index.d.ts +1 -0
  103. package/dist/esm/helperComponents/ButtonBurger/index.js +1 -0
  104. package/dist/esm/helperComponents/ButtonBurger/styles.module.css +17 -0
  105. package/dist/esm/helperComponents/LinkItemHeader/LinkItemHeader.d.ts +10 -0
  106. package/dist/esm/helperComponents/LinkItemHeader/LinkItemHeader.js +13 -0
  107. package/dist/esm/helperComponents/LinkItemHeader/index.d.ts +1 -0
  108. package/dist/esm/helperComponents/LinkItemHeader/index.js +1 -0
  109. package/dist/esm/helperComponents/LinkItemHeader/styles.module.css +46 -0
  110. package/dist/esm/helperComponents/LogoContent/LogoContent.d.ts +7 -0
  111. package/dist/esm/helperComponents/LogoContent/LogoContent.js +8 -0
  112. package/dist/esm/helperComponents/LogoContent/index.d.ts +1 -0
  113. package/dist/esm/helperComponents/LogoContent/index.js +1 -0
  114. package/dist/esm/helperComponents/LogoContent/styles.module.css +35 -0
  115. package/dist/esm/helperComponents/MobileMenu/MobileMenu.d.ts +9 -0
  116. package/dist/esm/helperComponents/MobileMenu/MobileMenu.js +6 -0
  117. package/dist/esm/helperComponents/MobileMenu/index.d.ts +1 -0
  118. package/dist/esm/helperComponents/MobileMenu/index.js +1 -0
  119. package/dist/esm/helperComponents/MobileMenu/styles.module.css +7 -0
  120. package/dist/esm/helperComponents/MoreButton/MoreButton.d.ts +7 -0
  121. package/dist/esm/helperComponents/MoreButton/MoreButton.js +23 -0
  122. package/dist/esm/helperComponents/MoreButton/index.d.ts +1 -0
  123. package/dist/esm/helperComponents/MoreButton/index.js +1 -0
  124. package/dist/esm/helperComponents/MoreButton/styles.module.css +33 -0
  125. package/dist/esm/helperComponents/UserInfo/UserInfo.d.ts +7 -0
  126. package/dist/esm/helperComponents/UserInfo/UserInfo.js +9 -0
  127. package/dist/esm/helperComponents/UserInfo/index.d.ts +1 -0
  128. package/dist/esm/helperComponents/UserInfo/index.js +1 -0
  129. package/dist/esm/helperComponents/UserInfo/styles.module.css +13 -0
  130. package/dist/esm/helperComponents/index.d.ts +5 -0
  131. package/dist/esm/helperComponents/index.js +5 -0
  132. package/dist/esm/hooks/index.d.ts +2 -0
  133. package/dist/esm/hooks/index.js +2 -0
  134. package/dist/esm/hooks/useHeaderPosition.d.ts +6 -0
  135. package/dist/esm/hooks/useHeaderPosition.js +43 -0
  136. package/dist/esm/hooks/useResizeObserver.d.ts +3 -0
  137. package/dist/esm/hooks/useResizeObserver.js +17 -0
  138. package/dist/esm/index.d.ts +1 -0
  139. package/dist/esm/index.js +1 -0
  140. package/package.json +7 -6
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ButtonBurger = ButtonBurger;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const uikit_product_icons_1 = require("@sbercloud/uikit-product-icons");
9
+ const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
10
+ function ButtonBurger({ mobileMenuOpen, onClick }) {
11
+ return ((0, jsx_runtime_1.jsx)("button", { className: styles_module_scss_1.default.buttonBurger, onClick: onClick, children: mobileMenuOpen ? (0, jsx_runtime_1.jsx)(uikit_product_icons_1.CloseSVG, {}) : (0, jsx_runtime_1.jsx)(uikit_product_icons_1.BurgerSVG, {}) }));
12
+ }
@@ -0,0 +1 @@
1
+ export * from './ButtonBurger';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./ButtonBurger"), exports);
@@ -0,0 +1,17 @@
1
+ .buttonBurger{
2
+ background-color:transparent;
3
+ cursor:pointer;
4
+ box-shadow:none;
5
+ padding:0;
6
+ height:32px;
7
+ width:32px;
8
+ display:flex;
9
+ align-items:center;
10
+ justify-content:center;
11
+ box-sizing:border-box;
12
+ border:2px solid var(--sys-graphite-decor-default, #ececec);
13
+ color:var(--sys-graphite-accent-default, #222222);
14
+ }
15
+ .buttonBurger:active, .buttonBurger:focus{
16
+ outline:none;
17
+ }
@@ -0,0 +1,10 @@
1
+ type LinkItemHeaderProps = {
2
+ href?: string;
3
+ target?: string;
4
+ label: string;
5
+ withoutHover?: boolean;
6
+ active?: boolean;
7
+ onClick?: () => void;
8
+ };
9
+ export declare function LinkItemHeader({ href, label, onClick, withoutHover, target, active }: LinkItemHeaderProps): import("react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.LinkItemHeader = LinkItemHeader;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const classnames_1 = __importDefault(require("classnames"));
9
+ const typography_1 = require("@snack-uikit/typography");
10
+ const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
11
+ function LinkItemHeader({ href, label, onClick, withoutHover, target, active }) {
12
+ if (href) {
13
+ return ((0, jsx_runtime_1.jsx)("a", { href: href, target: target, onClick: onClick, className: styles_module_scss_1.default.item, children: (0, jsx_runtime_1.jsx)(typography_1.Typography.SansTitleS, { children: label }) }));
14
+ }
15
+ return ((0, jsx_runtime_1.jsx)("button", { onClick: onClick, className: (0, classnames_1.default)(styles_module_scss_1.default.item, styles_module_scss_1.default.button, {
16
+ [styles_module_scss_1.default.active]: active,
17
+ [styles_module_scss_1.default.hovered]: !withoutHover && !active,
18
+ }), children: (0, jsx_runtime_1.jsx)(typography_1.Typography.SansTitleS, { children: label }) }));
19
+ }
@@ -0,0 +1 @@
1
+ export * from './LinkItemHeader';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./LinkItemHeader"), exports);
@@ -0,0 +1,46 @@
1
+ .button{
2
+ background-color:transparent;
3
+ border:none;
4
+ box-shadow:none;
5
+ padding:0;
6
+ }
7
+ .button:active, .button:focus{
8
+ outline:none;
9
+ }
10
+
11
+ .item{
12
+ position:relative;
13
+ text-decoration:none;
14
+ color:var(--sys-graphite-accent-default, #222222);
15
+ transition:color 0.3s ease-in-out;
16
+ cursor:pointer;
17
+ }
18
+ .item:hover{
19
+ color:var(--sys-graphite-accent-hovered, #383838);
20
+ }
21
+
22
+ .hovered::after{
23
+ content:"";
24
+ position:absolute;
25
+ bottom:-20px;
26
+ left:0;
27
+ width:100%;
28
+ height:2px;
29
+ opacity:0;
30
+ background:var(--sys-primary-accent-default, #26d07c);
31
+ transition:opacity 0.3s ease-in-out;
32
+ }
33
+ .hovered:hover::after{
34
+ opacity:1;
35
+ }
36
+
37
+ .active::after{
38
+ content:"";
39
+ position:absolute;
40
+ bottom:-20px;
41
+ left:0;
42
+ width:100%;
43
+ height:2px;
44
+ opacity:1;
45
+ background:var(--sys-primary-accent-default, #26d07c);
46
+ }
@@ -0,0 +1,7 @@
1
+ import { AdditionalLogoText, Logo } from '../../components/SiteHeaderBasic/SiteHeaderBasic';
2
+ export type LogoContentProps = {
3
+ additionalLogoText?: AdditionalLogoText;
4
+ logo: Logo;
5
+ isMobile?: boolean;
6
+ };
7
+ export declare function LogoContent({ additionalLogoText, isMobile, logo }: LogoContentProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.LogoContent = LogoContent;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const uikit_product_icons_1 = require("@sbercloud/uikit-product-icons");
9
+ const typography_1 = require("@snack-uikit/typography");
10
+ const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
11
+ function LogoContent({ additionalLogoText, isMobile, logo }) {
12
+ const heightIconSizeProp = isMobile ? 102 : 130;
13
+ return ((0, jsx_runtime_1.jsxs)("div", { className: styles_module_scss_1.default.logoContentContainer, children: [(0, jsx_runtime_1.jsx)("a", { href: logo.logoLink, onClick: logo.onClick, className: styles_module_scss_1.default.logoLink, children: (0, jsx_runtime_1.jsx)(uikit_product_icons_1.CloudFullLogoSVG, { size: heightIconSizeProp, width: '60px' }) }), additionalLogoText && ((0, jsx_runtime_1.jsxs)("div", { className: styles_module_scss_1.default.subLogo, children: [(0, jsx_runtime_1.jsx)(typography_1.Typography, { className: styles_module_scss_1.default.slash, size: 'm', purpose: 'title', family: 'sans', children: "/" }), (0, jsx_runtime_1.jsx)("a", { href: additionalLogoText.link, onClick: additionalLogoText.onClick, className: styles_module_scss_1.default.link, children: (0, jsx_runtime_1.jsx)(typography_1.Typography, { size: 'm', purpose: 'title', family: 'sans', children: additionalLogoText.text }) })] }))] }));
14
+ }
@@ -0,0 +1 @@
1
+ export * from './LogoContent';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./LogoContent"), exports);
@@ -0,0 +1,35 @@
1
+ .logoContentContainer{
2
+ display:flex;
3
+ flex-direction:row;
4
+ align-items:center;
5
+ gap:10px;
6
+ }
7
+
8
+ .link{
9
+ text-decoration:none;
10
+ display:flex;
11
+ align-items:center;
12
+ color:var(--sys-graphite-accent-default, #222222);
13
+ }
14
+ .link:hover{
15
+ color:var(--sys-primary-accent-hovered, #12bf6a);
16
+ }
17
+ .link:active{
18
+ color:var(--sys-primary-accent-pressed, #0ea55b);
19
+ }
20
+
21
+ .slash{
22
+ color:var(--sys-neutral-text-disabled, #aaaebd);
23
+ }
24
+
25
+ .logoLink{
26
+ display:flex;
27
+ align-items:center;
28
+ }
29
+
30
+ .subLogo{
31
+ display:flex;
32
+ flex-direction:row;
33
+ align-items:center;
34
+ gap:8px;
35
+ }
@@ -0,0 +1,9 @@
1
+ import { ReactNode } from 'react';
2
+ type MobileMenuProps = {
3
+ mobileMenuOpen: boolean;
4
+ mobileMenuContent: ReactNode;
5
+ mobileConsultationButton?: ReactNode;
6
+ onClickForCloseMobileMenu: () => void;
7
+ };
8
+ export declare function MobileMenu({ mobileMenuOpen, onClickForCloseMobileMenu, mobileMenuContent, mobileConsultationButton, }: MobileMenuProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MobileMenu = MobileMenu;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const uikit_product_mobile_modal_1 = require("@sbercloud/uikit-product-mobile-modal");
9
+ const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
10
+ function MobileMenu({ mobileMenuOpen, onClickForCloseMobileMenu, mobileMenuContent, mobileConsultationButton, }) {
11
+ return ((0, jsx_runtime_1.jsxs)(uikit_product_mobile_modal_1.MobileModalCustom, { open: mobileMenuOpen, onClose: onClickForCloseMobileMenu, className: styles_module_scss_1.default.mobileMenu, children: [(0, jsx_runtime_1.jsx)(uikit_product_mobile_modal_1.MobileModalCustom.Header, { title: '\u041C\u0435\u043D\u044E', align: 'center' }), (0, jsx_runtime_1.jsx)(uikit_product_mobile_modal_1.MobileModalCustom.Body, { content: mobileMenuContent }), mobileConsultationButton && (0, jsx_runtime_1.jsx)(uikit_product_mobile_modal_1.MobileModalCustom.Footer, { actions: mobileConsultationButton })] }));
12
+ }
@@ -0,0 +1 @@
1
+ export * from './MobileMenu';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./MobileMenu"), exports);
@@ -0,0 +1,7 @@
1
+ .mobileMenu{
2
+ scrollbar-width:none;
3
+ -ms-overflow-style:none;
4
+ }
5
+ .mobileMenu::-webkit-scrollbar{
6
+ display:none;
7
+ }
@@ -0,0 +1,7 @@
1
+ import { LinkItem } from '../../components/HeaderItems/types';
2
+ type MoreButtonProps = {
3
+ linkItemsArray: LinkItem[];
4
+ activeItemId?: string;
5
+ };
6
+ export declare function MoreButton({ linkItemsArray, activeItemId }: MoreButtonProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MoreButton = MoreButton;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const classnames_1 = __importDefault(require("classnames"));
9
+ const react_1 = require("react");
10
+ const uikit_product_icons_1 = require("@sbercloud/uikit-product-icons");
11
+ const dropdown_1 = require("@snack-uikit/dropdown");
12
+ const LinkItemHeader_1 = require("../LinkItemHeader");
13
+ const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
14
+ function MoreButton({ linkItemsArray, activeItemId }) {
15
+ const [open, setOpen] = (0, react_1.useState)(false);
16
+ const onClickOpen = () => {
17
+ setOpen(prev => !prev);
18
+ };
19
+ return ((0, jsx_runtime_1.jsx)(dropdown_1.Dropdown, { placement: 'bottom-start', open: open, outsideClick: () => {
20
+ onClickOpen();
21
+ return false;
22
+ }, content: (0, jsx_runtime_1.jsx)("div", { className: styles_module_scss_1.default.tagRowDropListScroll, children: linkItemsArray.map(item => ((0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)(styles_module_scss_1.default.rowLinkMore, {
23
+ [styles_module_scss_1.default.hovered]: !item.href,
24
+ [styles_module_scss_1.default.active]: item.id === activeItemId && !item.href,
25
+ }), children: (0, jsx_runtime_1.jsx)(LinkItemHeader_1.LinkItemHeader, { label: item.label, onClick: () => {
26
+ item.onClick && item.onClick();
27
+ onClickOpen();
28
+ }, href: item.href, withoutHover: true }) }, item.id))) }), children: (0, jsx_runtime_1.jsx)("button", { className: styles_module_scss_1.default.button, onClick: onClickOpen, children: (0, jsx_runtime_1.jsx)(uikit_product_icons_1.MoreSVG, {}) }) }));
29
+ }
@@ -0,0 +1 @@
1
+ export * from './MoreButton';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./MoreButton"), exports);
@@ -0,0 +1,33 @@
1
+ .tagRowDropListScroll{
2
+ display:flex;
3
+ flex-direction:column;
4
+ align-items:start;
5
+ width:140px;
6
+ }
7
+
8
+ .rowLinkMore{
9
+ padding:8px 10px;
10
+ border-left:2px solid transparent;
11
+ transition:color 0.3s ease-in-out;
12
+ }
13
+
14
+ .hovered:hover{
15
+ border-left:2px solid var(--sys-primary-accent-default, #26d07c);
16
+ }
17
+
18
+ .button{
19
+ background-color:transparent;
20
+ border:none;
21
+ box-shadow:none;
22
+ padding:0;
23
+ display:flex;
24
+ align-items:center;
25
+ cursor:pointer;
26
+ }
27
+ .button:active, .button:focus{
28
+ outline:none;
29
+ }
30
+
31
+ .active{
32
+ border-left:2px solid var(--sys-primary-accent-default, #26d07c);
33
+ }
@@ -0,0 +1,7 @@
1
+ type UserInfoProps = {
2
+ userName: string;
3
+ lastName: string;
4
+ className?: string;
5
+ };
6
+ export declare function UserInfo({ userName, lastName, className }: UserInfoProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.UserInfo = UserInfo;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const classnames_1 = __importDefault(require("classnames"));
9
+ const avatar_1 = require("@snack-uikit/avatar");
10
+ const typography_1 = require("@snack-uikit/typography");
11
+ const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
12
+ function UserInfo({ userName, lastName, className }) {
13
+ const fullName = `${lastName} ${userName}`;
14
+ return ((0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)(styles_module_scss_1.default.root, className), children: [(0, jsx_runtime_1.jsx)(avatar_1.Avatar, { name: fullName, size: 'xs', showTwoSymbols: true, appearance: 'green' }), (0, jsx_runtime_1.jsx)(typography_1.Typography, { tag: 'div', size: 's', purpose: 'body', family: 'sans', className: styles_module_scss_1.default.text, children: fullName })] }));
15
+ }
@@ -0,0 +1 @@
1
+ export * from './UserInfo';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./UserInfo"), exports);
@@ -0,0 +1,13 @@
1
+ .root{
2
+ display:grid;
3
+ grid-template-columns:24px 188px;
4
+ align-items:center;
5
+ gap:8px;
6
+ }
7
+
8
+ .text{
9
+ text-overflow:ellipsis;
10
+ overflow:hidden;
11
+ white-space:nowrap;
12
+ color:var(--sys-neutral-text-main, #41424e);
13
+ }
@@ -0,0 +1,5 @@
1
+ export * from './MoreButton';
2
+ export * from './LinkItemHeader';
3
+ export * from './ButtonBurger';
4
+ export * from './LogoContent';
5
+ export * from './MobileMenu';
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./MoreButton"), exports);
18
+ __exportStar(require("./LinkItemHeader"), exports);
19
+ __exportStar(require("./ButtonBurger"), exports);
20
+ __exportStar(require("./LogoContent"), exports);
21
+ __exportStar(require("./MobileMenu"), exports);
@@ -0,0 +1,2 @@
1
+ export * from './useResizeObserver';
2
+ export * from './useHeaderPosition';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./useResizeObserver"), exports);
18
+ __exportStar(require("./useHeaderPosition"), exports);
@@ -0,0 +1,6 @@
1
+ import { RefObject } from 'react';
2
+ export declare const useHeaderPosition: (isModalMenuOpen?: boolean, refHeader?: RefObject<HTMLDivElement>) => {
3
+ showHeader: boolean;
4
+ headerPosition: number;
5
+ headerHeight: number;
6
+ };
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useHeaderPosition = void 0;
4
+ const react_1 = require("react");
5
+ const useHeaderPosition = (isModalMenuOpen, refHeader) => {
6
+ const [showHeader, setShowHeader] = (0, react_1.useState)(true);
7
+ const [headerPosition, setHeaderPosition] = (0, react_1.useState)(0);
8
+ const [headerHeight, setHeaderHeight] = (0, react_1.useState)(0);
9
+ (0, react_1.useEffect)(() => {
10
+ const targetScroll = () => {
11
+ const lastScrollPos = window.scrollY;
12
+ if (headerPosition !== 0) {
13
+ if (!isModalMenuOpen && lastScrollPos > headerPosition && showHeader && lastScrollPos > 150) {
14
+ setShowHeader(false);
15
+ setHeaderPosition(lastScrollPos);
16
+ }
17
+ else if (lastScrollPos < headerPosition && !showHeader) {
18
+ setShowHeader(true);
19
+ }
20
+ }
21
+ setHeaderPosition(lastScrollPos);
22
+ };
23
+ const updateHeaderHeight = () => {
24
+ if (refHeader && refHeader.current) {
25
+ const height = refHeader.current.offsetHeight;
26
+ setHeaderHeight(Math.floor(height));
27
+ }
28
+ };
29
+ const handleResize = () => {
30
+ updateHeaderHeight();
31
+ };
32
+ updateHeaderHeight();
33
+ targetScroll();
34
+ window.addEventListener('scroll', targetScroll);
35
+ window.addEventListener('scroll', handleResize);
36
+ return () => {
37
+ window.removeEventListener('scroll', targetScroll);
38
+ window.removeEventListener('scroll', handleResize);
39
+ };
40
+ }, [showHeader, headerPosition, isModalMenuOpen, refHeader]);
41
+ return {
42
+ showHeader,
43
+ headerPosition,
44
+ headerHeight,
45
+ };
46
+ };
47
+ exports.useHeaderPosition = useHeaderPosition;
@@ -0,0 +1,3 @@
1
+ export declare const useResizeObserver: (element: HTMLElement | null) => {
2
+ width: number;
3
+ };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useResizeObserver = void 0;
4
+ const react_1 = require("react");
5
+ const useResizeObserver = (element) => {
6
+ const [width, setWidth] = (0, react_1.useState)(0);
7
+ (0, react_1.useEffect)(() => {
8
+ if (!element) {
9
+ return;
10
+ }
11
+ const resizeObserver = new ResizeObserver(() => {
12
+ if (element.offsetWidth !== width) {
13
+ setWidth(element.offsetWidth);
14
+ }
15
+ });
16
+ resizeObserver.observe(element);
17
+ return () => resizeObserver.disconnect();
18
+ }, [element, width]);
19
+ return { width };
20
+ };
21
+ exports.useResizeObserver = useResizeObserver;
@@ -0,0 +1 @@
1
+ export * from './components';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./components"), exports);
@@ -0,0 +1,10 @@
1
+ import { LinkItem } from './types';
2
+ export type HeaderItemProps = {
3
+ /** Список элементов для пунктов меню хэдера */
4
+ linkItems?: LinkItem[];
5
+ /** Флаг является ли сейчас мобильная версия */
6
+ isMobileTabletView?: boolean;
7
+ /** Id активного элемента списка меню */
8
+ activeLinkItemId?: string;
9
+ };
10
+ export declare function HeaderItems({ linkItems, isMobileTabletView, activeLinkItemId }: HeaderItemProps): import("react/jsx-runtime").JSX.Element | null;