@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.
- package/lib/components/Breadcrumbs/Breadcrumb.d.ts +1 -0
- package/lib/components/Breadcrumbs/Breadcrumb.js +2 -2
- package/lib/components/Breadcrumbs/Breadcrumbs.js +8 -1
- package/lib/components/Button/Button.js +6 -4
- package/lib/components/Button/styledVariables.js +25 -12
- package/lib/components/Catalog/Catalog.js +4 -4
- package/lib/components/Catalog/CatalogCard.js +15 -5
- package/lib/components/Catalog/styledVariables.js +5 -3
- package/lib/components/Catalog/useCatalog.js +12 -1
- package/lib/components/CodeBlock/CodeBlockContainer.js +3 -2
- package/lib/components/CodeBlock/CodeBlockControls.js +6 -2
- package/lib/components/CodeBlock/styledVariables.js +6 -4
- package/lib/components/ColorModeSwitcher/ColorModeSwitcher.js +2 -0
- package/lib/components/Dropdown/Dropdown.d.ts +3 -2
- package/lib/components/Dropdown/Dropdown.js +2 -1
- package/lib/components/EditPageButton/EditPageButton.js +7 -2
- package/lib/components/Feedback/Comment.js +5 -0
- package/lib/components/Feedback/Feedback.js +13 -3
- package/lib/components/Feedback/Rating.js +5 -1
- package/lib/components/Feedback/Reasons.js +5 -0
- package/lib/components/Feedback/Sentiment.js +11 -2
- package/lib/components/Feedback/Thumbs.js +4 -4
- package/lib/components/Filter/Filter.d.ts +2 -1
- package/lib/components/Filter/Filter.js +14 -5
- package/lib/components/Filter/FilterContent.d.ts +2 -1
- package/lib/components/Filter/FilterContent.js +12 -3
- package/lib/components/Filter/FilterPopover.d.ts +4 -4
- package/lib/components/Filter/FilterPopover.js +14 -4
- package/lib/components/Filter/FilterTag.js +1 -1
- package/lib/components/Footer/FooterColumn.js +2 -1
- package/lib/components/LastUpdated/index.d.ts +1 -0
- package/lib/components/LastUpdated/index.js +18 -0
- package/lib/components/LastUpdated/styledVariables.d.ts +1 -0
- package/lib/components/LastUpdated/styledVariables.js +11 -0
- package/lib/components/Menu/MenuItemLabel.js +2 -0
- package/lib/components/Menu/MenuLinkItem.js +2 -1
- package/lib/components/Menu/MobileMenu.js +5 -5
- package/lib/components/Menu/styledVariables.js +18 -7
- package/lib/components/Navbar/NavbarItem.d.ts +1 -1
- package/lib/components/Navbar/NavbarItem.js +9 -3
- package/lib/components/Navbar/styledVariables.js +5 -2
- package/lib/components/NavbarLogo/NavbarLogo.js +2 -1
- package/lib/components/NavbarLogo/index.d.ts +1 -0
- package/lib/components/NavbarLogo/index.js +1 -0
- package/lib/components/NavbarLogo/styledVariables.d.ts +1 -0
- package/lib/components/NavbarLogo/styledVariables.js +18 -0
- package/lib/components/Panel/styledVariables.js +3 -11
- package/lib/components/Profile/LoginLink.js +4 -1
- package/lib/components/Profile/MobileUserProfile.js +16 -5
- package/lib/components/Profile/UserProfile.js +5 -1
- package/lib/components/Search/ProductTag.js +1 -1
- package/lib/components/Select/Select.d.ts +1 -3
- package/lib/components/Select/Select.js +5 -2
- package/lib/components/Separator/Separator.js +11 -3
- package/lib/components/Separator/SeparatorItem.js +1 -7
- package/lib/components/Separator/SeparatorLine.js +7 -3
- package/lib/components/Sidebar/ApiCallItem.js +5 -3
- package/lib/components/Sidebar/SidebarLayout.js +2 -1
- package/lib/components/Sidebar/styledVariables.js +12 -7
- package/lib/components/Sidebar/types.d.ts +1 -0
- package/lib/components/SidebarActions/CollapseSidebarButton.js +4 -0
- package/lib/components/SidebarActions/SidebarActions.js +15 -3
- package/lib/components/SidebarActions/styled.js +14 -8
- package/lib/components/TableOfContent/TableOfContent.js +2 -1
- package/lib/components/Tag/Tag.d.ts +3 -1
- package/lib/components/Tag/Tag.js +10 -4
- package/lib/components/Tag/styledVariables.js +35 -30
- package/lib/components/Tiles/ThinTile.js +7 -5
- package/lib/components/Tiles/WideTile.js +10 -8
- package/lib/components/Typography/SectionHeader.js +2 -2
- package/lib/config.d.ts +84 -0
- package/lib/config.js +15 -1
- package/lib/globalStyle.js +43 -56
- package/lib/icons/PlusIcon/PlusIcon.js +1 -1
- package/lib/ui/ArrowBack.js +0 -1
- package/lib/ui/darkColors.js +5 -4
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/index.js +1 -0
- package/lib/utils/tags-parser.d.ts +1 -0
- package/lib/utils/tags-parser.js +10 -0
- package/package.json +2 -2
- package/src/components/Breadcrumbs/Breadcrumb.tsx +8 -2
- package/src/components/Breadcrumbs/Breadcrumbs.tsx +13 -1
- package/src/components/Button/Button.tsx +6 -4
- package/src/components/Button/styledVariables.ts +25 -12
- package/src/components/Catalog/Catalog.tsx +4 -8
- package/src/components/Catalog/CatalogCard.tsx +17 -6
- package/src/components/Catalog/styledVariables.ts +5 -3
- package/src/components/Catalog/useCatalog.ts +13 -1
- package/src/components/CodeBlock/CodeBlockContainer.tsx +3 -2
- package/src/components/CodeBlock/CodeBlockControls.tsx +6 -1
- package/src/components/CodeBlock/styledVariables.ts +6 -4
- package/src/components/ColorModeSwitcher/ColorModeSwitcher.tsx +3 -0
- package/src/components/Dropdown/Dropdown.tsx +4 -1
- package/src/components/EditPageButton/EditPageButton.tsx +7 -2
- package/src/components/Feedback/Comment.tsx +5 -0
- package/src/components/Feedback/Feedback.tsx +13 -3
- package/src/components/Feedback/Rating.tsx +5 -1
- package/src/components/Feedback/Reasons.tsx +5 -0
- package/src/components/Feedback/Sentiment.tsx +15 -2
- package/src/components/Feedback/Thumbs.tsx +4 -4
- package/src/components/Filter/Filter.tsx +25 -4
- package/src/components/Filter/FilterContent.tsx +21 -4
- package/src/components/Filter/FilterPopover.tsx +19 -11
- package/src/components/Filter/FilterTag.tsx +1 -1
- package/src/components/Footer/FooterColumn.tsx +2 -0
- package/src/components/LastUpdated/index.ts +1 -0
- package/src/components/LastUpdated/styledVariables.ts +8 -0
- package/src/components/Menu/MenuItemLabel.tsx +2 -0
- package/src/components/Menu/MenuLinkItem.tsx +6 -1
- package/src/components/Menu/MobileMenu.tsx +5 -5
- package/src/components/Menu/styledVariables.ts +18 -7
- package/src/components/Navbar/NavbarItem.tsx +10 -1
- package/src/components/Navbar/styledVariables.ts +5 -2
- package/src/components/NavbarLogo/NavbarLogo.tsx +12 -1
- package/src/components/NavbarLogo/index.ts +1 -0
- package/src/components/NavbarLogo/styledVariables.ts +15 -0
- package/src/components/Panel/styledVariables.ts +3 -11
- package/src/components/Profile/LoginLink.tsx +8 -1
- package/src/components/Profile/MobileUserProfile.tsx +22 -5
- package/src/components/Profile/UserProfile.tsx +5 -1
- package/src/components/Search/ProductTag.tsx +1 -1
- package/src/components/Select/Select.tsx +6 -5
- package/src/components/Separator/Separator.tsx +17 -3
- package/src/components/Separator/SeparatorItem.tsx +1 -7
- package/src/components/Separator/SeparatorLine.tsx +7 -3
- package/src/components/Sidebar/ApiCallItem.tsx +4 -2
- package/src/components/Sidebar/SidebarLayout.tsx +6 -1
- package/src/components/Sidebar/styledVariables.ts +12 -7
- package/src/components/Sidebar/types.ts +1 -0
- package/src/components/SidebarActions/CollapseSidebarButton.tsx +4 -0
- package/src/components/SidebarActions/SidebarActions.tsx +18 -3
- package/src/components/SidebarActions/styled.tsx +14 -8
- package/src/components/TableOfContent/TableOfContent.tsx +2 -0
- package/src/components/Tag/Tag.tsx +13 -4
- package/src/components/Tag/styledVariables.ts +35 -30
- package/src/components/Tiles/ThinTile.tsx +7 -5
- package/src/components/Tiles/WideTile.tsx +10 -8
- package/src/components/Typography/SectionHeader.ts +2 -2
- package/src/config.ts +19 -1
- package/src/globalStyle.ts +41 -57
- package/src/icons/PlusIcon/PlusIcon.tsx +7 -1
- package/src/ui/ArrowBack.tsx +0 -1
- package/src/ui/darkColors.tsx +5 -4
- package/src/utils/index.ts +1 -0
- 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,
|
|
10
|
-
export declare const StyledInput: import("styled-components").StyledComponent<"input", any, {
|
|
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,
|
|
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,
|
|
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:
|
|
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:
|
|
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-
|
|
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-
|
|
30
|
-
--navbar-item-
|
|
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({
|
|
@@ -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:
|
|
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:
|
|
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)
|
|
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
|
|
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: () =>
|
|
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:
|
|
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
|
-
|
|
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:
|
|
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: () =>
|
|
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:
|
|
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;
|