@redocly/theme 0.1.2 → 0.1.3

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 +1 -4
  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,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 DarkHeader = css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n padding: 10px 20px;\n line-height: 30px;\n z-index: 0;\n background-color: var(--samples-panel-controls-background-color);\n"], ["\n padding: 10px 20px;\n line-height: 30px;\n z-index: 0;\n background-color: var(--samples-panel-controls-background-color);\n"])));
7
+ var templateObject_1;
@@ -0,0 +1,2 @@
1
+ import { PanelComponent } from './PanelComponent';
2
+ export declare const Panel: import("styled-components").StyledComponent<typeof PanelComponent, any, {}, never>;
package/Panel/Panel.js ADDED
@@ -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 { PanelBody } from './PanelBody';
7
+ import { PanelComponent } from './PanelComponent';
8
+ import { PanelHeader } from './PanelHeader';
9
+ export var Panel = styled(PanelComponent)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n border-radius: var(--panels-border-radius);\n\n ", " + ", " {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n\n &:not(:last-child) {\n margin-bottom: 10px;\n }\n"], ["\n border-radius: var(--panels-border-radius);\n\n ", " + ", " {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n\n &:not(:last-child) {\n margin-bottom: 10px;\n }\n"])), PanelHeader, PanelBody);
10
+ var templateObject_1;
@@ -0,0 +1,6 @@
1
+ interface PanelBodyProps {
2
+ animate?: boolean;
3
+ hidden?: boolean;
4
+ }
5
+ export declare const PanelBody: import("styled-components").StyledComponent<"div", any, PanelBodyProps, never>;
6
+ export {};
@@ -0,0 +1,15 @@
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, { keyframes, css } from 'styled-components';
6
+ var showPanel = keyframes(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n 0% {\n transform: translateY(-10px);\n }\n 100% {\n transform: translateY(0);\n }\n"], ["\n 0% {\n transform: translateY(-10px);\n }\n 100% {\n transform: translateY(0);\n }\n"])));
7
+ var showPanelAnimation = css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n animation: ", " 0.2s;\n"], ["\n animation: ", " 0.2s;\n"])), showPanel);
8
+ export var PanelBody = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n ", ";\n ", ";\n\n border-top-left-radius: var(--panels-border-radius);\n border-top-right-radius: var(--panels-border-radius);\n border-bottom-right-radius: var(--panels-border-radius);\n border-bottom-left-radius: var(--panels-border-radius);\n background-color: var(--panels-background-color);\n"], ["\n ", ";\n ", ";\n\n border-top-left-radius: var(--panels-border-radius);\n border-top-right-radius: var(--panels-border-radius);\n border-bottom-right-radius: var(--panels-border-radius);\n border-bottom-left-radius: var(--panels-border-radius);\n background-color: var(--panels-background-color);\n"])), function (_a) {
9
+ var animate = _a.animate;
10
+ return animate && showPanelAnimation;
11
+ }, function (_a) {
12
+ var hidden = _a.hidden;
13
+ return hidden && 'visibility: hidden';
14
+ });
15
+ var templateObject_1, templateObject_2, templateObject_3;
@@ -0,0 +1,10 @@
1
+ import { PropsWithChildren, ReactNode } from 'react';
2
+ import { PanelHeaderProps } from './PanelHeader';
3
+ export interface PanelComponentProps {
4
+ expanded?: boolean;
5
+ className?: string;
6
+ header?: ReactNode | ((props: PanelHeaderProps) => ReactNode);
7
+ onToggle?: (expanded: boolean) => void;
8
+ }
9
+ export declare function PanelComponent({ expanded, header, className, children, onToggle, }: PropsWithChildren<PanelComponentProps>): JSX.Element;
10
+ export declare const InlineBox: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -0,0 +1,40 @@
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, jsxs as _jsxs } from "react/jsx-runtime";
17
+ import { useEffect, useState, } from 'react';
18
+ import styled from 'styled-components';
19
+ import { ShelfIcon } from '../icons';
20
+ import { PanelBody } from './PanelBody';
21
+ import { PanelHeader } from './PanelHeader';
22
+ import { PanelHeaderTitle } from './PanelHeaderTitle';
23
+ export function PanelComponent(_a) {
24
+ var _b = _a.expanded, expanded = _b === void 0 ? true : _b, header = _a.header, className = _a.className, children = _a.children, onToggle = _a.onToggle;
25
+ var _c = useState(expanded), isExpanded = _c[0], setExpanded = _c[1];
26
+ var _d = useState(false), animate = _d[0], setAnimate = _d[1];
27
+ var toggle = function (_a) {
28
+ var target = _a.target;
29
+ if (target instanceof HTMLAnchorElement)
30
+ return;
31
+ setAnimate(true);
32
+ setExpanded(!isExpanded);
33
+ onToggle === null || onToggle === void 0 ? void 0 : onToggle(!isExpanded);
34
+ };
35
+ useEffect(function () { return setExpanded(expanded); }, [expanded]);
36
+ return (_jsxs("div", __assign({ className: className, "data-cy": typeof header === 'string' ? ('panel-' + header).replace(/ /g, '-').toLowerCase() : null }, { children: [header &&
37
+ (typeof header === 'function' ? (header({ expanded: isExpanded, toggle: toggle })) : (_jsx(PanelHeader, __assign({ "data-cy": "panel-header", onClick: toggle, expanded: isExpanded }, { children: _jsxs(InlineBox, { children: [_jsx(PanelHeaderTitle, __assign({ "data-cy": "title" }, { children: header })), _jsx(ShelfIcon, { direction: isExpanded ? 'down' : 'right' })] }) })))), isExpanded && (_jsx(PanelBody, __assign({ "data-cy": "panel-body", hidden: !isExpanded, animate: animate }, { children: children })))] })));
38
+ }
39
+ export var InlineBox = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n"], ["\n display: inline-flex;\n align-items: center;\n"])));
40
+ var templateObject_1;
@@ -0,0 +1,7 @@
1
+ import { BaseSyntheticEvent } from 'react';
2
+ export interface PanelHeaderProps {
3
+ expanded: boolean;
4
+ disabled?: boolean;
5
+ toggle?: (e: BaseSyntheticEvent) => void;
6
+ }
7
+ export declare const PanelHeader: import("styled-components").StyledComponent<"div", any, PanelHeaderProps, never>;
@@ -0,0 +1,16 @@
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 PanelHeader = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: space-between;\n white-space: nowrap;\n cursor: pointer;\n\n border-top-left-radius: var(--panels-border-radius);\n border-top-right-radius: var(--panels-border-radius);\n border-bottom-right-radius: ", ";\n border-bottom-left-radius: ", ";\n\n pointer-events: ", ";\n"], ["\n position: relative;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: space-between;\n white-space: nowrap;\n cursor: pointer;\n\n border-top-left-radius: var(--panels-border-radius);\n border-top-right-radius: var(--panels-border-radius);\n border-bottom-right-radius: ", ";\n border-bottom-left-radius: ", ";\n\n pointer-events: ", ";\n"])), function (_a) {
7
+ var expanded = _a.expanded;
8
+ return (expanded ? '0' : 'var(--panels-border-radius)');
9
+ }, function (_a) {
10
+ var expanded = _a.expanded;
11
+ return (expanded ? '0' : 'var(--panels-border-radius)');
12
+ }, function (_a) {
13
+ var disabled = _a.disabled;
14
+ return (disabled ? 'none' : 'auto');
15
+ });
16
+ var templateObject_1;
@@ -0,0 +1 @@
1
+ export declare const PanelHeaderTitle: import("styled-components").StyledComponent<"span", 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 PanelHeaderTitle = styled.span(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n line-height: 1;\n margin-right: 5px;\n font-weight: 700;\n /* changed from var(--color-content-inverse) to var(--color-content)\n should change several components in openapi/graphql reference-docs to use inverse color\n */\n color: var(--color-content);\n"], ["\n line-height: 1;\n margin-right: 5px;\n font-weight: 700;\n /* changed from var(--color-content-inverse) to var(--color-content)\n should change several components in openapi/graphql reference-docs to use inverse color\n */\n color: var(--color-content);\n"])));
7
+ var templateObject_1;
@@ -0,0 +1,7 @@
1
+ export * from './CodePanel';
2
+ export * from './ContentPanel';
3
+ export * from './DarkHeader';
4
+ export * from './Panel';
5
+ export * from './PanelBody';
6
+ export * from './PanelHeader';
7
+ export * from './PanelHeaderTitle';
package/Panel/index.js ADDED
@@ -0,0 +1,7 @@
1
+ export * from './CodePanel';
2
+ export * from './ContentPanel';
3
+ export * from './DarkHeader';
4
+ export * from './Panel';
5
+ export * from './PanelBody';
6
+ export * from './PanelHeader';
7
+ export * from './PanelHeaderTitle';
@@ -0,0 +1,4 @@
1
+ export declare const SamplesControlButton: import("styled-components").StyledComponent<"button", any, {}, never>;
2
+ export declare const SampleControls: import("styled-components").StyledComponent<"div", any, {}, never>;
3
+ export declare const SampleControlsWrap: import("styled-components").StyledComponent<"div", any, {}, never>;
4
+ export declare const PreformattedCodeBlock: import("styled-components").StyledComponent<"pre", any, {}, never>;
@@ -0,0 +1,17 @@
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 { CodeBlock } from '../CodeBlock';
7
+ export var SamplesControlButton = styled.button(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: var(--samples-panel-controls-background-color);\n border: 0;\n outline: 0;\n border-radius: var(--global-border-radius);\n height: 20px;\n color: var(--color-content-inverse);\n font-size: 12px;\n line-height: 12px;\n cursor: pointer;\n padding: 1px 6px;\n min-width: 90px;\n\n ", " {\n padding: 2px 20px;\n }\n\n :hover,\n :focus {\n background-color: var(--samples-panel-controls-hover-background-color);\n }\n"], ["\n background-color: var(--samples-panel-controls-background-color);\n border: 0;\n outline: 0;\n border-radius: var(--global-border-radius);\n height: 20px;\n color: var(--color-content-inverse);\n font-size: 12px;\n line-height: 12px;\n cursor: pointer;\n padding: 1px 6px;\n min-width: 90px;\n\n ", " {\n padding: 2px 20px;\n }\n\n :hover,\n :focus {\n background-color: var(--samples-panel-controls-hover-background-color);\n }\n"])), function (_a) {
8
+ var theme = _a.theme;
9
+ return theme.mediaQueries.small;
10
+ });
11
+ export var SampleControls = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n padding: 10px 0;\n opacity: 0.7;\n transition: opacity 0.3s ease;\n text-align: right;\n\n &:focus-within {\n opacity: 1;\n }\n\n > div,\n > ", " {\n /* can have tooltip wrapper div also */\n margin-top: 5px;\n margin-left: 10px;\n\n ", " {\n margin-top: 0;\n }\n\n &:first-child {\n margin-left: 0;\n }\n }\n"], ["\n padding: 10px 0;\n opacity: 0.7;\n transition: opacity 0.3s ease;\n text-align: right;\n\n &:focus-within {\n opacity: 1;\n }\n\n > div,\n > ", " {\n /* can have tooltip wrapper div also */\n margin-top: 5px;\n margin-left: 10px;\n\n ", " {\n margin-top: 0;\n }\n\n &:first-child {\n margin-left: 0;\n }\n }\n"])), SamplesControlButton, function (_a) {
12
+ var theme = _a.theme;
13
+ return theme.mediaQueries.small;
14
+ });
15
+ export var SampleControlsWrap = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n &:hover ", " {\n opacity: 1;\n }\n"], ["\n &:hover ", " {\n opacity: 1;\n }\n"])), SampleControls);
16
+ export var PreformattedCodeBlock = styled(CodeBlock.withComponent('pre'))(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n overflow-x: auto;\n margin: 0;\n font-family: var(--code-font-family);\n padding: 20px;\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 white-space: var(--code-wrap, pre);\n"], ["\n overflow-x: auto;\n margin: 0;\n font-family: var(--code-font-family);\n padding: 20px;\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 white-space: var(--code-wrap, pre);\n"])));
17
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
@@ -0,0 +1 @@
1
+ export * from './SamplesPanelControls';
@@ -0,0 +1 @@
1
+ export * from './SamplesPanelControls';
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ export interface LogoProps {
3
+ imageUrl?: string;
4
+ href?: string;
5
+ altText?: string;
6
+ dataTestId?: string;
7
+ backgroundColor?: string;
8
+ }
9
+ export declare function SidebarLogo({ imageUrl, href, altText, backgroundColor, dataTestId, }?: LogoProps): 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
+ export function SidebarLogo(_a) {
19
+ var _b = _a === void 0 ? {} : _a, imageUrl = _b.imageUrl, href = _b.href, altText = _b.altText, backgroundColor = _b.backgroundColor, dataTestId = _b.dataTestId;
20
+ if (!imageUrl) {
21
+ return null;
22
+ }
23
+ var logo = _jsx(LogoImgEl, { src: imageUrl, alt: altText || 'logo' });
24
+ return (_jsx(LogoWrap, __assign({ "data-cy": dataTestId, style: { backgroundColor: backgroundColor } }, { children: href ? _jsx(Link, __assign({ href: href }, { children: logo })) : logo })));
25
+ }
26
+ var LogoImgEl = styled.img(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n max-height: var(--logo-max-height);\n max-width: var(--logo-max-width);\n padding: var(--logo-padding);\n width: 100%;\n display: block;\n"], ["\n max-height: var(--logo-max-height);\n max-width: var(--logo-max-width);\n padding: var(--logo-padding);\n width: 100%;\n display: block;\n"])));
27
+ var LogoWrap = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n text-align: center;\n line-height: 0;\n"], ["\n text-align: center;\n line-height: 0;\n"])));
28
+ var Link = styled.a(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: inline-block;\n"], ["\n display: inline-block;\n"])));
29
+ var templateObject_1, templateObject_2, templateObject_3;
@@ -0,0 +1 @@
1
+ export * from './SidebarLogo';
@@ -0,0 +1 @@
1
+ export * from './SidebarLogo';
@@ -0,0 +1,24 @@
1
+ /// <reference types="react" />
2
+ export interface SourceCodeProps {
3
+ lang: string;
4
+ source?: string;
5
+ externalSource?: ExternalSource;
6
+ withCopyButton?: boolean;
7
+ dataTestId?: string;
8
+ }
9
+ export interface Sample {
10
+ lang: string;
11
+ label?: string;
12
+ }
13
+ export declare type UnstableExternalCodeSample = Sample & {
14
+ get: (source: ExternalSource) => string;
15
+ };
16
+ export interface ExternalSource {
17
+ sample: UnstableExternalCodeSample;
18
+ exampleName?: string;
19
+ pathParams?: any;
20
+ properties?: any;
21
+ operation?: any;
22
+ }
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;
@@ -0,0 +1,31 @@
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, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import { highlight } from '../utils/highlight';
14
+ import { SampleControls, SampleControlsWrap, PreformattedCodeBlock } from '../SamplesPanelControls';
15
+ import { CopyButtonWrapper } from '../CopyButton';
16
+ export function Code(_a) {
17
+ var source = _a.source, lang = _a.lang, dataTestId = _a.dataTestId;
18
+ return (_jsx(PreformattedCodeBlock, { dangerouslySetInnerHTML: { __html: highlight(source, lang) }, "data-cy": dataTestId }));
19
+ }
20
+ export function SourceCode(_a) {
21
+ var _b, _c;
22
+ var lang = _a.lang, source = _a.source, externalSource = _a.externalSource, withCopyButton = _a.withCopyButton, _d = _a.dataTestId, dataTestId = _d === void 0 ? 'source-code' : _d;
23
+ var _source = source || ((_c = (_b = externalSource === null || externalSource === void 0 ? void 0 : externalSource.sample) === null || _b === void 0 ? void 0 : _b.get) === null || _c === void 0 ? void 0 : _c.call(_b, externalSource)) || '';
24
+ if (withCopyButton) {
25
+ return (_jsx(CopyButtonWrapper, __assign({ data: source }, { children: function (_a) {
26
+ var renderCopyButton = _a.renderCopyButton;
27
+ return (_jsxs(SampleControlsWrap, { children: [_jsx(SampleControls, __assign({ "data-cy": "copy-button" }, { children: renderCopyButton() })), _jsx(Code, { lang: lang, source: _source, dataTestId: dataTestId })] }));
28
+ } })));
29
+ }
30
+ return _jsx(Code, { dataTestId: dataTestId, lang: lang, source: _source });
31
+ }
@@ -0,0 +1 @@
1
+ export * from './SourceCode';
@@ -0,0 +1 @@
1
+ export * from './SourceCode';
@@ -0,0 +1,12 @@
1
+ import type { PropsWithChildren } from 'react';
2
+ import React from 'react';
3
+ export interface TooltipProps {
4
+ tip: string;
5
+ open?: boolean;
6
+ placement?: 'top' | 'bottom' | 'left' | 'right';
7
+ className?: string;
8
+ width?: string;
9
+ dataTestId?: string;
10
+ }
11
+ export declare function TooltipComponent({ children, open, tip, placement, className, width, dataTestId, }: PropsWithChildren<TooltipProps>): JSX.Element;
12
+ export declare const Tooltip: React.NamedExoticComponent<PropsWithChildren<TooltipProps>>;
@@ -0,0 +1,57 @@
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, jsxs as _jsxs } from "react/jsx-runtime";
17
+ import { useCallback, useEffect, memo } from 'react';
18
+ import styled, { css } from 'styled-components';
19
+ import { useControl } from '../hooks';
20
+ export function TooltipComponent(_a) {
21
+ var children = _a.children, open = _a.open, tip = _a.tip, _b = _a.placement, placement = _b === void 0 ? 'top' : _b, _c = _a.className, className = _c === void 0 ? 'default' : _c, width = _a.width, _d = _a.dataTestId, dataTestId = _d === void 0 ? tip : _d;
22
+ var _e = useControl(open), isOpened = _e.isOpened, handleOpen = _e.handleOpen, handleClose = _e.handleClose;
23
+ var isControlled = open !== undefined;
24
+ useEffect(function () {
25
+ if (isControlled) {
26
+ if (open) {
27
+ handleOpen();
28
+ }
29
+ else {
30
+ handleClose();
31
+ }
32
+ }
33
+ }, [open, isControlled, handleOpen, handleClose]);
34
+ var handleEnter = useCallback(function () {
35
+ handleOpen();
36
+ }, [handleOpen]);
37
+ var handleLeave = useCallback(function () {
38
+ handleClose();
39
+ }, [handleClose]);
40
+ return (_jsxs(TooltipWrapper, __assign({ onMouseEnter: isControlled ? undefined : handleEnter, onMouseLeave: isControlled ? undefined : handleLeave, onClick: isControlled ? undefined : handleLeave, className: "tooltip-".concat(className) }, { children: [children, isOpened && (_jsx(TooltipBody, __assign({ "data-cy": dataTestId, placement: placement, width: width }, { children: tip })))] })));
41
+ }
42
+ export var Tooltip = memo(TooltipComponent);
43
+ var PLACEMENTS = {
44
+ top: css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n top: 0;\n left: 50%;\n transform: translate(-50%, -99%);\n margin-top: -10px;\n\n &::after {\n border-left: 5px solid transparent;\n border-right: 5px solid transparent;\n border-top-width: 6px;\n border-top-style: solid;\n bottom: 0;\n left: 50%;\n transform: translate(-50%, 99%);\n }\n "], ["\n top: 0;\n left: 50%;\n transform: translate(-50%, -99%);\n margin-top: -10px;\n\n &::after {\n border-left: 5px solid transparent;\n border-right: 5px solid transparent;\n border-top-width: 6px;\n border-top-style: solid;\n bottom: 0;\n left: 50%;\n transform: translate(-50%, 99%);\n }\n "]))),
45
+ bottom: css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n bottom: 0;\n left: 50%;\n transform: translate(-50%, 99%);\n margin-bottom: -10px;\n\n &::after {\n border-left: 5px solid transparent;\n border-right: 5px solid transparent;\n border-bottom-width: 6px;\n border-bottom-style: solid;\n top: 0;\n left: 50%;\n transform: translate(-50%, -99%);\n }\n "], ["\n bottom: 0;\n left: 50%;\n transform: translate(-50%, 99%);\n margin-bottom: -10px;\n\n &::after {\n border-left: 5px solid transparent;\n border-right: 5px solid transparent;\n border-bottom-width: 6px;\n border-bottom-style: solid;\n top: 0;\n left: 50%;\n transform: translate(-50%, -99%);\n }\n "]))),
46
+ left: css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n top: 50%;\n left: 0;\n transform: translate(-100%, -50%);\n margin-left: -10px;\n\n &::after {\n border-top: 5px solid transparent;\n border-bottom: 5px solid transparent;\n border-left-width: 6px;\n border-left-style: solid;\n top: 50%;\n right: 0;\n transform: translate(99%, -50%);\n }\n "], ["\n top: 50%;\n left: 0;\n transform: translate(-100%, -50%);\n margin-left: -10px;\n\n &::after {\n border-top: 5px solid transparent;\n border-bottom: 5px solid transparent;\n border-left-width: 6px;\n border-left-style: solid;\n top: 50%;\n right: 0;\n transform: translate(99%, -50%);\n }\n "]))),
47
+ right: css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n top: 50%;\n right: 0;\n transform: translate(100%, -50%);\n margin-right: -10px;\n\n &::after {\n border-top: 5px solid transparent;\n border-bottom: 5px solid transparent;\n border-right-width: 6px;\n border-right-style: solid;\n top: 50%;\n left: 0;\n transform: translate(-99%, -50%);\n }\n "], ["\n top: 50%;\n right: 0;\n transform: translate(100%, -50%);\n margin-right: -10px;\n\n &::after {\n border-top: 5px solid transparent;\n border-bottom: 5px solid transparent;\n border-right-width: 6px;\n border-right-style: solid;\n top: 50%;\n left: 0;\n transform: translate(-99%, -50%);\n }\n "]))),
48
+ };
49
+ var TooltipWrapper = styled.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n position: relative;\n display: inline-block;\n"], ["\n position: relative;\n display: inline-block;\n"])));
50
+ var TooltipBody = styled.span(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n display: inline-block;\n\n position: absolute;\n text-align: center;\n\n padding: 10px 20px;\n max-width: 250px;\n white-space: normal;\n overflow-wrap: break-word;\n\n border-radius: var(--global-border-radius);\n pointer-events: none;\n transition: opacity 0.3s ease-out;\n\n font-size: 13px;\n\n &::after {\n position: absolute;\n\n content: ' ';\n display: inline-block;\n width: 0;\n height: 0;\n border-color: var(--tooltip-background-color);\n }\n\n background: var(--tooltip-background-color);\n color: var(--tooltip-color);\n box-shadow: rgb(0 0 0 / 25%) 0 2px 4px;\n\n width: ", ";\n ", "\n"], ["\n display: inline-block;\n\n position: absolute;\n text-align: center;\n\n padding: 10px 20px;\n max-width: 250px;\n white-space: normal;\n overflow-wrap: break-word;\n\n border-radius: var(--global-border-radius);\n pointer-events: none;\n transition: opacity 0.3s ease-out;\n\n font-size: 13px;\n\n &::after {\n position: absolute;\n\n content: ' ';\n display: inline-block;\n width: 0;\n height: 0;\n border-color: var(--tooltip-background-color);\n }\n\n background: var(--tooltip-background-color);\n color: var(--tooltip-color);\n box-shadow: rgb(0 0 0 / 25%) 0 2px 4px;\n\n width: ", ";\n ", "\n"])), function (_a) {
51
+ var width = _a.width;
52
+ return width || '120px';
53
+ }, function (_a) {
54
+ var placement = _a.placement;
55
+ return "".concat(PLACEMENTS[placement], ";");
56
+ });
57
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6;
@@ -0,0 +1 @@
1
+ export * from './Tooltip';
@@ -0,0 +1 @@
1
+ export * from './Tooltip';
@@ -0,0 +1 @@
1
+ export declare const GlobalStyle: import("styled-components").GlobalStyleComponent<{}, import("styled-components").DefaultTheme>;
package/globalStyle.js ADDED
@@ -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 { createGlobalStyle } from 'styled-components';
6
+ export var GlobalStyle = createGlobalStyle(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n /*\n * Static classnames that can be used to override styles for components:\n * download-specification-button, next-section-button, button-base\n */\n :root {\n /* === Palette === */\n\n /*\n * Color palette\n */\n --color-primary-100: #62a1ff;\n --color-primary-200: #4892ff;\n --color-primary-300: #2f83ff;\n --color-primary-400: #1573ff;\n --color-primary-500: #0065fb;\n --color-primary-600: #005be2;\n --color-primary-700: #0050c8;\n --color-primary-800: #0046af;\n --color-primary-900: #003c95;\n\n --color-secondary-100: #ffffff;\n --color-secondary-200: #f5f7fa;\n --color-secondary-300: #f3f4f6;\n --color-secondary-400: #e4e7eb;\n --color-secondary-500: #d5dae0;\n --color-secondary-600: #c7cdd5;\n --color-secondary-700: #b8c0ca;\n --color-secondary-800: #a9b3c0;\n --color-secondary-900: #9ba6b5;\n\n --color-emphasis-100: #ffffff;\n --color-emphasis-200: #e9eaec;\n --color-emphasis-300: #cdd0d5;\n --color-emphasis-400: #b2b6bd;\n --color-emphasis-500: #969ca6;\n --color-emphasis-600: #7a828f;\n --color-emphasis-700: #626974;\n --color-emphasis-800: #4b5058;\n --color-emphasis-900: #1c1e21;\n\n --color-accent-100: #b3dcf3;\n --color-accent-200: #a6dfff;\n --color-accent-300: #8cd5ff;\n --color-accent-400: #73ccff;\n --color-accent-500: #59c3ff;\n --color-accent-600: #40baff;\n --color-accent-700: #26b1ff;\n --color-accent-800: #0da7ff;\n --color-accent-900: #009bf2;\n\n --color-success-100: #98eda0;\n --color-success-200: #82e98c;\n --color-success-300: #6ce678;\n --color-success-400: #57e264;\n --color-success-500: #41de50;\n --color-success-600: #2bda3c;\n --color-success-700: #23c933;\n --color-success-800: #1fb32d;\n --color-success-900: #1b9e28;\n\n --color-warning-100: #ffc966;\n --color-warning-200: #ffc04d;\n --color-warning-300: #ffb733;\n --color-warning-400: #ffae1a;\n --color-warning-500: #ffa500;\n --color-warning-600: #e69400;\n --color-warning-700: #cc8400;\n --color-warning-800: #b37300;\n --color-warning-900: #996300;\n\n --color-error-100: #ffc7c7;\n --color-error-200: #ffaeae;\n --color-error-300: #ff9494;\n --color-error-400: #ff7b7b;\n --color-error-500: #ff6161;\n --color-error-600: #ff4747;\n --color-error-700: #ff2e2e;\n --color-error-800: #ff1414;\n --color-error-900: #ff0000;\n\n /* === Typography === */\n\n --color-content: #1f2933;\n --color-content-inverse: var(--color-secondary-200);\n --color-content-secondary: #7b8794;\n\n --font-size-base: 14px;\n --line-height-base: 1.5em;\n --font-weight-regular: 400;\n --font-weight-bold: 600;\n --font-weight-bolder: 700;\n --font-family-base: Source Sans Pro, sans-serif;\n --font-family-monospaced: Source Code Pro, monospace;\n\n --smoothing: antialiased; // text-smoothing\n --text-rendering: optimizeSpeed; // text-rendering\n\n /*\n * Spacing\n */\n --spacing-unit: 5px;\n --spacing-horizontal: calc(var(--spacing-unit) * 8);\n --spacing-vertical: calc(var(--spacing-unit) * 4);\n\n /*\n * Global\n */\n --global-border-radius: 4px;\n --global-border-width: 1px;\n --global-border-color: var(--color-secondary-400);\n --global-border-color-secondary: #616e7c;\n --global-background-color: transparent;\n\n /* === Page layout === */\n //TBD\n /* === Navbar === */\n //--navbar-height:\n //TBD\n\n /* === Menu (sidebar) === */\n\n --sidebar-width: 285px;\n --sidebar-background-color: #fff;\n --sidebar-right-line-color: var(--global-border-color);\n --sidebar-spacing-unit: 8px;\n --sidebar-spacing-horizontal: var(--sidebar-spacing-unit);\n --sidebar-spacing-vertical: var(--sidebar-spacing-unit);\n\n --sidebar-word-break: 'inherit';\n --sidebar-separator-label-color: var(--sidebar-item-color);\n --sidebar-separator-line-color: #dadada;\n --sidebar-chevron-color: var(--sidebar-item-color);\n --sidebar-chevron-size: var(--sidebar-spacing-unit);\n\n --sidebar-item-spacing-offset-top: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-item-spacing-offset-left: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-item-spacing-offset-nesting: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-item-border-radius: 4px;\n --sidebar-item-font-family: var(--font-family-base);\n --sidebar-item-font-size: var(--font-size-base);\n --sidebar-item-color: var(--color-content);\n --sidebar-item-active-color: var(--color-content);\n --sidebar-item-background-color: #fff;\n --sidebar-item-active-background-color: var(--global-border-color);\n\n //TBD\n /* === Footer === */\n //TBD\n /* === Table of contents === */\n //TBD\n /* === Various components: buttons, inputs, alerts, tooltip === */\n\n /*\n * Buttons\n */\n --button-color: white;\n --button-background-color: var(--color-emphasis-500);\n --button-hover-background-color: var(--color-emphasis-600);\n --button-active-background-color: var(--color-emphasis-700);\n --button-outlined-active-border-color: var(--color-emphasis-800);\n --button-border-radius: var(--global-border-radius);\n --button-font-family: inherit;\n --button-font-weight: var(--font-weight-bold);\n --button-box-shadow: none;\n --button-active-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.1);\n\n .button-color-primary {\n --button-color: white;\n --button-background-color: var(--color-primary-500);\n --button-hover-background-color: var(--color-primary-600);\n --button-active-background-color: var(--color-primary-700);\n --button-outlined-active-border-color: var(--color-primary-800);\n }\n\n .button-color-secondary {\n --button-color: var(--color-emphasis-800);\n --button-background-color: var(--color-secondary-400);\n --button-hover-background-color: var(--color-secondary-500);\n --button-active-background-color: var(--color-secondary-600);\n --button-outlined-active-border-color: var(--color-secondary-700);\n }\n\n --button-small-font-size: 12px;\n --button-small-padding: 8px 10px;\n --button-small-min-width: 90px;\n --button-medium-font-size: 14px;\n --button-medium-padding: 8px 20px;\n --button-medium-min-width: 120px;\n --button-large-font-size: 14px;\n --button-large-padding: 12px 24px;\n --button-large-min-width: 150px;\n --button-xlarge-font-size: 16px;\n --button-xlarge-padding: 20px 24px;\n --button-xlarge-min-width: 200px;\n\n /*\n * Tooltip\n */\n --tooltip-color: var(--color-secondary-300);\n --tooltip-background-color: #52606d;\n\n .tooltip-copy-button {\n --tooltip-color: #000;\n --tooltip-background-color: #fff;\n }\n\n /* === Markdown/Page content (tables, inline code, blockquotes) === */\n\n /*\n * Headings\n * --h-{css-property-name} is fallback for h1...h6\n */\n --h-font-family: Source Sans Pro, sans-serif;\n --h-font-weight: var(--font-weight-bolder);\n --h-color: var(--color-content);\n\n --h1-font-size: 36px;\n --h2-font-size: 28px;\n --h3-font-size: 18px;\n --h4-font-size: 16px;\n --h5-font-size: 14px;\n --h6-font-size: 12px;\n\n --h1-line-height: 36px;\n --h2-line-height: 28px;\n --h3-line-height: 18px;\n --h4-line-height: 16px;\n --h5-line-height: 14px;\n --h6-line-height: 12px;\n\n --code-font-size: 13px;\n --code-font-family: var(--font-family-monospaced);\n --code-font-weight: 400;\n --code-wrap: pre;\n\n --inline-code-font-size: var(--code-font-size);\n --inline-code-font-family: var(--code-font-family);\n --inline-code-color: #e53935;\n --inline-code-background-color: var(--color-secondary-200);\n --inline-code-border-color: var(--global-border-color);\n --inline-code-border-radius: var(--global-border-radius);\n\n --code-block-font-size: var(--code-font-size);\n --code-block-font-family: var(--code-font-family);\n --code-block-color: #f1928f;\n --code-block-background-color: rgba(217, 205, 199, 0.05);\n --code-block-border-color: var(--global-border-color);\n --code-block-border-radius: 8px;\n --code-block-max-height: 600px;\n --code-block-word-break: initial;\n --code-block-preformatted-background-color: #323f4b;\n\n /*\n * Links\n */\n --link-color: var(--color-primary-500);\n --link-decoration: none;\n --link-hover-color: var(--color-primary-100);\n --link-hover-decoration: underline;\n\n /* === ref docs and graphql docs specific === */\n /*\n * Logo\n */\n --logo-max-height: 285px;\n --logo-max-width: 285px;\n --logo-padding: 2px;\n\n /*\n * Http colors\n */\n --color-http-get: #3a9601;\n --color-http-post: #0065fb;\n --color-http-put: #93527b;\n --color-http-options: #947014;\n --color-http-patch: #bf581d;\n --color-http-delete: #c83637;\n --color-http-basic: #707070;\n --color-http-link: #07818f;\n --color-http-head: #a23dad;\n --color-http-hook: var(--color-http-post);\n\n /*\n * Response colors\n */\n --response-success-border-color: #b1e996;\n --response-success-background-color: #f6fff4;\n --response-success-text-color: var(--response-success-border-color);\n\n --response-error-border-color: #ffc9c9;\n --response-error-background-color: #fff4f4;\n --response-error-text-color: var(--response-error-border-color);\n\n --response-redirect-border-color: var(--color-warning-500);\n --response-redirect-background-color: #ffa5001a;\n --response-redirect-text-color: var(--response-redirect-border-color);\n\n --response-info-border-color: #87ceeb;\n --response-info-background-color: #87ceeb1a;\n --response-info-text-color: var(--response-info-border-color);\n\n /*\n * Panels\n */\n --panels-border-radius: 8px;\n --panels-background-color: #fff;\n\n --samples-panel-gap: 20px;\n --samples-panel-width: 37.5%;\n --samples-panel-block-background-color: #fff;\n --samples-panel-background-color: #52606d;\n --samples-panel-callback-background-color: var(--samples-panel-callback-background-color);\n --samples-panel-controls-background-color: #323f4b;\n --samples-panel-controls-hover-background-color: #3c4c5a;\n --samples-panel-controls-active-border-color: var(--color-accent-500);\n --samples-panel-text-color: #fff;\n --samples-panel-heading-color: #fff;\n\n --samples-panel-markdown-background-color: #3c4c5a;\n --samples-panel-markdown-border-color: #46596a;\n\n --try-it-panel-tab-background-color: var(--samples-panel-background-color);\n --try-it-panel-active-tab-background-color: #47535e;\n --try-it-panel-active-tab-border-color: var(--color-accent-500);\n --try-it-panel-disabled-tab-color: rgba(245, 247, 250, 0.7);\n --try-it-panel-controls-background-color: var(--samples-panel-controls-background-color);\n --try-it-panel-action-button-width: auto;\n\n --request-and-response-panel-background-color: #fff;\n\n /*\n * Layout\n */\n --layout-buttons-top-offset: 20px;\n --layout-buttons-height: 36px;\n --layout-buttons-width: 36px;\n\n --layout-stacked-small-max-width: 90%;\n --layout-stacked-medium-max-width: 75%;\n --layout-stacked-large-max-width: 1200px;\n\n --layout-three-panel-small-max-width: 100%;\n --layout-three-panel-medium-max-width: 100%;\n --layout-three-panel-large-max-width: 1800px;\n\n --layout-middle-panel-small-max-width: none;\n --layout-middle-panel-medium-max-width: none;\n --layout-middle-panel-large-max-width: none;\n\n /*\n * Schema\n */\n --schema-lines-color: var(--global-border-color);\n --schema-default-details-width: 70%;\n --schema-type-name-color: var(--color-content-secondary);\n --schema-type-title-color: var(--color-content-secondary);\n --schema-require-label-color: var(--color-error-900);\n --schema-labels-text-size: 0.9em;\n --schema-nesting-spacing: 1em;\n --schema-nested-background-color: var(--color-secondary-200);\n --schema-chevron-color: var(--color-content);\n --schema-chevron-size: 9px;\n\n --schema-controls-color: var(--color-emphasis-800);\n --schema-controls-background-color: var(--color-secondary-400);\n --schema-controls-hover-background-color: var(--color-secondary-500);\n --schema-controls-border-color: var(--color-secondary-600);\n\n --field-name-font-size: var(--code-font-size);\n --field-name-font-family: var(--code-font-family);\n --field-enum-background-color: var(--inline-code-background-color);\n --field-constraint-background-color: var(--inline-code-background-color);\n\n /*\n * Search\n */\n --search-input-border-bottom: #e6e6e6;\n --search-results-background-color: #f2f2f2;\n --search-results-active-item-background-color: #e6e6e6;\n --search-marked-background-color: #ffff03;\n --search-popup-header-background-color: var(--color-secondary-200);\n --search-clear-button-background-color: var(--color-secondary-400);\n --search-clear-button-hover-background-color: var(--color-secondary-600);\n\n /*\n * Other\n */\n --badge-color: var(--color-emphasis-100);\n --badge-background-color: var(--color-primary-500);\n --deprecated-badge-color: var(--color-emphasis-100);\n --deprecated-badge-background-color: var(--color-warning-500);\n\n --recursive-label-color: var(--color-warning-500);\n\n --http-badge-font-size: 12px;\n --http-badge-line-height: 20px;\n --http-badge-font-family: var(--code-font-family);\n --http-badge-font-weight: var(--font-weight-bold);\n --http-badge-border-radius: 16px;\n --http-badge-color: var(--color-content-inverse);\n\n --http-badge-menu-font-size: 8px;\n --http-badge-menu-line-height: 14px;\n\n --spinner-color: var(--color-primary-500);\n\n --linear-progress-color: var(--color-accent-500);\n --linear-progress-background-color: var(--color-accent-100);\n\n /* Floating action button */\n --fab-color: #0065FB;\n --fab-background-color: #f2f2f2;\n\n\n /**\n * Sidebar\n * */\n --sidebar-spacing-unit: 8px;\n --sidebar-margin-left: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-padding-horizontal: var(--sidebar-spacing-unit);\n --sidebar-padding-vertical: var(--sidebar-spacing-unit);\n\n --sidebar-spacing-padding-vertical: var(--sidebar-spacing-unit);\n --sidebar-spacing-padding-horizontal: var(--sidebar-spacing-unit);\n --sidebar-spacing-offset-top: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-spacing-offset-left: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-spacing-offset-nesting: calc(var(--sidebar-spacing-unit) * 2);\n\n --sidebar-chevron-size: var(--sidebar-spacing-unit);\n --sidebar-chevron-color: var(--sidebar-text-color);\n\n --sidebar-border-radius: 4px;\n --sidebar-background-color: #fff;\n --sidebar-font-size: var(--font-size-base);\n --sidebar-font-family: var(--font-family-primary);\n --sidebar-right-line-color: var(--color-border-light);\n --sidebar-text-color: var(--color-text-main);\n --sidebar-text-active-color: var(--sidebar-text-color);\n --sidebar-text-active-background-color: var(--color-border-light);\n --sidebar-width: 285px;\n\n --sidebar-separator-line-color: #dadada;\n --sidebar-separator-label-color: var(--sidebar-text-color);\n\n /**\n * Portal Logo\n * */\n --logo-height: 2rem;\n --logo-margin: var(--sidebar-margin-left);\n\n /**\n * Portal Navbar\n * */\n --navbar-height: 60px;\n --navbar-color-text: var(--color-content-inverse);\n --navbar-color-background: var(--color-primary-500);\n\n /**\n * Portal Navbar Item\n * */\n --navbar-item-font-size: 16px;\n --navbar-item-margin-horizontal: 0;\n --navbar-item-margin-vertical: 0;\n --navbar-item-border-radius: 10px;\n --navbar-item-font-weight: var(--font-weight-bold);\n --navbar-item-active-background-color: #1b75fa;\n --navbar-item-active-text-color: var(--color-primary-contrast);\n --navbar-item-active-text-decoration: none;\n }\n\n @media (prefers-color-scheme: dark) {\n :root {\n --color-content: #f5f7fa;\n --global-border-color: #4c4c4c;\n --inline-code-color: #ed8282;\n --schema-require-label-color: #e55252;\n --global-background-color: #101010;\n --sidebar-background-color: #101010;\n --sidebar-item-active-background-color: #424242;\n --samples-panel-block-background-color: var(--sidebar-background-color);\n --color-secondary-200: #1f2933;\n --color-primary-900: #4892ff;\n --search-marked-background-color: #707000;\n\n --response-success-border-color: #3c8d06;\n --response-success-background-color: #2e7102;\n --response-error-border-color: #8d5c5c;\n --response-error-background-color: #802828;\n --response-redirect-border-color: #ffa500;\n --response-redirect-background-color: #ffa5001a;\n --response-info-border-color: #87ceeb;\n --response-info-background-color: #87ceeb1a;\n\n --link-color: #4d91ff;\n --link-hover-color: #3686ff;\n\n --navbar-color-background: #f2f2f2;\n\n .search-input {\n color: var(--color-content);\n }\n\n .button-clear {\n --color-secondary-600: #3e4c59;\n --color-secondary-400: #1b1b1b;\n }\n }\n }\n"], ["\n /*\n * Static classnames that can be used to override styles for components:\n * download-specification-button, next-section-button, button-base\n */\n :root {\n /* === Palette === */\n\n /*\n * Color palette\n */\n --color-primary-100: #62a1ff;\n --color-primary-200: #4892ff;\n --color-primary-300: #2f83ff;\n --color-primary-400: #1573ff;\n --color-primary-500: #0065fb;\n --color-primary-600: #005be2;\n --color-primary-700: #0050c8;\n --color-primary-800: #0046af;\n --color-primary-900: #003c95;\n\n --color-secondary-100: #ffffff;\n --color-secondary-200: #f5f7fa;\n --color-secondary-300: #f3f4f6;\n --color-secondary-400: #e4e7eb;\n --color-secondary-500: #d5dae0;\n --color-secondary-600: #c7cdd5;\n --color-secondary-700: #b8c0ca;\n --color-secondary-800: #a9b3c0;\n --color-secondary-900: #9ba6b5;\n\n --color-emphasis-100: #ffffff;\n --color-emphasis-200: #e9eaec;\n --color-emphasis-300: #cdd0d5;\n --color-emphasis-400: #b2b6bd;\n --color-emphasis-500: #969ca6;\n --color-emphasis-600: #7a828f;\n --color-emphasis-700: #626974;\n --color-emphasis-800: #4b5058;\n --color-emphasis-900: #1c1e21;\n\n --color-accent-100: #b3dcf3;\n --color-accent-200: #a6dfff;\n --color-accent-300: #8cd5ff;\n --color-accent-400: #73ccff;\n --color-accent-500: #59c3ff;\n --color-accent-600: #40baff;\n --color-accent-700: #26b1ff;\n --color-accent-800: #0da7ff;\n --color-accent-900: #009bf2;\n\n --color-success-100: #98eda0;\n --color-success-200: #82e98c;\n --color-success-300: #6ce678;\n --color-success-400: #57e264;\n --color-success-500: #41de50;\n --color-success-600: #2bda3c;\n --color-success-700: #23c933;\n --color-success-800: #1fb32d;\n --color-success-900: #1b9e28;\n\n --color-warning-100: #ffc966;\n --color-warning-200: #ffc04d;\n --color-warning-300: #ffb733;\n --color-warning-400: #ffae1a;\n --color-warning-500: #ffa500;\n --color-warning-600: #e69400;\n --color-warning-700: #cc8400;\n --color-warning-800: #b37300;\n --color-warning-900: #996300;\n\n --color-error-100: #ffc7c7;\n --color-error-200: #ffaeae;\n --color-error-300: #ff9494;\n --color-error-400: #ff7b7b;\n --color-error-500: #ff6161;\n --color-error-600: #ff4747;\n --color-error-700: #ff2e2e;\n --color-error-800: #ff1414;\n --color-error-900: #ff0000;\n\n /* === Typography === */\n\n --color-content: #1f2933;\n --color-content-inverse: var(--color-secondary-200);\n --color-content-secondary: #7b8794;\n\n --font-size-base: 14px;\n --line-height-base: 1.5em;\n --font-weight-regular: 400;\n --font-weight-bold: 600;\n --font-weight-bolder: 700;\n --font-family-base: Source Sans Pro, sans-serif;\n --font-family-monospaced: Source Code Pro, monospace;\n\n --smoothing: antialiased; // text-smoothing\n --text-rendering: optimizeSpeed; // text-rendering\n\n /*\n * Spacing\n */\n --spacing-unit: 5px;\n --spacing-horizontal: calc(var(--spacing-unit) * 8);\n --spacing-vertical: calc(var(--spacing-unit) * 4);\n\n /*\n * Global\n */\n --global-border-radius: 4px;\n --global-border-width: 1px;\n --global-border-color: var(--color-secondary-400);\n --global-border-color-secondary: #616e7c;\n --global-background-color: transparent;\n\n /* === Page layout === */\n //TBD\n /* === Navbar === */\n //--navbar-height:\n //TBD\n\n /* === Menu (sidebar) === */\n\n --sidebar-width: 285px;\n --sidebar-background-color: #fff;\n --sidebar-right-line-color: var(--global-border-color);\n --sidebar-spacing-unit: 8px;\n --sidebar-spacing-horizontal: var(--sidebar-spacing-unit);\n --sidebar-spacing-vertical: var(--sidebar-spacing-unit);\n\n --sidebar-word-break: 'inherit';\n --sidebar-separator-label-color: var(--sidebar-item-color);\n --sidebar-separator-line-color: #dadada;\n --sidebar-chevron-color: var(--sidebar-item-color);\n --sidebar-chevron-size: var(--sidebar-spacing-unit);\n\n --sidebar-item-spacing-offset-top: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-item-spacing-offset-left: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-item-spacing-offset-nesting: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-item-border-radius: 4px;\n --sidebar-item-font-family: var(--font-family-base);\n --sidebar-item-font-size: var(--font-size-base);\n --sidebar-item-color: var(--color-content);\n --sidebar-item-active-color: var(--color-content);\n --sidebar-item-background-color: #fff;\n --sidebar-item-active-background-color: var(--global-border-color);\n\n //TBD\n /* === Footer === */\n //TBD\n /* === Table of contents === */\n //TBD\n /* === Various components: buttons, inputs, alerts, tooltip === */\n\n /*\n * Buttons\n */\n --button-color: white;\n --button-background-color: var(--color-emphasis-500);\n --button-hover-background-color: var(--color-emphasis-600);\n --button-active-background-color: var(--color-emphasis-700);\n --button-outlined-active-border-color: var(--color-emphasis-800);\n --button-border-radius: var(--global-border-radius);\n --button-font-family: inherit;\n --button-font-weight: var(--font-weight-bold);\n --button-box-shadow: none;\n --button-active-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.1);\n\n .button-color-primary {\n --button-color: white;\n --button-background-color: var(--color-primary-500);\n --button-hover-background-color: var(--color-primary-600);\n --button-active-background-color: var(--color-primary-700);\n --button-outlined-active-border-color: var(--color-primary-800);\n }\n\n .button-color-secondary {\n --button-color: var(--color-emphasis-800);\n --button-background-color: var(--color-secondary-400);\n --button-hover-background-color: var(--color-secondary-500);\n --button-active-background-color: var(--color-secondary-600);\n --button-outlined-active-border-color: var(--color-secondary-700);\n }\n\n --button-small-font-size: 12px;\n --button-small-padding: 8px 10px;\n --button-small-min-width: 90px;\n --button-medium-font-size: 14px;\n --button-medium-padding: 8px 20px;\n --button-medium-min-width: 120px;\n --button-large-font-size: 14px;\n --button-large-padding: 12px 24px;\n --button-large-min-width: 150px;\n --button-xlarge-font-size: 16px;\n --button-xlarge-padding: 20px 24px;\n --button-xlarge-min-width: 200px;\n\n /*\n * Tooltip\n */\n --tooltip-color: var(--color-secondary-300);\n --tooltip-background-color: #52606d;\n\n .tooltip-copy-button {\n --tooltip-color: #000;\n --tooltip-background-color: #fff;\n }\n\n /* === Markdown/Page content (tables, inline code, blockquotes) === */\n\n /*\n * Headings\n * --h-{css-property-name} is fallback for h1...h6\n */\n --h-font-family: Source Sans Pro, sans-serif;\n --h-font-weight: var(--font-weight-bolder);\n --h-color: var(--color-content);\n\n --h1-font-size: 36px;\n --h2-font-size: 28px;\n --h3-font-size: 18px;\n --h4-font-size: 16px;\n --h5-font-size: 14px;\n --h6-font-size: 12px;\n\n --h1-line-height: 36px;\n --h2-line-height: 28px;\n --h3-line-height: 18px;\n --h4-line-height: 16px;\n --h5-line-height: 14px;\n --h6-line-height: 12px;\n\n --code-font-size: 13px;\n --code-font-family: var(--font-family-monospaced);\n --code-font-weight: 400;\n --code-wrap: pre;\n\n --inline-code-font-size: var(--code-font-size);\n --inline-code-font-family: var(--code-font-family);\n --inline-code-color: #e53935;\n --inline-code-background-color: var(--color-secondary-200);\n --inline-code-border-color: var(--global-border-color);\n --inline-code-border-radius: var(--global-border-radius);\n\n --code-block-font-size: var(--code-font-size);\n --code-block-font-family: var(--code-font-family);\n --code-block-color: #f1928f;\n --code-block-background-color: rgba(217, 205, 199, 0.05);\n --code-block-border-color: var(--global-border-color);\n --code-block-border-radius: 8px;\n --code-block-max-height: 600px;\n --code-block-word-break: initial;\n --code-block-preformatted-background-color: #323f4b;\n\n /*\n * Links\n */\n --link-color: var(--color-primary-500);\n --link-decoration: none;\n --link-hover-color: var(--color-primary-100);\n --link-hover-decoration: underline;\n\n /* === ref docs and graphql docs specific === */\n /*\n * Logo\n */\n --logo-max-height: 285px;\n --logo-max-width: 285px;\n --logo-padding: 2px;\n\n /*\n * Http colors\n */\n --color-http-get: #3a9601;\n --color-http-post: #0065fb;\n --color-http-put: #93527b;\n --color-http-options: #947014;\n --color-http-patch: #bf581d;\n --color-http-delete: #c83637;\n --color-http-basic: #707070;\n --color-http-link: #07818f;\n --color-http-head: #a23dad;\n --color-http-hook: var(--color-http-post);\n\n /*\n * Response colors\n */\n --response-success-border-color: #b1e996;\n --response-success-background-color: #f6fff4;\n --response-success-text-color: var(--response-success-border-color);\n\n --response-error-border-color: #ffc9c9;\n --response-error-background-color: #fff4f4;\n --response-error-text-color: var(--response-error-border-color);\n\n --response-redirect-border-color: var(--color-warning-500);\n --response-redirect-background-color: #ffa5001a;\n --response-redirect-text-color: var(--response-redirect-border-color);\n\n --response-info-border-color: #87ceeb;\n --response-info-background-color: #87ceeb1a;\n --response-info-text-color: var(--response-info-border-color);\n\n /*\n * Panels\n */\n --panels-border-radius: 8px;\n --panels-background-color: #fff;\n\n --samples-panel-gap: 20px;\n --samples-panel-width: 37.5%;\n --samples-panel-block-background-color: #fff;\n --samples-panel-background-color: #52606d;\n --samples-panel-callback-background-color: var(--samples-panel-callback-background-color);\n --samples-panel-controls-background-color: #323f4b;\n --samples-panel-controls-hover-background-color: #3c4c5a;\n --samples-panel-controls-active-border-color: var(--color-accent-500);\n --samples-panel-text-color: #fff;\n --samples-panel-heading-color: #fff;\n\n --samples-panel-markdown-background-color: #3c4c5a;\n --samples-panel-markdown-border-color: #46596a;\n\n --try-it-panel-tab-background-color: var(--samples-panel-background-color);\n --try-it-panel-active-tab-background-color: #47535e;\n --try-it-panel-active-tab-border-color: var(--color-accent-500);\n --try-it-panel-disabled-tab-color: rgba(245, 247, 250, 0.7);\n --try-it-panel-controls-background-color: var(--samples-panel-controls-background-color);\n --try-it-panel-action-button-width: auto;\n\n --request-and-response-panel-background-color: #fff;\n\n /*\n * Layout\n */\n --layout-buttons-top-offset: 20px;\n --layout-buttons-height: 36px;\n --layout-buttons-width: 36px;\n\n --layout-stacked-small-max-width: 90%;\n --layout-stacked-medium-max-width: 75%;\n --layout-stacked-large-max-width: 1200px;\n\n --layout-three-panel-small-max-width: 100%;\n --layout-three-panel-medium-max-width: 100%;\n --layout-three-panel-large-max-width: 1800px;\n\n --layout-middle-panel-small-max-width: none;\n --layout-middle-panel-medium-max-width: none;\n --layout-middle-panel-large-max-width: none;\n\n /*\n * Schema\n */\n --schema-lines-color: var(--global-border-color);\n --schema-default-details-width: 70%;\n --schema-type-name-color: var(--color-content-secondary);\n --schema-type-title-color: var(--color-content-secondary);\n --schema-require-label-color: var(--color-error-900);\n --schema-labels-text-size: 0.9em;\n --schema-nesting-spacing: 1em;\n --schema-nested-background-color: var(--color-secondary-200);\n --schema-chevron-color: var(--color-content);\n --schema-chevron-size: 9px;\n\n --schema-controls-color: var(--color-emphasis-800);\n --schema-controls-background-color: var(--color-secondary-400);\n --schema-controls-hover-background-color: var(--color-secondary-500);\n --schema-controls-border-color: var(--color-secondary-600);\n\n --field-name-font-size: var(--code-font-size);\n --field-name-font-family: var(--code-font-family);\n --field-enum-background-color: var(--inline-code-background-color);\n --field-constraint-background-color: var(--inline-code-background-color);\n\n /*\n * Search\n */\n --search-input-border-bottom: #e6e6e6;\n --search-results-background-color: #f2f2f2;\n --search-results-active-item-background-color: #e6e6e6;\n --search-marked-background-color: #ffff03;\n --search-popup-header-background-color: var(--color-secondary-200);\n --search-clear-button-background-color: var(--color-secondary-400);\n --search-clear-button-hover-background-color: var(--color-secondary-600);\n\n /*\n * Other\n */\n --badge-color: var(--color-emphasis-100);\n --badge-background-color: var(--color-primary-500);\n --deprecated-badge-color: var(--color-emphasis-100);\n --deprecated-badge-background-color: var(--color-warning-500);\n\n --recursive-label-color: var(--color-warning-500);\n\n --http-badge-font-size: 12px;\n --http-badge-line-height: 20px;\n --http-badge-font-family: var(--code-font-family);\n --http-badge-font-weight: var(--font-weight-bold);\n --http-badge-border-radius: 16px;\n --http-badge-color: var(--color-content-inverse);\n\n --http-badge-menu-font-size: 8px;\n --http-badge-menu-line-height: 14px;\n\n --spinner-color: var(--color-primary-500);\n\n --linear-progress-color: var(--color-accent-500);\n --linear-progress-background-color: var(--color-accent-100);\n\n /* Floating action button */\n --fab-color: #0065FB;\n --fab-background-color: #f2f2f2;\n\n\n /**\n * Sidebar\n * */\n --sidebar-spacing-unit: 8px;\n --sidebar-margin-left: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-padding-horizontal: var(--sidebar-spacing-unit);\n --sidebar-padding-vertical: var(--sidebar-spacing-unit);\n\n --sidebar-spacing-padding-vertical: var(--sidebar-spacing-unit);\n --sidebar-spacing-padding-horizontal: var(--sidebar-spacing-unit);\n --sidebar-spacing-offset-top: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-spacing-offset-left: calc(var(--sidebar-spacing-unit) * 2);\n --sidebar-spacing-offset-nesting: calc(var(--sidebar-spacing-unit) * 2);\n\n --sidebar-chevron-size: var(--sidebar-spacing-unit);\n --sidebar-chevron-color: var(--sidebar-text-color);\n\n --sidebar-border-radius: 4px;\n --sidebar-background-color: #fff;\n --sidebar-font-size: var(--font-size-base);\n --sidebar-font-family: var(--font-family-primary);\n --sidebar-right-line-color: var(--color-border-light);\n --sidebar-text-color: var(--color-text-main);\n --sidebar-text-active-color: var(--sidebar-text-color);\n --sidebar-text-active-background-color: var(--color-border-light);\n --sidebar-width: 285px;\n\n --sidebar-separator-line-color: #dadada;\n --sidebar-separator-label-color: var(--sidebar-text-color);\n\n /**\n * Portal Logo\n * */\n --logo-height: 2rem;\n --logo-margin: var(--sidebar-margin-left);\n\n /**\n * Portal Navbar\n * */\n --navbar-height: 60px;\n --navbar-color-text: var(--color-content-inverse);\n --navbar-color-background: var(--color-primary-500);\n\n /**\n * Portal Navbar Item\n * */\n --navbar-item-font-size: 16px;\n --navbar-item-margin-horizontal: 0;\n --navbar-item-margin-vertical: 0;\n --navbar-item-border-radius: 10px;\n --navbar-item-font-weight: var(--font-weight-bold);\n --navbar-item-active-background-color: #1b75fa;\n --navbar-item-active-text-color: var(--color-primary-contrast);\n --navbar-item-active-text-decoration: none;\n }\n\n @media (prefers-color-scheme: dark) {\n :root {\n --color-content: #f5f7fa;\n --global-border-color: #4c4c4c;\n --inline-code-color: #ed8282;\n --schema-require-label-color: #e55252;\n --global-background-color: #101010;\n --sidebar-background-color: #101010;\n --sidebar-item-active-background-color: #424242;\n --samples-panel-block-background-color: var(--sidebar-background-color);\n --color-secondary-200: #1f2933;\n --color-primary-900: #4892ff;\n --search-marked-background-color: #707000;\n\n --response-success-border-color: #3c8d06;\n --response-success-background-color: #2e7102;\n --response-error-border-color: #8d5c5c;\n --response-error-background-color: #802828;\n --response-redirect-border-color: #ffa500;\n --response-redirect-background-color: #ffa5001a;\n --response-info-border-color: #87ceeb;\n --response-info-background-color: #87ceeb1a;\n\n --link-color: #4d91ff;\n --link-hover-color: #3686ff;\n\n --navbar-color-background: #f2f2f2;\n\n .search-input {\n color: var(--color-content);\n }\n\n .button-clear {\n --color-secondary-600: #3e4c59;\n --color-secondary-400: #1b1b1b;\n }\n }\n }\n"])));
7
+ var templateObject_1;
@@ -0,0 +1,3 @@
1
+ export * from './useControl';
2
+ export * from './useMount';
3
+ export * from './useUnmount';
package/hooks/index.js ADDED
@@ -0,0 +1,3 @@
1
+ export * from './useControl';
2
+ export * from './useMount';
3
+ export * from './useUnmount';
@@ -0,0 +1,6 @@
1
+ export declare type UseControlReturnType = {
2
+ isOpened: boolean;
3
+ handleOpen: () => void;
4
+ handleClose: () => void;
5
+ };
6
+ export declare const useControl: (initialVal?: boolean) => UseControlReturnType;
@@ -0,0 +1,12 @@
1
+ import { useState, useCallback } from 'react';
2
+ export var useControl = function (initialVal) {
3
+ if (initialVal === void 0) { initialVal = false; }
4
+ var _a = useState(initialVal), isOpened = _a[0], setIsOpened = _a[1];
5
+ var handleOpen = useCallback(function () { return setIsOpened(true); }, []);
6
+ var handleClose = useCallback(function () { return setIsOpened(false); }, []);
7
+ return {
8
+ isOpened: isOpened,
9
+ handleOpen: handleOpen,
10
+ handleClose: handleClose,
11
+ };
12
+ };
@@ -0,0 +1 @@
1
+ export declare const useMount: (callback: () => void) => void;
@@ -0,0 +1,7 @@
1
+ import { useEffect } from 'react';
2
+ export var useMount = function (callback) {
3
+ useEffect(function () {
4
+ callback();
5
+ // eslint-disable-next-line react-hooks/exhaustive-deps
6
+ }, []);
7
+ };
@@ -0,0 +1 @@
1
+ export declare const useUnmount: (callback: () => void) => void;
@@ -0,0 +1,9 @@
1
+ import { useEffect } from 'react';
2
+ export var useUnmount = function (callback) {
3
+ useEffect(function () {
4
+ return function () {
5
+ callback();
6
+ };
7
+ // eslint-disable-next-line react-hooks/exhaustive-deps
8
+ }, []);
9
+ };
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ export interface ShelfIconProps {
3
+ className?: string;
4
+ float?: 'left' | 'right';
5
+ size?: string;
6
+ color?: string;
7
+ direction: 'left' | 'right' | 'up' | 'down';
8
+ style?: React.CSSProperties;
9
+ }
10
+ export declare const ShelfIcon: import("styled-components").StyledComponent<({ className, style }: ShelfIconProps) => JSX.Element, any, {}, never>;
@@ -0,0 +1,33 @@
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, jsxs as _jsxs } from "react/jsx-runtime";
17
+ import styled, { css } from 'styled-components';
18
+ import { getCssColorVariable } from '../../utils/css-variables';
19
+ var directionMap = {
20
+ right: '0deg',
21
+ down: '90deg',
22
+ left: '180deg',
23
+ up: '270deg',
24
+ };
25
+ var IntShelfIcon = function (_a) {
26
+ var className = _a.className, style = _a.style;
27
+ return (_jsxs("svg", __assign({ className: className, style: style, viewBox: "0 0 4.25 7", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true" }, { children: [_jsx("path", { d: "M0.205025 1.19467L3.00503 3.99467C3.27839 4.26804 3.72161 4.26804 3.99497 3.99467C4.26834 3.7213 4.26834 3.27809 3.99497 3.00472L1.19497 0.20472C0.921608 -0.0686469 0.478392 -0.0686469 0.205025 0.20472C-0.0683418 0.478087 -0.0683417 0.921303 0.205025 1.19467Z" }), _jsx("path", { d: "M3.00503 3.00501L0.205025 5.80501C-0.0683417 6.07838 -0.0683417 6.5216 0.205025 6.79496C0.478392 7.06833 0.921608 7.06833 1.19497 6.79496L3.99497 3.99496C4.26834 3.7216 4.26834 3.27838 3.99497 3.00501C3.72161 2.73165 3.27839 2.73165 3.00503 3.00501Z" })] })));
28
+ };
29
+ export var ShelfIcon = styled(IntShelfIcon)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n ", "\n vertical-align: middle;\n transition: transform 0.2s ease-out;\n"], ["\n ", "\n vertical-align: middle;\n transition: transform 0.2s ease-out;\n"])), function (_a) {
30
+ var _b = _a.size, size = _b === void 0 ? '9px' : _b, _c = _a.float, float = _c === void 0 ? '' : _c, direction = _a.direction, color = _a.color;
31
+ return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n height: ", ";\n width: ", ";\n float: ", ";\n transform: rotateZ(", ");\n fill: ", ";\n "], ["\n height: ", ";\n width: ", ";\n float: ", ";\n transform: rotateZ(", ");\n fill: ", ";\n "])), size, size, float, directionMap[direction], getCssColorVariable(color));
32
+ });
33
+ var templateObject_1, templateObject_2;
@@ -0,0 +1,2 @@
1
+ export { ShelfIcon } from './ShelfIcon';
2
+ export type { ShelfIconProps } from './ShelfIcon';
@@ -0,0 +1 @@
1
+ export { ShelfIcon } from './ShelfIcon';
@@ -0,0 +1 @@
1
+ export * from './ShelfIcon';
package/icons/index.js ADDED
@@ -0,0 +1 @@
1
+ export * from './ShelfIcon';