@doyourjob/gravity-ui-page-constructor-addons 2.1.25 → 2.1.27

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 (143) hide show
  1. package/build/cjs/components/Navigation/components/Navigation/Navigation.d.ts +2 -2
  2. package/build/cjs/components/Navigation/components/Navigation/NavigationItem/NavigationItem.d.ts +2 -2
  3. package/build/cjs/components/Navigation/components/Navigation/NavigationItem/NavigationItem.js +2 -2
  4. package/build/cjs/components/NewHeader/NewHeader.css +190 -0
  5. package/build/cjs/components/NewHeader/NewHeader.d.ts +13 -0
  6. package/build/cjs/components/NewHeader/NewHeader.js +72 -0
  7. package/build/cjs/components/NewHeader/components/ChevronDown.d.ts +2 -0
  8. package/build/cjs/components/NewHeader/components/ChevronDown.js +8 -0
  9. package/build/cjs/components/NewHeader/components/ChevronUp.d.ts +2 -0
  10. package/build/cjs/components/NewHeader/components/ChevronUp.js +8 -0
  11. package/build/cjs/components/NewHeader/components/NHCompanyPopup/NHCompanyPopup.css +30 -0
  12. package/build/cjs/components/NewHeader/components/NHCompanyPopup/NHCompanyPopup.d.ts +3 -0
  13. package/build/cjs/components/NewHeader/components/NHCompanyPopup/NHCompanyPopup.js +20 -0
  14. package/build/cjs/components/NewHeader/components/NHInvestorPopup/NHInvestorPopup.css +86 -0
  15. package/build/cjs/components/NewHeader/components/NHInvestorPopup/NHInvestorPopup.d.ts +3 -0
  16. package/build/cjs/components/NewHeader/components/NHInvestorPopup/NHInvestorPopup.js +22 -0
  17. package/build/cjs/components/NewHeader/components/NHLoginButton/NHLoginButton.css +19 -0
  18. package/build/cjs/components/NewHeader/components/NHLoginButton/NHLoginButton.d.ts +10 -0
  19. package/build/cjs/components/NewHeader/components/NHLoginButton/NHLoginButton.js +52 -0
  20. package/build/cjs/components/NewHeader/components/NHLoginPopup/NHLoginPopup.css +51 -0
  21. package/build/cjs/components/NewHeader/components/NHLoginPopup/NHLoginPopup.d.ts +3 -0
  22. package/build/cjs/components/NewHeader/components/NHLoginPopup/NHLoginPopup.js +12 -0
  23. package/build/cjs/components/NewHeader/components/NHMediumPopup/NHMediumPopup.css +8 -0
  24. package/build/cjs/components/NewHeader/components/NHMediumPopup/NHMediumPopup.d.ts +3 -0
  25. package/build/cjs/components/NewHeader/components/NHMediumPopup/NHMediumPopup.js +17 -0
  26. package/build/cjs/components/NewHeader/components/NHMobileNavigation/NHMobileNavigation.css +52 -0
  27. package/build/cjs/components/NewHeader/components/NHMobileNavigation/NHMobileNavigation.d.ts +14 -0
  28. package/build/cjs/components/NewHeader/components/NHMobileNavigation/NHMobileNavigation.js +25 -0
  29. package/build/cjs/components/NewHeader/components/NHMobileNavigationItem/NHMobileNavigationItem.css +75 -0
  30. package/build/cjs/components/NewHeader/components/NHMobileNavigationItem/NHMobileNavigationItem.d.ts +3 -0
  31. package/build/cjs/components/NewHeader/components/NHMobileNavigationItem/NHMobileNavigationItem.js +30 -0
  32. package/build/cjs/components/NewHeader/components/NHMobileNavigationPopup/NHMobileNavigationPopup.css +55 -0
  33. package/build/cjs/components/NewHeader/components/NHMobileNavigationPopup/NHMobileNavigationPopup.d.ts +9 -0
  34. package/build/cjs/components/NewHeader/components/NHMobileNavigationPopup/NHMobileNavigationPopup.js +47 -0
  35. package/build/cjs/components/NewHeader/components/NHNavigation/NHNavigation.css +23 -0
  36. package/build/cjs/components/NewHeader/components/NHNavigation/NHNavigation.d.ts +10 -0
  37. package/build/cjs/components/NewHeader/components/NHNavigation/NHNavigation.js +74 -0
  38. package/build/cjs/components/NewHeader/components/NHNavigationItem/NHNavigationItem.css +66 -0
  39. package/build/cjs/components/NewHeader/components/NHNavigationItem/NHNavigationItem.d.ts +12 -0
  40. package/build/cjs/components/NewHeader/components/NHNavigationItem/NHNavigationItem.js +34 -0
  41. package/build/cjs/components/NewHeader/components/NHNavigationPopup/NHNavigationPopup.css +13 -0
  42. package/build/cjs/components/NewHeader/components/NHNavigationPopup/NHNavigationPopup.d.ts +9 -0
  43. package/build/cjs/components/NewHeader/components/NHNavigationPopup/NHNavigationPopup.js +18 -0
  44. package/build/cjs/components/NewHeader/components/NHPopupItem/NHPopupItem.css +107 -0
  45. package/build/cjs/components/NewHeader/components/NHPopupItem/NHPopupItem.d.ts +12 -0
  46. package/build/cjs/components/NewHeader/components/NHPopupItem/NHPopupItem.js +28 -0
  47. package/build/cjs/components/NewHeader/components/NHProductsPopup/NHProductsPopup.css +124 -0
  48. package/build/cjs/components/NewHeader/components/NHProductsPopup/NHProductsPopup.d.ts +3 -0
  49. package/build/cjs/components/NewHeader/components/NHProductsPopup/NHProductsPopup.js +65 -0
  50. package/build/cjs/components/NewHeader/components/NHResourcesPopup/NHResourcesPopup.css +209 -0
  51. package/build/cjs/components/NewHeader/components/NHResourcesPopup/NHResourcesPopup.d.ts +3 -0
  52. package/build/cjs/components/NewHeader/components/NHResourcesPopup/NHResourcesPopup.js +42 -0
  53. package/build/cjs/components/NewHeader/components/NHSolutionsPopup/NHSolutionsPopup.css +48 -0
  54. package/build/cjs/components/NewHeader/components/NHSolutionsPopup/NHSolutionsPopup.d.ts +3 -0
  55. package/build/cjs/components/NewHeader/components/NHSolutionsPopup/NHSolutionsPopup.js +20 -0
  56. package/build/cjs/components/NewHeader/components/NHTag/NHTag.css +21 -0
  57. package/build/cjs/components/NewHeader/components/NHTag/NHTag.d.ts +6 -0
  58. package/build/cjs/components/NewHeader/components/NHTag/NHTag.js +22 -0
  59. package/build/cjs/components/NewHeader/components/NHWhyPopup/NHWhyPopup.css +80 -0
  60. package/build/cjs/components/NewHeader/components/NHWhyPopup/NHWhyPopup.d.ts +3 -0
  61. package/build/cjs/components/NewHeader/components/NHWhyPopup/NHWhyPopup.js +21 -0
  62. package/build/cjs/components/NewHeader/constants.d.ts +7 -0
  63. package/build/cjs/components/NewHeader/constants.js +11 -0
  64. package/build/cjs/components/NewHeader/contexts/route-change.d.ts +3 -0
  65. package/build/cjs/components/NewHeader/contexts/route-change.js +6 -0
  66. package/build/cjs/components/NewHeader/models.d.ts +202 -0
  67. package/build/cjs/components/NewHeader/models.js +20 -0
  68. package/build/cjs/components/NewHeader/styles/mixins.css +0 -0
  69. package/build/cjs/components/NewHeader/styles/variables.css +5 -0
  70. package/build/cjs/components/index.d.ts +1 -0
  71. package/build/cjs/components/index.js +1 -0
  72. package/build/esm/components/Navigation/components/Navigation/Navigation.d.ts +2 -2
  73. package/build/esm/components/Navigation/components/Navigation/NavigationItem/NavigationItem.d.ts +2 -2
  74. package/build/esm/components/Navigation/components/Navigation/NavigationItem/NavigationItem.js +2 -2
  75. package/build/esm/components/NewHeader/NewHeader.css +190 -0
  76. package/build/esm/components/NewHeader/NewHeader.d.ts +14 -0
  77. package/build/esm/components/NewHeader/NewHeader.js +68 -0
  78. package/build/esm/components/NewHeader/components/ChevronDown.d.ts +2 -0
  79. package/build/esm/components/NewHeader/components/ChevronDown.js +3 -0
  80. package/build/esm/components/NewHeader/components/ChevronUp.d.ts +2 -0
  81. package/build/esm/components/NewHeader/components/ChevronUp.js +3 -0
  82. package/build/esm/components/NewHeader/components/NHCompanyPopup/NHCompanyPopup.css +30 -0
  83. package/build/esm/components/NewHeader/components/NHCompanyPopup/NHCompanyPopup.d.ts +4 -0
  84. package/build/esm/components/NewHeader/components/NHCompanyPopup/NHCompanyPopup.js +16 -0
  85. package/build/esm/components/NewHeader/components/NHInvestorPopup/NHInvestorPopup.css +86 -0
  86. package/build/esm/components/NewHeader/components/NHInvestorPopup/NHInvestorPopup.d.ts +4 -0
  87. package/build/esm/components/NewHeader/components/NHInvestorPopup/NHInvestorPopup.js +18 -0
  88. package/build/esm/components/NewHeader/components/NHLoginButton/NHLoginButton.css +19 -0
  89. package/build/esm/components/NewHeader/components/NHLoginButton/NHLoginButton.d.ts +11 -0
  90. package/build/esm/components/NewHeader/components/NHLoginButton/NHLoginButton.js +48 -0
  91. package/build/esm/components/NewHeader/components/NHLoginPopup/NHLoginPopup.css +51 -0
  92. package/build/esm/components/NewHeader/components/NHLoginPopup/NHLoginPopup.d.ts +4 -0
  93. package/build/esm/components/NewHeader/components/NHLoginPopup/NHLoginPopup.js +8 -0
  94. package/build/esm/components/NewHeader/components/NHMediumPopup/NHMediumPopup.css +8 -0
  95. package/build/esm/components/NewHeader/components/NHMediumPopup/NHMediumPopup.d.ts +4 -0
  96. package/build/esm/components/NewHeader/components/NHMediumPopup/NHMediumPopup.js +13 -0
  97. package/build/esm/components/NewHeader/components/NHMobileNavigation/NHMobileNavigation.css +52 -0
  98. package/build/esm/components/NewHeader/components/NHMobileNavigation/NHMobileNavigation.d.ts +15 -0
  99. package/build/esm/components/NewHeader/components/NHMobileNavigation/NHMobileNavigation.js +21 -0
  100. package/build/esm/components/NewHeader/components/NHMobileNavigationItem/NHMobileNavigationItem.css +75 -0
  101. package/build/esm/components/NewHeader/components/NHMobileNavigationItem/NHMobileNavigationItem.d.ts +4 -0
  102. package/build/esm/components/NewHeader/components/NHMobileNavigationItem/NHMobileNavigationItem.js +26 -0
  103. package/build/esm/components/NewHeader/components/NHMobileNavigationPopup/NHMobileNavigationPopup.css +55 -0
  104. package/build/esm/components/NewHeader/components/NHMobileNavigationPopup/NHMobileNavigationPopup.d.ts +10 -0
  105. package/build/esm/components/NewHeader/components/NHMobileNavigationPopup/NHMobileNavigationPopup.js +43 -0
  106. package/build/esm/components/NewHeader/components/NHNavigation/NHNavigation.css +23 -0
  107. package/build/esm/components/NewHeader/components/NHNavigation/NHNavigation.d.ts +11 -0
  108. package/build/esm/components/NewHeader/components/NHNavigation/NHNavigation.js +70 -0
  109. package/build/esm/components/NewHeader/components/NHNavigationItem/NHNavigationItem.css +66 -0
  110. package/build/esm/components/NewHeader/components/NHNavigationItem/NHNavigationItem.d.ts +13 -0
  111. package/build/esm/components/NewHeader/components/NHNavigationItem/NHNavigationItem.js +30 -0
  112. package/build/esm/components/NewHeader/components/NHNavigationPopup/NHNavigationPopup.css +13 -0
  113. package/build/esm/components/NewHeader/components/NHNavigationPopup/NHNavigationPopup.d.ts +10 -0
  114. package/build/esm/components/NewHeader/components/NHNavigationPopup/NHNavigationPopup.js +14 -0
  115. package/build/esm/components/NewHeader/components/NHPopupItem/NHPopupItem.css +107 -0
  116. package/build/esm/components/NewHeader/components/NHPopupItem/NHPopupItem.d.ts +13 -0
  117. package/build/esm/components/NewHeader/components/NHPopupItem/NHPopupItem.js +24 -0
  118. package/build/esm/components/NewHeader/components/NHProductsPopup/NHProductsPopup.css +124 -0
  119. package/build/esm/components/NewHeader/components/NHProductsPopup/NHProductsPopup.d.ts +4 -0
  120. package/build/esm/components/NewHeader/components/NHProductsPopup/NHProductsPopup.js +61 -0
  121. package/build/esm/components/NewHeader/components/NHResourcesPopup/NHResourcesPopup.css +209 -0
  122. package/build/esm/components/NewHeader/components/NHResourcesPopup/NHResourcesPopup.d.ts +4 -0
  123. package/build/esm/components/NewHeader/components/NHResourcesPopup/NHResourcesPopup.js +38 -0
  124. package/build/esm/components/NewHeader/components/NHSolutionsPopup/NHSolutionsPopup.css +48 -0
  125. package/build/esm/components/NewHeader/components/NHSolutionsPopup/NHSolutionsPopup.d.ts +4 -0
  126. package/build/esm/components/NewHeader/components/NHSolutionsPopup/NHSolutionsPopup.js +16 -0
  127. package/build/esm/components/NewHeader/components/NHTag/NHTag.css +21 -0
  128. package/build/esm/components/NewHeader/components/NHTag/NHTag.d.ts +7 -0
  129. package/build/esm/components/NewHeader/components/NHTag/NHTag.js +18 -0
  130. package/build/esm/components/NewHeader/components/NHWhyPopup/NHWhyPopup.css +80 -0
  131. package/build/esm/components/NewHeader/components/NHWhyPopup/NHWhyPopup.d.ts +4 -0
  132. package/build/esm/components/NewHeader/components/NHWhyPopup/NHWhyPopup.js +17 -0
  133. package/build/esm/components/NewHeader/constants.d.ts +7 -0
  134. package/build/esm/components/NewHeader/constants.js +8 -0
  135. package/build/esm/components/NewHeader/contexts/route-change.d.ts +3 -0
  136. package/build/esm/components/NewHeader/contexts/route-change.js +2 -0
  137. package/build/esm/components/NewHeader/models.d.ts +202 -0
  138. package/build/esm/components/NewHeader/models.js +17 -0
  139. package/build/esm/components/NewHeader/styles/mixins.css +0 -0
  140. package/build/esm/components/NewHeader/styles/variables.css +5 -0
  141. package/build/esm/components/index.d.ts +1 -0
  142. package/build/esm/components/index.js +1 -0
  143. package/package.json +1 -1
