@redocly/theme 0.59.0 → 0.60.0-custom.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. package/lib/components/AsyncApiDocs/hooks/AfterAsyncApiChannelDescription.d.ts +1 -0
  2. package/lib/components/AsyncApiDocs/hooks/AfterAsyncApiChannelDescription.js +12 -0
  3. package/lib/components/Buttons/ConnectMCPButton.js +3 -3
  4. package/lib/components/Buttons/variables.js +2 -0
  5. package/lib/components/Catalog/CatalogCardView/CatalogCard.js +4 -3
  6. package/lib/components/Catalog/CatalogEntity/CatalogEntity.js +5 -1
  7. package/lib/components/Catalog/CatalogEntity/CatalogEntityGraph/CatalogEntityRelationsGraph.js +2 -2
  8. package/lib/components/Catalog/CatalogEntity/CatalogEntityLinks.js +4 -1
  9. package/lib/components/Catalog/CatalogEntity/CatalogEntityMetadata.js +1 -0
  10. package/lib/components/Catalog/CatalogEntity/CatalogEntityMethodAndPath.js +4 -1
  11. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/ContactProperty.js +4 -1
  12. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/DomainsProperty.js +4 -1
  13. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/EntityTypeProperty.js +4 -1
  14. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/FormatProperty.js +4 -1
  15. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/GitProperty.js +4 -1
  16. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/OwnersProperty.js +4 -1
  17. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/TagsProperty.js +4 -1
  18. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/UserEmailProperty.js +4 -1
  19. package/lib/components/Catalog/CatalogEntity/CatalogEntitySchema.js +2 -2
  20. package/lib/components/Catalog/CatalogFilter/CatalogFilterDateRange.js +2 -2
  21. package/lib/components/Catalog/CatalogSelector.js +1 -1
  22. package/lib/components/Catalog/CatalogSortButton.js +4 -1
  23. package/lib/components/Catalog/CatalogTableView/CatalogTableHeaderCell.js +2 -2
  24. package/lib/components/Catalog/CatalogTableView/CatalogTableViewRow.js +2 -2
  25. package/lib/components/Catalog/CatalogTagsWithTooltip.js +6 -2
  26. package/lib/components/Catalog/variables.dark.js +1 -1
  27. package/lib/components/Catalog/variables.js +5 -3
  28. package/lib/components/CatalogClassic/variables.js +1 -1
  29. package/lib/components/CodeBlock/CodeBlock.js +3 -1
  30. package/lib/components/CodeBlock/CodeBlockTabs.js +3 -3
  31. package/lib/components/DatePicker/variables.js +2 -0
  32. package/lib/components/Feedback/Mood.js +2 -2
  33. package/lib/components/Feedback/Rating.js +2 -2
  34. package/lib/components/Filter/FilterDateRange.js +2 -2
  35. package/lib/components/Filter/FilterSelect.js +5 -1
  36. package/lib/components/Link/Link.d.ts +1 -0
  37. package/lib/components/Loaders/Loading.js +4 -1
  38. package/lib/components/Markdown/Markdown.js +9 -9
  39. package/lib/components/Markdown/styles/{baseTable.js → base-table.js} +1 -1
  40. package/lib/components/Markdown/styles/{headingAnchor.js → heading-anchor.js} +1 -1
  41. package/lib/components/Menu/MenuItem.js +5 -1
  42. package/lib/components/OpenApiDocs/hooks/AdditionalOverviewInfo.d.ts +1 -0
  43. package/lib/components/OpenApiDocs/hooks/AdditionalOverviewInfo.js +12 -0
  44. package/lib/components/OpenApiDocs/hooks/AfterOpenApiDescription.d.ts +1 -0
  45. package/lib/components/OpenApiDocs/hooks/AfterOpenApiDescription.js +6 -0
  46. package/lib/components/OpenApiDocs/hooks/AfterOpenApiOperation.js +1 -0
  47. package/lib/components/OpenApiDocs/hooks/AfterOpenApiTitle.js +1 -0
  48. package/lib/components/OpenApiDocs/hooks/BeforeOpenApiOperation.js +1 -0
  49. package/lib/components/OpenApiDocs/hooks/OpenApiFooter.js +3 -2
  50. package/lib/components/OpenApiDocs/hooks/OpenApiHeader.js +3 -2
  51. package/lib/components/Search/FilterFields/SearchFilterFieldSelect.js +2 -1
  52. package/lib/components/Search/FilterFields/SearchFilterFieldTags.js +7 -1
  53. package/lib/components/Search/SearchAiMessage.js +20 -18
  54. package/lib/components/Search/SearchAiNegativeFeedbackForm.d.ts +5 -3
  55. package/lib/components/Search/SearchAiNegativeFeedbackForm.js +5 -4
  56. package/lib/components/Search/SearchGroups.js +4 -1
  57. package/lib/components/Search/SearchHighlight.js +1 -0
  58. package/lib/components/Search/SearchItem.js +9 -2
  59. package/lib/components/Search/variables.js +2 -0
  60. package/lib/components/Segmented/Segmented.d.ts +1 -1
  61. package/lib/components/Segmented/Segmented.js +2 -2
  62. package/lib/components/Select/Select.d.ts +1 -1
  63. package/lib/components/Select/Select.js +4 -2
  64. package/lib/components/Select/SelectInput.d.ts +1 -1
  65. package/lib/components/Select/SelectInput.js +2 -0
  66. package/lib/components/Select/variables.js +2 -2
  67. package/lib/components/SidebarActions/styled.d.ts +5 -4
  68. package/lib/components/SidebarActions/styled.js +9 -5
  69. package/lib/components/Tag/Tag.d.ts +1 -1
  70. package/lib/components/Tag/Tag.js +1 -1
  71. package/lib/components/Tag/variables.dark.js +8 -0
  72. package/lib/components/Tag/variables.js +8 -0
  73. package/lib/components/Tooltip/Tooltip.js +2 -0
  74. package/lib/components/VersionPicker/VersionPicker.d.ts +1 -1
  75. package/lib/config.d.ts +2 -2
  76. package/lib/core/constants/index.d.ts +1 -0
  77. package/lib/core/constants/index.js +1 -0
  78. package/lib/core/constants/request-methods.d.ts +1 -0
  79. package/lib/core/constants/request-methods.js +14 -0
  80. package/lib/core/hoc/index.d.ts +1 -1
  81. package/lib/core/hoc/index.js +1 -1
  82. package/lib/core/hoc/{typedMemo.js → typed-memo.js} +1 -1
  83. package/lib/core/hooks/__tests__/mocks/mock-intersection-observer.d.ts +1 -1
  84. package/lib/core/hooks/__tests__/mocks/mock-intersection-observer.js +1 -3
  85. package/lib/core/hooks/catalog/{useCatalogEntities.js → use-catalog-entities.js} +1 -1
  86. package/lib/core/hooks/catalog/{useCatalogEntitySchema.d.ts → use-catalog-entity-schema.d.ts} +1 -1
  87. package/lib/core/hooks/catalog/{useCatalogEntitySchema.js → use-catalog-entity-schema.js} +1 -1
  88. package/lib/core/hooks/catalog/{useCatalogTableHeaderCellActions.js → use-catalog-table-header-cell-actions.js} +1 -1
  89. package/lib/core/hooks/catalog/{useCatalogTableViewRow.js → use-catalog-table-view-row.js} +1 -1
  90. package/lib/core/hooks/catalog/{useGraph.js → use-graph.js} +2 -2
  91. package/lib/core/hooks/code-walkthrough/use-code-walkthrough-controls.js +1 -0
  92. package/lib/core/hooks/code-walkthrough/use-code-walkthrough-steps.d.ts +1 -0
  93. package/lib/core/hooks/code-walkthrough/use-renderable-files.js +2 -2
  94. package/lib/core/hooks/index.d.ts +5 -2
  95. package/lib/core/hooks/index.js +5 -2
  96. package/lib/core/hooks/menu/use-collapse.js +1 -0
  97. package/lib/core/hooks/menu/use-mobile-menu-items.js +1 -0
  98. package/lib/core/hooks/use-mcp-config.js +9 -6
  99. package/lib/core/hooks/use-page-actions.d.ts +1 -1
  100. package/lib/core/hooks/use-page-actions.js +24 -4
  101. package/lib/core/hooks/use-telemetry-fallback.js +1 -0
  102. package/lib/core/hooks/use-theme-config.js +1 -0
  103. package/lib/core/hooks/use-theme-hooks.js +1 -0
  104. package/lib/core/openapi/index.d.ts +2 -1
  105. package/lib/core/openapi/index.js +5 -3
  106. package/lib/core/templates/Markdown.js +1 -0
  107. package/lib/core/types/hooks.d.ts +6 -0
  108. package/lib/core/types/index.d.ts +20 -19
  109. package/lib/core/types/index.js +0 -19
  110. package/lib/core/types/l10n.d.ts +1 -1
  111. package/lib/core/types/search.d.ts +1 -0
  112. package/lib/core/types/sidebar.d.ts +1 -0
  113. package/lib/core/utils/{dynamic.js → Dynamic.js} +1 -1
  114. package/lib/core/utils/{get-file-icon.js → GetFileIcon.js} +1 -1
  115. package/lib/core/utils/args-typecheck.d.ts +2 -2
  116. package/lib/core/utils/clipboard-service.js +2 -0
  117. package/lib/core/utils/get-operation-color.d.ts +7 -0
  118. package/lib/core/utils/get-operation-color.js +13 -0
  119. package/lib/core/utils/get-user-agent.js +1 -0
  120. package/lib/core/utils/index.d.ts +3 -2
  121. package/lib/core/utils/index.js +3 -2
  122. package/lib/core/utils/js-utils.d.ts +1 -1
  123. package/lib/core/utils/load-and-navigate.js +1 -0
  124. package/lib/core/utils/markdoc.js +1 -0
  125. package/lib/core/utils/parse-style-string.js +1 -0
  126. package/lib/ext/configure.d.ts +2 -2
  127. package/lib/ext/configure.js +12 -6
  128. package/lib/ext/process-scorecard.d.ts +5 -0
  129. package/lib/ext/process-scorecard.js +11 -0
  130. package/lib/ext/{useConfigureReplay.js → use-configure-replay.js} +5 -4
  131. package/lib/index.d.ts +6 -3
  132. package/lib/index.js +5 -3
  133. package/lib/layouts/ThreePanelLayout.js +4 -4
  134. package/lib/markdoc/components/Cards/variables.dark.js +2 -0
  135. package/lib/markdoc/components/Cards/variables.js +2 -0
  136. package/lib/markdoc/components/CodeWalkthrough/CodePanelHeader.js +1 -0
  137. package/lib/markdoc/tags/code-walkthrough.js +1 -0
  138. package/lib/markdoc/tags/html.js +1 -0
  139. package/package.json +3 -3
  140. package/src/components/AsyncApiDocs/hooks/AfterAsyncApiChannelDescription.tsx +10 -0
  141. package/src/components/Button/Button.tsx +1 -0
  142. package/src/components/Buttons/ConnectMCPButton.tsx +1 -1
  143. package/src/components/Buttons/variables.ts +2 -0
  144. package/src/components/Catalog/CatalogCardView/CatalogCard.tsx +4 -3
  145. package/src/components/Catalog/CatalogEntity/CatalogEntity.tsx +4 -0
  146. package/src/components/Catalog/CatalogEntity/CatalogEntityGraph/CatalogEntityRelationsGraph.tsx +1 -1
  147. package/src/components/Catalog/CatalogEntity/CatalogEntityLinks.tsx +5 -1
  148. package/src/components/Catalog/CatalogEntity/CatalogEntityMetadata.tsx +1 -0
  149. package/src/components/Catalog/CatalogEntity/CatalogEntityMethodAndPath.tsx +5 -1
  150. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/ContactProperty.tsx +5 -1
  151. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/DomainsProperty.tsx +5 -1
  152. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/EntityTypeProperty.tsx +5 -1
  153. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/FormatProperty.tsx +5 -1
  154. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/GitProperty.tsx +5 -1
  155. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/OwnersProperty.tsx +5 -1
  156. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/TagsProperty.tsx +5 -1
  157. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/UserEmailProperty.tsx +5 -1
  158. package/src/components/Catalog/CatalogEntity/CatalogEntitySchema.tsx +3 -1
  159. package/src/components/Catalog/CatalogFilter/CatalogFilterDateRange.tsx +2 -2
  160. package/src/components/Catalog/CatalogSelector.tsx +2 -2
  161. package/src/components/Catalog/CatalogSortButton.tsx +5 -1
  162. package/src/components/Catalog/CatalogTableView/CatalogTableHeaderCell.tsx +1 -1
  163. package/src/components/Catalog/CatalogTableView/CatalogTableViewRow.tsx +1 -1
  164. package/src/components/Catalog/CatalogTagsWithTooltip.tsx +13 -2
  165. package/src/components/Catalog/variables.dark.ts +1 -1
  166. package/src/components/Catalog/variables.ts +5 -3
  167. package/src/components/CatalogClassic/CatalogClassicInfoBlock.tsx +1 -0
  168. package/src/components/CatalogClassic/variables.ts +1 -1
  169. package/src/components/CodeBlock/CodeBlock.tsx +4 -0
  170. package/src/components/CodeBlock/CodeBlockControls.tsx +1 -0
  171. package/src/components/CodeBlock/CodeBlockTabs.tsx +1 -1
  172. package/src/components/DatePicker/variables.ts +3 -1
  173. package/src/components/Feedback/Mood.tsx +2 -2
  174. package/src/components/Feedback/Rating.tsx +2 -2
  175. package/src/components/Filter/FilterDateRange.tsx +2 -2
  176. package/src/components/Filter/FilterSelect.tsx +1 -0
  177. package/src/components/JsonViewer/JsonViewer.tsx +1 -0
  178. package/src/components/JsonViewer/helpers.tsx +3 -0
  179. package/src/components/LastUpdated/LastUpdated.tsx +1 -0
  180. package/src/components/Link/Link.tsx +1 -0
  181. package/src/components/Loaders/Loading.tsx +5 -1
  182. package/src/components/Markdown/Markdown.tsx +2 -2
  183. package/src/components/Menu/MenuItem.tsx +6 -2
  184. package/src/components/OpenApiDocs/hooks/AdditionalOverviewInfo.tsx +10 -0
  185. package/src/components/OpenApiDocs/hooks/AfterOpenApiDescription.tsx +2 -0
  186. package/src/components/OpenApiDocs/hooks/AfterOpenApiOperation.tsx +1 -1
  187. package/src/components/OpenApiDocs/hooks/AfterOpenApiTitle.tsx +1 -1
  188. package/src/components/OpenApiDocs/hooks/BeforeOpenApiOperation.tsx +1 -1
  189. package/src/components/OpenApiDocs/hooks/OpenApiFooter.tsx +1 -1
  190. package/src/components/OpenApiDocs/hooks/OpenApiHeader.tsx +1 -1
  191. package/src/components/Search/FilterFields/SearchFilterFieldSelect.tsx +4 -1
  192. package/src/components/Search/FilterFields/SearchFilterFieldTags.tsx +7 -1
  193. package/src/components/Search/SearchAiMessage.tsx +42 -37
  194. package/src/components/Search/SearchAiNegativeFeedbackForm.tsx +7 -5
  195. package/src/components/Search/SearchGroups.tsx +4 -1
  196. package/src/components/Search/SearchHighlight.tsx +1 -0
  197. package/src/components/Search/SearchItem.tsx +15 -3
  198. package/src/components/Search/variables.ts +2 -0
  199. package/src/components/Segmented/Segmented.tsx +2 -2
  200. package/src/components/Select/Select.tsx +8 -4
  201. package/src/components/Select/SelectInput.tsx +10 -1
  202. package/src/components/Select/variables.ts +2 -2
  203. package/src/components/SidebarActions/{styled.tsx → styled.ts} +11 -4
  204. package/src/components/Tag/Tag.tsx +4 -2
  205. package/src/components/Tag/variables.dark.ts +8 -0
  206. package/src/components/Tag/variables.ts +8 -0
  207. package/src/components/Tooltip/Tooltip.tsx +2 -1
  208. package/src/components/VersionPicker/VersionPicker.tsx +2 -1
  209. package/src/config.ts +2 -0
  210. package/src/core/constants/index.ts +1 -0
  211. package/src/core/constants/request-methods.ts +10 -0
  212. package/src/core/hoc/index.ts +1 -1
  213. package/src/core/hooks/__mocks__/use-theme-hooks.ts +2 -2
  214. package/src/core/hooks/__tests__/mocks/mock-intersection-observer.ts +9 -8
  215. package/src/core/hooks/catalog/{useCatalogEntitySchema.ts → use-catalog-entity-schema.ts} +3 -3
  216. package/src/core/hooks/catalog/{useGraph.ts → use-graph.ts} +1 -1
  217. package/src/core/hooks/code-walkthrough/__mocks__/MockIntersectionObserver.ts +1 -1
  218. package/src/core/hooks/code-walkthrough/__mocks__/mock-intersection-observer.ts +24 -0
  219. package/src/core/hooks/code-walkthrough/use-code-walkthrough-controls.ts +1 -0
  220. package/src/core/hooks/code-walkthrough/use-code-walkthrough-steps.ts +2 -2
  221. package/src/core/hooks/code-walkthrough/use-renderable-files.ts +1 -1
  222. package/src/core/hooks/index.ts +5 -2
  223. package/src/core/hooks/menu/use-collapse.ts +3 -3
  224. package/src/core/hooks/menu/use-mobile-menu-items.ts +1 -0
  225. package/src/core/hooks/use-mcp-config.ts +11 -5
  226. package/src/core/hooks/use-page-actions.ts +29 -2
  227. package/src/core/hooks/use-telemetry-fallback.ts +1 -0
  228. package/src/core/hooks/use-theme-config.ts +1 -0
  229. package/src/core/hooks/use-theme-hooks.ts +2 -1
  230. package/src/core/openapi/index.ts +2 -1
  231. package/src/core/templates/Markdown.tsx +1 -0
  232. package/src/core/types/catalog.ts +3 -1
  233. package/src/core/types/filter.ts +1 -0
  234. package/src/core/types/hooks.ts +6 -0
  235. package/src/core/types/index.ts +20 -19
  236. package/src/core/types/l10n.ts +24 -1
  237. package/src/core/types/search.ts +2 -1
  238. package/src/core/types/segmented.ts +1 -0
  239. package/src/core/types/select.ts +1 -0
  240. package/src/core/types/sidebar.ts +1 -0
  241. package/src/core/utils/args-typecheck.ts +2 -2
  242. package/src/core/utils/clipboard-service.ts +2 -0
  243. package/src/core/utils/get-operation-color.ts +18 -0
  244. package/src/core/utils/get-user-agent.ts +1 -0
  245. package/src/core/utils/index.ts +3 -2
  246. package/src/core/utils/js-utils.ts +1 -1
  247. package/src/core/utils/load-and-navigate.ts +1 -0
  248. package/src/core/utils/markdoc.ts +1 -0
  249. package/src/core/utils/parse-style-string.ts +1 -0
  250. package/src/ext/configure.ts +15 -8
  251. package/src/ext/process-scorecard.ts +14 -0
  252. package/src/ext/{useConfigureReplay.ts → use-configure-replay.ts} +5 -3
  253. package/src/index.ts +6 -3
  254. package/src/layouts/ThreePanelLayout.tsx +1 -1
  255. package/src/markdoc/components/Cards/variables.dark.ts +2 -0
  256. package/src/markdoc/components/Cards/variables.ts +3 -1
  257. package/src/markdoc/components/CodeWalkthrough/CodePanelHeader.tsx +1 -1
  258. package/src/markdoc/tags/code-walkthrough.ts +2 -0
  259. package/src/markdoc/tags/html.ts +1 -0
  260. package/lib/core/hooks/__mocks__/index.d.ts +0 -28
  261. package/lib/core/hooks/__mocks__/index.js +0 -45
  262. package/lib/core/hooks/__mocks__/search/use-recent-searches.d.ts +0 -5
  263. package/lib/core/hooks/__mocks__/search/use-recent-searches.js +0 -13
  264. package/lib/core/hooks/__mocks__/search/use-search-filter.d.ts +0 -8
  265. package/lib/core/hooks/__mocks__/search/use-search-filter.js +0 -15
  266. package/lib/core/hooks/__mocks__/search/use-suggested-pages.d.ts +0 -4
  267. package/lib/core/hooks/__mocks__/search/use-suggested-pages.js +0 -13
  268. package/lib/core/hooks/__mocks__/use-controlled-state.d.ts +0 -1
  269. package/lib/core/hooks/__mocks__/use-controlled-state.js +0 -7
  270. package/lib/core/hooks/__mocks__/use-element-size.d.ts +0 -4
  271. package/lib/core/hooks/__mocks__/use-element-size.js +0 -9
  272. package/lib/core/hooks/__mocks__/use-input-key-commands.d.ts +0 -3
  273. package/lib/core/hooks/__mocks__/use-input-key-commands.js +0 -8
  274. package/lib/core/hooks/__mocks__/use-mobile-menu.d.ts +0 -1
  275. package/lib/core/hooks/__mocks__/use-mobile-menu.js +0 -7
  276. package/lib/core/hooks/__mocks__/use-theme-config.d.ts +0 -8
  277. package/lib/core/hooks/__mocks__/use-theme-config.js +0 -13
  278. package/lib/core/hooks/__mocks__/use-theme-hooks.d.ts +0 -69
  279. package/lib/core/hooks/__mocks__/use-theme-hooks.js +0 -94
  280. package/lib/core/hooks/__mocks__/use-time-ago.d.ts +0 -3
  281. package/lib/core/hooks/__mocks__/use-time-ago.js +0 -8
  282. package/lib/core/hooks/code-walkthrough/__mocks__/MockIntersectionObserver.d.ts +0 -10
  283. package/lib/core/hooks/code-walkthrough/__mocks__/MockIntersectionObserver.js +0 -56
  284. package/lib/core/hooks/menu/__mocks__/use-mobile-menu-items.d.ts +0 -1
  285. package/lib/core/hooks/menu/__mocks__/use-mobile-menu-items.js +0 -35
  286. /package/lib/components/Markdown/styles/{baseTable.d.ts → base-table.d.ts} +0 -0
  287. /package/lib/components/Markdown/styles/{headingAnchor.d.ts → heading-anchor.d.ts} +0 -0
  288. /package/lib/core/hoc/{typedMemo.d.ts → typed-memo.d.ts} +0 -0
  289. /package/lib/core/hooks/catalog/{useCatalogEntities.d.ts → use-catalog-entities.d.ts} +0 -0
  290. /package/lib/core/hooks/catalog/{useCatalogTableHeaderCellActions.d.ts → use-catalog-table-header-cell-actions.d.ts} +0 -0
  291. /package/lib/core/hooks/catalog/{useCatalogTableViewRow.d.ts → use-catalog-table-view-row.d.ts} +0 -0
  292. /package/lib/core/hooks/catalog/{useGraph.d.ts → use-graph.d.ts} +0 -0
  293. /package/lib/core/utils/{dynamic.d.ts → Dynamic.d.ts} +0 -0
  294. /package/lib/core/utils/{get-file-icon.d.ts → GetFileIcon.d.ts} +0 -0
  295. /package/lib/ext/{useConfigureReplay.d.ts → use-configure-replay.d.ts} +0 -0
  296. /package/src/components/Markdown/styles/{baseTable.ts → base-table.ts} +0 -0
  297. /package/src/components/Markdown/styles/{headingAnchor.ts → heading-anchor.ts} +0 -0
  298. /package/src/components/Panel/{PanelBody.ts → PanelBody.tsx} +0 -0
  299. /package/src/components/Panel/{PanelHeader.ts → PanelHeader.tsx} +0 -0
  300. /package/src/components/Panel/{PanelHeaderTitle.ts → PanelHeaderTitle.tsx} +0 -0
  301. /package/src/components/StatusCode/{StatusCode.ts → StatusCode.tsx} +0 -0
  302. /package/src/components/Typography/{CompactTypography.ts → CompactTypography.tsx} +0 -0
  303. /package/src/components/Typography/{Emphasis.ts → Emphasis.tsx} +0 -0
  304. /package/src/components/Typography/{H1.ts → H1.tsx} +0 -0
  305. /package/src/components/Typography/{H2.ts → H2.tsx} +0 -0
  306. /package/src/components/Typography/{H3.ts → H3.tsx} +0 -0
  307. /package/src/components/Typography/{H4.ts → H4.tsx} +0 -0
  308. /package/src/components/Typography/{SectionHeader.ts → SectionHeader.tsx} +0 -0
  309. /package/src/components/Typography/{Typography.ts → Typography.tsx} +0 -0
  310. /package/src/core/hoc/{typedMemo.ts → typed-memo.ts} +0 -0
  311. /package/src/core/hooks/catalog/{useCatalogEntities.ts → use-catalog-entities.ts} +0 -0
  312. /package/src/core/hooks/catalog/{useCatalogTableHeaderCellActions.ts → use-catalog-table-header-cell-actions.ts} +0 -0
  313. /package/src/core/hooks/catalog/{useCatalogTableViewRow.ts → use-catalog-table-view-row.ts} +0 -0
  314. /package/src/core/utils/{dynamic.tsx → Dynamic.tsx} +0 -0
  315. /package/src/core/utils/{get-file-icon.tsx → GetFileIcon.tsx} +0 -0
