@redocly/theme 0.18.3-patch.0 → 0.18.3-patch.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/lib/components/Breadcrumbs/Breadcrumb.d.ts +1 -0
  2. package/lib/components/Breadcrumbs/Breadcrumb.js +2 -2
  3. package/lib/components/Breadcrumbs/Breadcrumbs.js +8 -1
  4. package/lib/components/Button/Button.js +6 -4
  5. package/lib/components/Button/styledVariables.js +25 -12
  6. package/lib/components/Catalog/Catalog.js +4 -4
  7. package/lib/components/Catalog/CatalogCard.js +15 -5
  8. package/lib/components/Catalog/styledVariables.js +5 -3
  9. package/lib/components/Catalog/useCatalog.js +12 -1
  10. package/lib/components/CodeBlock/CodeBlockContainer.js +3 -2
  11. package/lib/components/CodeBlock/CodeBlockControls.js +6 -2
  12. package/lib/components/CodeBlock/styledVariables.js +6 -4
  13. package/lib/components/ColorModeSwitcher/ColorModeSwitcher.js +2 -0
  14. package/lib/components/Dropdown/Dropdown.d.ts +3 -2
  15. package/lib/components/Dropdown/Dropdown.js +2 -1
  16. package/lib/components/EditPageButton/EditPageButton.js +7 -2
  17. package/lib/components/Feedback/Comment.js +5 -0
  18. package/lib/components/Feedback/Feedback.js +13 -3
  19. package/lib/components/Feedback/Rating.js +5 -1
  20. package/lib/components/Feedback/Reasons.js +5 -0
  21. package/lib/components/Feedback/Sentiment.js +11 -2
  22. package/lib/components/Feedback/Thumbs.js +4 -4
  23. package/lib/components/Filter/Filter.d.ts +2 -1
  24. package/lib/components/Filter/Filter.js +14 -5
  25. package/lib/components/Filter/FilterContent.d.ts +2 -1
  26. package/lib/components/Filter/FilterContent.js +12 -3
  27. package/lib/components/Filter/FilterPopover.d.ts +4 -4
  28. package/lib/components/Filter/FilterPopover.js +14 -4
  29. package/lib/components/Filter/FilterTag.js +1 -1
  30. package/lib/components/Footer/FooterColumn.js +2 -1
  31. package/lib/components/LastUpdated/index.d.ts +1 -0
  32. package/lib/components/LastUpdated/index.js +18 -0
  33. package/lib/components/LastUpdated/styledVariables.d.ts +1 -0
  34. package/lib/components/LastUpdated/styledVariables.js +11 -0
  35. package/lib/components/Menu/MenuItemLabel.js +2 -0
  36. package/lib/components/Menu/MenuLinkItem.js +2 -1
  37. package/lib/components/Menu/MobileMenu.js +5 -5
  38. package/lib/components/Menu/styledVariables.js +18 -7
  39. package/lib/components/Navbar/NavbarItem.d.ts +1 -1
  40. package/lib/components/Navbar/NavbarItem.js +9 -3
  41. package/lib/components/Navbar/styledVariables.js +5 -2
  42. package/lib/components/NavbarLogo/NavbarLogo.js +2 -1
  43. package/lib/components/NavbarLogo/index.d.ts +1 -0
  44. package/lib/components/NavbarLogo/index.js +1 -0
  45. package/lib/components/NavbarLogo/styledVariables.d.ts +1 -0
  46. package/lib/components/NavbarLogo/styledVariables.js +18 -0
  47. package/lib/components/Panel/styledVariables.js +3 -11
  48. package/lib/components/Profile/LoginLink.js +4 -1
  49. package/lib/components/Profile/MobileUserProfile.js +16 -5
  50. package/lib/components/Profile/UserProfile.js +5 -1
  51. package/lib/components/Search/ProductTag.js +1 -1
  52. package/lib/components/Select/Select.d.ts +1 -3
  53. package/lib/components/Select/Select.js +5 -2
  54. package/lib/components/Separator/Separator.js +11 -3
  55. package/lib/components/Separator/SeparatorItem.js +1 -7
  56. package/lib/components/Separator/SeparatorLine.js +7 -3
  57. package/lib/components/Sidebar/ApiCallItem.js +5 -3
  58. package/lib/components/Sidebar/SidebarLayout.js +2 -1
  59. package/lib/components/Sidebar/styledVariables.js +12 -7
  60. package/lib/components/Sidebar/types.d.ts +1 -0
  61. package/lib/components/SidebarActions/CollapseSidebarButton.js +4 -0
  62. package/lib/components/SidebarActions/SidebarActions.js +15 -3
  63. package/lib/components/SidebarActions/styled.js +14 -8
  64. package/lib/components/TableOfContent/TableOfContent.js +2 -1
  65. package/lib/components/Tag/Tag.d.ts +3 -1
  66. package/lib/components/Tag/Tag.js +10 -4
  67. package/lib/components/Tag/styledVariables.js +35 -30
  68. package/lib/components/Tiles/ThinTile.js +7 -5
  69. package/lib/components/Tiles/WideTile.js +10 -8
  70. package/lib/components/Typography/SectionHeader.js +2 -2
  71. package/lib/config.d.ts +84 -0
  72. package/lib/config.js +15 -1
  73. package/lib/globalStyle.js +43 -56
  74. package/lib/icons/PlusIcon/PlusIcon.js +1 -1
  75. package/lib/ui/ArrowBack.js +0 -1
  76. package/lib/ui/darkColors.js +5 -4
  77. package/lib/utils/index.d.ts +1 -0
  78. package/lib/utils/index.js +1 -0
  79. package/lib/utils/tags-parser.d.ts +1 -0
  80. package/lib/utils/tags-parser.js +10 -0
  81. package/package.json +2 -2
  82. package/src/components/Breadcrumbs/Breadcrumb.tsx +8 -2
  83. package/src/components/Breadcrumbs/Breadcrumbs.tsx +13 -1
  84. package/src/components/Button/Button.tsx +6 -4
  85. package/src/components/Button/styledVariables.ts +25 -12
  86. package/src/components/Catalog/Catalog.tsx +4 -8
  87. package/src/components/Catalog/CatalogCard.tsx +17 -6
  88. package/src/components/Catalog/styledVariables.ts +5 -3
  89. package/src/components/Catalog/useCatalog.ts +13 -1
  90. package/src/components/CodeBlock/CodeBlockContainer.tsx +3 -2
  91. package/src/components/CodeBlock/CodeBlockControls.tsx +6 -1
  92. package/src/components/CodeBlock/styledVariables.ts +6 -4
  93. package/src/components/ColorModeSwitcher/ColorModeSwitcher.tsx +3 -0
  94. package/src/components/Dropdown/Dropdown.tsx +4 -1
  95. package/src/components/EditPageButton/EditPageButton.tsx +7 -2
  96. package/src/components/Feedback/Comment.tsx +5 -0
  97. package/src/components/Feedback/Feedback.tsx +13 -3
  98. package/src/components/Feedback/Rating.tsx +5 -1
  99. package/src/components/Feedback/Reasons.tsx +5 -0
  100. package/src/components/Feedback/Sentiment.tsx +15 -2
  101. package/src/components/Feedback/Thumbs.tsx +4 -4
  102. package/src/components/Filter/Filter.tsx +25 -4
  103. package/src/components/Filter/FilterContent.tsx +21 -4
  104. package/src/components/Filter/FilterPopover.tsx +19 -11
  105. package/src/components/Filter/FilterTag.tsx +1 -1
  106. package/src/components/Footer/FooterColumn.tsx +2 -0
  107. package/src/components/LastUpdated/index.ts +1 -0
  108. package/src/components/LastUpdated/styledVariables.ts +8 -0
  109. package/src/components/Menu/MenuItemLabel.tsx +2 -0
  110. package/src/components/Menu/MenuLinkItem.tsx +6 -1
  111. package/src/components/Menu/MobileMenu.tsx +5 -5
  112. package/src/components/Menu/styledVariables.ts +18 -7
  113. package/src/components/Navbar/NavbarItem.tsx +10 -1
  114. package/src/components/Navbar/styledVariables.ts +5 -2
  115. package/src/components/NavbarLogo/NavbarLogo.tsx +12 -1
  116. package/src/components/NavbarLogo/index.ts +1 -0
  117. package/src/components/NavbarLogo/styledVariables.ts +15 -0
  118. package/src/components/Panel/styledVariables.ts +3 -11
  119. package/src/components/Profile/LoginLink.tsx +8 -1
  120. package/src/components/Profile/MobileUserProfile.tsx +22 -5
  121. package/src/components/Profile/UserProfile.tsx +5 -1
  122. package/src/components/Search/ProductTag.tsx +1 -1
  123. package/src/components/Select/Select.tsx +6 -5
  124. package/src/components/Separator/Separator.tsx +17 -3
  125. package/src/components/Separator/SeparatorItem.tsx +1 -7
  126. package/src/components/Separator/SeparatorLine.tsx +7 -3
  127. package/src/components/Sidebar/ApiCallItem.tsx +4 -2
  128. package/src/components/Sidebar/SidebarLayout.tsx +6 -1
  129. package/src/components/Sidebar/styledVariables.ts +12 -7
  130. package/src/components/Sidebar/types.ts +1 -0
  131. package/src/components/SidebarActions/CollapseSidebarButton.tsx +4 -0
  132. package/src/components/SidebarActions/SidebarActions.tsx +18 -3
  133. package/src/components/SidebarActions/styled.tsx +14 -8
  134. package/src/components/TableOfContent/TableOfContent.tsx +2 -0
  135. package/src/components/Tag/Tag.tsx +13 -4
  136. package/src/components/Tag/styledVariables.ts +35 -30
  137. package/src/components/Tiles/ThinTile.tsx +7 -5
  138. package/src/components/Tiles/WideTile.tsx +10 -8
  139. package/src/components/Typography/SectionHeader.ts +2 -2
  140. package/src/config.ts +19 -1
  141. package/src/globalStyle.ts +41 -57
  142. package/src/icons/PlusIcon/PlusIcon.tsx +7 -1
  143. package/src/ui/ArrowBack.tsx +0 -1
  144. package/src/ui/darkColors.tsx +5 -4
  145. package/src/utils/index.ts +1 -0
  146. package/src/utils/tags-parser.ts +8 -0