@@ -0,0 +1,21 @@
1
+ /* use this for style redefinitions to awoid problems with
2
+ unpredictable css rules order in build */
3
+ .pc-addons-nh-navigation-tag {
4
+ font-size: var(--g-text-body-1-font-size, var(--pc-text-body-1-font-size));
5
+ line-height: var(--g-text-body-1-line-height, var(--pc-text-body-1-line-height));
6
+ display: inline-block;
7
+ padding: 0 8px;
8
+ border-radius: 2px;
9
+ height: 20px;
10
+ line-height: 20px;
11
+ border-radius: 4px;
12
+ text-transform: capitalize;
13
+ }
14
+
15
+ .pc-addons-nh-navigation-tag_size_s {
16
+ font-size: var(--g-text-caption-2-font-size, var(--pc-text-caption-2-font-size));
17
+ line-height: var(--g-text-caption-2-line-height, var(--pc-text-caption-2-line-height));
18
+ padding: 0 4px;
19
+ height: 16px;
20
+ line-height: 16px;
21
+ }
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { ClassNameProps } from '@doyourjob/gravity-ui-page-constructor';
3
+ import { NHNavigationTag as NHNavigationTagModel } from '../../models';
4
+ export interface NHNavigationTagProps extends NHNavigationTagModel, ClassNameProps {
5
+ }
6
+ export declare const NHNavigationTag: ({ text, color, textColor, className, size, }: NHNavigationTagProps) => React.JSX.Element;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NHNavigationTag = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const cn_1 = require("../../../../utils/cn");
7
+ const models_1 = require("../../models");
8
+ const b = (0, cn_1.block)('nh-navigation-tag');
9
+ const getColor = (color) => {
10
+ switch (color) {
11
+ case models_1.NHNavigationTagColor.Yellow:
12
+ return 'var(--pc-addons-navigation-color-tag-yellow)';
13
+ case models_1.NHNavigationTagColor.Blue:
14
+ return 'var(--pc-addons-navigation-color-tag-blue)';
15
+ case models_1.NHNavigationTagColor.Green:
16
+ return 'var(--pc-addons-navigation-color-tag-green)';
17
+ default:
18
+ return color;
19
+ }
20
+ };
21
+ const NHNavigationTag = ({ text, color = models_1.NHNavigationTagColor.Yellow, textColor, className, size = 'm', }) => (react_1.default.createElement("div", { className: b({ size }, className), style: { backgroundColor: getColor(color), color: textColor } }, text));
22
+ exports.NHNavigationTag = NHNavigationTag;
@@ -0,0 +1,80 @@
1
+ /* use this for style redefinitions to awoid problems with
2
+ unpredictable css rules order in build */
3
+ .pc-addons-nh-why-popup {
4
+ background: var(--g-color-base-float);
5
+ box-shadow: 0 4px 24px var(--g-color-base-generic), 0 2px 8px var(--g-color-base-generic);
6
+ max-height: calc(100vh - 64px - 64px);
7
+ overflow: auto;
8
+ width: 100%;
9
+ border-radius: var(--pc-border-radius, 24px);
10
+ scrollbar-width: none;
11
+ }
12
+
13
+ .pc-addons-nh-why-popup::-webkit-scrollbar {
14
+ display: none;
15
+ }
16
+
17
+ .pc-addons-nh-why-popup__container {
18
+ padding: 0;
19
+ display: flex;
20
+ }
21
+
22
+ .pc-addons-nh-why-popup__wrap {
23
+ padding: 20px;
24
+ display: flex;
25
+ gap: 16px;
26
+ flex: 1;
27
+ }
28
+
29
+ .pc-addons-nh-why-popup__group {
30
+ flex: 1;
31
+ }
32
+
33
+ .pc-addons-nh-why-popup__title {
34
+ font-size: var(--g-text-body-2-font-size, var(--pc-text-body-2-font-size));
35
+ line-height: var(--g-text-body-2-line-height, var(--pc-text-body-2-line-height));
36
+ padding: 12px;
37
+ font-weight: 500;
38
+ color: #9fb1bd;
39
+ }
40
+
41
+ .pc-addons-nh-why-popup__card {
42
+ font-weight: 500;
43
+ width: 300px;
44
+ flex-shrink: 0;
45
+ padding: 0;
46
+ display: flex;
47
+ flex-direction: column;
48
+ background-color: #f2f6f9;
49
+ }
50
+
51
+ .pc-addons-nh-why-popup__card-wrap {
52
+ display: flex;
53
+ flex-direction: column;
54
+ justify-content: center;
55
+ padding: 24px;
56
+ gap: 20px;
57
+ }
58
+
59
+ .pc-addons-nh-why-popup__card-title {
60
+ font-size: var(--g-text-header-1-font-size, var(--pc-text-header-1-font-size));
61
+ line-height: var(--g-text-header-1-line-height, var(--pc-text-header-1-line-height));
62
+ color: #9fb1bd;
63
+ }
64
+
65
+ .pc-addons-nh-why-popup__card-description {
66
+ font-size: var(--g-text-body-2-font-size, var(--pc-text-body-2-font-size));
67
+ line-height: var(--g-text-body-2-line-height, var(--pc-text-body-2-line-height));
68
+ color: #9fb1bd;
69
+ }
70
+
71
+ .pc-addons-nh-why-popup__card-container-image {
72
+ width: 100%;
73
+ }
74
+
75
+ .pc-addons-nh-why-popup__card-image {
76
+ width: 100%;
77
+ aspect-ratio: 300/244;
78
+ background-color: #99a5ae;
79
+ display: block;
80
+ }
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { NHWhyPopupData } from '../../models';
3
+ export declare const NHWhyPopup: ({ groups, card }: NHWhyPopupData) => React.JSX.Element;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NHWhyPopup = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const gravity_ui_page_constructor_1 = require("@doyourjob/gravity-ui-page-constructor");
7
+ const cn_1 = require("../../../../utils/cn");
8
+ const NHPopupItem_1 = require("../NHPopupItem/NHPopupItem");
9
+ const b = (0, cn_1.block)('nh-why-popup');
10
+ const NHWhyPopup = ({ groups, card }) => (react_1.default.createElement(gravity_ui_page_constructor_1.Grid, { className: b(), containerClass: b('container') },
11
+ react_1.default.createElement("div", { className: b('wrap') }, groups.map((group) => (react_1.default.createElement("div", { className: b('group'), key: group.title },
12
+ react_1.default.createElement(gravity_ui_page_constructor_1.Row, null,
13
+ react_1.default.createElement(gravity_ui_page_constructor_1.Col, null,
14
+ react_1.default.createElement("div", { className: b('title') }, group.title))),
15
+ react_1.default.createElement(gravity_ui_page_constructor_1.Row, null, group.items.map((item) => (react_1.default.createElement(NHPopupItem_1.NHPopupItem, Object.assign({ key: item.title }, item, { hover: true, sizes: { [gravity_ui_page_constructor_1.GridColumnSize.All]: 12 } }))))))))),
16
+ card && (react_1.default.createElement("div", { className: b('card') },
17
+ react_1.default.createElement(gravity_ui_page_constructor_1.Image, { className: b('card-image'), containerClassName: b('card-container-image'), src: card.image }),
18
+ react_1.default.createElement("div", { className: b('card-wrap') },
19
+ react_1.default.createElement("div", { className: b('card-title') }, card.title),
20
+ react_1.default.createElement("div", { className: b('card-description') }, card.description))))));
21
+ exports.NHWhyPopup = NHWhyPopup;
@@ -0,0 +1,7 @@
1
+ export declare const SWITCH_MENU_TAB_TIMEOUT = 200;
2
+ export declare const NO_MENU_TAB_SELECTED = -1;
3
+ export declare const DefaultCategorizedItemSizes: {
4
+ lg: number;
5
+ sm: number;
6
+ all: number;
7
+ };
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DefaultCategorizedItemSizes = exports.NO_MENU_TAB_SELECTED = exports.SWITCH_MENU_TAB_TIMEOUT = void 0;
4
+ const gravity_ui_page_constructor_1 = require("@doyourjob/gravity-ui-page-constructor");
5
+ exports.SWITCH_MENU_TAB_TIMEOUT = 200;
6
+ exports.NO_MENU_TAB_SELECTED = -1;
7
+ exports.DefaultCategorizedItemSizes = {
8
+ [gravity_ui_page_constructor_1.GridColumnSize.Lg]: 4,
9
+ [gravity_ui_page_constructor_1.GridColumnSize.Sm]: 6,
10
+ [gravity_ui_page_constructor_1.GridColumnSize.All]: 12,
11
+ };
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ export type RouteChangeHandlerContextProps = (handler: () => void) => void;
3
+ export declare const RouteChangeHandlerContext: React.Context<RouteChangeHandlerContextProps | undefined>;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RouteChangeHandlerContext = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ exports.RouteChangeHandlerContext = react_1.default.createContext(undefined);
@@ -0,0 +1,202 @@
1
+ import type { ButtonProps, LinkProps } from '@doyourjob/gravity-ui-page-constructor';
2
+ export declare enum NHNavigationItemType {
3
+ NHMediumPopup = "medium-popup",
4
+ NHProductsPopup = "products-popup",
5
+ NHSolutionsPopup = "solutions-popup",
6
+ NHWhyPopup = "why-popup",
7
+ NHResourcesPopup = "resources-popup",
8
+ NHCompanyPopup = "company-popup",
9
+ NHInvestorPopup = "investor-popup",
10
+ Link = "link"
11
+ }
12
+ export declare enum NHNavigationTagColor {
13
+ Green = "green",
14
+ Yellow = "yellow",
15
+ Blue = "blue"
16
+ }
17
+ export interface NHLogoData {
18
+ href?: string;
19
+ src?: string;
20
+ alt?: string;
21
+ }
22
+ export interface NHNavigationTag {
23
+ text: string;
24
+ color?: string;
25
+ textColor?: string;
26
+ size?: 's' | 'm';
27
+ }
28
+ export interface NHPopupItemData {
29
+ title: string;
30
+ url: string;
31
+ slug?: string;
32
+ description?: string;
33
+ icon?: string;
34
+ image?: string | null;
35
+ tag?: NHNavigationTag;
36
+ }
37
+ export interface NHCategoryGroupData {
38
+ title?: string;
39
+ items: NHPopupItemData[];
40
+ imageSize?: 's' | 'xm' | 'm';
41
+ url?: string;
42
+ }
43
+ export interface NHMediumPopupData {
44
+ groups: NHCategoryGroupData[];
45
+ }
46
+ export interface NHSpecialCardData {
47
+ title: string;
48
+ description: string;
49
+ image: string;
50
+ url: string;
51
+ }
52
+ export interface NHRunCardData {
53
+ title: string;
54
+ description: string;
55
+ image: string;
56
+ border?: boolean;
57
+ url: string;
58
+ }
59
+ export interface NHProductsPopupSection {
60
+ title: string;
61
+ subtitle: string;
62
+ items?: NHPopupItemData[];
63
+ runCards?: NHRunCardData[];
64
+ }
65
+ export interface NHProductsPopupData {
66
+ sections: NHProductsPopupSection[];
67
+ poweredCard: NHSpecialCardData;
68
+ }
69
+ export interface NHSolutionsPopupSection {
70
+ title: string;
71
+ subtitle: string;
72
+ items: NHPopupItemData[];
73
+ }
74
+ export interface NHSolutionsPopupData {
75
+ sections: NHSolutionsPopupSection[];
76
+ }
77
+ export interface NHWhyPopupGroup {
78
+ title: string;
79
+ items: NHPopupItemData[];
80
+ }
81
+ export interface NHWhyPopupData {
82
+ groups: NHWhyPopupGroup[];
83
+ card: NHSpecialCardData;
84
+ }
85
+ export interface NHBannerData {
86
+ title: string;
87
+ description: string;
88
+ image: string;
89
+ icon: string;
90
+ url: string;
91
+ }
92
+ export interface NHEventCardData {
93
+ url: string;
94
+ tag: string;
95
+ title: string;
96
+ date: string;
97
+ image: string;
98
+ location: string;
99
+ }
100
+ export interface NHResourcesPopupGroup {
101
+ title: string;
102
+ subtitle: string;
103
+ url: string;
104
+ items: NHPopupItemData[];
105
+ }
106
+ export interface NHResourcesPopupData {
107
+ groups: NHResourcesPopupGroup[];
108
+ banner: NHBannerData;
109
+ events: {
110
+ title: string;
111
+ items: NHEventCardData[];
112
+ };
113
+ }
114
+ export interface NHCompanyPopupSection {
115
+ title: string;
116
+ items: NHPopupItemData[];
117
+ }
118
+ export interface NHCompanyPopupData {
119
+ sections: NHCompanyPopupSection[];
120
+ }
121
+ export interface NHStockData {
122
+ title: string;
123
+ price: string;
124
+ date: string;
125
+ }
126
+ export interface NHInvestorPopupData {
127
+ title: string;
128
+ subtitle: string;
129
+ url: string;
130
+ items: NHPopupItemData[];
131
+ stock: NHStockData;
132
+ }
133
+ export interface NHLoginItemData {
134
+ title: string;
135
+ subtitle: string;
136
+ url?: string;
137
+ }
138
+ export interface NHLoginPopupData {
139
+ text: string;
140
+ items: NHLoginItemData[];
141
+ }
142
+ export interface NHNavigationDefaultData {
143
+ title: string;
144
+ }
145
+ export interface NHNavigationLinkData extends NHNavigationDefaultData {
146
+ type: NHNavigationItemType.Link;
147
+ data: LinkProps;
148
+ }
149
+ export interface NHNavigationMediumPopupData extends NHNavigationDefaultData {
150
+ type: NHNavigationItemType.NHMediumPopup;
151
+ data: NHMediumPopupData;
152
+ }
153
+ export interface NHNavigationProductsPopupData extends NHNavigationDefaultData {
154
+ type: NHNavigationItemType.NHProductsPopup;
155
+ data: NHProductsPopupData;
156
+ }
157
+ export interface NHNavigationSolutionsPopupData extends NHNavigationDefaultData {
158
+ type: NHNavigationItemType.NHSolutionsPopup;
159
+ data: NHSolutionsPopupData;
160
+ }
161
+ export interface NHNavigationWhyPopupData extends NHNavigationDefaultData {
162
+ type: NHNavigationItemType.NHWhyPopup;
163
+ data: NHWhyPopupData;
164
+ }
165
+ export interface NHNavigationResourcesPopupData extends NHNavigationDefaultData {
166
+ type: NHNavigationItemType.NHResourcesPopup;
167
+ data: NHResourcesPopupData;
168
+ }
169
+ export interface NHNavigationCompanyPopupData extends NHNavigationDefaultData {
170
+ type: NHNavigationItemType.NHCompanyPopup;
171
+ data: NHCompanyPopupData;
172
+ }
173
+ export interface NHNavigationInvestorPopupData extends NHNavigationDefaultData {
174
+ type: NHNavigationItemType.NHInvestorPopup;
175
+ data: NHInvestorPopupData;
176
+ }
177
+ export type NHNavigationItemData = NHNavigationLinkData | NHNavigationMediumPopupData | NHNavigationProductsPopupData | NHNavigationSolutionsPopupData | NHNavigationWhyPopupData | NHNavigationResourcesPopupData | NHNavigationCompanyPopupData | NHNavigationInvestorPopupData;
178
+ export interface NHMobileNavigationDefaultData {
179
+ title: string;
180
+ }
181
+ export interface NHMobileNavigationLinkData extends NHMobileNavigationDefaultData {
182
+ link: LinkProps;
183
+ }
184
+ export interface NHMobileNavigationGroupData extends NHMobileNavigationDefaultData {
185
+ data: {
186
+ title?: string;
187
+ items: {
188
+ title: string;
189
+ url: string;
190
+ }[];
191
+ }[];
192
+ }
193
+ export type NHMobileNavigationItemData = NHMobileNavigationLinkData | NHMobileNavigationGroupData;
194
+ export interface NHNavigationData {
195
+ left: NHNavigationItemData[];
196
+ right: NHNavigationItemData[];
197
+ mobile: NHMobileNavigationItemData[];
198
+ login: NHLoginPopupData;
199
+ logo: NHLogoData;
200
+ buttons: ButtonProps[];
201
+ }
202
+ export type SetupRouteChangeHandler = (handler: () => void) => void;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NHNavigationTagColor = exports.NHNavigationItemType = void 0;
4
+ var NHNavigationItemType;
5
+ (function (NHNavigationItemType) {
6
+ NHNavigationItemType["NHMediumPopup"] = "medium-popup";
7
+ NHNavigationItemType["NHProductsPopup"] = "products-popup";
8
+ NHNavigationItemType["NHSolutionsPopup"] = "solutions-popup";
9
+ NHNavigationItemType["NHWhyPopup"] = "why-popup";
10
+ NHNavigationItemType["NHResourcesPopup"] = "resources-popup";
11
+ NHNavigationItemType["NHCompanyPopup"] = "company-popup";
12
+ NHNavigationItemType["NHInvestorPopup"] = "investor-popup";
13
+ NHNavigationItemType["Link"] = "link";
14
+ })(NHNavigationItemType = exports.NHNavigationItemType || (exports.NHNavigationItemType = {}));
15
+ var NHNavigationTagColor;
16
+ (function (NHNavigationTagColor) {
17
+ NHNavigationTagColor["Green"] = "green";
18
+ NHNavigationTagColor["Yellow"] = "yellow";
19
+ NHNavigationTagColor["Blue"] = "blue";
20
+ })(NHNavigationTagColor = exports.NHNavigationTagColor || (exports.NHNavigationTagColor = {}));
@@ -0,0 +1,5 @@
1
+ .g-root {
2
+ --pc-addons-navigation-color-tag-yellow: var(--g-color-base-warning-light);
3
+ --pc-addons-navigation-color-tag-green: var(--g-color-base-positive-light);
4
+ --pc-addons-navigation-color-tag-blue: var(--g-color-base-info-light);
5
+ }
@@ -1,3 +1,4 @@
1
1
  export * from './EnrichedLink/EnrichedLink';