@@ -16,6 +16,7 @@ export type LinkProps = {
16
16
  languageInsensitive?: boolean;
17
17
  onClick?: () => void;
18
18
  [key: string]: unknown;
19
+ rel?: string;
19
20
  };
20
21
 
21
22
  export function Link(props: React.PropsWithChildren<LinkProps>): JSX.Element {
@@ -5,6 +5,7 @@ import type { JSX } from 'react';
5
5
 
6
6
  import { getCssColorVariable } from '@redocly/theme/core/utils';
7
7
  import { Spinner } from '@redocly/theme/icons/Spinner/Spinner';
8
+ import { useThemeHooks } from '@redocly/theme/core/hooks';
8
9
 
9
10
  const LoadingMessage = styled.div<{ color: string }>`
10
11
  font-family: helvetica, sans, sans-serif;
@@ -20,9 +21,12 @@ export type LoadingProps = {
20
21
  };
21
22
 
22
23
  export function Loading({ color }: LoadingProps): JSX.Element {
24
+ const { useTranslate } = useThemeHooks();
25
+ const { translate } = useTranslate();
26
+
23
27
  return (
24
28
  <div style={{ textAlign: 'center' }}>
25
- <LoadingMessage color={color}>Loading ...</LoadingMessage>
29
+ <LoadingMessage color={color}>{translate('loaders.loading', 'Loading...')}</LoadingMessage>
26
30
  <Spinner color={color} />
27
31
  </div>
28
32
  );
@@ -3,9 +3,9 @@ import styled, { css } from 'styled-components';
3
3
  import type { PropsWithChildren } from 'react';
4
4
 
5
5
  import { typography } from '@redocly/theme/core/utils';
6
- import { markdownBaseTableCss } from '@redocly/theme/components/Markdown/styles/baseTable';
6
+ import { markdownBaseTableCss } from '@redocly/theme/components/Markdown/styles/base-table';
7
7
  import { markdownLinksCss } from '@redocly/theme/components/Markdown/styles/links';
8
- import { headingAnchorCss } from '@redocly/theme/components/Markdown/styles/headingAnchor';
8
+ import { headingAnchorCss } from '@redocly/theme/components/Markdown/styles/heading-anchor';
9
9
 
10
10
  export type MarkdownProps = PropsWithChildren<{
11
11
  className?: string;
@@ -11,7 +11,7 @@ import { ChevronDownIcon } from '@redocly/theme/icons/ChevronDownIcon/ChevronDow
11
11
  import { ChevronRightIcon } from '@redocly/theme/icons/ChevronRightIcon/ChevronRightIcon';
12
12
  import { HttpTag } from '@redocly/theme/components/Tags/HttpTag';
13
13
  import { MenuItemType } from '@redocly/theme/core/constants';
14
- import { getMenuItemType } from '@redocly/theme/core/utils';
14
+ import { getMenuItemType, getOperationColor } from '@redocly/theme/core/utils';
15
15
  import { ArrowRightIcon } from '@redocly/theme/icons/ArrowRightIcon/ArrowRightIcon';
16
16
  import { Badge } from '@redocly/theme/components/Badge/Badge';
17
17
  import { GenericIcon } from '@redocly/theme/icons/GenericIcon/GenericIcon';
@@ -67,7 +67,11 @@ export function MenuItem(props: React.PropsWithChildren<MenuItemProps>): JSX.Ele
67
67
  )
68
68
  ) : null;
69
69
 
70
- const httpColor = item.deprecated ? 'http-deprecated' : item.httpVerb;
70
+ const httpColor = getOperationColor({
71
+ isAdditionalOperation: item.isAdditionalOperation,
72
+ deprecated: item.deprecated,
73
+ httpVerb: item.httpVerb || '',
74
+ });
71
75
 
72
76
  const label = item.label && (
73
77
  <MenuItemLabelWrapper
@@ -0,0 +1,10 @@
1
+ // interface AdditionalOverviewInfoProps {
2
+ // info: any;
3
+ // }
4
+
5
+ // export function AdditionalOverviewInfo(_props: AdditionalOverviewInfoProps) {
6
+ // return null;
7
+ // }
8
+
9
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
10
+ export const AdditionalOverviewInfo: any = null;
@@ -0,0 +1,2 @@
1
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
2
+ export const AfterOpenApiDescription: any = null;
@@ -5,5 +5,5 @@
5
5
  // export function AfterOpenApiOperation(_props: AfterOpenAPIOperationProps) {
6
6
  // return null;
7
7
  // }
8
-
8
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
9
9
  export const AfterOpenApiOperation: any = null;
@@ -5,5 +5,5 @@
5
5
  // export function AfterOpenApiTitle(_props: AfterOpenApiTitleProps) {
6
6
  // return null;
7
7
  // }
8
-
8
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
9
9
  export const AfterOpenApiTitle: any = null;
@@ -5,5 +5,5 @@
5
5
  // export function BeforeOpenApiOperation(_props: BeforeOpenAPIOperationProps) {
6
6
  // return null;
7
7
  // }
8
-
8
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
9
9
  export const BeforeOpenApiOperation: any = null;
@@ -1,5 +1,5 @@
1
1
  // export function OpenApiFooter() {
2
2
  // return null;
3
3
  // }
4
-
4
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
5
5
  export const OpenApiFooter: any = null;
@@ -1,5 +1,5 @@
1
1
  // export function OpenApiHeader() {
2
2
  // return null;
3
3
  // }
4
-
4
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
5
5
  export const OpenApiHeader: any = null;
@@ -27,6 +27,7 @@ export function SearchFilterFieldSelect({
27
27
  const { useFacetQuery, useTranslate } = useThemeHooks();
28
28
  const { translate } = useTranslate();
29
29
  const { searchFacet, setSearchFacet, setSearchFacetQuery } = useFacetQuery(facet.field);
30
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
30
31
  const [selectOptions, setSelectOptions] = useState<any[]>([]);
31
32
  const isMultiple = facet.type === 'multi-select';
32
33
 
@@ -101,7 +102,9 @@ export function SearchFilterFieldSelect({
101
102
  searchable={true}
102
103
  footer={
103
104
  selectOptions.length === MAX_SELECT_OPTIONS ? (
104
- <FilterSelectFooter>Search to show more items...</FilterSelectFooter>
105
+ <FilterSelectFooter>
106
+ {translate('search.filter.field.footer', 'Search to show more items...')}
107
+ </FilterSelectFooter>
105
108
  ) : null
106
109
  }
107
110
  onSearch={onSearch}
@@ -4,6 +4,8 @@ import styled from 'styled-components';
4
4
  import type { SearchFacet, SearchFacetCount } from '@redocly/theme/core/types';
5
5
 
6
6
  import { Tag } from '@redocly/theme/components/Tag/Tag';
7
+ import { getOperationColor } from '@redocly/theme/core/utils';
8
+ import { REQUEST_METHODS } from '@redocly/theme/core/constants';
7
9
 
8
10
  type SearchFilterFieldTagsProps = {
9
11
  className?: string;
@@ -32,11 +34,15 @@ export function SearchFilterFieldTags({
32
34
  : [...selectedValues, value];
33
35
  onChange(values);
34
36
  };
37
+ const color = getOperationColor({
38
+ httpVerb: value,
39
+ isAdditionalOperation: !REQUEST_METHODS.includes(value.toUpperCase()),
40
+ });
35
41
  return (
36
42
  <FilterTagWrapper
37
43
  key={`${count}-${index}`}
38
44
  tabIndex={0}
39
- color={value}
45
+ color={color}
40
46
  onClick={() => {
41
47
  updateSelectedValues();
42
48
  }}
@@ -95,9 +95,9 @@ function SearchAiMessageComponent({
95
95
  />
96
96
  )}
97
97
  <MessageContentWrapper>
98
- <MessageWrapper role={role}>
99
- {role === AiSearchConversationRole.ASSISTANT ? (
100
- <>
98
+ {role === AiSearchConversationRole.ASSISTANT ? (
99
+ <>
100
+ <MessageWrapper role={role}>
101
101
  <ResponseText as="div" children={markDownContent} data-testid="response-text" />
102
102
  {hasResources && (
103
103
  <>
@@ -119,42 +119,47 @@ function SearchAiMessageComponent({
119
119
  ))}
120
120
  </ResourceTagsWrapper>
121
121
  </ResourcesWrapper>
122
- <FeedbackWrapper>
123
- <SearchAiActionButtons
124
- content={content}
125
- feedback={feedback}
126
- onFeedback={handleFeedbackClick}
127
- disabled={feedbackSent}
128
- />
129
- </FeedbackWrapper>
130
122
  </>
131
123
  )}
132
- </>
133
- ) : (
134
- content
135
- )}
136
- {isThinking && content.length === 0 && (
137
- <ThinkingDotsWrapper data-testid="thinking-dots-wrapper">
138
- <ThinkingDot />
139
- <ThinkingDot />
140
- <ThinkingDot />
141
- </ThinkingDotsWrapper>
142
- )}
143
- </MessageWrapper>
144
- {messageId && feedback === FeedbackType.Dislike && !showSuccessMessage && (
145
- <SearchAiNegativeFeedbackForm
146
- messageId={messageId}
147
- onClose={onFeedbackChange}
148
- onSubmit={(reason) => handleFeedbackClick(FeedbackType.Dislike, reason)}
149
- />
150
- )}
151
- {showSuccessMessage && (
152
- <SuccessMessageWrapper data-component-name="Search/SearchAiMessage/Success">
153
- <CheckmarkOutlineIcon size="20px" color="var(--color-success-base)" />
154
- <SuccessMessageText>
155
- {translate('search.ai.feedback.thanks', 'Thank you for your feedback!')}
156
- </SuccessMessageText>
157
- </SuccessMessageWrapper>
124
+ {isThinking && content.length === 0 && (
125
+ <ThinkingDotsWrapper data-testid="thinking-dots-wrapper">
126
+ <ThinkingDot />
127
+ <ThinkingDot />
128
+ <ThinkingDot />
129
+ </ThinkingDotsWrapper>
130
+ )}
131
+ {content.length > 0 && (
132
+ <FeedbackWrapper>
133
+ <SearchAiActionButtons
134
+ content={content}
135
+ feedback={feedback}
136
+ onFeedback={handleFeedbackClick}
137
+ disabled={!!feedback}
138
+ />
139
+ </FeedbackWrapper>
140
+ )}
141
+ </MessageWrapper>
142
+ {messageId && feedback === FeedbackType.Dislike && !showSuccessMessage && (
143
+ <SearchAiNegativeFeedbackForm
144
+ messageId={messageId}
145
+ onClose={(messageId: string, feedback: FeedbackType) => {
146
+ onFeedbackChange(messageId, feedback);
147
+ setFeedbackSent(true);
148
+ }}
149
+ onSubmit={(reason) => handleFeedbackClick(FeedbackType.Dislike, reason)}
150
+ />
151
+ )}
152
+ {showSuccessMessage && (
153
+ <SuccessMessageWrapper data-component-name="Search/SearchAiMessage/Success">
154
+ <CheckmarkOutlineIcon size="20px" color="var(--color-success-base)" />
155
+ <SuccessMessageText>
156
+ {translate('search.ai.feedback.thanks', 'Thank you for your feedback!')}
157
+ </SuccessMessageText>
158
+ </SuccessMessageWrapper>
159
+ )}
160
+ </>
161
+ ) : (
162
+ <MessageWrapper role={role}>{content}</MessageWrapper>
158
163
  )}
159
164
  </MessageContentWrapper>
160
165
  </SearchAiMessageWrapper>
@@ -2,8 +2,8 @@ import React, { useState, useEffect } from 'react';
2
2
  import styled from 'styled-components';
3
3
 
4
4
  import type { JSX } from 'react';
5
- import type { FeedbackType } from '@redocly/theme/core/types';
6
5
 
6
+ import { FeedbackType } from '@redocly/theme/core/types';
7
7
  import { Button } from '@redocly/theme/components/Button/Button';
8
8
  import { CloseIcon } from '@redocly/theme/icons/CloseIcon/CloseIcon';
9
9
  import { ArrowLeftIcon } from '@redocly/theme/icons/ArrowLeftIcon/ArrowLeftIcon';
@@ -12,8 +12,9 @@ import { useThemeHooks } from '@redocly/theme/core/hooks';
12
12
 
13
13
  export type SearchAiNegativeFeedbackFormProps = {
14
14
  messageId: string;
15
- onClose: (messageId: string, feedback: FeedbackType | undefined) => void;
15
+ onClose: (messageId: string, feedback: FeedbackType, reason?: string) => void;
16
16
  onSubmit: (reason: string) => void;
17
+ formRef?: React.Ref<HTMLDivElement>;
17
18
  };
18
19
 
19
20
  const NEGATIVE_FEEDBACK_DEFAULT_REASONS = [
@@ -27,6 +28,7 @@ export function SearchAiNegativeFeedbackForm({
27
28
  messageId,
28
29
  onClose,
29
30
  onSubmit,
31
+ formRef,
30
32
  }: SearchAiNegativeFeedbackFormProps): JSX.Element {
31
33
  const { useTranslate } = useThemeHooks();
32
34
  const { translate } = useTranslate();
@@ -54,7 +56,7 @@ export function SearchAiNegativeFeedbackForm({
54
56
  }, [showMoreInput]);
55
57
 
56
58
  return (
57
- <FeedbackFormWrapper data-component-name="Search/SearchAiNegativeFeedbackForm">
59
+ <FeedbackFormWrapper data-component-name="Search/SearchAiNegativeFeedbackForm" ref={formRef}>
58
60
  <FeedbackHeader>
59
61
  {showMoreInput ? (
60
62
  <BackButton
@@ -72,7 +74,7 @@ export function SearchAiNegativeFeedbackForm({
72
74
  variant="text"
73
75
  size="small"
74
76
  icon={<CloseIcon />}
75
- onClick={() => onClose(messageId, undefined)}
77
+ onClick={() => onClose(messageId, FeedbackType.Dislike, undefined)}
76
78
  aria-label="Close feedback form"
77
79
  />
78
80
  </FeedbackHeader>
@@ -85,7 +87,7 @@ export function SearchAiNegativeFeedbackForm({
85
87
  </Button>
86
88
  ))}
87
89
  <Button variant="outlined" size="small" onClick={() => setShowMoreInput(true)}>
88
- More...
90
+ {translate('search.ai.feedback.more', 'More...')}
89
91
  </Button>
90
92
  </FeedbackReasonsWrapper>
91
93
  ) : (
@@ -9,6 +9,7 @@ import {
9
9
  type SearchFilterItem,
10
10
  } from '@redocly/theme/core/types';
11
11
  import { Tag } from '@redocly/theme/components/Tag/Tag';
12
+ import { useThemeHooks } from '@redocly/theme/core/hooks';
12
13
 
13
14
  type SearchGroupsProps = {
14
15
  facets: SearchFacet[];
@@ -26,6 +27,8 @@ export function SearchGroups({
26
27
  onQuickFilterReset,
27
28
  }: SearchGroupsProps): JSX.Element {
28
29
  const groupFacets = facets.filter((facet) => facet.field === groupField);
30
+ const { useTranslate } = useThemeHooks();
31
+ const { translate } = useTranslate();
29
32
 
30
33
  const handleGroupTagClick = (
31
34
  value: string,
@@ -47,7 +50,7 @@ export function SearchGroups({
47
50
  onClick={() => searchFilter.some((item) => item.isQuickFilter) && onQuickFilterReset()}
48
51
  selectable
49
52
  >
50
- All
53
+ {translate('search.groups.all', 'All')}
51
54
  </GroupTag>
52
55
  <Divider />
53
56
  {groupFacets.flatMap((facet) =>
@@ -2,6 +2,7 @@ import * as React from 'react';
2
2
  import styled from 'styled-components';
3
3
 
4
4
  import type { JSX } from 'react';
5
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
5
6
  function slicer(str: string, arr: string[]): any[] {
6
7
  const markOpenIndex = str.indexOf('<mark>');
7
8
  const markCloseIndex = str.indexOf('</mark>');
@@ -9,8 +9,9 @@ import { Link } from '@redocly/theme/components/Link/Link';
9
9
  import { Image } from '@redocly/theme/components/Image/Image';
10
10
  import { searchHighlight } from '@redocly/theme/components/Search/SearchHighlight';
11
11
  import { Badge } from '@redocly/theme/components/Badge/Badge';
12
- import { trimText } from '@redocly/theme/core/utils';
12
+ import { trimText, getOperationColor } from '@redocly/theme/core/utils';
13
13
  import { ReturnKeyIcon } from '@redocly/theme/icons/ReturnKeyIcon/ReturnKeyIcon';
14
+ import { useThemeHooks } from '@redocly/theme/core/hooks';
14
15
 
15
16
  type ActiveItem<T> = T & { active?: boolean };
16
17
  export type SearchItemProps = {
@@ -32,6 +33,8 @@ export function SearchItem({
32
33
  innerRef,
33
34
  }: SearchItemProps): JSX.Element {
34
35
  const ref = useRef<HTMLAnchorElement>(null);
36
+ const { useTranslate } = useThemeHooks();
37
+ const { translate } = useTranslate();
35
38
 
36
39
  useEffect(() => {
37
40
  if (item.active) {
@@ -45,6 +48,11 @@ export function SearchItem({
45
48
  highlight.parameters && highlight.parameters.length ? highlight.parameters[0] : null;
46
49
  const shouldShowPath = document.path && document.path?.length > 1;
47
50
 
51
+ const httpColor = getOperationColor({
52
+ isAdditionalOperation: document.isAdditionalOperation,
53
+ httpVerb: document.httpMethod || '',
54
+ });
55
+
48
56
  return (
49
57
  <SearchItemWrapper
50
58
  className={className}
@@ -74,7 +82,7 @@ export function SearchItem({
74
82
  )}
75
83
  {document.httpMethod ? (
76
84
  <SearchItemOperation>
77
- <SearchItemOperationTag color={document.httpMethod}>
85
+ <SearchItemOperationTag color={httpColor}>
78
86
  {document.httpMethod.toUpperCase()}
79
87
  </SearchItemOperationTag>
80
88
  {highlight.httpPath ? searchHighlight(highlight.httpPath) : document.httpPath}
@@ -84,7 +92,11 @@ export function SearchItem({
84
92
  <SearchItemTitle>
85
93
  {highlight.title ? searchHighlight(highlight.title) : document.title}
86
94
  </SearchItemTitle>
87
- {document.deprecated ? <SearchItemBadge deprecated>Deprecated</SearchItemBadge> : null}
95
+ {document.deprecated ? (
96
+ <SearchItemBadge deprecated>
97
+ {translate('search.searchItem.deprecated', 'Deprecated')}
98
+ </SearchItemBadge>
99
+ ) : null}
88
100
  {document.badges
89
101
  ? document.badges.map(({ name, color }) => (
90
102
  <SearchItemBadge color={color || 'var(--color-info-base)'} key={name}>
@@ -1,5 +1,6 @@
1
1
  import { css } from 'styled-components';
2
2
 
3
+ /* eslint-disable theme/no-raw-colors-in-styles */
3
4
  export const search = css`
4
5
  /**
5
6
  * @tokens Search
@@ -261,3 +262,4 @@ export const search = css`
261
262
 
262
263
  // @tokens End
263
264
  `;
265
+ /* eslint-enable theme/no-raw-colors-in-styles */
@@ -2,9 +2,9 @@ import React, { forwardRef } from 'react';
2
2
  import styled, { css } from 'styled-components';
3
3
 
4
4
  import type { ForwardedRef, ReactElement } from 'react';
5
- import type { SegmentedProps } from '@redocly/theme/core/types/segmented';
5
+ import type { SegmentedProps } from '@redocly/theme/core/types';
6
6
 
7
- import { typedMemo } from '@redocly/theme/core/hoc/typedMemo';
7
+ import { typedMemo } from '@redocly/theme/core/hoc/typed-memo';
8
8
 
9
9
  function SegmentedComponent<T>(
10
10
  { options, onChange, value, className = '', size = 'regular' }: SegmentedProps<T>,
@@ -2,14 +2,14 @@ import React, { Fragment, useEffect, useId, useRef, useState } from 'react';
2
2
  import styled from 'styled-components';
3
3
 
4
4
  import type { JSX } from 'react';
5
- import type { SelectOption, SelectProps } from '@redocly/theme/core/types/select';
5
+ import type { SelectOption, SelectProps } from '@redocly/theme/core/types';
6
6
 
7
7
  import { CheckmarkIcon } from '@redocly/theme/icons/CheckmarkIcon/CheckmarkIcon';
8
8
  import { SelectInput } from '@redocly/theme/components/Select/SelectInput';
9
9
  import { Dropdown } from '@redocly/theme/components/Dropdown/Dropdown';
10
10
  import { DropdownMenu } from '@redocly/theme/components/Dropdown/DropdownMenu';
11
11
  import { DropdownMenuItem } from '@redocly/theme/components/Dropdown/DropdownMenuItem';
12
- import { useOutsideClick } from '@redocly/theme/core/hooks';
12
+ import { useOutsideClick, useThemeHooks } from '@redocly/theme/core/hooks';
13
13
 
14
14
  export function Select<T>(props: SelectProps<T>): JSX.Element {
15
15
  const {
@@ -37,6 +37,8 @@ export function Select<T>(props: SelectProps<T>): JSX.Element {
37
37
  renderInput,
38
38
  renderDivider,
39
39
  } = props;
40
+ const { useTranslate } = useThemeHooks();
41
+ const { translate } = useTranslate();
40
42
 
41
43
  const getSelectedOptionsFromPropsValue = () => {
42
44
  const values = Array.isArray(value) ? value : [value];
@@ -231,7 +233,9 @@ export function Select<T>(props: SelectProps<T>): JSX.Element {
231
233
  >
232
234
  <SelectDropdownMenu role="listbox" footer={footer}>
233
235
  {filteredOptions.length === 0 ? (
234
- <DropdownMenuItem disabled>No results</DropdownMenuItem>
236
+ <DropdownMenuItem disabled>
237
+ {translate('select.noResults', 'No results')}
238
+ </DropdownMenuItem>
235
239
  ) : (
236
240
  filteredOptions.map((option, index) => {
237
241
  return (
@@ -258,7 +262,7 @@ export function Select<T>(props: SelectProps<T>): JSX.Element {
258
262
  {renderDivider && index !== options.length - 1 ? renderDivider() : null}
259
263
  </Fragment>
260
264
  );
261
- }) || 'No results'
265
+ }) || translate('select.noResults', 'No results')
262
266
  )}
263
267
  </SelectDropdownMenu>
264
268
  </SelectDropdown>
@@ -1,7 +1,7 @@
1
1
  import styled from 'styled-components';
2
2
  import React, { useRef } from 'react';
3
3
 
4
- import type { SelectOption } from '@redocly/theme/core/types/select';
4
+ import type { SelectOption } from '@redocly/theme/core/types';
5
5
 
6
6
  import { Tag } from '@redocly/theme/components/Tag/Tag';
7
7
  import { CloseIcon } from '@redocly/theme/icons/CloseIcon/CloseIcon';
@@ -11,7 +11,9 @@ type SelectInputProps<T> = {
11
11
  id?: string;
12
12
  listboxId?: string;
13
13
  selectedOptions: SelectOption<T>[];
14
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
14
15
  searchValue: any;
16
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
15
17
  stickyValue: any;
16
18
  onlyIcon?: boolean;
17
19
  icon?: React.ReactNode;
@@ -21,10 +23,15 @@ type SelectInputProps<T> = {
21
23
  searchable?: boolean;
22
24
  clearable?: boolean;
23
25
  inputRef?: React.ForwardedRef<HTMLInputElement>;
26
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
24
27
  clearHandler?: (value?: any) => void;
28
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
25
29
  inputBlurHandler?: (e?: any) => void;
30
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
26
31
  inputFocusHandler?: (e?: any) => void;
32
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
27
33
  searchHandler?: (e?: any) => void;
34
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
28
35
  clickHandler?: (e?: any) => void;
29
36
  };
30
37
 
@@ -50,11 +57,13 @@ export function SelectInput<T>(props: SelectInputProps<T>): React.ReactNode {
50
57
  } = props;
51
58
  const inputRef = useRef<HTMLInputElement | null>(null);
52
59
 
60
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
53
61
  const onChangeHandler = (e: any) => {
54
62
  searchHandler?.(e);
55
63
  inputRef.current?.focus();
56
64
  };
57
65
 
66
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
58
67
  const onKeyDownHandler = (e: any) => {
59
68
  if (e.key === 'Backspace' && !searchValue && selectedOptions.length) {
60
69
  clearHandler?.(selectedOptions[selectedOptions.length - 1]);
@@ -10,7 +10,7 @@ export const select = css`
10
10
  --select-text-color: var(--text-color-secondary); // @presenter Color
11
11
  --select-border-radius: var(--border-radius); // @presenter BorderRadius
12
12
  --select-border: var(--border-width) var(--border-style) var(--border-color-primary); // @presenter Border
13
-
13
+
14
14
  --select-input-padding-vertical: 6px; // @presenter Spacing
15
15
  --select-input-padding-horizontal: 6px; // @presenter Spacing
16
16
  --select-input-padding: var(--select-input-padding-vertical) var(--select-input-padding-horizontal);
@@ -38,7 +38,7 @@ export const select = css`
38
38
  --select-list-item-border-radius: var(--border-radius); // @presenter BorderRadius
39
39
  --select-list-item-bg-color-active: transparent; // @presenter Color
40
40
  --select-list-item-bg-color-hover: var(--menu-item-bg-color-hover); // @presenter Color
41
- --select-list-item-font-weight-active: var(--font-weight-medium); // @presenter Color
41
+ --select-list-item-font-weight-active: var(--font-weight-medium); // @presenter Color
42
42
 
43
43
  --select-placeholder-color: var(--color-warm-grey-6); // @presenter Color
44
44
  // @tokens End
@@ -3,7 +3,7 @@ import styled, { css } from 'styled-components';
3
3
  import { breakpoints } from '@redocly/theme/core/utils';
4
4
  import { Tooltip } from '@redocly/theme/components/Tooltip/Tooltip';
5
5
 
6
- export const StyledChangeViewButton = styled.span<{ collapsedSidebar?: boolean }>`
6
+ const StyledChangeViewButton = styled.span<{ collapsedSidebar?: boolean }>`
7
7
  display: flex;
8
8
  position: relative;
9
9
  flex-direction: ${({ collapsedSidebar }) => (collapsedSidebar ? 'column' : 'row')};
@@ -16,7 +16,7 @@ export const StyledChangeViewButton = styled.span<{ collapsedSidebar?: boolean }
16
16
  padding: calc(var(--spacing-unit) / 2);
17
17
  `;
18
18
 
19
- export const StyledChangeViewButtonWrap = styled(Tooltip)<{ active?: boolean }>`
19
+ const StyledChangeViewButtonWrap = styled(Tooltip)<{ active?: boolean }>`
20
20
  width: 20px;
21
21
  height: 20px;
22
22
  border-radius: var(--border-radius);
@@ -26,7 +26,7 @@ export const StyledChangeViewButtonWrap = styled(Tooltip)<{ active?: boolean }>`
26
26
  background-color: ${({ active }) => active && 'var(--segmented-buttons-bg-color-inner)'};
27
27
  `;
28
28
 
29
- export const ControlsWrap = styled.span<{
29
+ const ControlsWrap = styled.span<{
30
30
  iconCount?: number;
31
31
  isCollapsed?: boolean;
32
32
  }>`
@@ -59,10 +59,17 @@ export const ControlsWrap = styled.span<{
59
59
  }
60
60
  `;
61
61
 
62
- export const ControlsWrapChangeLayoutButtons = styled.span<{ isCollapsed?: boolean }>`
62
+ const ControlsWrapChangeLayoutButtons = styled.span<{ isCollapsed?: boolean }>`
63
63
  display: flex;
64
64
  bottom: 0;
65
65
  flex-direction: ${({ isCollapsed }) => (isCollapsed ? 'column-reverse' : 'row')};
66
66
  gap: ${({ isCollapsed }) => (isCollapsed ? '10px' : 'var(--spacing-xs)')};
67
67
  align-items: center;
68
68
  `;
69
+
70
+ export {
71
+ StyledChangeViewButton,
72
+ StyledChangeViewButtonWrap,
73
+ ControlsWrapChangeLayoutButtons,
74
+ ControlsWrap,
75
+ };
@@ -12,7 +12,7 @@ type SubjectStatusColor = 'active' | 'draft' | 'deprecated' | 'product';
12
12
  type HttpColor = 'get' | 'post' | 'put' | 'delete' | 'option' | 'patch' | 'head' | 'hook' | 'link';
13
13
  type ActionColor = 'receive' | 'send';
14
14
  type ChannelColor = 'channel';
15
- type HttpStatusColor = 'http-deprecated';
15
+ type HttpStatusColor = 'http-deprecated' | 'http-additional-operation';
16
16
  type StatusColor =
17
17
  | DefaultStatusColor
18
18
  | ActionStatusColor
@@ -120,6 +120,7 @@ export function Tag({
120
120
  return React.cloneElement(element, {
121
121
  ...props,
122
122
  children: truncateText(props.children, maxLen),
123
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
123
124
  } as any);
124
125
  }
125
126
  }
@@ -242,7 +243,8 @@ const TagWrapper = styled.div.attrs(({ className, color, size, variant }: TagPro
242
243
  `text-transform: ${textTransform ? `${textTransform}` : 'var(--tag-text-transform)'};`}
243
244
 
244
245
  color: var(--tag-color);
245
- background-color: var(--tag-bg-color);
246
+ background-color: ${({ variant }) =>
247
+ variant === 'filled' ? 'var(--tag-bg-color)' : 'transparent'};
246
248
  ${({ borderless }) =>
247
249
  borderless
248
250
  ? ''
@@ -1,5 +1,6 @@
1
1
  import { css } from 'styled-components';
2
2
 
3
+ /* eslint-disable theme/no-raw-colors-in-styles */
3
4
  export const tagDarkMode = css`
4
5
  --tag-close-button-bg-color-focus: var(--color-warm-grey-6); // @presenter Color
5
6
 
@@ -229,6 +230,12 @@ export const tagDarkMode = css`
229
230
  --tag-bg-color-hover: #373776; // @presenter Color
230
231
  }
231
232
 
233
+ .tag-http-additional-operation {
234
+ --tag-color: #FCAB69; // @presenter Color
235
+ --tag-bg-color: #523926; // @presenter Color
236
+ --tag-bg-color-hover: #694830; // @presenter Color
237
+ }
238
+
232
239
  .tag-receive {
233
240
  --tag-color: #88CF82; // @presenter Color
234
241
  --tag-bg-color: #23421F; // @presenter Color
@@ -276,3 +283,4 @@ export const tagDarkMode = css`
276
283
  --tag-bg-color-hover: transparent;
277
284
  }
278
285
  `;
286
+ /* eslint-enable theme/no-raw-colors-in-styles */