@redocly/theme 0.59.0-rc.2 → 0.60.0-next.0

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 (199) hide show
  1. package/LICENSE +7 -1
  2. package/lib/components/Buttons/AIAssistantButton.js +6 -2
  3. package/lib/components/Buttons/ConnectMCPButton.d.ts +8 -0
  4. package/lib/components/Buttons/ConnectMCPButton.js +145 -0
  5. package/lib/components/Buttons/variables.d.ts +1 -0
  6. package/lib/components/Buttons/variables.js +42 -2
  7. package/lib/components/Catalog/CatalogEntity/CatalogEntityInfoBar.js +1 -0
  8. package/lib/components/Catalog/CatalogEntity/CatalogEntityRelations/CatalogEntityApiDescriptionRelations.js +1 -1
  9. package/lib/components/Catalog/CatalogEntity/CatalogEntityRelations/CatalogEntityTeamRelations.js +1 -1
  10. package/lib/components/Catalog/CatalogEntityIcon.js +2 -1
  11. package/lib/components/Catalog/CatalogFilter/CatalogFilter.js +4 -0
  12. package/lib/components/Catalog/CatalogTagsWithTooltip.js +1 -1
  13. package/lib/components/Catalog/variables.js +1 -1
  14. package/lib/components/Dropdown/Dropdown.d.ts +16 -2
  15. package/lib/components/Dropdown/Dropdown.js +5 -5
  16. package/lib/components/Link/Link.d.ts +1 -0
  17. package/lib/components/Menu/MenuItem.js +1 -1
  18. package/lib/components/Navbar/NavbarItem.js +3 -3
  19. package/lib/components/PageActions/PageActions.js +4 -1
  20. package/lib/components/PageActions/variables.js +2 -0
  21. package/lib/components/Search/FilterFields/SearchFilterFieldTags.js +1 -2
  22. package/lib/components/Search/SearchAiActionButtons.d.ts +10 -0
  23. package/lib/components/Search/SearchAiActionButtons.js +43 -0
  24. package/lib/components/Search/SearchAiConversationInput.d.ts +3 -1
  25. package/lib/components/Search/SearchAiConversationInput.js +39 -7
  26. package/lib/components/Search/SearchAiDialog.d.ts +3 -6
  27. package/lib/components/Search/SearchAiDialog.js +20 -9
  28. package/lib/components/Search/SearchAiMessage.d.ts +9 -5
  29. package/lib/components/Search/SearchAiMessage.js +146 -22
  30. package/lib/components/Search/SearchAiNegativeFeedbackForm.d.ts +8 -0
  31. package/lib/components/Search/SearchAiNegativeFeedbackForm.js +169 -0
  32. package/lib/components/Search/SearchDialog.js +36 -5
  33. package/lib/components/Search/SearchGroups.js +2 -2
  34. package/lib/components/Search/variables.js +36 -64
  35. package/lib/components/Segmented/Segmented.d.ts +1 -8
  36. package/lib/components/Segmented/Segmented.js +3 -1
  37. package/lib/components/Select/SelectInput.js +1 -1
  38. package/lib/components/Select/variables.js +2 -2
  39. package/lib/components/Tag/Tag.d.ts +2 -1
  40. package/lib/components/Tag/Tag.js +66 -17
  41. package/lib/components/Tag/variables.dark.js +135 -36
  42. package/lib/components/Tag/variables.js +78 -61
  43. package/lib/config.d.ts +2 -2
  44. package/lib/core/constants/index.d.ts +1 -0
  45. package/lib/core/constants/index.js +1 -0
  46. package/lib/core/constants/mcp.d.ts +1 -0
  47. package/lib/core/constants/mcp.js +5 -0
  48. package/lib/core/constants/search.d.ts +5 -4
  49. package/lib/core/constants/search.js +4 -5
  50. package/lib/core/hooks/index.d.ts +3 -0
  51. package/lib/core/hooks/index.js +3 -0
  52. package/lib/core/hooks/menu/use-nested-menu.js +1 -1
  53. package/lib/core/hooks/search/use-feedback-tooltip.d.ts +6 -0
  54. package/lib/core/hooks/search/use-feedback-tooltip.js +26 -0
  55. package/lib/core/hooks/use-connect-mcp-button.d.ts +13 -0
  56. package/lib/core/hooks/use-connect-mcp-button.js +50 -0
  57. package/lib/core/hooks/use-mcp-config.d.ts +9 -0
  58. package/lib/core/hooks/use-mcp-config.js +27 -0
  59. package/lib/core/hooks/use-page-actions.d.ts +1 -1
  60. package/lib/core/hooks/use-page-actions.js +99 -119
  61. package/lib/core/hooks/use-product-picker.js +2 -1
  62. package/lib/core/hooks/use-tabs.d.ts +3 -2
  63. package/lib/core/hooks/use-tabs.js +115 -57
  64. package/lib/core/hooks/use-telemetry-fallback.d.ts +10 -8
  65. package/lib/core/hooks/use-telemetry-fallback.js +10 -8
  66. package/lib/core/openapi/index.d.ts +1 -0
  67. package/lib/core/styles/dark.js +4 -0
  68. package/lib/core/styles/global.js +5 -0
  69. package/lib/core/types/hooks.d.ts +2 -2
  70. package/lib/core/types/index.d.ts +1 -0
  71. package/lib/core/types/index.js +1 -0
  72. package/lib/core/types/l10n.d.ts +1 -1
  73. package/lib/core/types/mcp.d.ts +6 -0
  74. package/lib/core/types/mcp.js +3 -0
  75. package/lib/core/types/search.d.ts +11 -4
  76. package/lib/core/types/search.js +6 -0
  77. package/lib/core/types/segmented.d.ts +12 -0
  78. package/lib/core/types/segmented.js +3 -0
  79. package/lib/core/utils/frontmatter-translate.d.ts +6 -0
  80. package/lib/core/utils/frontmatter-translate.js +14 -0
  81. package/lib/core/utils/index.d.ts +2 -0
  82. package/lib/core/utils/index.js +2 -0
  83. package/lib/core/utils/mcp.d.ts +2 -0
  84. package/lib/core/utils/mcp.js +31 -0
  85. package/lib/icons/AiStarsGradientIcon/AiStarsGradientIcon.js +44 -4
  86. package/lib/icons/AiStarsIcon/AiStarsIcon.js +11 -2
  87. package/lib/icons/ConnectIcon/ConnectIcon.d.ts +9 -0
  88. package/lib/icons/ConnectIcon/ConnectIcon.js +17 -0
  89. package/lib/icons/CubeIcon/CubeIcon.d.ts +9 -0
  90. package/lib/icons/CubeIcon/CubeIcon.js +17 -0
  91. package/lib/icons/HashtagIcon/HashtagIcon.d.ts +9 -0
  92. package/lib/icons/HashtagIcon/HashtagIcon.js +22 -0
  93. package/lib/icons/RedoclyIcon/RedoclyIcon.js +4 -7
  94. package/lib/icons/ThumbDownFilledIcon/ThumbDownFilledIcon.d.ts +9 -0
  95. package/lib/icons/ThumbDownFilledIcon/ThumbDownFilledIcon.js +34 -0
  96. package/lib/icons/ThumbUpFilledIcon/ThumbUpFilledIcon.d.ts +9 -0
  97. package/lib/icons/ThumbUpFilledIcon/ThumbUpFilledIcon.js +34 -0
  98. package/lib/icons/VSCodeIcon/VSCodeIcon.d.ts +9 -0
  99. package/lib/icons/VSCodeIcon/VSCodeIcon.js +17 -0
  100. package/lib/index.d.ts +1 -2
  101. package/lib/index.js +1 -2
  102. package/lib/markdoc/components/Cards/Card.js +1 -28
  103. package/lib/markdoc/components/ConnectMCP/ConnectMCP.d.ts +8 -0
  104. package/lib/markdoc/components/ConnectMCP/ConnectMCP.js +19 -0
  105. package/lib/markdoc/components/Tabs/TabList.d.ts +3 -1
  106. package/lib/markdoc/components/Tabs/TabList.js +197 -47
  107. package/lib/markdoc/components/Tabs/Tabs.d.ts +2 -1
  108. package/lib/markdoc/components/Tabs/Tabs.js +57 -12
  109. package/lib/markdoc/components/default.d.ts +1 -0
  110. package/lib/markdoc/components/default.js +1 -0
  111. package/lib/markdoc/default.d.ts +6 -0
  112. package/lib/markdoc/default.js +2 -0
  113. package/lib/markdoc/tags/card.js +0 -1
  114. package/lib/markdoc/tags/connect-mcp.d.ts +2 -0
  115. package/lib/markdoc/tags/connect-mcp.js +27 -0
  116. package/package.json +6 -6
  117. package/src/components/Buttons/AIAssistantButton.tsx +6 -2
  118. package/src/components/Buttons/ConnectMCPButton.tsx +180 -0
  119. package/src/components/Buttons/variables.ts +42 -1
  120. package/src/components/Catalog/CatalogEntity/CatalogEntityInfoBar.tsx +1 -0
  121. package/src/components/Catalog/CatalogEntity/CatalogEntityRelations/CatalogEntityApiDescriptionRelations.tsx +1 -1
  122. package/src/components/Catalog/CatalogEntity/CatalogEntityRelations/CatalogEntityTeamRelations.tsx +1 -1
  123. package/src/components/Catalog/CatalogEntityIcon.tsx +2 -1
  124. package/src/components/Catalog/CatalogFilter/CatalogFilter.tsx +5 -0
  125. package/src/components/Catalog/CatalogTagsWithTooltip.tsx +1 -5
  126. package/src/components/Catalog/variables.ts +1 -1
  127. package/src/components/Dropdown/Dropdown.tsx +84 -79
  128. package/src/components/Link/Link.tsx +1 -0
  129. package/src/components/Menu/MenuItem.tsx +1 -0
  130. package/src/components/Navbar/NavbarItem.tsx +6 -5
  131. package/src/components/PageActions/PageActions.tsx +5 -1
  132. package/src/components/PageActions/variables.ts +2 -0
  133. package/src/components/Search/FilterFields/SearchFilterFieldTags.tsx +3 -3
  134. package/src/components/Search/SearchAiActionButtons.tsx +76 -0
  135. package/src/components/Search/SearchAiConversationInput.tsx +61 -18
  136. package/src/components/Search/SearchAiDialog.tsx +52 -23
  137. package/src/components/Search/SearchAiMessage.tsx +172 -43
  138. package/src/components/Search/SearchAiNegativeFeedbackForm.tsx +210 -0
  139. package/src/components/Search/SearchDialog.tsx +49 -13
  140. package/src/components/Search/SearchGroups.tsx +2 -0
  141. package/src/components/Search/variables.ts +36 -64
  142. package/src/components/Segmented/Segmented.tsx +15 -20
  143. package/src/components/Select/SelectInput.tsx +1 -0
  144. package/src/components/Select/variables.ts +2 -2
  145. package/src/components/Tag/Tag.tsx +35 -19
  146. package/src/components/Tag/variables.dark.ts +135 -36
  147. package/src/components/Tag/variables.ts +78 -61
  148. package/src/config.ts +2 -0
  149. package/src/core/constants/index.ts +1 -0
  150. package/src/core/constants/mcp.ts +1 -0
  151. package/src/core/constants/search.ts +8 -4
  152. package/src/core/hooks/index.ts +3 -0
  153. package/src/core/hooks/menu/use-nested-menu.ts +2 -2
  154. package/src/core/hooks/search/use-feedback-tooltip.ts +32 -0
  155. package/src/core/hooks/use-connect-mcp-button.ts +79 -0
  156. package/src/core/hooks/use-mcp-config.ts +43 -0
  157. package/src/core/hooks/use-page-actions.ts +141 -150
  158. package/src/core/hooks/use-product-picker.ts +2 -1
  159. package/src/core/hooks/use-tabs.ts +168 -86
  160. package/src/core/hooks/use-telemetry-fallback.ts +10 -8
  161. package/src/core/openapi/index.ts +1 -0
  162. package/src/core/styles/dark.ts +4 -0
  163. package/src/core/styles/global.ts +6 -1
  164. package/src/core/types/hooks.ts +5 -1
  165. package/src/core/types/index.ts +1 -0
  166. package/src/core/types/l10n.ts +13 -0
  167. package/src/core/types/mcp.ts +8 -0
  168. package/src/core/types/search.ts +13 -4
  169. package/src/core/types/segmented.ts +14 -0
  170. package/src/core/utils/frontmatter-translate.ts +9 -0
  171. package/src/core/utils/index.ts +2 -0
  172. package/src/core/utils/mcp.ts +34 -0
  173. package/src/icons/AiStarsGradientIcon/AiStarsGradientIcon.tsx +13 -4
  174. package/src/icons/AiStarsIcon/AiStarsIcon.tsx +11 -2
  175. package/src/icons/ConnectIcon/ConnectIcon.tsx +27 -0
  176. package/src/icons/CubeIcon/CubeIcon.tsx +27 -0
  177. package/src/icons/HashtagIcon/HashtagIcon.tsx +23 -0
  178. package/src/icons/RedoclyIcon/RedoclyIcon.tsx +4 -22
  179. package/src/icons/ThumbDownFilledIcon/ThumbDownFilledIcon.tsx +38 -0
  180. package/src/icons/ThumbUpFilledIcon/ThumbUpFilledIcon.tsx +35 -0
  181. package/src/icons/VSCodeIcon/VSCodeIcon.tsx +29 -0
  182. package/src/index.ts +1 -2
  183. package/src/markdoc/components/Cards/Card.tsx +1 -28
  184. package/src/markdoc/components/ConnectMCP/ConnectMCP.tsx +28 -0
  185. package/src/markdoc/components/Tabs/TabList.tsx +312 -105
  186. package/src/markdoc/components/Tabs/Tabs.tsx +136 -11
  187. package/src/markdoc/components/default.ts +1 -0
  188. package/src/markdoc/default.ts +2 -0
  189. package/src/markdoc/tags/card.ts +0 -1
  190. package/src/markdoc/tags/connect-mcp.ts +25 -0
  191. package/lib/components/OpenApiDocs/hooks/AdditionalOverviewInfo.d.ts +0 -1
  192. package/lib/components/OpenApiDocs/hooks/AdditionalOverviewInfo.js +0 -11
  193. package/lib/components/OpenApiDocs/hooks/AfterOpenApiDescription.d.ts +0 -1
  194. package/lib/components/OpenApiDocs/hooks/AfterOpenApiDescription.js +0 -5
  195. package/lib/ext/process-scorecard.d.ts +0 -5
  196. package/lib/ext/process-scorecard.js +0 -11
  197. package/src/components/OpenApiDocs/hooks/AdditionalOverviewInfo.tsx +0 -9
  198. package/src/components/OpenApiDocs/hooks/AfterOpenApiDescription.tsx +0 -1
  199. package/src/ext/process-scorecard.ts +0 -13
