@redocly/theme 0.1.25 → 0.1.28

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 (127) hide show
  1. package/Button/Button.js +3 -3
  2. package/Cards/Card.d.ts +8 -0
  3. package/Cards/Card.js +25 -0
  4. package/Cards/CardsBlock.d.ts +3 -0
  5. package/Cards/CardsBlock.js +15 -0
  6. package/CodeBlock/CodeBlock.js +1 -1
  7. package/CopyButton/CopyButton.js +17 -1
  8. package/Footer/Footer.js +2 -1
  9. package/Footer/FooterColumn.js +1 -1
  10. package/Footer/FooterColumns.d.ts +2 -2
  11. package/Footer/FooterColumns.js +1 -1
  12. package/JsonViewer/JsonViewer.d.ts +2 -0
  13. package/JsonViewer/JsonViewer.js +53 -22
  14. package/Markdown/Admonition.js +1 -1
  15. package/Markdown/CodeSample/CodeSample.js +17 -1
  16. package/Markdown/Heading.js +11 -2
  17. package/Markdown/MarkdownWrapper.js +2 -2
  18. package/Markdown/Mermaid.js +1 -1
  19. package/Markdown/Sup.d.ts +2 -0
  20. package/Markdown/Sup.js +19 -0
  21. package/Markdown/Tabs/Tabs.js +17 -1
  22. package/Markdown/index.d.ts +4 -3
  23. package/Markdown/index.js +4 -3
  24. package/Navbar/MobileNavbarDropdown.d.ts +8 -0
  25. package/Navbar/MobileNavbarDropdown.js +21 -0
  26. package/Navbar/MobileNavbarItem.d.ts +15 -0
  27. package/Navbar/MobileNavbarItem.js +102 -0
  28. package/Navbar/MobileNavbarMenu.d.ts +6 -0
  29. package/Navbar/MobileNavbarMenu.js +32 -0
  30. package/Navbar/MobileNavbarMenuButton.d.ts +4 -0
  31. package/Navbar/MobileNavbarMenuButton.js +19 -0
  32. package/Navbar/Navbar.js +26 -4
  33. package/Navbar/NavbarDropdown.js +1 -1
  34. package/Navbar/NavbarItem.d.ts +9 -3
  35. package/Navbar/NavbarItem.js +9 -9
  36. package/Navbar/NavbarMenu.js +3 -2
  37. package/PageNavigation/NextPageLink.js +12 -5
  38. package/PageNavigation/PreviousPageLink.js +12 -5
  39. package/Panel/PanelComponent.js +18 -2
  40. package/Search/Autocomplete.js +18 -2
  41. package/Search/utils.js +17 -1
  42. package/Sidebar/SidebarLayout.js +17 -1
  43. package/SourceCode/SourceCode.d.ts +10 -3
  44. package/SourceCode/SourceCode.js +10 -5
  45. package/TableOfContent/TableOfContent.js +4 -4
  46. package/Typography/CompactTypography.d.ts +2 -6
  47. package/Typography/Typography.d.ts +14 -7
  48. package/Typography/Typography.js +31 -8
  49. package/globalStyle.js +3 -3
  50. package/hooks/useActiveHeading.js +17 -1
  51. package/hooks/useActiveSectionId.d.ts +1 -1
  52. package/hooks/useActiveSectionId.js +17 -1
  53. package/hooks/useControl.js +17 -1
  54. package/hooks/useMobileMenu.js +17 -1
  55. package/hooks/useNavbarHeight.js +17 -1
  56. package/package.json +1 -1
  57. package/src/Button/Button.tsx +5 -1
  58. package/src/Cards/Card.tsx +49 -0
  59. package/src/Cards/CardsBlock.tsx +9 -0
  60. package/src/CodeBlock/CodeBlock.ts +12 -0
  61. package/src/Footer/Footer.tsx +4 -3
  62. package/src/Footer/FooterColumn.tsx +3 -1
  63. package/src/Footer/FooterColumns.tsx +3 -3
  64. package/src/JsonViewer/JsonViewer.tsx +55 -40
  65. package/src/Markdown/Admonition.tsx +1 -1
  66. package/src/Markdown/Heading.tsx +13 -2
  67. package/src/Markdown/MarkdownWrapper.tsx +58 -58
  68. package/src/Markdown/Mermaid.tsx +1 -1
  69. package/src/Markdown/Sup.tsx +8 -0
  70. package/src/Markdown/index.ts +4 -3
  71. package/src/Navbar/MobileNavbarDropdown.tsx +37 -0
  72. package/src/Navbar/MobileNavbarItem.tsx +116 -0
  73. package/src/Navbar/MobileNavbarMenu.tsx +106 -0
  74. package/src/Navbar/MobileNavbarMenuButton.tsx +13 -0
  75. package/src/Navbar/Navbar.tsx +11 -3
  76. package/src/Navbar/NavbarDropdown.tsx +1 -1
  77. package/src/Navbar/NavbarItem.tsx +9 -8
  78. package/src/Navbar/NavbarMenu.tsx +9 -4
  79. package/src/PageNavigation/NextPageLink.tsx +10 -5
  80. package/src/PageNavigation/PreviousPageLink.tsx +10 -5
  81. package/src/SourceCode/SourceCode.tsx +32 -5
  82. package/src/TableOfContent/TableOfContent.tsx +3 -3
  83. package/src/Typography/Typography.ts +25 -17
  84. package/src/globalStyle.ts +6 -0
  85. package/src/hooks/useActiveSectionId.ts +1 -1
  86. package/src/types/portal/src/client/app/Sidebar/types.d.ts +2 -1
  87. package/src/types/portal/src/server/constants.d.ts +2 -0
  88. package/src/types/portal/src/server/dev-server/types.d.ts +22 -0
  89. package/src/types/portal/src/server/plugins/markdown/types.d.ts +15 -5
  90. package/src/types/portal/src/server/plugins/portal-config/get-frontmatter-keys-to-resolve.d.ts +2 -0
  91. package/src/types/portal/src/server/plugins/portal-config/types.d.ts +6 -2
  92. package/src/types/portal/src/server/plugins/reference-docs/utils.d.ts +26 -0
  93. package/src/types/portal/src/server/plugins/types.d.ts +29 -12
  94. package/src/types/portal/src/server/store.d.ts +16 -16
  95. package/src/types/portal/src/server/utils/fs.d.ts +2 -1
  96. package/src/types/portal/src/server/utils/index.d.ts +1 -0
  97. package/src/types/portal/src/server/utils/paths.d.ts +4 -0
  98. package/src/types/portal/src/server/utils/rbac.d.ts +15 -0
  99. package/src/types/portal/src/shared/constants.d.ts +7 -0
  100. package/src/types/portal/src/shared/models/config.d.ts +24 -12
  101. package/src/types/portal/src/shared/types.d.ts +17 -4
  102. package/src/types/portal/src/shared/urls.d.ts +1 -1
  103. package/src/types/portal/src/shared/utils.d.ts +2 -0
  104. package/src/ui/Burger.tsx +36 -0
  105. package/src/ui/Flex.tsx +1 -0
  106. package/src/utils/args-typecheck.ts +9 -0
  107. package/src/utils/class-names.ts +8 -0
  108. package/src/utils/highlight.ts +11 -0
  109. package/src/utils/index.ts +2 -0
  110. package/src/utils/jsonToHtml.ts +171 -59
  111. package/ui/Burger.d.ts +8 -0
  112. package/ui/Burger.js +23 -0
  113. package/ui/Dropdown.js +17 -1
  114. package/ui/Flex.js +1 -1
  115. package/ui/UniversalLink.js +17 -1
  116. package/utils/args-typecheck.d.ts +2 -0
  117. package/utils/args-typecheck.js +13 -0
  118. package/utils/class-names.d.ts +1 -0
  119. package/utils/class-names.js +15 -0
  120. package/utils/highlight.d.ts +1 -0
  121. package/utils/highlight.js +12 -1
  122. package/utils/index.d.ts +2 -0
  123. package/utils/index.js +2 -0
  124. package/utils/jsonToHtml.d.ts +4 -1
  125. package/utils/jsonToHtml.js +287 -83
  126. package/utils/media-css.js +40 -3
  127. package/utils/theme-helpers.js +56 -9
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.MobileDropdownWrapper = exports.MobileNavbarDropdown = void 0;
11
+ var react_1 = __importDefault(require("react"));
12
+ var styled_components_1 = __importDefault(require("styled-components"));
13
+ var Link_1 = require("../mocks/Link");
14
+ function MobileNavbarDropdown(_a) {
15
+ var items = _a.items;
16
+ return (react_1.default.createElement(exports.MobileDropdownWrapper, { "data-component-name": "Navbar/MobileNavbarDropdown" }, items.map(function (item, index) { return (react_1.default.createElement("div", { key: "".concat(item.label, "_").concat(index) },
17
+ react_1.default.createElement(Link_1.Link, { to: item.link }, item.label))); })));
18
+ }
19
+ exports.MobileNavbarDropdown = MobileNavbarDropdown;
20
+ exports.MobileDropdownWrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n padding: 0 15px;\n width: max-content;\n transition: all 0.2s ease-in-out;\n overflow: hidden;\n box-shadow: var(--navbar-dropdown-shadow);\n & > div {\n padding: 10px 0;\n cursor: pointer;\n a {\n color: var(--navbar-text-color);\n text-decoration: none;\n }\n }\n"], ["\n padding: 0 15px;\n width: max-content;\n transition: all 0.2s ease-in-out;\n overflow: hidden;\n box-shadow: var(--navbar-dropdown-shadow);\n & > div {\n padding: 10px 0;\n cursor: pointer;\n a {\n color: var(--navbar-text-color);\n text-decoration: none;\n }\n }\n"])));
21
+ var templateObject_1;
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ import type { ResolvedNavItem } from '@theme/types/portal';
3
+ import { Link } from '../mocks/Link';
4
+ export interface NavbarItemProps {
5
+ navItem: ResolvedNavItem;
6
+ className?: string;
7
+ }
8
+ export declare function MobileNavbarItem({ navItem, className }: NavbarItemProps): JSX.Element | null;
9
+ export declare const NavMenuItem: import("styled-components").StyledComponent<"li", any, {
10
+ active?: boolean | undefined;
11
+ }, never>;
12
+ export declare const NavMenuItemWithDropdownWrapper: import("styled-components").StyledComponent<"div", any, {
13
+ expanded: boolean;
14
+ }, never>;
15
+ export declare const NavLink: import("styled-components").StyledComponent<typeof Link, any, {}, never>;
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || function (mod) {
23
+ if (mod && mod.__esModule) return mod;
24
+ var result = {};
25
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
26
+ __setModuleDefault(result, mod);
27
+ return result;
28
+ };
29
+ var __read = (this && this.__read) || function (o, n) {
30
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
31
+ if (!m) return o;
32
+ var i = m.call(o), r, ar = [], e;
33
+ try {
34
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
35
+ }
36
+ catch (error) { e = { error: error }; }
37
+ finally {
38
+ try {
39
+ if (r && !r.done && (m = i["return"])) m.call(i);
40
+ }
41
+ finally { if (e) throw e.error; }
42
+ }
43
+ return ar;
44
+ };
45
+ var __importDefault = (this && this.__importDefault) || function (mod) {
46
+ return (mod && mod.__esModule) ? mod : { "default": mod };
47
+ };
48
+ Object.defineProperty(exports, "__esModule", { value: true });
49
+ exports.NavLink = exports.NavMenuItemWithDropdownWrapper = exports.NavMenuItem = exports.MobileNavbarItem = void 0;
50
+ var react_1 = __importStar(require("react"));
51
+ var styled_components_1 = __importDefault(require("styled-components"));
52
+ var react_router_dom_1 = require("react-router-dom");
53
+ var Link_1 = require("../mocks/Link");
54
+ var utils_1 = require("../mocks/utils");
55
+ var MobileNavbarDropdown_1 = require("../Navbar/MobileNavbarDropdown");
56
+ function MobileNavbarItem(_a) {
57
+ var navItem = _a.navItem, className = _a.className;
58
+ var pathname = (0, react_router_dom_1.useLocation)().pathname;
59
+ var _b = __read((0, react_1.useState)(false), 2), expandedDropdown = _b[0], setExpandedDropdown = _b[1];
60
+ var toggleDropdown = function () { return setExpandedDropdown(!expandedDropdown); };
61
+ if (navItem.link) {
62
+ var item = navItem;
63
+ var isActive = pathname === (0, utils_1.withPathPrefix)(item.link);
64
+ return (react_1.default.createElement(exports.NavMenuItem, { active: isActive, "data-component-name": "Navbar/MobileNavbarItem", className: className },
65
+ react_1.default.createElement(exports.NavLink, { to: item.link, active: isActive },
66
+ react_1.default.createElement(NavLabel, null, item.label))));
67
+ }
68
+ if (navItem.items) {
69
+ var item = navItem;
70
+ return (react_1.default.createElement(exports.NavMenuItemWithDropdownWrapper, { expanded: expandedDropdown },
71
+ react_1.default.createElement(exports.NavMenuItem, { active: false, onClick: toggleDropdown, "data-component-name": "Navbar/MobileNavbarItem", className: className },
72
+ react_1.default.createElement(NavLabel, null, item.label),
73
+ react_1.default.createElement(ExpandedArrow, null)),
74
+ react_1.default.createElement(MobileNavbarDropdown_1.MobileNavbarDropdown, { items: item.items })));
75
+ }
76
+ return null;
77
+ }
78
+ exports.MobileNavbarItem = MobileNavbarItem;
79
+ var ExpandedArrow = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n width: 5px;\n height: 5px;\n border: 1px solid;\n border-left: none;\n border-top: none;\n transition: all 0.3s ease-out;\n"], ["\n width: 5px;\n height: 5px;\n border: 1px solid;\n border-left: none;\n border-top: none;\n transition: all 0.3s ease-out;\n"])));
80
+ exports.NavMenuItem = styled_components_1.default.li(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: calc(var(--sidebar-spacing-horizontal) * 2);\n text-align: left;\n line-height: 1;\n font-size: var(--navbar-item-font-size);\n margin-left: var(--navbar-item-margin-horizontal);\n margin-right: var(--navbar-item-margin-horizontal);\n font-weight: var(--navbar-item-font-weight);\n background: ", ";\n &:not(:last-child) {\n border-bottom: 1px solid var(--navbar-item-separator-line-color, #dadada);\n }\n"], ["\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: calc(var(--sidebar-spacing-horizontal) * 2);\n text-align: left;\n line-height: 1;\n font-size: var(--navbar-item-font-size);\n margin-left: var(--navbar-item-margin-horizontal);\n margin-right: var(--navbar-item-margin-horizontal);\n font-weight: var(--navbar-item-font-weight);\n background: ", ";\n &:not(:last-child) {\n border-bottom: 1px solid var(--navbar-item-separator-line-color, #dadada);\n }\n"])), function (_a) {
81
+ var active = _a.active;
82
+ return (active ? 'var(--navbar-item-active-background-color)' : 'none');
83
+ });
84
+ exports.NavMenuItemWithDropdownWrapper = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: inline-block;\n position: relative;\n border-bottom: 1px solid var(--navbar-item-separator-line-color, #dadada);\n\n ", " {\n transform: rotate(", "45deg);\n }\n\n ", " {\n height: ", ";\n opacity: ", ";\n }\n\n ", " {\n border-bottom: none;\n }\n"], ["\n display: inline-block;\n position: relative;\n border-bottom: 1px solid var(--navbar-item-separator-line-color, #dadada);\n\n ", " {\n transform: rotate(", "45deg);\n }\n\n ", " {\n height: ", ";\n opacity: ", ";\n }\n\n ", " {\n border-bottom: none;\n }\n"])), ExpandedArrow, function (_a) {
85
+ var expanded = _a.expanded;
86
+ return (expanded ? '' : '-');
87
+ }, MobileNavbarDropdown_1.MobileDropdownWrapper, function (_a) {
88
+ var expanded = _a.expanded;
89
+ return (expanded ? '100%' : '0');
90
+ }, function (_a) {
91
+ var expanded = _a.expanded;
92
+ return (expanded ? '1' : '0');
93
+ }, exports.NavMenuItem);
94
+ exports.NavLink = (0, styled_components_1.default)(Link_1.Link)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n color: ", ";\n text-decoration: ", ";\n"], ["\n color: ", ";\n text-decoration: ", ";\n"])), function (_a) {
95
+ var active = _a.active;
96
+ return active ? 'var(--navbar-item-active-text-color)' : 'var(--navbar-text-color)';
97
+ }, function (_a) {
98
+ var active = _a.active;
99
+ return active ? 'var(--navbar-item-active-text-decoration)' : 'none';
100
+ });
101
+ var NavLabel = styled_components_1.default.span(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n cursor: pointer;\n vertical-align: middle;\n"], ["\n cursor: pointer;\n vertical-align: middle;\n"])));
102
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import type { ResolvedConfigLinks } from '@theme/types/portal';
3
+ export declare function MobileNavbarMenu({ menuItems, closeMenu, }: {
4
+ menuItems: ResolvedConfigLinks;
5
+ closeMenu: () => void;
6
+ }): JSX.Element | null;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.MobileNavbarMenu = void 0;
11
+ var react_1 = __importDefault(require("react"));
12
+ var styled_components_1 = __importDefault(require("styled-components"));
13
+ var NavbarItem_1 = require("../Navbar/NavbarItem");
14
+ var MobileNavbarItem_1 = require("../Navbar/MobileNavbarItem");
15
+ var NavbarDropdown_1 = require("../Navbar/NavbarDropdown");
16
+ var utils_1 = require("../utils");
17
+ function MobileNavbarMenu(_a) {
18
+ var menuItems = _a.menuItems, closeMenu = _a.closeMenu;
19
+ if ((0, utils_1.isPrimitive)(menuItems) || (0, utils_1.isEmptyArray)(menuItems)) {
20
+ return null;
21
+ }
22
+ return (react_1.default.createElement(NavItemsWrapper, { "data-component-name": "Navbar/MobileNavbarMenu" },
23
+ react_1.default.createElement(NavItemsContainer, null, menuItems.map(function (navItem, index) {
24
+ return (react_1.default.createElement(MobileNavbarItem_1.MobileNavbarItem, { key: "".concat(navItem.label, "_").concat(index), "data-cy": navItem.label, navItem: navItem }));
25
+ })),
26
+ react_1.default.createElement(NavItemsClosableArea, { onClick: closeMenu })));
27
+ }
28
+ exports.MobileNavbarMenu = MobileNavbarMenu;
29
+ var NavItemsWrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n height: 100%;\n width: 100%;\n position: fixed;\n z-index: 201; //more than Search\n left: 0;\n top: 0;\n overflow-x: hidden;\n transition: 0.5s;\n display: flex;\n ", " {\n & > div {\n text-align: center;\n padding: 10px 0;\n cursor: pointer;\n a {\n color: var(--navbar-text-color);\n text-decoration: none;\n }\n :hover {\n text-decoration: underline;\n }\n }\n }\n"], ["\n height: 100%;\n width: 100%;\n position: fixed;\n z-index: 201; //more than Search\n left: 0;\n top: 0;\n overflow-x: hidden;\n transition: 0.5s;\n display: flex;\n ", " {\n & > div {\n text-align: center;\n padding: 10px 0;\n cursor: pointer;\n a {\n color: var(--navbar-text-color);\n text-decoration: none;\n }\n :hover {\n text-decoration: underline;\n }\n }\n }\n"])), NavbarDropdown_1.DropdownWrapper);
30
+ var NavItemsClosableArea = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n flex: 1;\n min-width: 50px;\n height: 100%;\n background-color: rgba(255, 255, 255, 0.4);\n"], ["\n display: flex;\n flex: 1;\n min-width: 50px;\n height: 100%;\n background-color: rgba(255, 255, 255, 0.4);\n"])));
31
+ var NavItemsContainer = styled_components_1.default.ul(templateObject_3 || (templateObject_3 = __makeTemplateObject([" \n width: 70%;\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n background: var(--navbar-background-color);\n\n ", " { \n &:not(:last-child){\n border-bottom: 1px solid var(--navbar-item-separator-line-color, #dadada);\n }\n border-radius: 0;\n padding: 1em 0;\n width: 100%; \n }\n \n ", " {\n display: block;\n &:not(:last-child){\n border-bottom: 1px solid var(--navbar-item-separator-line-color, #dadada);\n border-radius: 0;\n }\n ", " {\n border-bottom: none;\n }\n ", " {\n background-color: var(--navbar-background-color); \n width: 100%;\n padding: 0;\n position: relative;\n }\n"], [" \n width: 70%;\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n background: var(--navbar-background-color);\n\n ", " { \n &:not(:last-child){\n border-bottom: 1px solid var(--navbar-item-separator-line-color, #dadada);\n }\n border-radius: 0;\n padding: 1em 0;\n width: 100%; \n }\n \n ", " {\n display: block;\n &:not(:last-child){\n border-bottom: 1px solid var(--navbar-item-separator-line-color, #dadada);\n border-radius: 0;\n }\n ", " {\n border-bottom: none;\n }\n ", " {\n background-color: var(--navbar-background-color); \n width: 100%;\n padding: 0;\n position: relative;\n }\n"])), NavbarItem_1.NavMenuItem, NavbarItem_1.NavMenuItemWithDropdownWrapper, NavbarItem_1.NavMenuItem, NavbarDropdown_1.DropdownWrapper);
32
+ var templateObject_1, templateObject_2, templateObject_3;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ export declare const MobileNavbarMenuButton: import("styled-components").StyledComponent<({ onClick, className }: import("../ui/Burger").BurgerProps) => JSX.Element, any, {
3
+ 'data-component-name': string;
4
+ }, "data-component-name">;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.MobileNavbarMenuButton = void 0;
11
+ var styled_components_1 = __importDefault(require("styled-components"));
12
+ var Burger_1 = require("../ui/Burger");
13
+ exports.MobileNavbarMenuButton = (0, styled_components_1.default)(Burger_1.Burger).attrs(function () { return ({
14
+ 'data-component-name': 'Navbar/MobileNavbarMenuButton',
15
+ }); })(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: block;\n\n ", " {\n display: none;\n }\n"], ["\n display: block;\n\n ", " {\n display: none;\n }\n"])), function (_a) {
16
+ var theme = _a.theme;
17
+ return theme.mediaQueries.medium;
18
+ });
19
+ var templateObject_1;
package/Navbar/Navbar.js CHANGED
@@ -3,6 +3,22 @@ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cook
3
3
  if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