2
2
  export * from './Navigation';
3
3
  export * from './HeaderStripe/HeaderStripe';
4
+ export * from './NewHeader/NewHeader';
@@ -4,3 +4,4 @@ const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./EnrichedLink/EnrichedLink"), exports);
5
5
  tslib_1.__exportStar(require("./Navigation"), exports);
6
6
  tslib_1.__exportStar(require("./HeaderStripe/HeaderStripe"), exports);
7
+ tslib_1.__exportStar(require("./NewHeader/NewHeader"), exports);
@@ -5,8 +5,8 @@ import './Navigation.css';
5
5
  interface NavigationProps {
6
6
  data: NavigationSectionData[];
7
7
  withBackground: boolean;
8
- handleOpenPopup: () => void;
9
- handleClosePopup: () => void;
8
+ handleOpenPopup?: () => void;
9
+ handleClosePopup?: () => void;
10
10
  headerRef?: RefObject<HTMLDivElement>;
11
11
  setupRouteChangeHandler?: SetupRouteChangeHandler;
12
12
  }
@@ -5,8 +5,8 @@ interface NavigationItemOwnProps {
5
5
  index: number;
6
6
  item: NavigationSectionData;
7
7
  isActive: boolean;
8
- handleOpenPopup: () => void;
9
- handleClosePopup: () => void;
8
+ handleOpenPopup?: () => void;
9
+ handleClosePopup?: () => void;
10
10
  handleActiveTab: (currentIndex: number) => void;
11
11
  children?: ReactNode;
12
12
  tooltipId?: string;
@@ -21,12 +21,12 @@ export const NavigationItem = ({ item, isActive, handleActiveTab, handleOpenPopu
21
21
  const handleMouseEnter = useCallback(() => {
22
22
  handleActiveTab(index);
23
23
  if (isPopupExist) {
24
- handleOpenPopup();
24
+ handleOpenPopup === null || handleOpenPopup === void 0 ? void 0 : handleOpenPopup();
25
25
  }
26
26
  }, [handleActiveTab, handleOpenPopup, index, isPopupExist]);
27
27
  const handleMouseLeave = useCallback(() => {
28
28
  if (isPopupExist) {
29
- handleClosePopup();
29
+ handleClosePopup === null || handleClosePopup === void 0 ? void 0 : handleClosePopup();
30
30
  }
31
31
  handleActiveTab(NO_MENU_TAB_SELECTED);
32
32
  }, [handleActiveTab, handleClosePopup, isPopupExist]);
@@ -0,0 +1,190 @@
1
+ /* use this for style redefinitions to awoid problems with
2
+ unpredictable css rules order in build */
3
+ .pc-addons-new-header {
4
+ --g-scrollbar-width: 8px;
5
+ --g-color-scroll-handle: var(--g-color-base-generic);
6
+ --g-color-scroll-handle-hover: var(--g-color-line-generic);
7
+ width: 100%;
8
+ z-index: 100;
9
+ background: var(--pc-transparent);
10
+ }
11
+
12
+ .pc-addons-new-header_with-background {
13
+ background: var(--g-color-base-background);
14
+ }
15
+
16
+ .pc-addons-new-header__container {
17
+ position: relative;
18
+ width: 100%;
19
+ max-width: 1328px;
20
+ padding: 0 40px;
21
+ margin: 0 auto;
22
+ display: flex;
23
+ align-items: center;
24
+ justify-content: space-between;
25
+ height: 64px;
26
+ border-radius: var(--pc-border-radius, 24px);
27
+ }
28
+
29
+ @media (max-width: 1248px) {
30
+ .pc-addons-new-header__container {
31
+ padding: 0 16px;
32
+ }
33
+ }
34
+ .pc-addons-new-header__left, .pc-addons-new-header__right {
35
+ display: flex;
36
+ align-items: center;
37
+ }
38
+
39
+ .pc-addons-new-header__left {
40
+ margin-right: 32px;
41
+ gap: 20px;
42
+ }
43
+
44
+ @media (max-width: 1248px) {
45
+ .pc-addons-new-header__left {
46
+ gap: 12px;
47
+ }
48
+ }
49
+ .pc-addons-new-header__right {
50
+ justify-content: flex-end;
51
+ width: 100%;
52
+ gap: 8px;
53
+ }
54
+
55
+ .pc-addons-new-header__wrap {
56
+ display: flex;
57
+ align-items: center;
58
+ gap: 8px;
59
+ }
60
+
61
+ .pc-addons-new-header__icons-container {
62
+ display: flex;
63
+ align-items: center;
64
+ justify-content: flex-end;
65
+ }
66
+
67
+ .pc-addons-new-header__buttons {
68
+ display: flex;
69
+ margin-left: 8px;
70
+ }
71
+
72
+ .pc-addons-new-header__icon {
73
+ color: var(--g-color-text-hint);
74
+ transition: color 0.2s;
75
+ }
76
+
77
+ .pc-addons-new-header__user {
78
+ margin-left: 12px;
79
+ }
80
+
81
+ @media (max-width: 768px) {
82
+ .pc-addons-new-header__user {
83
+ display: none;
84
+ }
85
+ }
86
+ .pc-addons-new-header__back {
87
+ position: relative;
88
+ left: 2px;
89
+ }
90
+
91
+ .pc-addons-new-header__back-icon {
92
+ color: var(--g-color-text-hint);
93
+ }
94
+
95
+ .pc-addons-new-header__back {
96
+ display: none;
97
+ }
98
+
99
+ .pc-addons-new-header__back:hover:before {
100
+ background: none;
101
+ }
102
+
103
+ .pc-addons-new-header__back:hover .pc-addons-new-header__icon {
104
+ color: var(--g-color-text-complementary);
105
+ }
106
+
107
+ @media (max-width: 768px) {
108
+ .pc-addons-new-header__navigation {
109
+ display: none;
110
+ }
111
+ }
112
+ .pc-addons-new-header__popup {
113
+ --yc-popup-border-width: 0;
114
+ --yc-popup-border-color: none;
115
+ border-radius: var(--pc-border-radius, 24px);
116
+ box-shadow: 0 3px 10px var(--g-color-base-generic-hover);
117
+ --yc-popover-max-width: 1296px;
118
+ --yc-popover-padding: 20px;
119
+ width: var(--yc-popover-max-width);
120
+ left: 0;
121
+ box-shadow: 0 4px 24px var(--g-color-base-generic-hover), 0 2px 8px var(--g-color-base-generic-hover);
122
+ }
123
+
124
+ .pc-addons-new-header__popup_with-background {
125
+ border-radius: 0 0 var(--pc-border-radius, 24px) var(--pc-border-radius, 24px);
126
+ }
127
+
128
+ .pc-addons-new-header__scroll-arrow {
129
+ height: 20px;
130
+ color: var(--g-color-text-hint);
131
+ }
132
+
133
+ .pc-addons-new-header__user-popup {
134
+ --yc-popup-border-width: 0;
135
+ --yc-popup-border-color: none;
136
+ border-radius: var(--g-border-radius-m);
137
+ box-shadow: 0 3px 10px var(--g-color-base-generic-hover);
138
+ }
139
+
140
+ .pc-addons-new-header__logo-img {
141
+ display: block;
142
+ height: 36px;
143
+ }
144
+
145
+ .pc-addons-new-header__buttons {
146
+ display: flex;
147
+ gap: 8px;
148
+ }
149
+
150
+ @media (max-width: 577px) {
151
+ .pc-addons-new-header__buttons {
152
+ display: none;
153
+ }
154
+ }
155
+ .pc-addons-new-header__button {
156
+ display: flex;
157
+ align-items: center;
158
+ padding: 0 12px;
159
+ font-size: var(--g-text-body-2-font-size, var(--pc-text-body-2-font-size));
160
+ line-height: var(--g-text-body-2-line-height, var(--pc-text-body-2-line-height));
161
+ font-weight: 500;
162
+ }
163
+
164
+ @media (max-width: 1081px) {
165
+ .pc-addons-new-header__left {
166
+ margin-right: 0;
167
+ }
168
+ }
169
+ @media (max-width: 769px) {
170
+ .pc-addons-new-header {
171
+ max-width: 100%;
172
+ border-top-left-radius: 0;
173
+ border-top-right-radius: 0;
174
+ }
175
+ .pc-addons-new-header__left {
176
+ margin-right: 12px;
177
+ }
178
+ .pc-addons-new-header__icons-container {
179
+ flex-direction: row-reverse;
180
+ justify-content: flex-start;
181
+ }
182
+ .pc-addons-new-header_search .pc-addons-new-header__logo {
183
+ display: none;
184
+ }
185
+ }
186
+ @media (max-width: 577px) {
187
+ .pc-addons-new-header__container {
188
+ height: 64px;
189
+ }
190
+ }
@@ -0,0 +1,14 @@
1
+ import React, { ReactNode } from 'react';
2
+ import { ClassNameProps } from '@doyourjob/gravity-ui-page-constructor';
3
+ import { NHNavigationData, SetupRouteChangeHandler } from './models';
4
+ import './NewHeader.css';
5
+ export declare const MOBILE_ICON_SIZE = 24;
6
+ export interface NewHeaderProps extends ClassNameProps {
7
+ data: NHNavigationData;
8
+ renderSearch?: (props: {
9
+ onActiveToggle: (isActive: boolean) => void;
10
+ }) => ReactNode;
11
+ setupRouteChangeHandler?: SetupRouteChangeHandler;
12
+ scrollOffset?: number;
13
+ }
14
+ export declare const NewHeader: ({ data, setupRouteChangeHandler, renderSearch, className, scrollOffset, }: NewHeaderProps) => React.JSX.Element;