@@ -1,4 +1,37 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  var __rest = (this && this.__rest) || function (s, e) {
3
36
  var t = {};
4
37
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
@@ -15,14 +48,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
15
48
  };
16
49
  Object.defineProperty(exports, "__esModule", { value: true });
17
50
  exports.AiStarsGradientIcon = void 0;
18
- const react_1 = __importDefault(require("react"));
51
+ const react_1 = __importStar(require("react"));
19
52
  const styled_components_1 = __importDefault(require("styled-components"));
20
53
  const utils_1 = require("../../core/utils");
21
54
  const Icon = (props) => {
22
55
  const { color = '', background, borderRadius, padding, margin } = props, restProps = __rest(props, ["color", "background", "borderRadius", "padding", "margin"]);
23
- const resolvedColor = color.startsWith('var(')
24
- ? getComputedStyle(document.documentElement).getPropertyValue(color.slice(4, -1)).trim()
25
- : color;
56
+ const [resolvedColor, setResolvedColor] = (0, react_1.useState)(color);
57
+ (0, react_1.useEffect)(() => {
58
+ const resolvedColor = color.startsWith('var(')
59
+ ? window
60
+ .getComputedStyle(document.documentElement)
61
+ .getPropertyValue(color.slice(4, -1))
62
+ .trim()
63
+ : color;
64
+ setResolvedColor(resolvedColor);
65
+ }, [color]);
26
66
  const isColorOverridden = resolvedColor && resolvedColor !== 'none';
27
67
  const fill = isColorOverridden ? resolvedColor : 'url(#gradient)';
28
68
  return (react_1.default.createElement("svg", Object.assign({ viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, restProps),
@@ -30,18 +30,27 @@ exports.AiStarsIcon = (0, styled_components_1.default)(Icon).attrs(() => ({
30
30
  height: ${({ size }) => size || '16px'};
31
31
  width: ${({ size }) => size || '16px'};
32
32
 
33
- ${({ background, borderRadius, margin }) => background &&
33
+ ${({ background, borderRadius, margin, padding, size }) => background &&
34
34
  `
35
35
  display: flex;
36
36
  align-items: center;
37
37
  justify-content: center;
38
+ flex-shrink: 0;
38
39
 
39
40
  background: ${(0, utils_1.getCssColorVariable)(background)};
41
+ width: ${size || '16px'};
42
+ height: ${size || '16px'};
40
43
 
41
- padding: var(--spacing-xs);
44
+ padding: ${padding || 'var(--spacing-xs)'};
42
45
  margin: ${margin || '0'};
43
46
 
44
47
  border-radius: ${background && borderRadius ? borderRadius : 'none'};
48
+
49
+ svg {
50
+ width: calc(${size || '16px'} - 2 * (${padding || 'var(--spacing-xs)'}));
51
+ height: calc(${size || '16px'} - 2 * (${padding || 'var(--spacing-xs)'}));
52
+ flex-shrink: 0;
53
+ }
45
54
  `}
46
55
 
47
56
  color: ${({ color }) => color && (0, utils_1.getCssColorVariable)(color)};
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import type { IconProps } from '../../icons/types';
3
+ export declare const ConnectIcon: import("styled-components").StyledComponent<(props: IconProps) => React.JSX.Element, any, {
4
+ 'data-component-name': string;
5
+ } & {
6
+ color?: string;
7
+ size?: string;
8
+ className?: string;
9
+ } & React.SVGProps<SVGSVGElement>, "data-component-name">;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ConnectIcon = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const styled_components_1 = __importDefault(require("styled-components"));
9
+ const Icon = (props) => (react_1.default.createElement("svg", Object.assign({ width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
10
+ react_1.default.createElement("path", { d: "M10.5 7.00875C9.74669 7.00947 9.01371 7.25321 8.40999 7.70375L6.29999 5.59375C6.75586 4.99443 7.00185 4.26175 6.99999 3.50875C7.00197 2.72021 6.73759 1.9541 6.24973 1.33459C5.76186 0.715073 5.07908 0.278462 4.31205 0.0955081C3.54502 -0.0874454 2.73868 -0.00601915 2.02371 0.326591C1.30874 0.659201 0.727035 1.2235 0.372873 1.92805C0.0187108 2.63259 -0.087157 3.43608 0.0724264 4.20832C0.23201 4.98055 0.647693 5.67627 1.25211 6.18272C1.85652 6.68917 2.61425 6.97668 3.4025 6.99864C4.19074 7.02061 4.96331 6.77576 5.59499 6.30375L7.69999 8.41375C7.22812 9.04527 6.98326 9.81759 7.00508 10.6056C7.0269 11.3937 7.31412 12.1512 7.82021 12.7557C8.32631 13.3601 9.02164 13.776 9.79358 13.9359C10.5655 14.0959 11.3688 13.9906 12.0735 13.637C12.7781 13.2834 13.3427 12.7024 13.6758 11.9879C14.009 11.2734 14.0912 10.4674 13.9091 9.70036C13.727 8.93334 13.2913 8.25026 12.6726 7.76174C12.0539 7.27323 11.2883 7.00791 10.5 7.00875ZM0.999993 3.50875C0.999993 3.0143 1.14662 2.53095 1.42132 2.11983C1.69602 1.70871 2.08647 1.38827 2.54328 1.19906C3.0001 1.00984 3.50277 0.960328 3.98772 1.05679C4.47267 1.15325 4.91813 1.39136 5.26776 1.74099C5.61739 2.09062 5.85549 2.53608 5.95196 3.02103C6.04842 3.50598 5.99891 4.00865 5.80969 4.46546C5.62047 4.92228 5.30004 5.31272 4.88892 5.58743C4.4778 5.86213 3.99445 6.00875 3.49999 6.00875C2.83695 6.00875 2.20107 5.74536 1.73223 5.27652C1.26339 4.80768 0.999993 4.1718 0.999993 3.50875Z", fill: "currentColor" })));
11
+ exports.ConnectIcon = (0, styled_components_1.default)(Icon).attrs(() => ({
12
+ 'data-component-name': 'icons/ConnectIcon/ConnectIcon',
13
+ })) `
14
+ height: ${({ size }) => size || '14px'};
15
+ width: ${({ size }) => size || '14px'};
16
+ `;
17
+ //# sourceMappingURL=ConnectIcon.js.map
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import type { IconProps } from '../../icons/types';
3
+ export declare const CubeIcon: import("styled-components").StyledComponent<(props: IconProps) => React.JSX.Element, any, {
4
+ 'data-component-name': string;
5
+ } & {
6
+ color?: string;
7
+ size?: string;
8
+ className?: string;
9
+ } & React.SVGProps<SVGSVGElement>, "data-component-name">;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CubeIcon = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const styled_components_1 = __importDefault(require("styled-components"));
9
+ const Icon = (props) => (react_1.default.createElement("svg", Object.assign({ xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 16 16", fill: "currentColor" }, props),
10
+ react_1.default.createElement("path", { d: "M14.252 4.06812L8.25195 0.568119C8.17548 0.523507 8.08853 0.5 8 0.5C7.91147 0.5 7.82452 0.523507 7.74805 0.568119L1.74805 4.06812C1.67257 4.11215 1.60994 4.1752 1.56642 4.25099C1.5229 4.32677 1.5 4.41263 1.5 4.50002V11.5C1.5 11.5874 1.5229 11.6733 1.56642 11.7491C1.60994 11.8248 1.67257 11.8879 1.74805 11.9319L7.74805 15.4319C7.82452 15.4765 7.91147 15.5 8 15.5C8.08853 15.5 8.17548 15.4765 8.25195 15.4319L14.252 11.9319C14.3274 11.8879 14.3901 11.8248 14.4336 11.7491C14.4771 11.6733 14.5 11.5874 14.5 11.5V4.50002C14.5 4.41263 14.4771 4.32677 14.4336 4.25099C14.3901 4.1752 14.3274 4.11215 14.252 4.06812ZM8 1.57887L13.0078 4.50002L8 7.42117L2.9922 4.50002L8 1.57887ZM2.5 5.37062L7.5 8.28712V14.1294L2.5 11.2129V5.37062ZM8.5 14.1294V8.28712L13.5 5.37062V11.2129L8.5 14.1294Z", fill: "currentColor" })));
11
+ exports.CubeIcon = (0, styled_components_1.default)(Icon).attrs(() => ({
12
+ 'data-component-name': 'icons/CubeIcon/CubeIcon',
13
+ })) `
14
+ height: ${({ size }) => size || '16px'};
15
+ width: ${({ size }) => size || '16px'};
16
+ `;
17
+ //# sourceMappingURL=CubeIcon.js.map
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import type { IconProps } from '../../icons/types';
3
+ export declare const HashtagIcon: import("styled-components").StyledComponent<(props: IconProps) => React.JSX.Element, any, {
4
+ 'data-component-name': string;
5
+ } & {
6
+ color?: string;
7
+ size?: string;
8
+ className?: string;
9
+ } & React.SVGProps<SVGSVGElement>, "data-component-name">;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.HashtagIcon = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const styled_components_1 = __importDefault(require("styled-components"));
9
+ const utils_1 = require("../../core/utils");
10
+ const Icon = (props) => (react_1.default.createElement("svg", Object.assign({ viewBox: "0 0 12 12", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
11
+ react_1.default.createElement("path", { d: "M10.5 4.5V3.75H8.25V1.5H7.5V3.75H4.5V1.5H3.75V3.75H1.5V4.5H3.75V7.5H1.5V8.25H3.75V10.5H4.5V8.25H7.5V10.5H8.25V8.25H10.5V7.5H8.25V4.5H10.5ZM7.5 7.5H4.5V4.5H7.5V7.5Z" })));
12
+ exports.HashtagIcon = (0, styled_components_1.default)(Icon).attrs(() => ({
13
+ 'data-component-name': 'icons/HashtagIcon/HashtagIcon',
14
+ })) `
15
+ path {
16
+ fill: ${({ color }) => (0, utils_1.getCssColorVariable)(color)};
17
+ }
18
+
19
+ height: ${({ size }) => size || '16px'};
20
+ width: ${({ size }) => size || '16px'};
21
+ `;
22
+ //# sourceMappingURL=HashtagIcon.js.map
@@ -7,13 +7,10 @@ exports.RedoclyIcon = void 0;
7
7
  const react_1 = __importDefault(require("react"));
8
8
  const styled_components_1 = __importDefault(require("styled-components"));
9
9
  const utils_1 = require("../../core/utils");
10
- const Icon = (props) => (react_1.default.createElement("svg", Object.assign({ width: "18", height: "18", viewBox: "0 0 18 18", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
11
- react_1.default.createElement("g", { clipPath: "url(#clip0_4053_1165)" },
12
- react_1.default.createElement("path", { d: "M14.625 6.19973C14.625 8.69176 12.6173 10.712 10.1406 10.712H2.8125V10.2717C5.04753 10.2717 6.85938 8.44864 6.85938 6.19973C6.85938 3.95082 5.04753 2.12772 2.8125 2.12772V1.6875H10.1406C12.6173 1.6875 14.625 3.70769 14.625 6.19973Z", fill: "#2467F2" }),
13
- react_1.default.createElement("path", { d: "M14.625 16.875C14.625 14.383 12.6173 12.3628 10.1406 12.3628H2.8125V12.803C5.04753 12.803 6.85938 14.6261 6.85938 16.875H14.625Z", fill: "#2467F2" })),
14
- react_1.default.createElement("defs", null,
15
- react_1.default.createElement("clipPath", { id: "clip0_4053_1165" },
16
- react_1.default.createElement("rect", { width: "18", height: "18", fill: "white" })))));
10
+ const Icon = (props) => (react_1.default.createElement("svg", Object.assign({ viewBox: "0 0 18 18", xmlns: "http://www.w3.org/2000/svg" }, props),
11
+ react_1.default.createElement("g", null,
12
+ react_1.default.createElement("path", { d: "M14.625 6.19973C14.625 8.69176 12.6173 10.712 10.1406 10.712H2.8125V10.2717C5.04753 10.2717 6.85938 8.44864 6.85938 6.19973C6.85938 3.95082 5.04753 2.12772 2.8125 2.12772V1.6875H10.1406C12.6173 1.6875 14.625 3.70769 14.625 6.19973Z" }),
13
+ react_1.default.createElement("path", { d: "M14.625 16.875C14.625 14.383 12.6173 12.3628 10.1406 12.3628H2.8125V12.803C5.04753 12.803 6.85938 14.6261 6.85938 16.875H14.625Z" }))));
17
14
  exports.RedoclyIcon = (0, styled_components_1.default)(Icon).attrs(() => ({
18
15
  'data-component-name': 'icons/RedoclyIcon/RedoclyIcon',
19
16
  })) `
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import type { IconProps } from '../../icons/types';
3
+ export declare const ThumbDownFilledIcon: import("styled-components").StyledComponent<(props: IconProps) => React.JSX.Element, any, {
4
+ 'data-component-name': string;
5
+ } & {
6
+ color?: string;
7
+ size?: string;
8
+ className?: string;
9
+ } & React.SVGProps<SVGSVGElement>, "data-component-name">;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.ThumbDownFilledIcon = void 0;
18
+ const react_1 = __importDefault(require("react"));
19
+ const styled_components_1 = __importDefault(require("styled-components"));
20
+ const utils_1 = require("../../core/utils");
21
+ const Icon = (props) => {
22
+ const { color } = props, restProps = __rest(props, ["color"]);
23
+ return (react_1.default.createElement("svg", Object.assign({ width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, restProps),
24
+ react_1.default.createElement("path", { d: "M3.0625 0.875H0.875V7H3.0625V0.875Z", fill: (0, utils_1.getCssColorVariable)(color) || '#DCDDE5' }),
25
+ react_1.default.createElement("path", { d: "M10.0625 0.875H3.9375V7.35118L5.26846 9.34771L5.63828 11.9362C5.66886 12.1443 5.77308 12.3346 5.932 12.4725C6.09092 12.6103 6.29402 12.6866 6.5044 12.6875H6.5625C6.91048 12.6871 7.2441 12.5487 7.49016 12.3027C7.73621 12.0566 7.87462 11.723 7.875 11.375V8.75H11.375C11.839 8.74948 12.2838 8.56494 12.6119 8.23686C12.9399 7.90879 13.1245 7.46397 13.125 7V3.9375C13.1241 3.12555 12.8012 2.34712 12.227 1.77298C11.6529 1.19885 10.8744 0.875903 10.0625 0.875Z", fill: (0, utils_1.getCssColorVariable)(color) || '#DCDDE5' })));
26
+ };
27
+ exports.ThumbDownFilledIcon = (0, styled_components_1.default)(Icon).attrs(() => ({
28
+ 'data-component-name': 'icons/ThumbDownFilledIcon/ThumbDownFilledIcon',
29
+ })) `
30
+ height: ${({ size }) => size || '14px'};
31
+ width: ${({ size }) => size || '14px'};
32
+ color: ${({ color }) => color && (0, utils_1.getCssColorVariable)(color)};
33
+ `;
34
+ //# sourceMappingURL=ThumbDownFilledIcon.js.map
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import type { IconProps } from '../../icons/types';
3
+ export declare const ThumbUpFilledIcon: import("styled-components").StyledComponent<(props: IconProps) => React.JSX.Element, any, {
4
+ 'data-component-name': string;
5
+ } & {
6
+ color?: string;
7
+ size?: string;
8
+ className?: string;
9
+ } & React.SVGProps<SVGSVGElement>, "data-component-name">;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.ThumbUpFilledIcon = void 0;
18
+ const react_1 = __importDefault(require("react"));
19
+ const styled_components_1 = __importDefault(require("styled-components"));
20
+ const utils_1 = require("../../core/utils");
21
+ const Icon = (props) => {
22
+ const { color } = props, restProps = __rest(props, ["color"]);
23
+ return (react_1.default.createElement("svg", Object.assign({ width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, restProps),
24
+ react_1.default.createElement("path", { d: "M3.0625 7H0.875V13.125H3.0625V7Z", fill: (0, utils_1.getCssColorVariable)(color) || '#DCDDE5' }),
25
+ react_1.default.createElement("path", { d: "M10.0625 13.125H3.9375V6.64882L5.26846 4.65229L5.63828 2.06382C5.66886 1.85567 5.77308 1.66539 5.932 1.52753C6.09092 1.38967 6.29402 1.31338 6.5044 1.3125H6.5625C6.91048 1.31288 7.2441 1.45129 7.49016 1.69734C7.73621 1.9434 7.87462 2.27702 7.875 2.625V5.25H11.375C11.839 5.25052 12.2838 5.43506 12.6119 5.76314C12.9399 6.09121 13.1245 6.53603 13.125 7V10.0625C13.1241 10.8744 12.8012 11.6529 12.227 12.227C11.6529 12.8012 10.8744 13.1241 10.0625 13.125Z", fill: (0, utils_1.getCssColorVariable)(color) || '#DCDDE5' })));
26
+ };
27
+ exports.ThumbUpFilledIcon = (0, styled_components_1.default)(Icon).attrs(() => ({
28
+ 'data-component-name': 'icons/ThumbUpFilledIcon/ThumbUpFilledIcon',
29
+ })) `
30
+ height: ${({ size }) => size || '14px'};
31
+ width: ${({ size }) => size || '14px'};
32
+ color: ${({ color }) => color && (0, utils_1.getCssColorVariable)(color)};
33
+ `;
34
+ //# sourceMappingURL=ThumbUpFilledIcon.js.map
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import type { IconProps } from '../../icons/types';
3
+ export declare const VSCodeIcon: import("styled-components").StyledComponent<(props: IconProps) => React.JSX.Element, any, {
4
+ 'data-component-name': string;
5
+ } & {
6
+ color?: string;
7
+ size?: string;
8
+ className?: string;
9
+ } & React.SVGProps<SVGSVGElement>, "data-component-name">;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.VSCodeIcon = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const styled_components_1 = __importDefault(require("styled-components"));
9
+ const Icon = (props) => (react_1.default.createElement("svg", Object.assign({ width: "16", height: "16", viewBox: "0 0 100 100", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
10
+ react_1.default.createElement("path", { clipRule: "evenodd", d: "m70.9119 99.3171c1.575.6136 3.3709.5743 4.9606-.1907l20.5883-9.9067c2.1634-1.041 3.5392-3.2305 3.5392-5.6325v-67.1739c0-2.402-1.3757-4.5915-3.5391-5.6325l-20.5884-9.907044c-2.0863-1.003885-4.5279-.757996-6.359.573194-.2615.19016-.5107.40248-.7445.63646l-39.4139 35.95809-17.1679-13.0319c-1.5982-1.2131-3.83357-1.1137-5.31787.2365l-5.5063 5.0088c-1.815582 1.6515-1.817663 4.5078-.0045 6.1621l14.88857 13.5831-14.88857 13.5831c-1.813163 1.6542-1.811082 4.5106.0045 6.1621l5.5063 5.0088c1.4843 1.3502 3.71967 1.4496 5.31787.2364l17.1679-13.0318 39.4139 35.958c.6235.6239 1.3556 1.0937 2.1429 1.4004zm4.1033-72.0182-29.9061 22.7012 29.9061 22.7011z", fill: "currentColor", fillRule: "evenodd" })));
11
+ exports.VSCodeIcon = (0, styled_components_1.default)(Icon).attrs(() => ({
12
+ 'data-component-name': 'icons/VSCodeIcon/VSCodeIcon',
13
+ })) `
14
+ height: ${({ size }) => size || '16px'};
15
+ width: ${({ size }) => size || '16px'};
16
+ `;
17
+ //# sourceMappingURL=VSCodeIcon.js.map
package/lib/index.d.ts CHANGED
@@ -78,11 +78,9 @@ export * from './components/UserMenu/UserMenuMobile';
78
78
  export * from './components/Sidebar/Sidebar';
79
79
  export * from './components/OpenApiDocs/hooks/AfterOpenApiOperation';
80
80
  export * from './components/OpenApiDocs/hooks/AfterOpenApiTitle';
81
- export * from './components/OpenApiDocs/hooks/AfterOpenApiDescription';
82
81
  export * from './components/OpenApiDocs/hooks/BeforeOpenApiOperation';
83
82
  export * from './components/OpenApiDocs/hooks/OpenApiFooter';
84
83
  export * from './components/OpenApiDocs/hooks/OpenApiHeader';
85
- export * from './components/OpenApiDocs/hooks/AdditionalOverviewInfo';
86
84
  export * from './components/SidebarActions/ChangeViewButton';
87
85
  export * from './components/SidebarActions/SidebarActions';
88
86
  export * from './components/SidebarActions/styled';
@@ -263,6 +261,7 @@ export * from './icons/RedoclyIcon/RedoclyIcon';
263
261
  export * from './icons/WorkflowHierarchyIcon/WorkflowHierarchyIcon';
264
262
  export * from './icons/GenericIcon/GenericIcon';
265
263
  export * from './icons/ShareIcon/ShareIcon';
264
+ export * from './icons/HashtagIcon/HashtagIcon';
266
265
  export * from './layouts/RootLayout';
267
266
  export * from './layouts/PageLayout';
268
267
  export * from './layouts/NotFound';
package/lib/index.js CHANGED
@@ -131,11 +131,9 @@ __exportStar(require("./components/Sidebar/Sidebar"), exports);
131
131
  /* OpenApiDocs */
132
132
  __exportStar(require("./components/OpenApiDocs/hooks/AfterOpenApiOperation"), exports);
133
133
  __exportStar(require("./components/OpenApiDocs/hooks/AfterOpenApiTitle"), exports);
134
- __exportStar(require("./components/OpenApiDocs/hooks/AfterOpenApiDescription"), exports);
135
134
  __exportStar(require("./components/OpenApiDocs/hooks/BeforeOpenApiOperation"), exports);
136
135
  __exportStar(require("./components/OpenApiDocs/hooks/OpenApiFooter"), exports);
137
136
  __exportStar(require("./components/OpenApiDocs/hooks/OpenApiHeader"), exports);
138
- __exportStar(require("./components/OpenApiDocs/hooks/AdditionalOverviewInfo"), exports);
139
137
  /* SidebarActions */
140
138
  __exportStar(require("./components/SidebarActions/ChangeViewButton"), exports);
141
139
  __exportStar(require("./components/SidebarActions/SidebarActions"), exports);
@@ -326,6 +324,7 @@ __exportStar(require("./icons/RedoclyIcon/RedoclyIcon"), exports);
326
324
  __exportStar(require("./icons/WorkflowHierarchyIcon/WorkflowHierarchyIcon"), exports);
327
325
  __exportStar(require("./icons/GenericIcon/GenericIcon"), exports);
328
326
  __exportStar(require("./icons/ShareIcon/ShareIcon"), exports);
327
+ __exportStar(require("./icons/HashtagIcon/HashtagIcon"), exports);
329
328
  /* Layouts */
330
329
  __exportStar(require("./layouts/RootLayout"), exports);
331
330
  __exportStar(require("./layouts/PageLayout"), exports);
@@ -43,6 +43,7 @@ const ContentWrapper = styled_components_1.default.div `
43
43
  flex-direction: column;
44
44
  flex-shrink: 1;
45
45
  gap: var(--card-content-gap);
46
+ width: 100%;
46
47
  `;
47
48
  const Title = styled_components_1.default.h3 `
48
49
  margin: var(--card-title-margin);
@@ -82,28 +83,6 @@ const Body = styled_components_1.default.div `
82
83
  > *:last-child {
83
84
  margin-bottom: 0;
84
85
  }
85
-
86
- /* Icon link styles */
87
- & a {
88
- display: inline-flex;
89
- align-items: center;
90
- line-height: 1;
91
-
92
- & svg {
93
- width: 1.2em;
94
- height: 1.2em;
95
- margin-right: 0.25em;
96
- vertical-align: middle;
97
-
98
- & g {
99
- fill: var(--link-color-primary);
100
- }
101
- }
102
- }
103
-
104
- & a:visited > span > svg > g {
105
- fill: var(--link-color-visited);
106
- }
107
86
  `;
108
87
  const CardWrapper = styled_components_1.default.div.attrs(({ $isCardLink, $variant }) => ({
109
88
  className: getCardWrapperClass($isCardLink, $variant),
@@ -149,12 +128,6 @@ const CardWrapper = styled_components_1.default.div.attrs(({ $isCardLink, $varia
149
128
  }
150
129
  }
151
130
  }
152
-
153
- && ul {
154
- list-style: none;
155
- padding-left: 0;
156
- margin: var(--spacing-xs) 0;
157
- }
158
131
  `;
159
132
  const getCardWrapperClass = ($isCardLink, $variant) => {
160
133
  let classes = [];
@@ -0,0 +1,8 @@
1
+ import type { JSX } from 'react';
2
+ import type { MCPOption } from '../../../core/types';
3
+ export type ConnectMCPProps = {
4
+ placement?: 'top' | 'bottom';
5
+ alignment?: 'start' | 'end';
6
+ options?: MCPOption[];
7
+ };
8
+ export declare function ConnectMCP({ placement, alignment, options, }: ConnectMCPProps): JSX.Element | null;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ConnectMCP = ConnectMCP;
7
+ const react_1 = __importDefault(require("react"));
8
+ const ConnectMCPButton_1 = require("../../../components/Buttons/ConnectMCPButton");
9
+ const hooks_1 = require("../../../core/hooks");
10
+ function ConnectMCP({ placement = 'bottom', alignment = 'start', options, }) {
11
+ var _a, _b, _c;
12
+ const themeConfig = (0, hooks_1.useThemeConfig)();
13
+ const isMcpDisabled = ((_a = themeConfig.mcp) === null || _a === void 0 ? void 0 : _a.hide) || ((_c = (_b = themeConfig.mcp) === null || _b === void 0 ? void 0 : _b.docs) === null || _c === void 0 ? void 0 : _c.hide);
14
+ if (isMcpDisabled) {
15
+ return null;
16
+ }
17
+ return react_1.default.createElement(ConnectMCPButton_1.ConnectMCPButton, { placement: placement, alignment: alignment, options: options });
18
+ }
19
+ //# sourceMappingURL=ConnectMCP.js.map
@@ -6,8 +6,10 @@ type TabListProps = {
6
6
  size: TabsSize;
7
7
  activeTab: string;
8
8
  onTabChange: (tab: string) => void;
9
+ containerRef: React.RefObject<HTMLUListElement | null>;
10
+ onReadyChange?: (isReady: boolean) => void;
9
11
  };
10
- export declare function TabList({ childrenArray, size, activeTab, onTabChange, }: TabListProps): JSX.Element;
12
+ export declare function TabList({ childrenArray, size, activeTab, onTabChange, containerRef, onReadyChange, }: TabListProps): JSX.Element;
11
13
  export declare const TabListContainer: import("styled-components").StyledComponent<"ul", any, {}, never>;
12
14
  export declare const TabItem: import("styled-components").StyledComponent<"li", any, {
13
15
  active?: boolean;