@redocly/theme 0.1.1 → 0.1.4

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 (203) hide show
  1. package/Button/Button.d.ts +17 -0
  2. package/Button/Button.js +34 -0
  3. package/Button/index.d.ts +1 -0
  4. package/Button/index.js +1 -0
  5. package/CodeBlock/CodeBlock.d.ts +1 -0
  6. package/CodeBlock/CodeBlock.js +7 -0
  7. package/CodeBlock/index.d.ts +1 -0
  8. package/CodeBlock/index.js +1 -0
  9. package/CopyButton/CopyButton.d.ts +6 -0
  10. package/CopyButton/CopyButton.js +69 -0
  11. package/CopyButton/CopyButtonWrapper.d.ts +9 -0
  12. package/CopyButton/CopyButtonWrapper.js +37 -0
  13. package/CopyButton/index.d.ts +2 -0
  14. package/CopyButton/index.js +2 -0
  15. package/Headings/Headings.d.ts +3 -0
  16. package/Headings/Headings.js +10 -0
  17. package/Headings/index.d.ts +1 -0
  18. package/Headings/index.js +1 -0
  19. package/JsonViewer/JsonViewer.d.ts +10 -0
  20. package/JsonViewer/JsonViewer.js +92 -0
  21. package/JsonViewer/index.d.ts +1 -0
  22. package/JsonViewer/index.js +1 -0
  23. package/JsonViewer/styled.d.ts +1 -0
  24. package/JsonViewer/styled.js +7 -0
  25. package/Logo/Logo.d.ts +10 -0
  26. package/Logo/Logo.js +25 -0
  27. package/Navbar/Navbar.d.ts +9 -0
  28. package/Navbar/Navbar.js +23 -0
  29. package/Navbar/NavbarItem.d.ts +40 -0
  30. package/Navbar/NavbarItem.js +43 -0
  31. package/Navbar/NavbarMenu.d.ts +4 -0
  32. package/Navbar/NavbarMenu.js +29 -0
  33. package/Panel/CodePanel.d.ts +1 -0
  34. package/Panel/CodePanel.js +13 -0
  35. package/Panel/ContentPanel.d.ts +1 -0
  36. package/Panel/ContentPanel.js +12 -0
  37. package/Panel/DarkHeader.d.ts +1 -0
  38. package/Panel/DarkHeader.js +7 -0
  39. package/Panel/Panel.d.ts +2 -0
  40. package/Panel/Panel.js +10 -0
  41. package/Panel/PanelBody.d.ts +6 -0
  42. package/Panel/PanelBody.js +15 -0
  43. package/Panel/PanelComponent.d.ts +10 -0
  44. package/Panel/PanelComponent.js +40 -0
  45. package/Panel/PanelHeader.d.ts +7 -0
  46. package/Panel/PanelHeader.js +16 -0
  47. package/Panel/PanelHeaderTitle.d.ts +1 -0
  48. package/Panel/PanelHeaderTitle.js +7 -0
  49. package/Panel/index.d.ts +7 -0
  50. package/Panel/index.js +7 -0
  51. package/SamplesPanelControls/SamplesPanelControls.d.ts +4 -0
  52. package/SamplesPanelControls/SamplesPanelControls.js +17 -0
  53. package/SamplesPanelControls/index.d.ts +1 -0
  54. package/SamplesPanelControls/index.js +1 -0
  55. package/SidebarLogo/SidebarLogo.d.ts +9 -0
  56. package/SidebarLogo/SidebarLogo.js +29 -0
  57. package/SidebarLogo/index.d.ts +1 -0
  58. package/SidebarLogo/index.js +1 -0
  59. package/SourceCode/SourceCode.d.ts +24 -0
  60. package/SourceCode/SourceCode.js +31 -0
  61. package/SourceCode/index.d.ts +1 -0
  62. package/SourceCode/index.js +1 -0
  63. package/Tooltip/Tooltip.d.ts +12 -0
  64. package/Tooltip/Tooltip.js +57 -0
  65. package/Tooltip/index.d.ts +1 -0
  66. package/Tooltip/index.js +1 -0
  67. package/globalStyle.d.ts +1 -0
  68. package/globalStyle.js +7 -0
  69. package/hooks/index.d.ts +3 -0
  70. package/hooks/index.js +3 -0
  71. package/hooks/useControl.d.ts +6 -0
  72. package/hooks/useControl.js +12 -0
  73. package/hooks/useMount.d.ts +1 -0
  74. package/hooks/useMount.js +7 -0
  75. package/hooks/useUnmount.d.ts +1 -0
  76. package/hooks/useUnmount.js +9 -0
  77. package/icons/ShelfIcon/ShelfIcon.d.ts +10 -0
  78. package/icons/ShelfIcon/ShelfIcon.js +33 -0
  79. package/icons/ShelfIcon/index.d.ts +2 -0
  80. package/icons/ShelfIcon/index.js +1 -0
  81. package/icons/index.d.ts +1 -0
  82. package/icons/index.js +1 -0
  83. package/index.d.ts +14 -0
  84. package/mocks/Link.d.ts +2 -0
  85. package/mocks/Link.js +17 -0
  86. package/mocks/utils.d.ts +1 -0
  87. package/mocks/utils.js +3 -0
  88. package/package.json +2 -78
  89. package/src/Button/Button.stories.tsx +74 -0
  90. package/src/Button/Button.tsx +122 -0
  91. package/src/Button/__tests__/Button.test.tsx +42 -0
  92. package/src/Button/__tests__/__snapshots__/Button.test.tsx.snap +274 -0
  93. package/src/Button/index.ts +1 -0
  94. package/src/CodeBlock/CodeBlock.ts +125 -0
  95. package/src/CodeBlock/__tests__/CodeBlock.test.tsx +12 -0
  96. package/src/CodeBlock/__tests__/__snapshots__/CodeBlock.test.tsx.snap +140 -0
  97. package/src/CodeBlock/index.ts +1 -0
  98. package/src/CopyButton/CopyButton.stories.tsx +18 -0
  99. package/src/CopyButton/CopyButton.tsx +26 -0
  100. package/src/CopyButton/CopyButtonWrapper.tsx +52 -0
  101. package/src/CopyButton/__tests__/CopyButton.test.tsx +35 -0
  102. package/src/CopyButton/__tests__/CopyButtonWrapper.test.tsx +16 -0
  103. package/src/CopyButton/__tests__/__snapshots__/CopyButton.test.tsx.snap +55 -0
  104. package/src/CopyButton/__tests__/__snapshots__/CopyButtonWrapper.test.tsx.snap +46 -0
  105. package/src/CopyButton/index.ts +2 -0
  106. package/src/Headings/Headings.stories.tsx +36 -0
  107. package/src/Headings/Headings.ts +23 -0
  108. package/src/Headings/__tests__/Headings.test.tsx +24 -0
  109. package/src/Headings/__tests__/__snapshots__/Headings.test.tsx.snap +57 -0
  110. package/src/Headings/index.ts +1 -0
  111. package/src/Introduction.stories.mdx +7 -0
  112. package/src/JsonViewer/JsonViewer.stories.tsx +57 -0
  113. package/src/JsonViewer/JsonViewer.tsx +130 -0
  114. package/src/JsonViewer/__tests__/JsonViewer.test.tsx +82 -0
  115. package/src/JsonViewer/__tests__/__snapshots__/JsonViewer.test.tsx.snap +2728 -0
  116. package/src/JsonViewer/index.ts +1 -0
  117. package/src/JsonViewer/styled.ts +103 -0
  118. package/src/Logo/Logo.tsx +23 -0
  119. package/src/Navbar/Navbar.stories.tsx +38 -0
  120. package/src/Navbar/Navbar.tsx +60 -0
  121. package/src/Navbar/NavbarItem.tsx +90 -0
  122. package/src/Navbar/NavbarMenu.tsx +29 -0
  123. package/src/Panel/CodePanel.stories.tsx +27 -0
  124. package/src/Panel/CodePanel.ts +31 -0
  125. package/src/Panel/ContentPanel.stories.tsx +27 -0
  126. package/src/Panel/ContentPanel.ts +43 -0
  127. package/src/Panel/DarkHeader.ts +8 -0
  128. package/src/Panel/Panel.stories.tsx +58 -0
  129. package/src/Panel/Panel.ts +18 -0
  130. package/src/Panel/PanelBody.ts +30 -0
  131. package/src/Panel/PanelComponent.tsx +73 -0
  132. package/src/Panel/PanelHeader.ts +25 -0
  133. package/src/Panel/PanelHeaderTitle.ts +11 -0
  134. package/src/Panel/__tests__/CodePanel.test.tsx +26 -0
  135. package/src/Panel/__tests__/ContentPanel.test.tsx +26 -0
  136. package/src/Panel/__tests__/Panel.test.tsx +54 -0
  137. package/src/Panel/__tests__/__snapshots__/CodePanel.test.tsx.snap +258 -0
  138. package/src/Panel/__tests__/__snapshots__/ContentPanel.test.tsx.snap +278 -0
  139. package/src/Panel/__tests__/__snapshots__/Panel.test.tsx.snap +398 -0
  140. package/src/Panel/index.ts +7 -0
  141. package/src/SamplesPanelControls/SamplesControlButton.stories.tsx +18 -0
  142. package/src/SamplesPanelControls/SamplesPanelControls.ts +70 -0
  143. package/src/SamplesPanelControls/__tests__/SamplesPanelControls.test.tsx +36 -0
  144. package/src/SamplesPanelControls/__tests__/__snapshots__/SamplesPanelControls.test.tsx.snap +228 -0
  145. package/src/SamplesPanelControls/index.ts +1 -0
  146. package/src/SidebarLogo/SidebarLogo.stories.tsx +21 -0
  147. package/src/SidebarLogo/SidebarLogo.tsx +47 -0
  148. package/src/SidebarLogo/__tests__/SidebarLogo.test.tsx +32 -0
  149. package/src/SidebarLogo/__tests__/__snapshots__/SidebarLogo.test.tsx.snap +62 -0
  150. package/src/SidebarLogo/index.ts +1 -0
  151. package/src/SourceCode/SourceCode.stories.tsx +29 -0
  152. package/src/SourceCode/SourceCode.tsx +67 -0
  153. package/src/SourceCode/__tests__/SourceCode.test.tsx +47 -0
  154. package/src/SourceCode/__tests__/__snapshots__/SourceCode.test.tsx.snap +786 -0
  155. package/src/SourceCode/index.ts +1 -0
  156. package/src/Tooltip/Tooltip.stories.tsx +27 -0
  157. package/src/Tooltip/Tooltip.tsx +171 -0
  158. package/src/Tooltip/__tests__/Tooltip.test.tsx +41 -0
  159. package/src/Tooltip/__tests__/__snapshots__/Tooltip.test.tsx.snap +83 -0
  160. package/src/Tooltip/index.ts +1 -0
  161. package/src/globalStyle.ts +512 -0
  162. package/src/hooks/index.ts +3 -0
  163. package/src/hooks/useControl.ts +20 -0
  164. package/src/hooks/useMount.ts +8 -0
  165. package/src/hooks/useUnmount.ts +10 -0
  166. package/src/icons/ShelfIcon/ShelfIcon.stories.tsx +36 -0
  167. package/src/icons/ShelfIcon/ShelfIcon.tsx +45 -0
  168. package/src/icons/ShelfIcon/__tests__/ShelfIcon.test.tsx +54 -0
  169. package/src/icons/ShelfIcon/__tests__/__snapshots__/ShelfIcon.test.tsx.snap +235 -0
  170. package/src/icons/ShelfIcon/index.ts +2 -0
  171. package/src/icons/index.ts +1 -0
  172. package/src/index.ts +14 -0
  173. package/src/mocks/Link.tsx +7 -0
  174. package/src/mocks/utils.ts +3 -0
  175. package/src/utils/ClipboardService.ts +92 -0
  176. package/src/utils/__tests__/ClipboardService.test.ts +24 -0
  177. package/src/utils/__tests__/__snapshots__/highlight.test.ts.snap +5 -0
  178. package/src/utils/__tests__/__snapshots__/jsonToHtml.test.ts.snap +5 -0
  179. package/src/utils/__tests__/css-variables.test.ts +20 -0
  180. package/src/utils/__tests__/highlight.test.ts +51 -0
  181. package/src/utils/__tests__/jsonToHtml.test.ts +40 -0
  182. package/src/utils/__tests__/media-css.test.ts +20 -0
  183. package/src/utils/__tests__/theme-helpers.test.ts +25 -0
  184. package/src/utils/css-variables.ts +2 -0
  185. package/src/utils/highlight.ts +81 -0
  186. package/src/utils/index.ts +6 -0
  187. package/src/utils/jsonToHtml.ts +122 -0
  188. package/src/utils/media-css.ts +16 -0
  189. package/src/utils/theme-helpers.ts +34 -0
  190. package/utils/ClipboardService.d.ts +8 -0
  191. package/utils/ClipboardService.js +83 -0
  192. package/utils/css-variables.d.ts +1 -0
  193. package/utils/css-variables.js +4 -0
  194. package/utils/highlight.d.ts +32 -0
  195. package/utils/highlight.js +65 -0
  196. package/utils/index.d.ts +6 -0
  197. package/utils/index.js +6 -0
  198. package/utils/jsonToHtml.d.ts +1 -0
  199. package/utils/jsonToHtml.js +116 -0
  200. package/utils/media-css.d.ts +12 -0
  201. package/utils/media-css.js +9 -0
  202. package/utils/theme-helpers.d.ts +3 -0
  203. package/utils/theme-helpers.js +27 -0