4
  return cooked;
5
5
  };
6
+ var __read = (this && this.__read) || function (o, n) {
7
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
8
+ if (!m) return o;
9
+ var i = m.call(o), r, ar = [], e;
10
+ try {
11
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
12
+ }
13
+ catch (error) { e = { error: error }; }
14
+ finally {
15
+ try {
16
+ if (r && !r.done && (m = i["return"])) m.call(i);
17
+ }
18
+ finally { if (e) throw e.error; }
19
+ }
20
+ return ar;
21
+ };
6
22
  var __importDefault = (this && this.__importDefault) || function (mod) {
7
23
  return (mod && mod.__esModule) ? mod : { "default": mod };
8
24
  };
@@ -13,16 +29,22 @@ var styled_components_1 = __importDefault(require("styled-components"));
13
29
  var hooks_1 = require("../mocks/hooks");
14
30
  var constants_1 = require("../mocks/constants");
15
31
  var Navbar_1 = require("../Navbar");
32
+ var useMobileMenu_1 = require("../hooks/useMobileMenu");
33
+ var MobileNavbarMenuButton_1 = require("../Navbar/MobileNavbarMenuButton");
34
+ var MobileNavbarMenu_1 = require("../Navbar/MobileNavbarMenu");
16
35
  function Navbar(_a) {
17
- var _b;
18
36
  var menu = _a.menu, logo = _a.logo, search = _a.search;
19
- var settings = (0, hooks_1.useThemeSettings)(constants_1.DEFAULT_THEME_NAME);
20
- var searchSettings = settings.search;
37
+ var _b = __read((0, useMobileMenu_1.useMobileMenu)(false), 2), isOpen = _b[0], setIsOpen = _b[1];
38
+ var _c = (0, hooks_1.useThemeSettings)(constants_1.DEFAULT_THEME_NAME), searchSettings = _c.search, navbar = _c.navbar;
21
39
  var hideSearch = (searchSettings === null || searchSettings === void 0 ? void 0 : searchSettings.hide) || ((searchSettings === null || searchSettings === void 0 ? void 0 : searchSettings.placement) && (searchSettings === null || searchSettings === void 0 ? void 0 : searchSettings.placement) !== 'navbar');
22
- if ((_b = settings === null || settings === void 0 ? void 0 : settings.navbar) === null || _b === void 0 ? void 0 : _b.hide) {
40
+ if (navbar === null || navbar === void 0 ? void 0 : navbar.hide) {
23
41
  return null;
24
42
  }
43
+ var openMobileMenu = function () { return setIsOpen(true); };
44
+ var closeMobileMenu = function () { return setIsOpen(false); };
25
45
  return (react_1.default.createElement(exports.NavbarContainer, { "data-component-name": "Navbar/Navbar" },
46
+ react_1.default.createElement(MobileNavbarMenuButton_1.MobileNavbarMenuButton, { onClick: openMobileMenu }),
47
+ isOpen && react_1.default.createElement(MobileNavbarMenu_1.MobileNavbarMenu, { closeMenu: closeMobileMenu, menuItems: menu }),
26
48
  logo,
27
49
  react_1.default.createElement(Navbar_1.NavbarMenu, { menuItems: menu }),
28
50
  hideSearch ? null : search));
@@ -17,5 +17,5 @@ function NavbarDropdown(_a) {
17
17
  react_1.default.createElement(Link_1.Link, { to: item.link }, item.label))); })));