@@ -10,7 +10,7 @@ const react_date_picker_1 = require("react-date-picker");
10
10
  const hooks_1 = require("../../mocks/hooks");
11
11
  const icons_1 = require("../../icons");
12
12
  const Select_1 = require("../../components/Select");
13
- function Filter({ filter }) {
13
+ function Filter({ filter, filterValuesCasing, }) {
14
14
  var _a, _b;
15
15
  const { translate } = (0, hooks_1.useTranslate)();
16
16
  const translationKeys = {
@@ -33,7 +33,7 @@ function Filter({ filter }) {
33
33
  selectOptions.push(...filter.filteredOptions.map((option) => ({
34
34
  value: option.value,
35
35
  component: (react_1.default.createElement(FilterOption, { key: option.value, role: "link", onClick: () => filter.selectOption(option.value) },
36
- react_1.default.createElement(FilterOptionLabel, null, translate(option.value)),
36
+ react_1.default.createElement(FilterOptionLabel, null, changeCasing(translate(option.value), filterValuesCasing)),
37
37
  react_1.default.createElement(FilterOptionCount, null, option.count))),
38
38
  })));
39
39
  }
@@ -48,7 +48,7 @@ function Filter({ filter }) {
48
48
  react_1.default.createElement(FilterTitle, null,
49
49
  translate(filter.titleTranslationKey, filter.title),
50
50
  " "),
51
- filter.type === 'select' ? (react_1.default.createElement(StyledSelect, { selected: selectedOptionComponent, options: selectOptions.map((option) => option.component) })) : filter.type === 'date-range' ? (react_1.default.createElement(react_1.default.Fragment, null,
51
+ filter.type === 'select' ? (react_1.default.createElement(StyledSelect, { withArrow: true, selected: selectedOptionComponent, options: selectOptions.map((option) => option.component) })) : filter.type === 'date-range' ? (react_1.default.createElement(react_1.default.Fragment, null,
52
52
  react_1.default.createElement(DatePickerWrapper, null,
53
53
  react_1.default.createElement("span", null, "From:"),
54
54
  react_1.default.createElement(react_date_picker_1.DatePicker, { closeCalendar: true, format: "y-MM-dd", dayPlaceholder: "DD", monthPlaceholder: "MM", yearPlaceholder: "YYYY", value: filter.selectedOptions.from ? new Date(filter.selectedOptions.from) : null, minDetail: "decade", maxDate: new Date(), onChange: (from) => {
@@ -66,11 +66,17 @@ function Filter({ filter }) {
66
66
  const id = 'filter--' + filter.property + '--' + slug(value.value);
67
67
  return (react_1.default.createElement(FilterOption, { key: id, role: "link", onClick: () => filter.toggleOption(value.value) },
68
68
  react_1.default.createElement(icons_1.CheckboxIcon, { checked: filter.selectedOptions.has(value.value) }),
69
- react_1.default.createElement(FilterOptionLabel, null, translate(value.value)),
69
+ react_1.default.createElement(FilterOptionLabel, null, changeCasing(translate(value.value), filterValuesCasing)),
70
70
  react_1.default.createElement(FilterOptionCount, null, value.count)));
71
71
  }))));
72
72
  }
73
73
  exports.Filter = Filter;
74
+ function changeCasing(str, casing) {
75
+ if (casing !== 'sentence')
76
+ return str;
77
+ const words = str.split(/[\s-_]+/);
78
+ return words.map((word) => word[0].toUpperCase() + word.slice(1).toLowerCase()).join(' ');
79
+ }
74
80
  const FilterGroup = styled_components_1.default.div `
75
81
  padding: var(--filter-group-padding);
76
82
  `;
@@ -80,6 +86,9 @@ const FilterOptionLabel = styled_components_1.default.label `
80
86
  font-weight: var(--filter-option-label-font-weight);
81
87
  margin: var(--filter-option-label-margin);
82
88
  color: var(--filter-option-label-color);
89
+ white-space: nowrap;
90
+ text-overflow: ellipsis;
91
+ overflow: hidden;
83
92
  `;
84
93
  const FilterOptionCount = styled_components_1.default.label `
85
94
  cursor: pointer;
@@ -100,7 +109,7 @@ const FilterTitle = styled_components_1.default.h4 `
100
109
  font-size: var(--filter-title-font-size);
101
110
  margin: var(--filter-title-margin);
102
111
  `;
103
- const FilterOption = styled_components_1.default.label `
112
+ const FilterOption = styled_components_1.default.label.attrs({ 'data-cy': 'Filter/FilterOption' }) `
104
113
  display: flex;
105
114
  align-items: center;
106
115
  cursor: pointer;
@@ -5,7 +5,8 @@ interface FilterContentProps {
5
5
  filters: ResolvedFilter[];
6
6
  filterTerm: string;
7
7
  isMobile: boolean;
8
+ filterValuesCasing?: 'sentence';
8
9
  }
9
- export declare function FilterContent({ setFilterTerm, filters, filterTerm, isMobile, }: FilterContentProps): JSX.Element;
10
+ export declare function FilterContent({ setFilterTerm, filters, filterTerm, isMobile, filterValuesCasing, }: FilterContentProps): JSX.Element;
10
11
  export declare const FilterItems: import("styled-components").StyledComponent<"div", any, {}, never>;
11
12
  export {};
@@ -11,23 +11,32 @@ const hooks_1 = require("../../mocks/hooks");
11
11
  const Catalog_1 = require("../../components/Catalog");
12
12
  const index_1 = require("../../components/Filter/index");
13
13
  const FilterPopover_1 = require("../../components/Filter/FilterPopover");
14
- function FilterContent({ setFilterTerm, filters, filterTerm, isMobile, }) {
14
+ function FilterContent({ setFilterTerm, filters, filterTerm, isMobile, filterValuesCasing, }) {
15
15
  const { translate } = (0, hooks_1.useTranslate)();
16
16
  const translationKeys = {
17
17
  placeholder: 'theme.catalog.filters.placeholder',
18
18
  clearAll: 'theme.catalog.filters.clearAll',
19
19
  };
20
+ const hasActiveFilters = filters.some((filter) => {
21
+ if (filter.selectedOptions && filter.selectedOptions instanceof Set) {
22
+ return filter.selectedOptions.size;
23
+ }
24
+ else if (filter.selectedOptions.from && filter.selectedOptions.to) {
25
+ return true;
26
+ }
27
+ });
20
28
  const handleClearAll = () => {
21
29
  filters.forEach((filter) => filter.selectOption(''));
22
30
  };
23
31
  return (react_1.default.createElement(FilterContentWrapper, { isMobile: isMobile },
24
32
  react_1.default.createElement(Catalog_1.FilterControls, null,
25
33
  react_1.default.createElement(FilterPopover_1.StyledInput, { placeholder: translate(translationKeys.placeholder, 'Type to filter...'), value: filterTerm, onChange: (e) => setFilterTerm(e.target.value) })),
26
- react_1.default.createElement(exports.FilterItems, null, filters.map((filter, idx) => (react_1.default.createElement(index_1.Filter, { filter: filter, key: filter.property + '-' + idx })))),
27
- react_1.default.createElement(_theme_1.Button, { size: "small", onClick: handleClearAll }, translate(translationKeys.placeholder, 'Clear all filters'))));
34
+ react_1.default.createElement(exports.FilterItems, null, filters.map((filter, idx) => (react_1.default.createElement(index_1.Filter, { filter: filter, key: filter.property + '-' + idx, filterValuesCasing: filterValuesCasing })))),
35
+ hasActiveFilters && (react_1.default.createElement(_theme_1.Button, { size: "small", onClick: handleClearAll }, translate(translationKeys.placeholder, 'Clear all filters')))));
28
36
  }
29
37
  exports.FilterContent = FilterContent;
30
38
  const FilterContentWrapper = styled_components_1.default.div `
39
+ width: var(--sidebar-width);
31
40
  display: none;
32
41
 
33
42
  ${_theme_1.Button} {
@@ -2,10 +2,10 @@
2
2
  import type { ResolvedFilter } from '../../types/portal/src/shared/types/catalog';
3
3
  interface FilterPopoverProps {
4
4
  setIsAddingFilter: (value: boolean) => void;
5
- setFilterTerm: (value: string) => void;
6
5
  filters: ResolvedFilter[];
7
- filterTerm: string;
8
6
  }
9
- export declare function FilterPopover({ setIsAddingFilter, setFilterTerm, filters, filterTerm, }: FilterPopoverProps): JSX.Element;
10
- export declare const StyledInput: import("styled-components").StyledComponent<"input", any, {}, never>;
7
+ export declare function FilterPopover({ setIsAddingFilter, filters }: FilterPopoverProps): JSX.Element;
8
+ export declare const StyledInput: import("styled-components").StyledComponent<"input", any, {
9
+ 'data-cy': string;
10
+ }, "data-cy">;
11
11
  export {};
@@ -9,7 +9,15 @@ const styled_components_1 = __importDefault(require("styled-components"));
9
9
  const _theme_1 = require("../../index.js");
10
10
  const FilterContent_1 = require("../../components/Filter/FilterContent");
11
11
  const hooks_1 = require("../../mocks/hooks");
12
- function FilterPopover({ setIsAddingFilter, setFilterTerm, filters, filterTerm, }) {
12
+ function FilterPopover({ setIsAddingFilter, filters }) {
13
+ const [filterTerm, setFilterTerm] = react_1.default.useState('');
14
+ const filteredFilters = filters
15
+ .map((filter) => {
16
+ const options = filter.options.filter((option) => option.value.includes(filterTerm));
17
+ return options.length
18
+ ? Object.assign(Object.assign({}, filter), { filteredOptions: options }) : null;
19
+ })
20
+ .filter(Boolean);
13
21
  const translationKeys = {
14
22
  placeholder: 'theme.catalog.filters.placeholder',
15
23
  done: 'theme.catalog.filters.done',
@@ -22,7 +30,7 @@ function FilterPopover({ setIsAddingFilter, setFilterTerm, filters, filterTerm,
22
30
  react_1.default.createElement(FilterContent_1.FilterContent, { setFilterTerm: setFilterTerm, filters: filters, filterTerm: filterTerm, isMobile: true }),
23
31
  react_1.default.createElement(_theme_1.FilterControls, null,
24
32
  react_1.default.createElement(exports.StyledInput, { placeholder: translate(translationKeys.placeholder, 'Type to filter...'), value: filterTerm, onChange: (e) => setFilterTerm(e.target.value) })),
25
- react_1.default.createElement(FilterContent_1.FilterItems, null, filters.map((filter, idx) => (react_1.default.createElement(_theme_1.Filter, { filter: filter, key: filter.property + '-' + idx }))))));
33
+ react_1.default.createElement(FilterContent_1.FilterItems, null, filteredFilters.map((filter, idx) => (react_1.default.createElement(_theme_1.Filter, { filter: filter, key: filter.property + '-' + idx }))))));
26
34
  }
27
35
  exports.FilterPopover = FilterPopover;
28
36
  const FilterPopoverWrapper = styled_components_1.default.aside `
@@ -56,7 +64,9 @@ const FilterPopoverHeaderLabel = styled_components_1.default.div `
56
64
  font-size: var(--filter-popover-header-label-font-size);
57
65
  font-weight: var(--filter-popover-header-label-font-weight);
58
66
  `;
59
- const FilterPopoverHeaderButton = styled_components_1.default.div `
67
+ const FilterPopoverHeaderButton = styled_components_1.default.div.attrs({
68
+ 'data-cy': 'FilterPopover/DoneButton',
69
+ }) `
60
70
  color: var(--filter-popover-header-button-color);
61
71
  justify-self: end;
62
72
  font-size: var(--filter-popover-header-button-font-size);
@@ -64,7 +74,7 @@ const FilterPopoverHeaderButton = styled_components_1.default.div `
64
74
  height: var(--filter-popover-header-button-height);
65
75
  line-height: var(--filter-popover-header-button-height);
66
76
  `;
67
- exports.StyledInput = styled_components_1.default.input `
77
+ exports.StyledInput = styled_components_1.default.input.attrs({ 'data-cy': 'FilterPopover/Input' }) `
68
78
  border: var(--filter-input-border);
69
79
  min-width: var(--filter-input-min-width);
70
80
  width: 100%;
@@ -13,7 +13,7 @@ function FilterTag({ label, onClick }) {
13
13
  react_1.default.createElement(ClearIcon_1.ClearIcon, null)));
14
14
  }
15
15
  exports.FilterTag = FilterTag;
16
- const TagWrapper = styled_components_1.default.div `
16
+ const TagWrapper = styled_components_1.default.div.attrs({ 'data-cy': 'Filter/FilterTag' }) `
17
17
  display: flex;
18
18
  align-items: center;
19
19
  white-space: nowrap;
@@ -9,6 +9,7 @@ const styled_components_1 = __importDefault(require("styled-components"));
9
9
  const Link_1 = require("../../mocks/Link");
10
10
  const hooks_1 = require("../../mocks/hooks");
11
11
  const Image_1 = require("../../components/Image/Image");
12
+ const telemetry_1 = require("../../mocks/telemetry");
12
13
  function FooterColumn({ column, className }) {
13
14
  const { translate } = (0, hooks_1.useTranslate)();
14
15
  const { items = [] } = column;
@@ -19,7 +20,7 @@ function FooterColumn({ column, className }) {
19
20
  if (columnItem.type === 'error') {
20
21
  return null;
21
22
  }
22
- return columnItem.type === 'separator' ? (react_1.default.createElement(FooterSeparator, { key: columnItem.label + '_' + columnItemIndex }, translate(columnItem.labelTranslationKey, columnItem.label))) : (react_1.default.createElement(FooterLink, { key: columnItemIndex, to: columnItem.link, external: columnItem.external, target: columnItem.target, "data-cy": columnItem.label, iconsOnly: iconsOnly },
23
+ return columnItem.type === 'separator' ? (react_1.default.createElement(FooterSeparator, { key: columnItem.label + '_' + columnItemIndex }, translate(columnItem.labelTranslationKey, columnItem.label))) : (react_1.default.createElement(FooterLink, { key: columnItemIndex, to: columnItem.link, external: columnItem.external, target: columnItem.target, "data-cy": columnItem.label, iconsOnly: iconsOnly, onClick: () => telemetry_1.telemetry.send('footer_item_clicked', {}) },
23
24
  columnItem.icon || columnItem.srcSet ? (react_1.default.createElement(exports.FooterLinkIcon, null,
24
25
  react_1.default.createElement(Image_1.Image, { src: columnItem.icon, srcSet: columnItem.srcSet }))) : null,
25
26
  !iconsOnly && translate(columnItem.labelTranslationKey, columnItem.label)));
@@ -0,0 +1 @@
1
+ export * from '../../components/LastUpdated/styledVariables';
@@ -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("../../components/LastUpdated/styledVariables"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ export declare const lastUpdated: import("styled-components").FlattenSimpleInterpolation;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.lastUpdated = void 0;
4
+ const styled_components_1 = require("styled-components");
5
+ exports.lastUpdated = (0, styled_components_1.css) `
6
+ --last-updated-text-color: var(--text-secondary);
7
+ --last-updated-font-size: var(--font-size-sm);
8
+ --last-updated-font-family: var(--font-family-base);
9
+ --last-updated-line-height: var(--line-height-base);
10
+ `;
11
+ //# sourceMappingURL=styledVariables.js.map
@@ -19,6 +19,7 @@ exports.MenuItemLabel = styled_components_1.default.li.attrs(({ className }) =>
19
19
  font-family: var(--sidebar-item-font-family);
20
20
  font-size: var(--sidebar-item-font-size);
21
21
  font-weight: var(--sidebar-item-font-weight);
22
+ line-height: var(--sidebar-item-line-height);
22
23
  margin: var(--menu-item-label-margin);
23
24
  padding: var(--menu-item-label-padding);
24
25
  border-radius: var(--sidebar-item-border-radius);
@@ -39,6 +40,7 @@ exports.MenuItemLabel = styled_components_1.default.li.attrs(({ className }) =>
39
40
 
40
41
  ${({ theme }) => theme.mediaQueries.medium} {
41
42
  color: var(--sidebar-item-hover-color);
43
+ background: var(--sidebar-item-hover-background-color);
42
44
  }
43
45
  }
44
46
 
@@ -7,8 +7,9 @@ exports.MenuLinkItem = void 0;
7
7
  const react_1 = __importDefault(require("react"));
8
8
  const styled_components_1 = __importDefault(require("styled-components"));
9
9
  const MenuLink_1 = require("../../components/Menu/MenuLink");
10
+ const telemetry_1 = require("../../mocks/telemetry");
10
11
  function MenuLinkItem({ item, children, className, }) {
11
- return (react_1.default.createElement(Wrapper, { "data-component-name": "Sidebar/MenuLinkItem", className: className }, item.link ? (react_1.default.createElement(MenuLink_1.MenuLink, Object.assign({ to: item.link }, item), children)) : (children)));
12
+ return (react_1.default.createElement(Wrapper, { "data-component-name": "Sidebar/MenuLinkItem", className: className, onClick: () => telemetry_1.telemetry.send('sidebar_item_clicked', { label: item.label, type: item.type }) }, item.link ? (react_1.default.createElement(MenuLink_1.MenuLink, Object.assign({ to: item.link }, item), children)) : (children)));
12
13
  }
13
14
  exports.MenuLinkItem = MenuLinkItem;
14
15
  const Wrapper = styled_components_1.default.span ``;
@@ -135,10 +135,10 @@ const ControlButtonLabel = styled_components_1.default.span `
135
135
  ${({ paddingDirection }) => paddingDirection === 'right' && 'padding-right: 8px'};
136
136
  `;
137
137
  const ProductNameWrapper = styled_components_1.default.div `
138
- color: var(--menu-product-name-color);
139
- border-radius: var(--menu-product-name-border-radius);
140
- border: 1px solid var(--menu-product-name-border-color);
141
- padding: var(--menu-product-name-padding);
142
- margin: var(--menu-product-name-margin);
138
+ color: var(--mobile-menu-product-name-color);
139
+ border-radius: var(--mobile-menu-product-name-border-radius);
140
+ border: var(--mobile-menu-product-name-border);
141
+ padding: var(--mobile-menu-product-name-padding);
142
+ margin: var(--mobile-menu-product-name-margin);
143
143
  `;
144
144
  //# sourceMappingURL=MobileMenu.js.map
@@ -7,7 +7,7 @@ exports.mobileMenu = (0, styled_components_1.css) `
7
7
  * @tokens Mobile Menu icons
8
8
  */
9
9
  --mobile-menu-icons-size: var(--spacing-md); // @presenter Spacing
10
- --mobile-menu-search-icon-size: calc(var(--spacing-md) - 2px); // @presenter Spacing
10
+ --mobile-menu-search-icon-size: var(--spacing-md); // @presenter Spacing
11
11
 
12
12
  /**
13
13
  * @tokens Mobile Menu wrapper
@@ -60,9 +60,25 @@ exports.mobileMenu = (0, styled_components_1.css) `
60
60
  /**
61
61
  * @tokens Mobile Menu Login button
62
62
  * */
63
- --mobile-menu-login-button-background: var(--color-primary-base); // @presenter Color
63
+ --mobile-menu-login-button-background: var(--color-primary-bg); // @presenter Color
64
64
  --mobile-menu-login-button-color: var(--color-primary-text); // @presenter Color
65
+ --mobile-menu-login-button-hover-color: var(--text-primary); // @presenter Color
66
+ --mobile-menu-login-button-border-color: var(--color-primary-border); // @presenter Color
67
+ --mobile-menu-login-button-border-radius: var(--border-radius-md); // @presenter Spacing
68
+ --mobile-menu-login-button-font-size: var(--font-size-base); // @presenter FontSize
69
+ --mobile-menu-login-button-font-family: inherit; // @presenter FontFamily
70
+ --mobile-menu-login-button-font-weight: var(--font-weight-bold); // @presenter FontWeight
71
+ --mobile-menu-login-button-line-height: var(--line-height-base); // @presenter LineHeight
65
72
 
73
+ /**
74
+ * @tokens Mobile Menu Product
75
+ * */
76
+ --mobile-menu-product-name-color: var(--mobile-menu-item-text-color);
77
+ --mobile-menu-product-name-border-radius: var(--mobile-menu-item-radius);
78
+ --mobile-menu-product-name-border: 1px solid var(--border-secondary);
79
+ --mobile-menu-product-name-padding: var(--sidebar-item-padding-vertical) var(--sidebar-item-padding-horizontal);
80
+ --mobile-menu-product-name-margin: var(--spacing-sm) var(--spacing-xs) 0 var(--spacing-xs);
81
+
66
82
  // @tokens End
67
83
  `;
68
84
  exports.menu = (0, styled_components_1.css) `
@@ -80,11 +96,6 @@ exports.menu = (0, styled_components_1.css) `
80
96
  --menu-item-label-margin: 0 var(--sidebar-margin-horizontal);
81
97
  --menu-item-label-padding: var(--sidebar-item-padding-vertical) var(--sidebar-item-padding-horizontal);
82
98
 
83
- --menu-product-name-color: var(--mobile-menu-item-text-color);
84
- --menu-product-name-border-radius: var(--mobile-menu-item-radius);
85
- --menu-product-name-border-color: 1px solid rgba(0, 0, 0, 0.06);
86
- --menu-product-name-padding: var(--sidebar-item-padding-vertical) var(--sidebar-item-padding-horizontal);
87
- --menu-product-name-margin: var(--spacing-sm) var(--spacing-xs) 0 var(--spacing-xs);
88
99
  // @tokens End
89
100
  `;
90
101
  //# sourceMappingURL=styledVariables.js.map
@@ -6,7 +6,7 @@ export interface NavbarItemProps {
6
6
  className?: string;
7
7
  }
8
8
  export declare function NavbarItem({ navItem, className }: NavbarItemProps): JSX.Element | null;
9
- export declare const NavbarMenuItemDropdown: import("styled-components").StyledComponent<({ children, className, items, withArrow, triggerEvent, onChange, dataAttributes, placement, alignment, }: import("../../components/Dropdown").DropdownProps) => JSX.Element, any, {
9
+ export declare const NavbarMenuItemDropdown: import("styled-components").StyledComponent<({ children, className, items, withArrow, triggerEvent, onChange, dataAttributes, placement, alignment, icon, }: import("../../components/Dropdown").DropdownProps) => JSX.Element, any, {
10
10
  dataAttributes: {
11
11
  'data-component-name': string;
12
12
  };
@@ -34,6 +34,7 @@ const Link_1 = require("../../mocks/Link");
34
34
  const utils_1 = require("../../mocks/utils");
35
35
  const hooks_1 = require("../../mocks/hooks");
36
36
  const utils_2 = require("../../utils");
37
+ const telemetry_1 = require("../../mocks/telemetry");
37
38
  const Dropdown_1 = require("../../components/Dropdown");
38
39
  function NavbarItem({ navItem, className }) {
39
40
  const { pathname } = (0, react_router_dom_1.useLocation)();
@@ -43,7 +44,7 @@ function NavbarItem({ navItem, className }) {
43
44
  const item = navItem;
44
45
  const isActive = pathname ===
45
46
  (0, utils_2.withPathPrefix)((0, utils_1.getPathnameForLocale)(item.link, defaultLocale, currentLocale, locales));
46
- return (react_1.default.createElement(exports.NavbarMenuItem, { active: isActive, "data-component-name": "Navbar/NavbarItem", className: className },
47
+ return (react_1.default.createElement(exports.NavbarMenuItem, { active: isActive, "data-component-name": "Navbar/NavbarItem", className: className, onClick: () => telemetry_1.telemetry.send('navbar_menu_item_clicked', { type: 'link' }) },
47
48
  react_1.default.createElement(exports.NavbarLink, { to: item.link, external: item.external, target: item.target, active: isActive },
48
49
  item.icon ? react_1.default.createElement(exports.NavbarIcon, { url: item.icon }) : null,
49
50
  react_1.default.createElement(NavbarLabel, null, translate(item.labelTranslationKey, item.label)))));
@@ -53,7 +54,7 @@ function NavbarItem({ navItem, className }) {
53
54
  const groupItems = item.items;
54
55
  const groupItemsComponents = groupItems.map((item, index) => (react_1.default.createElement(Link_1.Link, { key: `${item.label}_${index}`, to: item.link }, translate(item.labelTranslationKey, item.label))));
55
56
  return (react_1.default.createElement(exports.NavbarMenuItemDropdown, { items: groupItemsComponents, triggerEvent: "hover" },
56
- react_1.default.createElement(exports.NavbarMenuItem, { active: false, "data-component-name": "Navbar/NavbarItem", className: className },
57
+ react_1.default.createElement(exports.NavbarMenuItem, { active: false, "data-component-name": "Navbar/NavbarItem", className: className, onClick: () => telemetry_1.telemetry.send('navbar_menu_item_clicked', { type: 'group' }) },
57
58
  react_1.default.createElement(exports.NavbarIcon, { url: item.icon }),
58
59
  react_1.default.createElement(NavbarLabel, null, translate(item.labelTranslationKey, item.label)))));
59
60
  }
@@ -79,17 +80,22 @@ exports.NavbarMenuItem = styled_components_1.default.li `
79
80
  padding: var(--navbar-item-padding-vertical) var(--navbar-item-padding-horizontal);
80
81
  text-align: center;
81
82
  line-height: var(--navbar-item-line-height);
82
- border-radius: var(--navbar-item-border-radius);
83
83
  font-weight: var(--navbar-item-font-weight);
84
84
 
85
+ border-radius: var(--navbar-item-border-radius);
86
+ border-bottom: ${({ active }) => active ? 'var(--navbar-item-active-bottom-border)' : 'var(--navbar-item-bottom-border)'};
87
+
85
88
  background: ${({ active }) => active && 'var(--navbar-item-active-background-color)'};
86
89
  color: ${({ active }) => active ? 'var(--navbar-item-active-text-color)' : 'var(--navbar-text-color)'};
90
+
87
91
  &:hover {
88
92
  color: var(--navbar-item-hover-text-color);
89
93
  text-decoration: var(--navbar-item-hover-text-decoration);
94
+ border-bottom: ${({ active }) => !active && 'var(--navbar-item-hover-bottom-border)'};
90
95
  background: ${({ active }) => active
91
96
  ? 'var(--navbar-item-active-background-color)'
92
97
  : 'var(--navbar-item-hover-background-color)'};
98
+
93
99
  ${exports.NavbarLink} {
94
100
  color: var(--navbar-item-hover-text-color);
95
101
  text-decoration: var(--navbar-item-hover-text-decoration);
@@ -22,16 +22,19 @@ exports.navbar = (0, styled_components_1.css) `
22
22
 
23
23
  --navbar-item-active-text-color: var(--text-primary);
24
24
  --navbar-item-active-text-decoration: none;
25
+ --navbar-item-active-bottom-border: 2px solid var(--navbar-item-active-text-color);
25
26
 
26
27
  --navbar-item-padding-vertical: var(--spacing-xxs);
27
28
  --navbar-item-padding-horizontal: var(--spacing-sm);
28
29
  --navbar-item-line-height: var(--line-height-base);
29
- --navbar-item-border-radius: 32px;
30
- --navbar-item-active-background-color: var(--bg-sunken);
30
+ --navbar-item-active-background-color: none;
31
+ --navbar-item-border-radius: 0;
32
+ --navbar-item-bottom-border: 2px solid transparent;
31
33
 
32
34
  --navbar-item-hover-text-color: var(--text-primary);
33
35
  --navbar-item-hover-text-decoration: none;
34
36
  --navbar-item-hover-background-color: none;
37
+ --navbar-item-hover-bottom-border: 2px solid var(--border-primary);
35
38
 
36
39
  --navbar-item-icon-width: 1.5em; // @presenter Spacing
37
40
  --navbar-item-icon-height: 1.5em; // @presenter Spacing
@@ -8,12 +8,13 @@ const react_1 = __importDefault(require("react"));
8
8
  const styled_components_1 = __importDefault(require("styled-components"));
9
9
  const Link_1 = require("../../mocks/Link");
10
10
  const Image_1 = require("../../components/Image/Image");
11
+ const telemetry_1 = require("../../mocks/telemetry");
11
12
  function NavbarLogo({ logo, className }) {
12
13
  if (!logo.image && !logo.srcSet) {
13
14
  return null;
14
15
  }
15
16
  const img = (react_1.default.createElement(Image_1.Image, { className: className, src: logo.image, srcSet: logo.srcSet, alt: logo.altText }));
16
- return react_1.default.createElement(exports.LogoContainer, null, logo.link ? react_1.default.createElement(Link_1.Link, { to: logo.link }, img) : img);
17
+ return (react_1.default.createElement(exports.LogoContainer, null, logo.link ? (react_1.default.createElement(Link_1.Link, { to: logo.link, onClick: () => telemetry_1.telemetry.send('logo_clicked', {}) }, img)) : (img)));
17
18
  }
18
19
  exports.NavbarLogo = NavbarLogo;
19
20
  exports.LogoContainer = styled_components_1.default.div.attrs({
@@ -1 +1,2 @@
1
1
  export * from '../../components/NavbarLogo/NavbarLogo';
2
+ export * from '../../components/NavbarLogo/styledVariables';
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("../../components/NavbarLogo/NavbarLogo"), exports);
18
+ __exportStar(require("../../components/NavbarLogo/styledVariables"), exports);
18
19
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ export declare const logo: import("styled-components").FlattenSimpleInterpolation;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.logo = void 0;
4
+ const styled_components_1 = require("styled-components");
5
+ exports.logo = (0, styled_components_1.css) `
6
+ /**
7
+ * @tokens Logo
8
+ */
9
+
10
+ --navbar-logo-height: 2rem; // @presenter Spacing
11
+ --navbar-logo-width: auto;
12
+ --navbar-logo-margin: 16px; // @presenter Spacing
13
+ --navbar-logo-max-width: 285px; // @presenter Spacing
14
+ --navbar-logo-max-height: 285px; // @presenter Spacing
15
+
16
+ // @tokens End
17
+ `;
18
+ //# sourceMappingURL=styledVariables.js.map
@@ -196,7 +196,7 @@ exports.apiReferencePanels = (0, styled_components_1.css) `
196
196
  --panel-heading-font-family: var(--font-family-base); // @presenter FontFamily
197
197
  --panel-heading-font-size: 18px; // @presenter FontSize
198
198
  --panel-heading-font-weight: var(--font-weight-bold); // @presenter FontWeight
199
- --panel-heading-text-color: vat(--text-primary);
199
+ --panel-heading-text-color: var(--text-primary);
200
200
  --panel-heading-padding: var(--spacing-base);
201
201
  --panel-heading-line-height: 1; // @presenter LineHeight
202
202
  --panel-heading-white-space: 'nowrap';
@@ -209,7 +209,7 @@ exports.apiReferencePanels = (0, styled_components_1.css) `
209
209
  --panel-body-font-family: var(--font-family-base); // @presenter FontFamily
210
210
  --panel-body-font-size: var(--font-size-base); // @presenter FontSize
211
211
  --panel-body-font-weight: var(--font-weight-regular); // @presenter FontWeight
212
- --panel-body-text-color: vat(--text-secondary);
212
+ --panel-body-text-color: var(--text-secondary);
213
213
  --panel-body-padding: var(--spacing-base);
214
214
  --panel-body-border: 1px solid var(--border-primary);
215
215
 
@@ -432,7 +432,7 @@ exports.apiReferencePanels = (0, styled_components_1.css) `
432
432
  --panel-try-it-tabs-disabled-text-color: var(--text-placeholder); // @presenter Color
433
433
 
434
434
  --panel-try-it-tabs-background-color: none; // @presenter Color
435
- --panel-try-it-tabs-hover-background-color: var(--bg-raised);; // @presenter Color
435
+ --panel-try-it-tabs-hover-background-color: var(--bg-raised); // @presenter Color
436
436
  --panel-try-it-tabs-active-background-color: var(--bg-base); // @presenter Color
437
437
  --panel-try-it-tabs-disabled-background-color: none; // @presenter Color
438
438
 
@@ -477,13 +477,5 @@ exports.apiReferencePanels = (0, styled_components_1.css) `
477
477
  --panel-try-it-border: 1px solid var(--border-primary); // @presenter Border
478
478
 
479
479
  // @tokens End
480
-
481
- // TODO PUL RIGHT section - related to pull right - fix later
482
-
483
- --samples-panel-markdown-background-color: #3c4c5a;
484
- --samples-panel-markdown-border-color: #46596a;
485
-
486
- --layout-right-rail-width: 50%;
487
- --layout-right-rail-background-color: transparent;
488
480
  `;
489
481
  //# sourceMappingURL=styledVariables.js.map
@@ -8,13 +8,16 @@ const react_1 = __importDefault(require("react"));
8
8
  const styled_components_1 = __importDefault(require("styled-components"));
9
9
  const useThemeConfig_1 = require("../../hooks/useThemeConfig");
10
10
  const hooks_1 = require("../../mocks/hooks");
11
+ const telemetry_1 = require("../../mocks/telemetry");
11
12
  function LoginLink({ href }) {
12
13
  const { userProfile } = (0, useThemeConfig_1.useThemeConfig)();
13
14
  const { translate } = (0, hooks_1.useTranslate)();
14
15
  const translationKeys = {
15
16
  login: 'theme.profile.login',
16
17
  };
17
- return (react_1.default.createElement(StyledLink, { href: href, "data-translation-key": translationKeys.login }, translate(translationKeys.login, (userProfile === null || userProfile === void 0 ? void 0 : userProfile.loginLabel) || 'Login')));
18
+ return (react_1.default.createElement(StyledLink, { href: href, "data-translation-key": translationKeys.login, onClick: () => {
19
+ telemetry_1.telemetry.send('login_button_clicked', {});
20
+ } }, translate(translationKeys.login, (userProfile === null || userProfile === void 0 ? void 0 : userProfile.loginLabel) || 'Login')));
18
21
  }
19
22
  exports.LoginLink = LoginLink;
20
23
  const StyledLink = styled_components_1.default.a.attrs(() => ({
@@ -11,6 +11,7 @@ const LogoutIcon_1 = require("../../icons/LogoutIcon");
11
11
  const useThemeConfig_1 = require("../../hooks/useThemeConfig");
12
12
  const hooks_1 = require("../../mocks/hooks");
13
13
  const UserProfileData_1 = require("../../components/Profile/UserProfileData");
14
+ const telemetry_1 = require("../../mocks/telemetry");
14
15
  function MobileUserProfile() {
15
16
  const { userProfile } = (0, useThemeConfig_1.useThemeConfig)();
16
17
  const { userData, handleLogout, loginUrl } = (0, useProfileProps_1.useProfileProps)();
@@ -20,24 +21,34 @@ function MobileUserProfile() {
20
21
  };
21
22
  if (!(userData === null || userData === void 0 ? void 0 : userData.isAuthenticated) && !loginUrl)
22
23
  return null;
23
- return (react_1.default.createElement(MobileProfileWrapper, { "data-component-name": "Navbar/MobileUserProfile" }, !(userData === null || userData === void 0 ? void 0 : userData.isAuthenticated) ? (react_1.default.createElement(LoginButton, { href: loginUrl, "data-cy": "login-btn" }, translate(translationKeys.login, (userProfile === null || userProfile === void 0 ? void 0 : userProfile.loginLabel) || 'Login'))) : (react_1.default.createElement(react_1.default.Fragment, null,
24
+ return (react_1.default.createElement(MobileProfileWrapper, { "data-component-name": "Navbar/MobileUserProfile" }, !(userData === null || userData === void 0 ? void 0 : userData.isAuthenticated) ? (react_1.default.createElement(LoginButton, { href: loginUrl, "data-cy": "login-btn", onClick: () => telemetry_1.telemetry.send('login_button_clicked', {}) }, translate(translationKeys.login, (userProfile === null || userProfile === void 0 ? void 0 : userProfile.loginLabel) || 'Login'))) : (react_1.default.createElement(react_1.default.Fragment, null,
24
25
  react_1.default.createElement(UserProfileData_1.UserProfileData, { userData: userData }),
25
- react_1.default.createElement(LogoutButton, { onClick: () => handleLogout() },
26
+ react_1.default.createElement(LogoutButton, { onClick: () => {
27
+ handleLogout();
28
+ telemetry_1.telemetry.send('logout_menu_item_clicked', {});
29
+ } },
26
30
  react_1.default.createElement(LogoutIcon_1.LogoutIcon, null))))));
27
31
  }
28
32
  exports.MobileUserProfile = MobileUserProfile;
29
33
  const LoginButton = styled_components_1.default.a `
30
34
  background: var(--mobile-menu-login-button-background);
31
- border-radius: 6px;
35
+ border-radius: var(--mobile-menu-login-button-border-radius);
32
36
  width: 100%;
33
37
  margin: 0;
34
38
  padding: 5px 0;
35
39
  color: var(--mobile-menu-login-button-color);
36
- font-size: var(--font-size-base);
40
+ border: 1px solid var(--mobile-menu-login-button-border-color);
41
+ font-size: var(--mobile-menu-login-button-font-size);
42
+ font-family: var(--mobile-menu-login-button-font-family);
43
+ font-weight: var(--mobile-menu-login-button-font-weight);
37
44
  text-align: center;
38
- line-height: 22px;
45
+ line-height: var(--mobile-menu-login-button-line-height);
39
46
  cursor: pointer;
40
47
  text-decoration: none;
48
+
49
+ &:hover {
50
+ color: var(--mobile-menu-login-button-hover-color);
51
+ }
41
52
  `;
42
53
  const MobileProfileWrapper = styled_components_1.default.div `
43
54
  display: flex;
@@ -33,6 +33,7 @@ const Profile_1 = require("../../components/Profile/Profile");
33
33
  const Link_1 = require("../../mocks/Link");
34
34
  const useThemeConfig_1 = require("../../hooks/useThemeConfig");
35
35
  const hooks_1 = require("../../mocks/hooks");
36
+ const telemetry_1 = require("../../mocks/telemetry");
36
37
  const Dropdown_1 = require("../../components/Dropdown");
37
38
  const UserProfileData_1 = require("../../components/Profile/UserProfileData");
38
39
  const icons_1 = require("../../icons");
@@ -53,7 +54,10 @@ function UserProfile({ userData, handleLogout, hasDeveloperOnboarding = false, }
53
54
  menuItems.push(react_1.default.createElement(Link_1.Link, { external: item.external, key: item.label, to: item.link || '', separator: item === null || item === void 0 ? void 0 : item.separatorLine }, item.label));
54
55
  }
55
56
  }
56
- menuItems.push(react_1.default.createElement(Logout, { onClick: () => handleLogout(), "data-translation-key": translationKeys.logout, role: "link" },
57
+ menuItems.push(react_1.default.createElement(Logout, { onClick: () => {
58
+ handleLogout();
59
+ telemetry_1.telemetry.send('logout_menu_item_clicked', {});
60
+ }, "data-translation-key": translationKeys.logout, role: "link" },
57
61
  react_1.default.createElement(icons_1.LogoutIcon, null),
58
62
  translate(translationKeys.logout, (userProfile === null || userProfile === void 0 ? void 0 : userProfile.logoutLabel) || 'Log out')));
59
63
  return (react_1.default.createElement(ProfileDropdown, { items: menuItems, alignment: "end" },
@@ -45,7 +45,7 @@ const Wrapper = styled_components_1.default.div `
45
45
  background: var(--bg-overlay);
46
46
  border: 1px solid var(--border-secondary);
47
47
  border-radius: var(--border-radius-xlg);
48
- margin-right: 16px;
48
+ margin-right: var(--spacing-base);
49
49
  `;
50
50
  const Label = styled_components_1.default.span `
51
51
  color: var(--text-secondary);
@@ -15,9 +15,7 @@ export interface SelectProps {
15
15
  export declare const Select: ({ className, selected, options, dataAttributes, withArrow, triggerEvent, onChange, placement, alignment, icon, onlyIcon, }: SelectProps) => JSX.Element;
16
16
  export declare const SelectContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
17
17
  export declare const SelectInput: import("styled-components").StyledComponent<"div", any, {}, never>;
18
- export declare const SelectInputValue: import("styled-components").StyledComponent<"div", any, {
19
- withIcon?: boolean | undefined;
20
- }, never>;
18
+ export declare const SelectInputValue: import("styled-components").StyledComponent<"div", any, {}, never>;
21
19
  export declare const SelectList: import("styled-components").StyledComponent<"ul", any, {
22
20
  placement?: string | undefined;
23
21
  alignment?: string | undefined;