@@ -0,0 +1,17 @@
1
+ import { FlattenSimpleInterpolation } from 'styled-components';
2
+ export declare type ButtonSize = 'small' | 'medium' | 'large' | 'xlarge' | string;
3
+ export declare type ButtonColor = 'primary' | 'secondary' | 'default' | string;
4
+ export declare type ButtonVariant = 'outlined' | 'contained';
5
+ export interface ButtonProps {
6
+ color?: ButtonColor;
7
+ disabled?: boolean;
8
+ blinking?: boolean;
9
+ fullWidth?: boolean;
10
+ variant?: ButtonVariant;
11
+ size?: ButtonSize;
12
+ extraClass?: string;
13
+ }
14
+ export declare const baseButtonStyles: FlattenSimpleInterpolation;
15
+ export declare const Button: import("styled-components").StyledComponent<"button", any, {
16
+ className: `button-color-${string}${string}`;
17
+ } & ButtonProps, "className">;
@@ -0,0 +1,34 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import styled, { css, keyframes } from 'styled-components';
6
+ var getBlink = function () { return keyframes(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n 0% {\n color: var(--button-color);\n background-color: var(--button-active-background-color);\n }\n\n 50% {\n background-color: var(--button-background-color);\n }\n\n 100% {\n color: var(--button-color);\n background-color: var(--button-active-background-color);\n }\n"], ["\n 0% {\n color: var(--button-color);\n background-color: var(--button-active-background-color);\n }\n\n 50% {\n background-color: var(--button-background-color);\n }\n\n 100% {\n color: var(--button-color);\n background-color: var(--button-active-background-color);\n }\n"]))); };
7
+ var getSize = function (size) {
8
+ if (size === void 0) { size = 'medium'; }
9
+ return css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n font-size: var(--button-", "-font-size);\n padding: var(--button-", "-padding);\n min-width: var(--button-", "-min-width);\n"], ["\n font-size: var(--button-", "-font-size);\n padding: var(--button-", "-padding);\n min-width: var(--button-", "-min-width);\n"])), size, size, size);
10
+ };
11
+ export var baseButtonStyles = css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n outline: none;\n border: none;\n border-radius: var(--button-border-radius);\n font-weight: var(--button-font-weight);\n font-size: 14px;\n padding: 2px 20px;\n cursor: pointer;\n transition: background-color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;\n line-height: 1;\n\n font-family: var(--button-font-family);\n box-shadow: var(--button-box-shadow);\n\n &:hover {\n box-shadow: var(--button-active-box-shadow);\n }\n\n &:active {\n box-shadow: var(--button-active-box-shadow);\n }\n"], ["\n outline: none;\n border: none;\n border-radius: var(--button-border-radius);\n font-weight: var(--button-font-weight);\n font-size: 14px;\n padding: 2px 20px;\n cursor: pointer;\n transition: background-color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;\n line-height: 1;\n\n font-family: var(--button-font-family);\n box-shadow: var(--button-box-shadow);\n\n &:hover {\n box-shadow: var(--button-active-box-shadow);\n }\n\n &:active {\n box-shadow: var(--button-active-box-shadow);\n }\n"])));
12
+ export var Button = styled.button.attrs(function (_a) {
13
+ var _b = _a.color, color = _b === void 0 ? 'default' : _b, extraClass = _a.extraClass;
14
+ return ({
15
+ className: "button-color-".concat(color).concat(extraClass ? " ".concat(extraClass) : ''),
16
+ });
17
+ })(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n text-decoration: none;\n text-align: center;\n\n width: ", ";\n\n ", "\n\n ", ";\n\n ", "\n\n & + & {\n margin-left: 0.85em;\n }\n\n ", "\n\n ", "\n"], ["\n text-decoration: none;\n text-align: center;\n\n width: ", ";\n\n ", "\n\n ", ";\n\n ", "\n\n & + & {\n margin-left: 0.85em;\n }\n\n ", "\n\n ", "\n"])), function (_a) {
18
+ var fullWidth = _a.fullWidth;
19
+ return (fullWidth ? '100%' : 'auto');
20
+ }, baseButtonStyles, function (_a) {
21
+ var variant = _a.variant;
22
+ return variant === 'outlined'
23
+ ? css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n color: var(--button-background-color);\n border: 2px solid var(--button-background-color);\n background-color: transparent;\n &:hover {\n border: 2px solid var(--button-active-background-color);\n background-color: transparent;\n }\n\n &:active {\n border: 2px solid var(--button-outlined-active-border-color);\n }\n "], ["\n color: var(--button-background-color);\n border: 2px solid var(--button-background-color);\n background-color: transparent;\n &:hover {\n border: 2px solid var(--button-active-background-color);\n background-color: transparent;\n }\n\n &:active {\n border: 2px solid var(--button-outlined-active-border-color);\n }\n "]))) : css(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n color: var(--button-color);\n background-color: var(--button-background-color);\n &:hover {\n background-color: var(--button-hover-background-color);\n }\n\n &:active {\n background-color: var(--button-active-background-color);\n }\n "], ["\n color: var(--button-color);\n background-color: var(--button-background-color);\n &:hover {\n background-color: var(--button-hover-background-color);\n }\n\n &:active {\n background-color: var(--button-active-background-color);\n }\n "])));
24
+ }, function (_a) {
25
+ var size = _a.size;
26
+ return getSize(size);
27
+ }, function (_a) {
28
+ var blinking = _a.blinking;
29
+ return blinking && css(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n pointer-events: none;\n animation: ", " 1.2s infinite;\n "], ["\n pointer-events: none;\n animation: ", " 1.2s infinite;\n "])), getBlink());
30
+ }, function (_a) {
31
+ var disabled = _a.disabled;
32
+ return disabled && css(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n &,\n &:hover {\n cursor: default;\n color: #999999;\n pointer-events: none;\n }\n "], ["\n &,\n &:hover {\n cursor: default;\n color: #999999;\n pointer-events: none;\n }\n "])));
33
+ });
34
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8;
@@ -0,0 +1 @@
1
+ export * from './Button';
@@ -0,0 +1 @@
1
+ export * from './Button';
@@ -0,0 +1 @@
1
+ export declare const CodeBlock: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -0,0 +1,7 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import styled from 'styled-components';
6
+ export var CodeBlock = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n max-height: var(--code-block-max-height, 600px);\n word-break: var(--code-block-word-break, initial);\n /**\n * Based on prism-dark.css\n */\n code[class*='language-'],\n pre[class*='language-'] {\n /* color: white;\n background: none; */\n text-shadow: 0 -0.1em 0.2em black;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n word-wrap: normal;\n line-height: 1.5;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n -moz-hyphens: none;\n -ms-hyphens: none;\n hyphens: none;\n }\n\n @media print {\n code[class*='language-'],\n pre[class*='language-'] {\n text-shadow: none;\n }\n }\n\n /* Code blocks */\n pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n }\n\n .token.comment,\n .token.prolog,\n .token.doctype,\n .token.cdata {\n color: hsl(30, 20%, 50%);\n }\n\n .token.punctuation {\n opacity: 1;\n }\n\n .namespace {\n opacity: 0.7;\n }\n\n .token.property,\n .token.tag,\n .token.number,\n .token.constant,\n .token.symbol {\n color: var(--color-content-inverse);\n }\n\n .token.boolean {\n color: var(--color-error-500);\n }\n\n .token.selector,\n .token.attr-name,\n .token.string,\n .token.char,\n .token.builtin,\n .token.inserted {\n color: #fee39e;\n\n & + a,\n & + a:visited {\n color: #4ed2ba;\n text-decoration: underline;\n }\n }\n\n .token.property.string {\n color: #9efaa7;\n }\n\n .token.operator,\n .token.entity,\n .token.url,\n .token.variable {\n color: #f5b83d;\n }\n\n .token.atrule,\n .token.attr-value,\n .token.keyword {\n color: #ffdbf4;\n }\n\n .token.regex,\n .token.important {\n color: #e90;\n }\n\n .token.important,\n .token.bold {\n font-weight: bold;\n }\n\n .token.italic {\n font-style: italic;\n }\n\n .token.entity {\n cursor: help;\n }\n\n .token.deleted {\n color: red;\n }\n"], ["\n max-height: var(--code-block-max-height, 600px);\n word-break: var(--code-block-word-break, initial);\n /**\n * Based on prism-dark.css\n */\n code[class*='language-'],\n pre[class*='language-'] {\n /* color: white;\n background: none; */\n text-shadow: 0 -0.1em 0.2em black;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n word-wrap: normal;\n line-height: 1.5;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n -moz-hyphens: none;\n -ms-hyphens: none;\n hyphens: none;\n }\n\n @media print {\n code[class*='language-'],\n pre[class*='language-'] {\n text-shadow: none;\n }\n }\n\n /* Code blocks */\n pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n }\n\n .token.comment,\n .token.prolog,\n .token.doctype,\n .token.cdata {\n color: hsl(30, 20%, 50%);\n }\n\n .token.punctuation {\n opacity: 1;\n }\n\n .namespace {\n opacity: 0.7;\n }\n\n .token.property,\n .token.tag,\n .token.number,\n .token.constant,\n .token.symbol {\n color: var(--color-content-inverse);\n }\n\n .token.boolean {\n color: var(--color-error-500);\n }\n\n .token.selector,\n .token.attr-name,\n .token.string,\n .token.char,\n .token.builtin,\n .token.inserted {\n color: #fee39e;\n\n & + a,\n & + a:visited {\n color: #4ed2ba;\n text-decoration: underline;\n }\n }\n\n .token.property.string {\n color: #9efaa7;\n }\n\n .token.operator,\n .token.entity,\n .token.url,\n .token.variable {\n color: #f5b83d;\n }\n\n .token.atrule,\n .token.attr-value,\n .token.keyword {\n color: #ffdbf4;\n }\n\n .token.regex,\n .token.important {\n color: #e90;\n }\n\n .token.important,\n .token.bold {\n font-weight: bold;\n }\n\n .token.italic {\n font-style: italic;\n }\n\n .token.entity {\n cursor: help;\n }\n\n .token.deleted {\n color: red;\n }\n"])));
7
+ var templateObject_1;
@@ -0,0 +1 @@
1
+ export * from './CodeBlock';
@@ -0,0 +1 @@
1
+ export * from './CodeBlock';
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ export interface CopyButtonProps {
3
+ text: string;
4
+ dataTestId?: string;
5
+ }
6
+ export declare const CopyButton: ({ text, dataTestId }: CopyButtonProps) => JSX.Element;
@@ -0,0 +1,69 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
+ return new (P || (P = Promise))(function (resolve, reject) {
15
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
19
+ });
20
+ };
21
+ var __generator = (this && this.__generator) || function (thisArg, body) {
22
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
+ function verb(n) { return function (v) { return step([n, v]); }; }
25
+ function step(op) {
26
+ if (f) throw new TypeError("Generator is already executing.");
27
+ while (_) try {
28
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
+ if (y = 0, t) op = [op[0] & 2, t.value];
30
+ switch (op[0]) {
31
+ case 0: case 1: t = op; break;
32
+ case 4: _.label++; return { value: op[1], done: false };
33
+ case 5: _.label++; y = op[1]; op = [0]; continue;
34
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
+ default:
36
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
+ if (t[2]) _.ops.pop();
41
+ _.trys.pop(); continue;
42
+ }
43
+ op = body.call(thisArg, _);
44
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
+ }
47
+ };
48
+ import { jsx as _jsx } from "react/jsx-runtime";
49
+ import { useState } from 'react';
50
+ import { Button } from '../Button';
51
+ export var CopyButton = function (_a) {
52
+ var text = _a.text, _b = _a.dataTestId, dataTestId = _b === void 0 ? 'copy-button' : _b;
53
+ var _c = useState('Copy'), title = _c[0], setTitle = _c[1];
54
+ function write() {
55
+ return __awaiter(this, void 0, void 0, function () {
56
+ return __generator(this, function (_a) {
57
+ switch (_a.label) {
58
+ case 0: return [4 /*yield*/, navigator.clipboard.writeText(text)];
59
+ case 1:
60
+ _a.sent();
61
+ setTitle('Copied!');
62
+ setTimeout(function () { return setTitle('Copy'); }, 1500);
63
+ return [2 /*return*/];
64
+ }
65
+ });
66
+ });
67
+ }
68
+ return (_jsx(Button, __assign({ color: "secondary", onClick: write, "data-cy": dataTestId }, { children: title })));
69
+ };
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ export interface CopyButtonWrapperProps {
3
+ data: unknown;
4
+ children: (props: {
5
+ renderCopyButton: () => JSX.Element;
6
+ }) => JSX.Element;
7
+ dataTestId?: string;
8
+ }
9
+ export declare const CopyButtonWrapper: React.NamedExoticComponent<CopyButtonWrapperProps>;
@@ -0,0 +1,37 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ import { memo } from 'react';
14
+ import { SamplesControlButton } from '../SamplesPanelControls';
15
+ import { Tooltip } from '../Tooltip';
16
+ import { useControl } from '../hooks';
17
+ import { ClipboardService } from '../utils';
18
+ function CopyButtonWrapperComponent(_a) {
19
+ var data = _a.data, children = _a.children, _b = _a.dataTestId, dataTestId = _b === void 0 ? 'copy-button' : _b;
20
+ var tooltip = useControl();
21
+ var showTooltip = function () {
22
+ tooltip.handleOpen();
23
+ setTimeout(function () {
24
+ tooltip.handleClose();
25
+ }, 1500);
26
+ };
27
+ var copy = function () {
28
+ var content = typeof data === 'string' ? data : JSON.stringify(data, null, 2);
29
+ ClipboardService.copyCustom(content);
30
+ showTooltip();
31
+ };
32
+ var renderCopyButton = function () {
33
+ return (_jsx(Tooltip, __assign({ className: "copy-button", tip: ClipboardService.isSupported() ? 'Copied' : 'Not supported in your browser', open: tooltip.isOpened }, { children: _jsx(SamplesControlButton, __assign({ onClick: copy, "data-cy": dataTestId }, { children: "Copy" })) })));
34
+ };
35
+ return children({ renderCopyButton: renderCopyButton });
36
+ }
37
+ export var CopyButtonWrapper = memo(CopyButtonWrapperComponent);
@@ -0,0 +1,2 @@
1
+ export * from './CopyButtonWrapper';
2
+ export * from './CopyButton';
@@ -0,0 +1,2 @@
1
+ export * from './CopyButtonWrapper';
2
+ export * from './CopyButton';
@@ -0,0 +1,3 @@
1
+ export declare const H1: import("styled-components").StyledComponent<"h1", any, {}, never>;
2
+ export declare const H2: import("styled-components").StyledComponent<"h2", any, {}, never>;
3
+ export declare const H3: import("styled-components").StyledComponent<"h3", any, {}, never>;
@@ -0,0 +1,10 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import styled from 'styled-components';
6
+ import { typography } from '../utils';
7
+ export var H1 = styled.h1(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n color: var(--color-content);\n margin: 0 0 25px;\n\n ", ";\n"], ["\n color: var(--color-content);\n margin: 0 0 25px;\n\n ", ";\n"])), typography('h1', 'h'));
8
+ export var H2 = styled.h2(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n color: var(--color-content);\n margin: 0 0 20px;\n\n ", ";\n"], ["\n color: var(--color-content);\n margin: 0 0 20px;\n\n ", ";\n"])), typography('h2', 'h'));
9
+ export var H3 = styled.h3(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n color: var(--color-content);\n\n ", ";\n"], ["\n color: var(--color-content);\n\n ", ";\n"])), typography('h3', 'h'));
10
+ var templateObject_1, templateObject_2, templateObject_3;
@@ -0,0 +1 @@
1
+ export * from './Headings';
@@ -0,0 +1 @@
1
+ export * from './Headings';
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ export interface JsonProps {
3
+ data: any;
4
+ className?: string;
5
+ jsonSampleExpandLevel: number;
6
+ }
7
+ export declare const Json: React.NamedExoticComponent<JsonProps>;
8
+ export declare const JsonViewer: import("styled-components").StyledComponent<React.NamedExoticComponent<JsonProps>, any, JsonProps, never>;
9
+ export declare const JsonViewerWrap: import("styled-components").StyledComponent<"div", any, {}, never>;
10
+ export declare const StyledCodeBlock: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -0,0 +1,92 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ var __assign = (this && this.__assign) || function () {
6
+ __assign = Object.assign || function(t) {
7
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
8
+ s = arguments[i];
9
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
10
+ t[p] = s[p];
11
+ }
12
+ return t;
13
+ };
14
+ return __assign.apply(this, arguments);
15
+ };
16
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
17
+ import { memo, useRef } from 'react';
18
+ import styled from 'styled-components';
19
+ import { CopyButtonWrapper } from '../CopyButton';
20
+ import { SampleControls, SamplesControlButton } from '../SamplesPanelControls';
21
+ import { jsonToHTML } from '../utils';
22
+ import { useMount, useUnmount } from '../hooks';
23
+ import { CodeBlock } from '../CodeBlock';
24
+ import { jsonStyles } from './styled';
25
+ function JsonComponent(_a) {
26
+ var data = _a.data, jsonSampleExpandLevel = _a.jsonSampleExpandLevel, className = _a.className;
27
+ var node = useRef(null);
28
+ useMount(function () {
29
+ var _a;
30
+ (_a = node === null || node === void 0 ? void 0 : node.current) === null || _a === void 0 ? void 0 : _a.addEventListener('click', clickListener);
31
+ });
32
+ useUnmount(function () {
33
+ var _a;
34
+ (_a = node === null || node === void 0 ? void 0 : node.current) === null || _a === void 0 ? void 0 : _a.removeEventListener('click', clickListener);
35
+ });
36
+ var expandAll = function () {
37
+ var _a, _b;
38
+ var elements = (_a = node === null || node === void 0 ? void 0 : node.current) === null || _a === void 0 ? void 0 : _a.getElementsByClassName('collapsible');
39
+ for (var _i = 0, _c = Array.prototype.slice.call(elements); _i < _c.length; _i++) {
40
+ var collapsed = _c[_i];
41
+ var parentNode = collapsed.parentNode;
42
+ if (!parentNode)
43
+ continue;
44
+ parentNode.classList.remove('collapsed');
45
+ (_b = parentNode.querySelector('.collapser')) === null || _b === void 0 ? void 0 : _b.setAttribute('aria-label', 'collapse');
46
+ }
47
+ };
48
+ var collapseAll = function () {
49
+ var _a, _b;
50
+ var elements = (_a = node === null || node === void 0 ? void 0 : node.current) === null || _a === void 0 ? void 0 : _a.getElementsByClassName('collapsible');
51
+ // skip first item to avoid collapsing whole object/array
52
+ var elementsArr = Array.prototype.slice.call(elements, 1);
53
+ for (var _i = 0, elementsArr_1 = elementsArr; _i < elementsArr_1.length; _i++) {
54
+ var expanded = elementsArr_1[_i];
55
+ var parentNode = expanded.parentNode;
56
+ if (!parentNode)
57
+ continue;
58
+ parentNode.classList.add('collapsed');
59
+ (_b = parentNode.querySelector('.collapser')) === null || _b === void 0 ? void 0 : _b.setAttribute('aria-label', 'expand');
60
+ }
61
+ };
62
+ var collapseElement = function (target) {
63
+ var _a, _b;
64
+ if (target.parentElement && target.className === 'collapser') {
65
+ var collapsed = target.parentElement.getElementsByClassName('collapsible')[0];
66
+ if ((_a = collapsed === null || collapsed === void 0 ? void 0 : collapsed.parentElement) === null || _a === void 0 ? void 0 : _a.classList.contains('collapsed')) {
67
+ collapsed.parentElement.classList.remove('collapsed');
68
+ target.setAttribute('aria-label', 'collapse');
69
+ }
70
+ else {
71
+ (_b = collapsed === null || collapsed === void 0 ? void 0 : collapsed.parentElement) === null || _b === void 0 ? void 0 : _b.classList.add('collapsed');
72
+ target.setAttribute('aria-label', 'expand');
73
+ }
74
+ }
75
+ };
76
+ var clickListener = function (event) {
77
+ collapseElement(event.target);
78
+ };
79
+ var renderInner = function (_a) {
80
+ var renderCopyButton = _a.renderCopyButton;
81
+ var showFoldingButtons = data && Object.values(data).some(function (value) { return typeof value === 'object' && value !== null; });
82
+ return (_jsxs(JsonViewerWrap, __assign({ "data-cy": "json-viewer" }, { children: [_jsxs(SampleControls, __assign({ "data-cy": "buttons" }, { children: [renderCopyButton(), showFoldingButtons && (_jsxs(_Fragment, { children: [_jsx(SamplesControlButton, __assign({ onClick: expandAll, "data-cy": "expand-all" }, { children: "Expand all" })), _jsx(SamplesControlButton, __assign({ onClick: collapseAll, "data-cy": "collapse-all" }, { children: "Collapse all" }))] }))] })), _jsx(StyledCodeBlock, { className: className, ref: node, dangerouslySetInnerHTML: {
83
+ __html: jsonToHTML(data, jsonSampleExpandLevel),
84
+ } })] })));
85
+ };
86
+ return (_jsx(CopyButtonWrapper, __assign({ "data-cy": "copy-button", data: data }, { children: renderInner })));
87
+ }
88
+ export var Json = memo(JsonComponent);
89
+ export var JsonViewer = styled(Json)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", ";\n"], ["\n ", ";\n"])), jsonStyles);
90
+ export var JsonViewerWrap = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n flex: 1;\n\n &:hover > ", " {\n opacity: 1;\n }\n"], ["\n display: flex;\n flex-direction: column;\n flex: 1;\n\n &:hover > ", " {\n opacity: 1;\n }\n"])), SampleControls);
91
+ export var StyledCodeBlock = styled(CodeBlock)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n flex: 1;\n\n code {\n font-family: var(--code-font-family);\n font-size: 14px;\n line-height: 18px;\n }\n"], ["\n flex: 1;\n\n code {\n font-family: var(--code-font-family);\n font-size: 14px;\n line-height: 18px;\n }\n"])));
92
+ var templateObject_1, templateObject_2, templateObject_3;
@@ -0,0 +1 @@
1
+ export * from './JsonViewer';
@@ -0,0 +1 @@
1
+ export * from './JsonViewer';
@@ -0,0 +1 @@
1
+ export declare const jsonStyles: import("styled-components").FlattenSimpleInterpolation;
@@ -0,0 +1,7 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import { css } from 'styled-components';
6
+ export var jsonStyles = css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n .redoc-json code > .collapser {\n display: none;\n pointer-events: none;\n }\n\n contain: content;\n overflow-x: auto;\n padding: 10px;\n border-radius: var(--global-border-radius);\n background-color: var(--samples-panel-controls-background-color);\n color: var(--color-content-inverse);\n font-size: var(--code-font-size);\n font-family: var(--code-font-family);\n white-space: var(--code-wrap, pre);\n\n .callback-function {\n color: gray;\n }\n\n .collapser:after {\n content: '-';\n cursor: pointer;\n }\n\n .collapsed > .collapser:after {\n content: '+';\n cursor: pointer;\n }\n\n .ellipsis:after {\n content: ' \u2026 ';\n }\n\n .collapsible {\n margin-left: 2ch;\n }\n\n .hoverable {\n padding: 1px 2px;\n }\n\n .hovered {\n background-color: rgba(235, 238, 249, 1);\n }\n\n .collapser {\n background-color: transparent;\n border: 0;\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 15px;\n height: 15px;\n position: absolute;\n top: 4px;\n left: -1.5em;\n cursor: default;\n user-select: none;\n -webkit-user-select: none;\n padding: 2px;\n font-family: var(--code-font-family);\n font-size: var(--code-font-size);\n &:focus {\n outline: #fff dotted 1px;\n }\n }\n\n ul {\n list-style-type: none;\n padding: 0;\n margin: 0 0 0 26px;\n }\n\n li {\n position: relative;\n display: block;\n }\n\n .hoverable {\n display: inline-block;\n }\n\n .selected {\n outline-width: 1px;\n outline-style: dotted;\n }\n\n .collapsed > .collapsible {\n display: none;\n }\n\n .ellipsis {\n display: none;\n }\n\n .collapsed > .ellipsis {\n display: inherit;\n }\n"], ["\n .redoc-json code > .collapser {\n display: none;\n pointer-events: none;\n }\n\n contain: content;\n overflow-x: auto;\n padding: 10px;\n border-radius: var(--global-border-radius);\n background-color: var(--samples-panel-controls-background-color);\n color: var(--color-content-inverse);\n font-size: var(--code-font-size);\n font-family: var(--code-font-family);\n white-space: var(--code-wrap, pre);\n\n .callback-function {\n color: gray;\n }\n\n .collapser:after {\n content: '-';\n cursor: pointer;\n }\n\n .collapsed > .collapser:after {\n content: '+';\n cursor: pointer;\n }\n\n .ellipsis:after {\n content: ' \u2026 ';\n }\n\n .collapsible {\n margin-left: 2ch;\n }\n\n .hoverable {\n padding: 1px 2px;\n }\n\n .hovered {\n background-color: rgba(235, 238, 249, 1);\n }\n\n .collapser {\n background-color: transparent;\n border: 0;\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 15px;\n height: 15px;\n position: absolute;\n top: 4px;\n left: -1.5em;\n cursor: default;\n user-select: none;\n -webkit-user-select: none;\n padding: 2px;\n font-family: var(--code-font-family);\n font-size: var(--code-font-size);\n &:focus {\n outline: #fff dotted 1px;\n }\n }\n\n ul {\n list-style-type: none;\n padding: 0;\n margin: 0 0 0 26px;\n }\n\n li {\n position: relative;\n display: block;\n }\n\n .hoverable {\n display: inline-block;\n }\n\n .selected {\n outline-width: 1px;\n outline-style: dotted;\n }\n\n .collapsed > .collapsible {\n display: none;\n }\n\n .ellipsis {\n display: none;\n }\n\n .collapsed > .ellipsis {\n display: inherit;\n }\n"])));
7
+ var templateObject_1;
package/Logo/Logo.d.ts ADDED
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ export interface LogoConfig {
3
+ image?: string;
4
+ altText?: string;
5
+ link?: string;
6
+ favicon?: string;
7
+ }
8
+ export declare function Logo({ logo }: {
9
+ logo: LogoConfig;
10
+ }): JSX.Element | null;
package/Logo/Logo.js ADDED
@@ -0,0 +1,25 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ var __assign = (this && this.__assign) || function () {
6
+ __assign = Object.assign || function(t) {
7
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
8
+ s = arguments[i];
9
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
10
+ t[p] = s[p];
11
+ }
12
+ return t;
13
+ };
14
+ return __assign.apply(this, arguments);
15
+ };
16
+ import { jsx as _jsx } from "react/jsx-runtime";
17
+ import styled from 'styled-components';
18
+ import { Link } from '../mocks/Link';
19
+ export function Logo(_a) {
20
+ var logo = _a.logo;
21
+ var img = _jsx(NavLogo, { src: logo.image, alt: logo.altText, "data-component-name": "Logo/Logo" });
22
+ return (logo === null || logo === void 0 ? void 0 : logo.image) ? logo.link ? _jsx(Link, __assign({ to: logo.link }, { children: img })) : img : null;
23
+ }
24
+ var NavLogo = styled.img(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n max-width: var(--logo-max-width);\n max-height: var(--logo-max-height);\n height: var(--logo-height);\n margin: var(--logo-margin);\n"], ["\n max-width: var(--logo-max-width);\n max-height: var(--logo-max-height);\n height: var(--logo-height);\n margin: var(--logo-margin);\n"])));
25
+ var templateObject_1;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ interface NavbarProps {
3
+ menu: React.ReactNode;
4
+ logo: React.ReactNode;
5
+ search: React.ReactNode;
6
+ }
7
+ export default function Navbar({ menu, logo, search }: NavbarProps): JSX.Element;
8
+ export declare const NavbarContainer: import("styled-components").StyledComponent<"nav", any, {}, never>;
9
+ export {};
@@ -0,0 +1,23 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ var __assign = (this && this.__assign) || function () {
6
+ __assign = Object.assign || function(t) {
7
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
8
+ s = arguments[i];
9
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
10
+ t[p] = s[p];
11
+ }
12
+ return t;
13
+ };
14
+ return __assign.apply(this, arguments);
15
+ };
16
+ import { jsxs as _jsxs } from "react/jsx-runtime";
17
+ import styled from 'styled-components';
18
+ export default function Navbar(_a) {
19
+ var menu = _a.menu, logo = _a.logo, search = _a.search;
20
+ return (_jsxs(NavbarContainer, __assign({ "data-component-name": "Navbar/Navbar" }, { children: [logo, menu, search] })));
21
+ }
22
+ export var NavbarContainer = styled.nav(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n height: var(--navbar-height);\n box-sizing: border-box;\n display: flex;\n color: var(--navbar-color-text);\n align-items: center;\n justify-content: space-between;\n flex-shrink: 0;\n\n font-size: 0.875rem;\n position: sticky;\n top: 0;\n z-index: 200;\n padding: 1.25rem;\n padding: 10px var(--sidebar-margin-left);\n background: var(--navbar-color-background);\n font-family: var(--font-family-h);\n"], ["\n height: var(--navbar-height);\n box-sizing: border-box;\n display: flex;\n color: var(--navbar-color-text);\n align-items: center;\n justify-content: space-between;\n flex-shrink: 0;\n\n font-size: 0.875rem;\n position: sticky;\n top: 0;\n z-index: 200;\n padding: 1.25rem;\n padding: 10px var(--sidebar-margin-left);\n background: var(--navbar-color-background);\n font-family: var(--font-family-h);\n"])));
23
+ var templateObject_1;
@@ -0,0 +1,40 @@
1
+ /// <reference types="react" />
2
+ export declare enum MenuStyle {
3
+ Drilldown = "drilldown"
4
+ }
5
+ export declare type ResolvedNavLinkItem = {
6
+ type: 'link';
7
+ link: string;
8
+ label: string;
9
+ items?: ResolvedNavItem[];
10
+ external?: boolean;
11
+ version?: string;
12
+ default?: string;
13
+ httpVerb?: string;
14
+ separatorLine?: boolean;
15
+ active?: boolean;
16
+ };
17
+ export declare type ResolvedNavGroupItem = {
18
+ type: 'group';
19
+ link?: string;
20
+ label: string;
21
+ items: ResolvedNavItem[];
22
+ version?: string;
23
+ default?: string;
24
+ menuStyle?: MenuStyle;
25
+ separatorLine?: boolean;
26
+ active?: boolean;
27
+ };
28
+ export declare type ResolvedNavItem = ResolvedNavLinkItem | ResolvedNavGroupItem | {
29
+ type: 'separator';
30
+ label?: string;
31
+ separatorLine?: boolean;
32
+ } | {
33
+ type: 'error';
34
+ label: string;
35
+ };
36
+ interface NavbarItemProps {
37
+ navItem: ResolvedNavLinkItem;
38
+ }
39
+ export default function NavbarItem({ navItem }: NavbarItemProps): JSX.Element;
40
+ export {};
@@ -0,0 +1,43 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ var __assign = (this && this.__assign) || function () {
6
+ __assign = Object.assign || function(t) {
7
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
8
+ s = arguments[i];
9
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
10
+ t[p] = s[p];
11
+ }
12
+ return t;
13
+ };
14
+ return __assign.apply(this, arguments);
15
+ };
16
+ import { jsx as _jsx } from "react/jsx-runtime";
17
+ import styled from 'styled-components';
18
+ import { useLocation } from 'react-router-dom';
19
+ import { Link } from '../mocks/Link';
20
+ import { withPathPrefix } from '../mocks/utils';
21
+ export var MenuStyle;
22
+ (function (MenuStyle) {
23
+ MenuStyle["Drilldown"] = "drilldown";
24
+ })(MenuStyle || (MenuStyle = {}));
25
+ export default function NavbarItem(_a) {
26
+ var navItem = _a.navItem;
27
+ var pathname = useLocation().pathname;
28
+ var isActive = pathname === withPathPrefix(navItem.link);
29
+ return (_jsx(NavMenuItem, __assign({ active: isActive, "data-component-name": "Navbar/NavbarItem" }, { children: _jsx(NavLink, __assign({ to: navItem.link, active: isActive }, { children: _jsx(NavLabel, { children: navItem.label }) })) })));
30
+ }
31
+ var NavMenuItem = styled.li(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: inline-block;\n padding: 20px calc(var(--sidebar-padding-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-padding-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) {
32
+ var active = _a.active;
33
+ return (active ? 'var(--navbar-item-active-background-color)' : 'none');
34
+ });
35
+ var NavLink = styled(Link)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n color: ", ";\n text-decoration: ", ";\n"], ["\n color: ", ";\n text-decoration: ", ";\n"])), function (_a) {
36
+ var active = _a.active;
37
+ return active ? 'var(--navbar-item-active-text-color)' : 'var(--navbar-color-text)';
38
+ }, function (_a) {
39
+ var active = _a.active;
40
+ return active ? 'var(--navbar-item-active-text-decoration)' : 'none';
41
+ });
42
+ var NavLabel = styled.span(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n cursor: pointer;\n vertical-align: middle;\n"], ["\n cursor: pointer;\n vertical-align: middle;\n"])));
43
+ var templateObject_1, templateObject_2, templateObject_3;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ export default function NavbarMenu({ menuItems }: {
3
+ menuItems: any[];
4
+ }): JSX.Element | null;
@@ -0,0 +1,29 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ var __assign = (this && this.__assign) || function () {
6
+ __assign = Object.assign || function(t) {
7
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
8
+ s = arguments[i];
9
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
10
+ t[p] = s[p];
11
+ }
12
+ return t;
13
+ };
14
+ return __assign.apply(this, arguments);
15
+ };
16
+ import { jsx as _jsx } from "react/jsx-runtime";
17
+ import styled from 'styled-components';
18
+ import NavbarItem from '../Navbar/NavbarItem';
19
+ export default function NavbarMenu(_a) {
20
+ var menuItems = _a.menuItems;
21
+ if (!menuItems || !menuItems.length) {
22
+ return null;
23
+ }
24
+ return (_jsx(NavItemsContainer, __assign({ "data-component-name": "Navbar/NavbarMenu" }, { children: menuItems.map(function (navItem, index) {
25
+ return _jsx(NavbarItem, { "data-cy": navItem.label, navItem: navItem }, index);
26
+ }) })));
27
+ }
28
+ var NavItemsContainer = styled.ul(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n list-style: none;\n margin: 0;\n padding: 0;\n display: block;\n"], ["\n list-style: none;\n margin: 0;\n padding: 0;\n display: block;\n"])));
29
+ var templateObject_1;
@@ -0,0 +1 @@
1
+ export declare const CodePanel: import("styled-components").StyledComponent<typeof import("./PanelComponent").PanelComponent, any, {}, never>;
@@ -0,0 +1,13 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import styled from 'styled-components';
6
+ import { ShelfIcon } from '../icons/ShelfIcon';
7
+ import { Panel } from './Panel';
8
+ import { PanelHeader } from './PanelHeader';
9
+ import { DarkHeader } from './DarkHeader';
10
+ import { PanelBody } from './PanelBody';
11
+ import { PanelHeaderTitle } from './PanelHeaderTitle';
12
+ export var CodePanel = styled(Panel)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n > ", " {\n ", ";\n min-height: 50px;\n ", " {\n fill: var(--color-content-inverse);\n position: relative;\n }\n ", " {\n color: var(--color-content-inverse);\n }\n }\n\n && {\n ", " {\n padding: 10px 20px 20px;\n background-color: var(--samples-panel-background-color);\n color: var(--color-content-inverse);\n }\n }\n"], ["\n > ", " {\n ", ";\n min-height: 50px;\n ", " {\n fill: var(--color-content-inverse);\n position: relative;\n }\n ", " {\n color: var(--color-content-inverse);\n }\n }\n\n && {\n ", " {\n padding: 10px 20px 20px;\n background-color: var(--samples-panel-background-color);\n color: var(--color-content-inverse);\n }\n }\n"])), PanelHeader, DarkHeader, ShelfIcon, PanelHeaderTitle, PanelBody);
13
+ var templateObject_1;
@@ -0,0 +1 @@
1
+ export declare const ContentPanel: import("styled-components").StyledComponent<typeof import("./PanelComponent").PanelComponent, any, {}, never>;
@@ -0,0 +1,12 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import styled from 'styled-components';
6
+ import { ShelfIcon } from '../icons/ShelfIcon';
7
+ import { PanelHeaderTitle } from './PanelHeaderTitle';
8
+ import { Panel } from './Panel';
9
+ import { PanelBody } from './PanelBody';
10
+ import { PanelHeader } from './PanelHeader';
11
+ export var ContentPanel = styled(Panel)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n border: 1px solid var(--global-border-color);\n\n font-size: var(--font-size-base);\n font-weight: var(--font-weight-regular);\n line-height: var(--line-height-base);\n\n &:not(:last-child) {\n margin-bottom: 20px;\n }\n\n > ", " {\n padding: calc(var(--spacing-unit) * 4);\n font-size: 18px;\n font-weight: var(--font-weight-bold);\n background-color: var(--panels-background-color);\n\n ", " {\n color: var(--color-content);\n }\n\n ", " {\n fill: var(--color-content);\n }\n }\n\n > ", " {\n padding: calc(var(--spacing-unit) * 4);\n }\n\n > ", " + ", " {\n padding-top: 1px; /* to prevent border overflow */\n }\n"], ["\n border: 1px solid var(--global-border-color);\n\n font-size: var(--font-size-base);\n font-weight: var(--font-weight-regular);\n line-height: var(--line-height-base);\n\n &:not(:last-child) {\n margin-bottom: 20px;\n }\n\n > ", " {\n padding: calc(var(--spacing-unit) * 4);\n font-size: 18px;\n font-weight: var(--font-weight-bold);\n background-color: var(--panels-background-color);\n\n ", " {\n color: var(--color-content);\n }\n\n ", " {\n fill: var(--color-content);\n }\n }\n\n > ", " {\n padding: calc(var(--spacing-unit) * 4);\n }\n\n > ", " + ", " {\n padding-top: 1px; /* to prevent border overflow */\n }\n"])), PanelHeader, PanelHeaderTitle, ShelfIcon, PanelBody, PanelHeader, PanelBody);
12
+ var templateObject_1;
@@ -0,0 +1 @@
1
+ export declare const DarkHeader: import("styled-components").FlattenSimpleInterpolation;