18
18
  }
19
19
  exports.NavbarDropdown = NavbarDropdown;
20
- exports.DropdownWrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: none;\n position: absolute;\n background: var(--navbar-item-active-background-color);\n border-radius: var(--navbar-item-border-radius);\n padding: 10px 15px;\n width: max-content;\n line-height: 1rem;\n box-shadow: var(--navbar-dropdown-shadow);\n & > div {\n text-align: left;\n padding: 10px 0px;\n cursor: pointer;\n a {\n color: var(--navbar-text-color);\n text-decoration: none;\n }\n :hover {\n text-decoration: underline;\n }\n }\n"], ["\n display: none;\n position: absolute;\n background: var(--navbar-item-active-background-color);\n border-radius: var(--navbar-item-border-radius);\n padding: 10px 15px;\n width: max-content;\n line-height: 1rem;\n box-shadow: var(--navbar-dropdown-shadow);\n & > div {\n text-align: left;\n padding: 10px 0px;\n cursor: pointer;\n a {\n color: var(--navbar-text-color);\n text-decoration: none;\n }\n :hover {\n text-decoration: underline;\n }\n }\n"])));
20
+ exports.DropdownWrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: none;\n position: absolute;\n background: var(--navbar-item-active-background-color);\n border-radius: var(--navbar-item-border-radius);\n padding: 10px 15px;\n width: max-content;\n line-height: 1rem;\n box-shadow: var(--navbar-dropdown-shadow);\n & > div {\n text-align: left;\n padding: 10px 0;\n cursor: pointer;\n a {\n color: var(--navbar-text-color);\n text-decoration: none;\n }\n :hover {\n text-decoration: underline;\n }\n }\n"], ["\n display: none;\n position: absolute;\n background: var(--navbar-item-active-background-color);\n border-radius: var(--navbar-item-border-radius);\n padding: 10px 15px;\n width: max-content;\n line-height: 1rem;\n box-shadow: var(--navbar-dropdown-shadow);\n & > div {\n text-align: left;\n padding: 10px 0;\n cursor: pointer;\n a {\n color: var(--navbar-text-color);\n text-decoration: none;\n }\n :hover {\n text-decoration: underline;\n }\n }\n"])));
21
21
  var templateObject_1;
@@ -1,7 +1,13 @@
1
1
  /// <reference types="react" />
2
2
  import type { ResolvedNavItem } from '@theme/types/portal';
3
- interface NavbarItemProps {
3
+ import { Link } from '../mocks/Link';
4
+ export interface NavbarItemProps {
4
5
  navItem: ResolvedNavItem;
6
+ className?: string;
5
7
  }
6
- export declare function NavbarItem({ navItem }: NavbarItemProps): JSX.Element | null;
7
- export {};
8
+ export declare function NavbarItem({ navItem, className }: NavbarItemProps): JSX.Element | null;
9
+ export declare const NavMenuItemWithDropdownWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
10
+ export declare const NavMenuItem: import("styled-components").StyledComponent<"li", any, {
11
+ active?: boolean | undefined;
12
+ }, never>;
13
+ export declare const NavLink: import("styled-components").StyledComponent<typeof Link, any, {}, never>;
@@ -7,7 +7,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
7
7
  return (mod && mod.__esModule) ? mod : { "default": mod };
8
8
  };
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.NavbarItem = void 0;
10
+ exports.NavLink = exports.NavMenuItem = exports.NavMenuItemWithDropdownWrapper = exports.NavbarItem = void 0;
11
11
  var react_1 = __importDefault(require("react"));
12
12
  var styled_components_1 = __importDefault(require("styled-components"));
13
13
  var react_router_dom_1 = require("react-router-dom");
@@ -15,31 +15,31 @@ var Link_1 = require("../mocks/Link");
15
15
  var utils_1 = require("../mocks/utils");
16
16
  var NavbarDropdown_1 = require("../Navbar/NavbarDropdown");
17
17
  function NavbarItem(_a) {
18
- var navItem = _a.navItem;
18
+ var navItem = _a.navItem, className = _a.className;
19
19
  var pathname = (0, react_router_dom_1.useLocation)().pathname;
20
20
  if (navItem.link) {
21
21
  var item = navItem;
22
22
  var isActive = pathname === (0, utils_1.withPathPrefix)(item.link);
23
- return (react_1.default.createElement(NavMenuItem, { active: isActive, "data-component-name": "Navbar/NavbarItem" },
24
- react_1.default.createElement(NavLink, { to: item.link, active: isActive },
23
+ return (react_1.default.createElement(exports.NavMenuItem, { active: isActive, "data-component-name": "Navbar/NavbarItem", className: className },
24
+ react_1.default.createElement(exports.NavLink, { to: item.link, active: isActive },
25
25
  react_1.default.createElement(NavLabel, null, item.label))));
26
26
  }
27
27
  if (navItem.items) {
28
28
  var item = navItem;
29
- return (react_1.default.createElement(NavMenuItemWithDropdownWrapper, null,
30
- react_1.default.createElement(NavMenuItem, { active: false, "data-component-name": "Navbar/NavbarItem" },
29
+ return (react_1.default.createElement(exports.NavMenuItemWithDropdownWrapper, null,
30
+ react_1.default.createElement(exports.NavMenuItem, { active: false, "data-component-name": "Navbar/NavbarItem", className: className },
31
31
  react_1.default.createElement(NavLabel, null, item.label)),
32
32
  react_1.default.createElement(NavbarDropdown_1.NavbarDropdown, { items: item.items })));
33
33
  }
34
34
  return null;
35
35
  }
36
36
  exports.NavbarItem = NavbarItem;
37
- var NavMenuItemWithDropdownWrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: inline-block;\n position: relative;\n border-radius: var(--navbar-item-border-radius);\n &:hover {\n background: var(--navbar-item-active-background-color);\n ", " {\n display: block;\n }\n }\n"], ["\n display: inline-block;\n position: relative;\n border-radius: var(--navbar-item-border-radius);\n &:hover {\n background: var(--navbar-item-active-background-color);\n ", " {\n display: block;\n }\n }\n"])), NavbarDropdown_1.DropdownWrapper);
38
- var NavMenuItem = styled_components_1.default.li(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: inline-block;\n padding: 20px calc(var(--sidebar-spacing-horizontal) * 2);\n text-align: center;\n line-height: 1;\n font-size: var(--navbar-item-font-size);\n margin-left: var(--navbar-item-margin-horizontal);\n margin-right: var(--navbar-item-margin-horizontal);\n border-radius: var(--navbar-item-border-radius);\n font-weight: var(--navbar-item-font-weight);\n background: ", ";\n"], ["\n display: inline-block;\n padding: 20px calc(var(--sidebar-spacing-horizontal) * 2);\n text-align: center;\n line-height: 1;\n font-size: var(--navbar-item-font-size);\n margin-left: var(--navbar-item-margin-horizontal);\n margin-right: var(--navbar-item-margin-horizontal);\n border-radius: var(--navbar-item-border-radius);\n font-weight: var(--navbar-item-font-weight);\n background: ", ";\n"])), function (_a) {
37
+ exports.NavMenuItemWithDropdownWrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: inline-block;\n position: relative;\n border-radius: var(--navbar-item-border-radius);\n &:hover {\n background: var(--navbar-item-active-background-color);\n ", " {\n display: block;\n }\n }\n"], ["\n display: inline-block;\n position: relative;\n border-radius: var(--navbar-item-border-radius);\n &:hover {\n background: var(--navbar-item-active-background-color);\n ", " {\n display: block;\n }\n }\n"])), NavbarDropdown_1.DropdownWrapper);
38
+ exports.NavMenuItem = styled_components_1.default.li(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: inline-block;\n padding: 8px calc(var(--sidebar-spacing-horizontal) * 2);\n text-align: center;\n line-height: 1;\n font-size: var(--navbar-item-font-size);\n margin-left: var(--navbar-item-margin-horizontal);\n margin-right: var(--navbar-item-margin-horizontal);\n border-radius: var(--navbar-item-border-radius);\n font-weight: var(--navbar-item-font-weight);\n background: ", ";\n"], ["\n display: inline-block;\n padding: 8px calc(var(--sidebar-spacing-horizontal) * 2);\n text-align: center;\n line-height: 1;\n font-size: var(--navbar-item-font-size);\n margin-left: var(--navbar-item-margin-horizontal);\n margin-right: var(--navbar-item-margin-horizontal);\n border-radius: var(--navbar-item-border-radius);\n font-weight: var(--navbar-item-font-weight);\n background: ", ";\n"])), function (_a) {
39
39
  var active = _a.active;
40
40
  return (active ? 'var(--navbar-item-active-background-color)' : 'none');
41
41
  });
42
- var NavLink = (0, styled_components_1.default)(Link_1.Link)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n color: ", ";\n text-decoration: ", ";\n"], ["\n color: ", ";\n text-decoration: ", ";\n"])), function (_a) {
42
+ exports.NavLink = (0, styled_components_1.default)(Link_1.Link)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n color: ", ";\n text-decoration: ", ";\n"], ["\n color: ", ";\n text-decoration: ", ";\n"])), function (_a) {
43
43
  var active = _a.active;
44
44
  return active ? 'var(--navbar-item-active-text-color)' : 'var(--navbar-text-color)';
45
45
  }, function (_a) {
@@ -11,9 +11,10 @@ exports.NavbarMenu = void 0;
11
11
  var react_1 = __importDefault(require("react"));
12
12
  var styled_components_1 = __importDefault(require("styled-components"));
13
13
  var NavbarItem_1 = require("../Navbar/NavbarItem");
14
+ var utils_1 = require("../utils");
14
15
  function NavbarMenu(_a) {
15
16
  var menuItems = _a.menuItems;
16
- if (!(menuItems === null || menuItems === void 0 ? void 0 : menuItems.length)) {
17
+ if ((0, utils_1.isPrimitive)(menuItems) || (0, utils_1.isEmptyArray)(menuItems)) {
17
18
  return null;
18
19
  }
19
20
  return (react_1.default.createElement(NavItemsContainer, { "data-component-name": "Navbar/NavbarMenu" }, menuItems.map(function (navItem, index) {
@@ -21,7 +22,7 @@ function NavbarMenu(_a) {
21
22
  })));
22
23
  }
23
24
  exports.NavbarMenu = NavbarMenu;
24
- var NavItemsContainer = styled_components_1.default.ul(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n list-style: none;\n margin: 0;\n padding: 0;\n display: block;\n\n ", " {\n display: block;\n }\n"], ["\n list-style: none;\n margin: 0;\n padding: 0;\n display: block;\n\n ", " {\n display: block;\n }\n"])), function (_a) {
25
+ var NavItemsContainer = styled_components_1.default.ul(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n list-style: none;\n margin: 0 7px;\n padding: 0;\n display: none;\n flex-wrap: nowrap;\n align-items: center;\n justify-content: flex-end;\n flex: 1;\n\n ", " {\n display: flex;\n }\n"], ["\n list-style: none;\n margin: 0 7px;\n padding: 0;\n display: none;\n flex-wrap: nowrap;\n align-items: center;\n justify-content: flex-end;\n flex: 1;\n\n ", " {\n display: flex;\n }\n"])), function (_a) {
25
26
  var theme = _a.theme;
26
27
  return theme.mediaQueries.medium;
27
28
  });
@@ -1,21 +1,28 @@
1
1
  "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
2
6
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
7
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
8
  };
5
9
  Object.defineProperty(exports, "__esModule", { value: true });
6
10
  exports.NextPageLink = void 0;
7
11
  var react_1 = __importDefault(require("react"));
12
+ var styled_components_1 = __importDefault(require("styled-components"));
8
13
  var hooks_1 = require("../mocks/hooks");
9
14
  var constants_1 = require("../mocks/constants");
10
15
  var Button_1 = require("../Button/Button");
11
16
  function NextPageLink() {
12
- var _a, _b, _c;
17
+ var _a;
13
18
  var nextPage = ((0, hooks_1.useSidebarSiblingsData)() || {}).nextPage;
14
- var themeSettings = (0, hooks_1.useThemeSettings)(constants_1.DEFAULT_THEME_NAME).themeSettings;
15
- if (!nextPage || ((_a = themeSettings === null || themeSettings === void 0 ? void 0 : themeSettings.navigation) === null || _a === void 0 ? void 0 : _a.hide)) {
19
+ var navigation = (0, hooks_1.useThemeSettings)(constants_1.DEFAULT_THEME_NAME).navigation;
20
+ if (!nextPage || (navigation === null || navigation === void 0 ? void 0 : navigation.hide)) {
16
21
  return react_1.default.createElement("div", null, "\u00A0");
17
22
  }
18
- var label = ((_c = (_b = themeSettings === null || themeSettings === void 0 ? void 0 : themeSettings.navigation) === null || _b === void 0 ? void 0 : _b.nextPageLink) === null || _c === void 0 ? void 0 : _c.label) || "Next to ".concat(nextPage.label);
19
- return (react_1.default.createElement(Button_1.Button, { variant: "outlined", size: "large", to: nextPage.link, "data-component-name": "PageNavigation/NextPageLink" }, label));
23
+ var label = ((_a = navigation === null || navigation === void 0 ? void 0 : navigation.nextPageLink) === null || _a === void 0 ? void 0 : _a.label) || "Next to ".concat(nextPage.label);
24
+ return (react_1.default.createElement(StyledButton, { variant: "outlined", size: "large", to: nextPage.link, "data-component-name": "PageNavigation/NextPageLink" }, label));
20
25
  }
21
26
  exports.NextPageLink = NextPageLink;
27
+ var StyledButton = (0, styled_components_1.default)(Button_1.Button)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n font-family: var(--font-family-base);\n"], ["\n font-family: var(--font-family-base);\n"])));
28
+ var templateObject_1;
@@ -1,21 +1,28 @@
1
1
  "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
2
6
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
7
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
8
  };
5
9
  Object.defineProperty(exports, "__esModule", { value: true });
6
10
  exports.PreviousPageLink = void 0;
7
11
  var react_1 = __importDefault(require("react"));
12
+ var styled_components_1 = __importDefault(require("styled-components"));
8
13
  var hooks_1 = require("../mocks/hooks");
9
14
  var constants_1 = require("../mocks/constants");
10
15
  var Button_1 = require("../Button/Button");
11
16
  function PreviousPageLink() {
12
- var _a, _b, _c;
17
+ var _a;
13
18
  var prevPage = ((0, hooks_1.useSidebarSiblingsData)() || {}).prevPage;
14
- var themeSettings = (0, hooks_1.useThemeSettings)(constants_1.DEFAULT_THEME_NAME).themeSettings;
15
- if (!prevPage || ((_a = themeSettings === null || themeSettings === void 0 ? void 0 : themeSettings.navigation) === null || _a === void 0 ? void 0 : _a.hide)) {
19
+ var navigation = (0, hooks_1.useThemeSettings)(constants_1.DEFAULT_THEME_NAME).navigation;
20
+ if (!prevPage || (navigation === null || navigation === void 0 ? void 0 : navigation.hide)) {
16
21
  return react_1.default.createElement("div", null, "\u00A0");
17
22
  }
18
- var label = ((_c = (_b = themeSettings === null || themeSettings === void 0 ? void 0 : themeSettings.navigation) === null || _b === void 0 ? void 0 : _b.nextPageLink) === null || _c === void 0 ? void 0 : _c.label) || "Back to ".concat(prevPage.label);
19
- return (react_1.default.createElement(Button_1.Button, { variant: "outlined", size: "large", to: prevPage.link, "data-component-name": "PageNavigation/PreviousPageLink" }, label));
23
+ var label = ((_a = navigation === null || navigation === void 0 ? void 0 : navigation.nextPageLink) === null || _a === void 0 ? void 0 : _a.label) || "Back to ".concat(prevPage.label);
24
+ return (react_1.default.createElement(StyledButton, { variant: "outlined", size: "large", to: prevPage.link, "data-component-name": "PageNavigation/PreviousPageLink" }, label));
20
25
  }
21
26
  exports.PreviousPageLink = PreviousPageLink;
27
+ var StyledButton = (0, styled_components_1.default)(Button_1.Button)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n font-family: var(--font-family-base);\n"], ["\n font-family: var(--font-family-base);\n"])));
28
+ var templateObject_1;
@@ -26,6 +26,22 @@ var __importStar = (this && this.__importStar) || function (mod) {
26
26
  __setModuleDefault(result, mod);
27
27
  return result;
28
28
  };
29
+ var __read = (this && this.__read) || function (o, n) {
30
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
31
+ if (!m) return o;
32
+ var i = m.call(o), r, ar = [], e;
33
+ try {
34
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
35
+ }
36
+ catch (error) { e = { error: error }; }
37
+ finally {
38
+ try {
39
+ if (r && !r.done && (m = i["return"])) m.call(i);
40
+ }
41
+ finally { if (e) throw e.error; }
42
+ }
43
+ return ar;
44
+ };
29
45
  var __importDefault = (this && this.__importDefault) || function (mod) {
30
46
  return (mod && mod.__esModule) ? mod : { "default": mod };
31
47
  };
@@ -39,8 +55,8 @@ var PanelHeader_1 = require("../Panel/PanelHeader");
39
55
  var PanelHeaderTitle_1 = require("../Panel/PanelHeaderTitle");
40
56
  function PanelComponent(_a) {
41
57
  var _b = _a.expanded, expanded = _b === void 0 ? true : _b, header = _a.header, className = _a.className, children = _a.children, onToggle = _a.onToggle;
42
- var _c = (0, react_1.useState)(expanded), isExpanded = _c[0], setExpanded = _c[1];
43
- var _d = (0, react_1.useState)(false), animate = _d[0], setAnimate = _d[1];
58
+ var _c = __read((0, react_1.useState)(expanded), 2), isExpanded = _c[0], setExpanded = _c[1];
59
+ var _d = __read((0, react_1.useState)(false), 2), animate = _d[0], setAnimate = _d[1];
44
60
  var toggle = function (_a) {
45
61
  var target = _a.target;
46
62
  if (target instanceof HTMLAnchorElement)
@@ -37,6 +37,22 @@ var __importStar = (this && this.__importStar) || function (mod) {
37
37
  __setModuleDefault(result, mod);
38
38
  return result;
39
39
  };
40
+ var __read = (this && this.__read) || function (o, n) {
41
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
42
+ if (!m) return o;
43
+ var i = m.call(o), r, ar = [], e;
44
+ try {
45
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
46
+ }
47
+ catch (error) { e = { error: error }; }
48
+ finally {
49
+ try {
50
+ if (r && !r.done && (m = i["return"])) m.call(i);
51
+ }
52
+ finally { if (e) throw e.error; }
53
+ }
54
+ return ar;
55
+ };
40
56
  var __importDefault = (this && this.__importDefault) || function (mod) {
41
57
  return (mod && mod.__esModule) ? mod : { "default": mod };
42
58
  };
@@ -50,8 +66,8 @@ var Popover_1 = require("../Search/Popover");
50
66
  function Autocomplete(_a) {
51
67
  var placeholder = _a.placeholder, value = _a.value, items = _a.items, change = _a.change, select = _a.select, renderItem = _a.renderItem, children = _a.children;
52
68
  var location = (0, react_router_dom_1.useLocation)();
53
- var _b = (0, react_1.useState)(false), isOpen = _b[0], setIsOpen = _b[1];
54
- var _c = (0, react_1.useState)(-1), activeIdx = _c[0], setActiveIdx = _c[1];
69
+ var _b = __read((0, react_1.useState)(false), 2), isOpen = _b[0], setIsOpen = _b[1];
70
+ var _c = __read((0, react_1.useState)(-1), 2), activeIdx = _c[0], setActiveIdx = _c[1];
55
71
  var open = function () { return setIsOpen(true); };
56
72
  var close = function () {
57
73
  setIsOpen(false);
package/Search/utils.js CHANGED
@@ -26,6 +26,22 @@ var __importStar = (this && this.__importStar) || function (mod) {
26
26
  __setModuleDefault(result, mod);
27
27
  return result;
28
28
  };
29
+ var __read = (this && this.__read) || function (o, n) {
30
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
31
+ if (!m) return o;
32
+ var i = m.call(o), r, ar = [], e;
33
+ try {
34
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
35
+ }
36
+ catch (error) { e = { error: error }; }
37
+ finally {
38
+ try {
39
+ if (r && !r.done && (m = i["return"])) m.call(i);
40
+ }
41
+ finally { if (e) throw e.error; }
42
+ }
43
+ return ar;
44
+ };
29
45
  var __importDefault = (this && this.__importDefault) || function (mod) {
30
46
  return (mod && mod.__esModule) ? mod : { "default": mod };
31
47
  };
@@ -36,7 +52,7 @@ var styled_components_1 = __importDefault(require("styled-components"));
36
52
  var highlight = function (text) {
37
53
  if (!Array.isArray(text))
38
54
  return text;
39
- var pre = text[0], entry = text[1], suf = text[2];
55
+ var _a = __read(text, 3), pre = _a[0], entry = _a[1], suf = _a[2];
40
56
  return (React.createElement(React.Fragment, null,
41
57
  pre,
42
58
  React.createElement(Strong, null, entry),
@@ -3,6 +3,22 @@ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cook
3
3
  if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
4
  return cooked;
5
5
  };
6
+ var __read = (this && this.__read) || function (o, n) {
7
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
8
+ if (!m) return o;
9
+ var i = m.call(o), r, ar = [], e;
10
+ try {
11
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
12
+ }
13
+ catch (error) { e = { error: error }; }
14
+ finally {
15
+ try {
16
+ if (r && !r.done && (m = i["return"])) m.call(i);
17
+ }
18
+ finally { if (e) throw e.error; }
19
+ }
20
+ return ar;
21
+ };
6
22
  var __importDefault = (this && this.__importDefault) || function (mod) {
7
23
  return (mod && mod.__esModule) ? mod : { "default": mod };
8
24
  };
@@ -19,7 +35,7 @@ var constants_1 = require("../mocks/constants");
19
35
  var SidebarSearch_1 = require("../Search/SidebarSearch");
20
36
  function SidebarLayout(_a) {
21
37
  var versions = _a.versions, menu = _a.menu;
22
- var _b = (0, useMobileMenu_1.useMobileMenu)(), isOpen = _b[0], setIsOpen = _b[1];
38
+ var _b = __read((0, useMobileMenu_1.useMobileMenu)(), 2), isOpen = _b[0], setIsOpen = _b[1];
23
39
  var toggleMenu = function () { return setIsOpen(!isOpen); };
24
40
  var _c = (0, hooks_1.useThemeSettings)(constants_1.DEFAULT_THEME_NAME), search = _c.search, sidebar = _c.sidebar;
25
41
  if (sidebar === null || sidebar === void 0 ? void 0 : sidebar.hide) {
@@ -1,11 +1,17 @@
1
1
  /// <reference types="react" />
2
- export interface SourceCodeProps {
2
+ interface CommonCodeProps {
3
+ withLineNumbers?: boolean;
4
+ startLineNumber?: number;
5
+ }
6
+ export interface SourceCodeProps extends CommonCodeProps {
3
7
  lang: string;
4
8
  source?: string;
5
9
  externalSource?: ExternalSource;
6
10
  withCopyButton?: boolean;
7
11
  dataTestId?: string;
8
12
  }
13
+ interface CodeProps extends Required<Pick<SourceCodeProps, 'lang' | 'source' | 'dataTestId'>>, CommonCodeProps {
14
+ }
9
15
  export interface Sample {
10
16
  lang: string;
11
17
  label?: string;
@@ -20,5 +26,6 @@ export interface ExternalSource {
20
26
  properties?: any;
21
27
  operation?: any;
22
28
  }
23
- export declare function Code({ source, lang, dataTestId, }: Required<Omit<SourceCodeProps, 'externalSource' | 'withCopyButton'>>): JSX.Element;
24
- export declare function SourceCode({ lang, source, externalSource, withCopyButton, dataTestId, }: SourceCodeProps): JSX.Element;
29
+ export declare function Code({ source, lang, dataTestId, withLineNumbers, startLineNumber, }: CodeProps): JSX.Element;
30
+ export declare function SourceCode({ lang, source, externalSource, withCopyButton, dataTestId, withLineNumbers, startLineNumber, }: SourceCodeProps): JSX.Element;
31
+ export {};