@redocly/theme 0.60.0-next.0 → 0.60.0-next.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 (281) hide show
  1. package/lib/components/Buttons/ConnectMCPButton.js +3 -3
  2. package/lib/components/Buttons/variables.js +2 -0
  3. package/lib/components/Catalog/CatalogCardView/CatalogCard.js +4 -3
  4. package/lib/components/Catalog/CatalogEntity/CatalogEntity.js +5 -1
  5. package/lib/components/Catalog/CatalogEntity/CatalogEntityGraph/CatalogEntityRelationsGraph.js +2 -2
  6. package/lib/components/Catalog/CatalogEntity/CatalogEntityLinks.js +4 -1
  7. package/lib/components/Catalog/CatalogEntity/CatalogEntityMetadata.js +1 -0
  8. package/lib/components/Catalog/CatalogEntity/CatalogEntityMethodAndPath.js +4 -1
  9. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/ContactProperty.js +4 -1
  10. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/DomainsProperty.js +4 -1
  11. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/EntityTypeProperty.js +4 -1
  12. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/FormatProperty.js +4 -1
  13. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/GitProperty.js +4 -1
  14. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/OwnersProperty.js +4 -1
  15. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/TagsProperty.js +4 -1
  16. package/lib/components/Catalog/CatalogEntity/CatalogEntityProperties/UserEmailProperty.js +4 -1
  17. package/lib/components/Catalog/CatalogEntity/CatalogEntitySchema.js +2 -2
  18. package/lib/components/Catalog/CatalogFilter/CatalogFilterDateRange.js +2 -2
  19. package/lib/components/Catalog/CatalogSelector.js +1 -1
  20. package/lib/components/Catalog/CatalogSortButton.js +4 -1
  21. package/lib/components/Catalog/CatalogTableView/CatalogTableHeaderCell.js +2 -2
  22. package/lib/components/Catalog/CatalogTableView/CatalogTableViewRow.js +2 -2
  23. package/lib/components/Catalog/CatalogTagsWithTooltip.js +5 -1
  24. package/lib/components/Catalog/variables.dark.js +1 -1
  25. package/lib/components/Catalog/variables.js +5 -3
  26. package/lib/components/CatalogClassic/variables.js +1 -1
  27. package/lib/components/CodeBlock/CodeBlock.js +3 -1
  28. package/lib/components/CodeBlock/CodeBlockTabs.js +3 -3
  29. package/lib/components/DatePicker/variables.js +2 -0
  30. package/lib/components/Feedback/Mood.js +2 -2
  31. package/lib/components/Feedback/Rating.js +2 -2
  32. package/lib/components/Filter/FilterDateRange.js +2 -2
  33. package/lib/components/Filter/FilterSelect.js +5 -1
  34. package/lib/components/JsonViewer/{helpers.js → Helpers.js} +1 -1
  35. package/lib/components/JsonViewer/JsonViewer.js +2 -2
  36. package/lib/components/Loaders/Loading.js +4 -1
  37. package/lib/components/Markdown/Markdown.js +9 -9
  38. package/lib/components/Markdown/styles/{baseTable.js → base-table.js} +1 -1
  39. package/lib/components/Markdown/styles/{headingAnchor.js → heading-anchor.js} +1 -1
  40. package/lib/components/OpenApiDocs/hooks/AfterOpenApiOperation.js +1 -0
  41. package/lib/components/OpenApiDocs/hooks/AfterOpenApiTitle.js +1 -0
  42. package/lib/components/OpenApiDocs/hooks/BeforeOpenApiOperation.js +1 -0
  43. package/lib/components/OpenApiDocs/hooks/OpenApiFooter.js +3 -2
  44. package/lib/components/OpenApiDocs/hooks/OpenApiHeader.js +3 -2
  45. package/lib/components/Search/FilterFields/SearchFilterFieldSelect.js +2 -1
  46. package/lib/components/Search/SearchAiMessage.js +20 -18
  47. package/lib/components/Search/SearchAiNegativeFeedbackForm.d.ts +5 -3
  48. package/lib/components/Search/SearchAiNegativeFeedbackForm.js +5 -4
  49. package/lib/components/Search/SearchGroups.js +4 -1
  50. package/lib/components/Search/SearchHighlight.js +1 -0
  51. package/lib/components/Search/SearchItem.js +4 -1
  52. package/lib/components/Search/variables.js +2 -0
  53. package/lib/components/Segmented/Segmented.d.ts +1 -1
  54. package/lib/components/Segmented/Segmented.js +2 -2
  55. package/lib/components/Select/Select.d.ts +1 -1
  56. package/lib/components/Select/Select.js +4 -2
  57. package/lib/components/Select/SelectInput.d.ts +1 -1
  58. package/lib/components/Select/SelectInput.js +2 -0
  59. package/lib/components/SidebarActions/styled.d.ts +5 -4
  60. package/lib/components/SidebarActions/styled.js +9 -5
  61. package/lib/components/Tag/variables.dark.js +2 -0
  62. package/lib/components/Tag/variables.js +2 -0
  63. package/lib/components/Tooltip/Tooltip.js +2 -0
  64. package/lib/components/VersionPicker/VersionPicker.d.ts +1 -1
  65. package/lib/core/hoc/index.d.ts +1 -1
  66. package/lib/core/hoc/index.js +1 -1
  67. package/lib/core/hoc/{typedMemo.js → typed-memo.js} +1 -1
  68. package/lib/core/hooks/__tests__/mocks/mock-intersection-observer.d.ts +1 -1
  69. package/lib/core/hooks/__tests__/mocks/mock-intersection-observer.js +1 -3
  70. package/lib/core/hooks/catalog/{useCatalogEntities.js → use-catalog-entities.js} +1 -1
  71. package/lib/core/hooks/catalog/{useCatalogEntitySchema.d.ts → use-catalog-entity-schema.d.ts} +1 -1
  72. package/lib/core/hooks/catalog/{useCatalogEntitySchema.js → use-catalog-entity-schema.js} +1 -1
  73. package/lib/core/hooks/catalog/{useCatalogTableHeaderCellActions.js → use-catalog-table-header-cell-actions.js} +1 -1
  74. package/lib/core/hooks/catalog/{useCatalogTableViewRow.js → use-catalog-table-view-row.js} +1 -1
  75. package/lib/core/hooks/catalog/{useGraph.js → use-graph.js} +2 -2
  76. package/lib/core/hooks/code-walkthrough/use-code-walkthrough-controls.js +1 -0
  77. package/lib/core/hooks/code-walkthrough/use-code-walkthrough-steps.d.ts +1 -0
  78. package/lib/core/hooks/code-walkthrough/use-renderable-files.js +2 -2
  79. package/lib/core/hooks/index.d.ts +5 -2
  80. package/lib/core/hooks/index.js +5 -2
  81. package/lib/core/hooks/menu/use-collapse.js +1 -0
  82. package/lib/core/hooks/menu/use-mobile-menu-items.js +1 -0
  83. package/lib/core/hooks/use-mcp-config.js +9 -6
  84. package/lib/core/hooks/use-page-actions.js +5 -3
  85. package/lib/core/hooks/use-telemetry-fallback.js +1 -0
  86. package/lib/core/hooks/use-theme-config.js +1 -0
  87. package/lib/core/hooks/use-theme-hooks.js +1 -0
  88. package/lib/core/openapi/index.d.ts +1 -1
  89. package/lib/core/openapi/index.js +2 -2
  90. package/lib/core/templates/Markdown.js +1 -0
  91. package/lib/core/types/hooks.d.ts +6 -0
  92. package/lib/core/types/index.d.ts +20 -19
  93. package/lib/core/types/index.js +0 -19
  94. package/lib/core/types/l10n.d.ts +1 -1
  95. package/lib/core/utils/{dynamic.js → Dynamic.js} +1 -1
  96. package/lib/core/utils/{get-file-icon.js → GetFileIcon.js} +1 -1
  97. package/lib/core/utils/args-typecheck.d.ts +2 -2
  98. package/lib/core/utils/clipboard-service.js +2 -0
  99. package/lib/core/utils/get-user-agent.js +1 -0
  100. package/lib/core/utils/index.d.ts +2 -2
  101. package/lib/core/utils/index.js +2 -2
  102. package/lib/core/utils/js-utils.d.ts +1 -1
  103. package/lib/core/utils/load-and-navigate.js +1 -0
  104. package/lib/core/utils/markdoc.js +1 -0
  105. package/lib/core/utils/parse-style-string.js +1 -0
  106. package/lib/ext/configure.d.ts +2 -2
  107. package/lib/ext/configure.js +12 -6
  108. package/lib/ext/{useConfigureReplay.js → use-configure-replay.js} +5 -4
  109. package/lib/index.d.ts +3 -3
  110. package/lib/index.js +2 -3
  111. package/lib/layouts/ThreePanelLayout.js +4 -4
  112. package/lib/markdoc/components/Cards/variables.dark.js +2 -0
  113. package/lib/markdoc/components/Cards/variables.js +2 -0
  114. package/lib/markdoc/components/CodeWalkthrough/CodePanelHeader.js +1 -0
  115. package/lib/markdoc/tags/code-walkthrough.js +1 -0
  116. package/lib/markdoc/tags/html.js +1 -0
  117. package/package.json +1 -1
  118. package/src/components/Button/Button.tsx +1 -0
  119. package/src/components/Buttons/ConnectMCPButton.tsx +1 -1
  120. package/src/components/Buttons/variables.ts +2 -0
  121. package/src/components/Catalog/CatalogCardView/CatalogCard.tsx +4 -3
  122. package/src/components/Catalog/CatalogEntity/CatalogEntity.tsx +4 -0
  123. package/src/components/Catalog/CatalogEntity/CatalogEntityGraph/CatalogEntityRelationsGraph.tsx +1 -1
  124. package/src/components/Catalog/CatalogEntity/CatalogEntityLinks.tsx +5 -1
  125. package/src/components/Catalog/CatalogEntity/CatalogEntityMetadata.tsx +1 -0
  126. package/src/components/Catalog/CatalogEntity/CatalogEntityMethodAndPath.tsx +5 -1
  127. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/ContactProperty.tsx +5 -1
  128. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/DomainsProperty.tsx +5 -1
  129. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/EntityTypeProperty.tsx +5 -1
  130. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/FormatProperty.tsx +5 -1
  131. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/GitProperty.tsx +5 -1
  132. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/OwnersProperty.tsx +5 -1
  133. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/TagsProperty.tsx +5 -1
  134. package/src/components/Catalog/CatalogEntity/CatalogEntityProperties/UserEmailProperty.tsx +5 -1
  135. package/src/components/Catalog/CatalogEntity/CatalogEntitySchema.tsx +3 -1
  136. package/src/components/Catalog/CatalogFilter/CatalogFilterDateRange.tsx +2 -2
  137. package/src/components/Catalog/CatalogSelector.tsx +2 -2
  138. package/src/components/Catalog/CatalogSortButton.tsx +5 -1
  139. package/src/components/Catalog/CatalogTableView/CatalogTableHeaderCell.tsx +1 -1
  140. package/src/components/Catalog/CatalogTableView/CatalogTableViewRow.tsx +1 -1
  141. package/src/components/Catalog/CatalogTagsWithTooltip.tsx +8 -1
  142. package/src/components/Catalog/variables.dark.ts +1 -1
  143. package/src/components/Catalog/variables.ts +5 -3
  144. package/src/components/CatalogClassic/CatalogClassicInfoBlock.tsx +1 -0
  145. package/src/components/CatalogClassic/variables.ts +1 -1
  146. package/src/components/CodeBlock/CodeBlock.tsx +4 -0
  147. package/src/components/CodeBlock/CodeBlockControls.tsx +1 -0
  148. package/src/components/CodeBlock/CodeBlockTabs.tsx +1 -1
  149. package/src/components/DatePicker/variables.ts +3 -1
  150. package/src/components/Feedback/Mood.tsx +2 -2
  151. package/src/components/Feedback/Rating.tsx +2 -2
  152. package/src/components/Filter/FilterDateRange.tsx +2 -2
  153. package/src/components/Filter/FilterSelect.tsx +1 -0
  154. package/src/components/JsonViewer/{helpers.tsx → Helpers.tsx} +2 -0
  155. package/src/components/JsonViewer/JsonViewer.tsx +2 -1
  156. package/src/components/LastUpdated/LastUpdated.tsx +1 -0
  157. package/src/components/Loaders/Loading.tsx +5 -1
  158. package/src/components/Markdown/Markdown.tsx +2 -2
  159. package/src/components/OpenApiDocs/hooks/AfterOpenApiOperation.tsx +1 -1
  160. package/src/components/OpenApiDocs/hooks/AfterOpenApiTitle.tsx +1 -1
  161. package/src/components/OpenApiDocs/hooks/BeforeOpenApiOperation.tsx +1 -1
  162. package/src/components/OpenApiDocs/hooks/OpenApiFooter.tsx +1 -1
  163. package/src/components/OpenApiDocs/hooks/OpenApiHeader.tsx +1 -1
  164. package/src/components/Search/FilterFields/SearchFilterFieldSelect.tsx +4 -1
  165. package/src/components/Search/SearchAiMessage.tsx +42 -37
  166. package/src/components/Search/SearchAiNegativeFeedbackForm.tsx +7 -5
  167. package/src/components/Search/SearchGroups.tsx +4 -1
  168. package/src/components/Search/SearchHighlight.tsx +1 -0
  169. package/src/components/Search/SearchItem.tsx +8 -1
  170. package/src/components/Search/variables.ts +2 -0
  171. package/src/components/Segmented/Segmented.tsx +2 -2
  172. package/src/components/Select/Select.tsx +8 -4
  173. package/src/components/Select/SelectInput.tsx +10 -1
  174. package/src/components/SidebarActions/{styled.tsx → styled.ts} +11 -4
  175. package/src/components/Tag/Tag.tsx +1 -0
  176. package/src/components/Tag/variables.dark.ts +2 -0
  177. package/src/components/Tag/variables.ts +2 -0
  178. package/src/components/Tooltip/Tooltip.tsx +2 -1
  179. package/src/components/VersionPicker/VersionPicker.tsx +2 -1
  180. package/src/core/hoc/index.ts +1 -1
  181. package/src/core/hooks/__mocks__/use-theme-hooks.ts +2 -2
  182. package/src/core/hooks/__tests__/mocks/mock-intersection-observer.ts +9 -8
  183. package/src/core/hooks/catalog/{useCatalogEntitySchema.ts → use-catalog-entity-schema.ts} +3 -3
  184. package/src/core/hooks/catalog/{useGraph.ts → use-graph.ts} +1 -1
  185. package/src/core/hooks/code-walkthrough/__mocks__/MockIntersectionObserver.ts +1 -1
  186. package/src/core/hooks/code-walkthrough/__mocks__/mock-intersection-observer.ts +24 -0
  187. package/src/core/hooks/code-walkthrough/use-code-walkthrough-controls.ts +1 -0
  188. package/src/core/hooks/code-walkthrough/use-code-walkthrough-steps.ts +2 -2
  189. package/src/core/hooks/code-walkthrough/use-renderable-files.ts +1 -1
  190. package/src/core/hooks/index.ts +5 -2
  191. package/src/core/hooks/menu/use-collapse.ts +3 -3
  192. package/src/core/hooks/menu/use-mobile-menu-items.ts +1 -0
  193. package/src/core/hooks/use-mcp-config.ts +11 -5
  194. package/src/core/hooks/use-page-actions.ts +3 -1
  195. package/src/core/hooks/use-telemetry-fallback.ts +1 -0
  196. package/src/core/hooks/use-theme-config.ts +1 -0
  197. package/src/core/hooks/use-theme-hooks.ts +2 -1
  198. package/src/core/openapi/index.ts +1 -1
  199. package/src/core/templates/Markdown.tsx +1 -0
  200. package/src/core/types/catalog.ts +3 -1
  201. package/src/core/types/filter.ts +1 -0
  202. package/src/core/types/hooks.ts +6 -0
  203. package/src/core/types/index.ts +20 -19
  204. package/src/core/types/l10n.ts +24 -1
  205. package/src/core/types/search.ts +1 -1
  206. package/src/core/types/segmented.ts +1 -0
  207. package/src/core/types/select.ts +1 -0
  208. package/src/core/utils/args-typecheck.ts +2 -2
  209. package/src/core/utils/clipboard-service.ts +2 -0
  210. package/src/core/utils/get-user-agent.ts +1 -0
  211. package/src/core/utils/index.ts +2 -2
  212. package/src/core/utils/js-utils.ts +1 -1
  213. package/src/core/utils/load-and-navigate.ts +1 -0
  214. package/src/core/utils/markdoc.ts +1 -0
  215. package/src/core/utils/parse-style-string.ts +1 -0
  216. package/src/ext/configure.ts +15 -8
  217. package/src/ext/{useConfigureReplay.ts → use-configure-replay.ts} +5 -3
  218. package/src/index.ts +3 -3
  219. package/src/layouts/ThreePanelLayout.tsx +1 -1
  220. package/src/markdoc/components/Cards/variables.dark.ts +2 -0
  221. package/src/markdoc/components/Cards/variables.ts +3 -1
  222. package/src/markdoc/components/CodeWalkthrough/CodePanelHeader.tsx +1 -1
  223. package/src/markdoc/tags/code-walkthrough.ts +2 -0
  224. package/src/markdoc/tags/html.ts +1 -0
  225. package/lib/core/hooks/__mocks__/index.d.ts +0 -28
  226. package/lib/core/hooks/__mocks__/index.js +0 -45
  227. package/lib/core/hooks/__mocks__/search/use-recent-searches.d.ts +0 -5
  228. package/lib/core/hooks/__mocks__/search/use-recent-searches.js +0 -13
  229. package/lib/core/hooks/__mocks__/search/use-search-filter.d.ts +0 -8
  230. package/lib/core/hooks/__mocks__/search/use-search-filter.js +0 -15
  231. package/lib/core/hooks/__mocks__/search/use-suggested-pages.d.ts +0 -4
  232. package/lib/core/hooks/__mocks__/search/use-suggested-pages.js +0 -13
  233. package/lib/core/hooks/__mocks__/use-controlled-state.d.ts +0 -1
  234. package/lib/core/hooks/__mocks__/use-controlled-state.js +0 -7
  235. package/lib/core/hooks/__mocks__/use-element-size.d.ts +0 -4
  236. package/lib/core/hooks/__mocks__/use-element-size.js +0 -9
  237. package/lib/core/hooks/__mocks__/use-input-key-commands.d.ts +0 -3
  238. package/lib/core/hooks/__mocks__/use-input-key-commands.js +0 -8
  239. package/lib/core/hooks/__mocks__/use-mobile-menu.d.ts +0 -1
  240. package/lib/core/hooks/__mocks__/use-mobile-menu.js +0 -7
  241. package/lib/core/hooks/__mocks__/use-theme-config.d.ts +0 -8
  242. package/lib/core/hooks/__mocks__/use-theme-config.js +0 -13
  243. package/lib/core/hooks/__mocks__/use-theme-hooks.d.ts +0 -69
  244. package/lib/core/hooks/__mocks__/use-theme-hooks.js +0 -94
  245. package/lib/core/hooks/__mocks__/use-time-ago.d.ts +0 -3
  246. package/lib/core/hooks/__mocks__/use-time-ago.js +0 -8
  247. package/lib/core/hooks/code-walkthrough/__mocks__/MockIntersectionObserver.d.ts +0 -10
  248. package/lib/core/hooks/code-walkthrough/__mocks__/MockIntersectionObserver.js +0 -56
  249. package/lib/core/hooks/menu/__mocks__/use-mobile-menu-items.d.ts +0 -1
  250. package/lib/core/hooks/menu/__mocks__/use-mobile-menu-items.js +0 -35
  251. /package/lib/components/JsonViewer/{helpers.d.ts → Helpers.d.ts} +0 -0
  252. /package/lib/components/Markdown/styles/{baseTable.d.ts → base-table.d.ts} +0 -0
  253. /package/lib/components/Markdown/styles/{headingAnchor.d.ts → heading-anchor.d.ts} +0 -0
  254. /package/lib/core/hoc/{typedMemo.d.ts → typed-memo.d.ts} +0 -0
  255. /package/lib/core/hooks/catalog/{useCatalogEntities.d.ts → use-catalog-entities.d.ts} +0 -0
  256. /package/lib/core/hooks/catalog/{useCatalogTableHeaderCellActions.d.ts → use-catalog-table-header-cell-actions.d.ts} +0 -0
  257. /package/lib/core/hooks/catalog/{useCatalogTableViewRow.d.ts → use-catalog-table-view-row.d.ts} +0 -0
  258. /package/lib/core/hooks/catalog/{useGraph.d.ts → use-graph.d.ts} +0 -0
  259. /package/lib/core/utils/{dynamic.d.ts → Dynamic.d.ts} +0 -0
  260. /package/lib/core/utils/{get-file-icon.d.ts → GetFileIcon.d.ts} +0 -0
  261. /package/lib/ext/{useConfigureReplay.d.ts → use-configure-replay.d.ts} +0 -0
  262. /package/src/components/Markdown/styles/{baseTable.ts → base-table.ts} +0 -0
  263. /package/src/components/Markdown/styles/{headingAnchor.ts → heading-anchor.ts} +0 -0
  264. /package/src/components/Panel/{PanelBody.ts → PanelBody.tsx} +0 -0
  265. /package/src/components/Panel/{PanelHeader.ts → PanelHeader.tsx} +0 -0
  266. /package/src/components/Panel/{PanelHeaderTitle.ts → PanelHeaderTitle.tsx} +0 -0
  267. /package/src/components/StatusCode/{StatusCode.ts → StatusCode.tsx} +0 -0
  268. /package/src/components/Typography/{CompactTypography.ts → CompactTypography.tsx} +0 -0
  269. /package/src/components/Typography/{Emphasis.ts → Emphasis.tsx} +0 -0
  270. /package/src/components/Typography/{H1.ts → H1.tsx} +0 -0
  271. /package/src/components/Typography/{H2.ts → H2.tsx} +0 -0
  272. /package/src/components/Typography/{H3.ts → H3.tsx} +0 -0
  273. /package/src/components/Typography/{H4.ts → H4.tsx} +0 -0
  274. /package/src/components/Typography/{SectionHeader.ts → SectionHeader.tsx} +0 -0
  275. /package/src/components/Typography/{Typography.ts → Typography.tsx} +0 -0
  276. /package/src/core/hoc/{typedMemo.ts → typed-memo.ts} +0 -0
  277. /package/src/core/hooks/catalog/{useCatalogEntities.ts → use-catalog-entities.ts} +0 -0
  278. /package/src/core/hooks/catalog/{useCatalogTableHeaderCellActions.ts → use-catalog-table-header-cell-actions.ts} +0 -0
  279. /package/src/core/hooks/catalog/{useCatalogTableViewRow.ts → use-catalog-table-view-row.ts} +0 -0
  280. /package/src/core/utils/{dynamic.tsx → Dynamic.tsx} +0 -0
  281. /package/src/core/utils/{get-file-icon.tsx → GetFileIcon.tsx} +0 -0
@@ -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
+ };
@@ -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
  }
@@ -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
 
@@ -276,3 +277,4 @@ export const tagDarkMode = css`
276
277
  --tag-bg-color-hover: transparent;
277
278
  }
278
279
  `;
280
+ /* eslint-enable theme/no-raw-colors-in-styles */
@@ -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 tag = css`
4
5
  /**
5
6
  * @tokens Tag borders
@@ -393,3 +394,4 @@ export const tag = css`
393
394
 
394
395
  // @tokens End
395
396
  `;
397
+ /* eslint-enable theme/no-raw-colors-in-styles */
@@ -259,7 +259,7 @@ const TooltipWrapper = styled.div`
259
259
  position: relative;
260
260
  display: flex;
261
261
  `;
262
-
262
+ /* eslint-disable theme/no-raw-colors-in-styles */
263
263
  const TooltipBody = styled.span<
264
264
  Pick<Required<TooltipProps>, 'placement' | 'withArrow' | 'arrowPosition'> & { width?: string }
265
265
  >`
@@ -302,3 +302,4 @@ const TooltipBody = styled.span<
302
302
  ${PLACEMENTS[placement]};
303
303
  `}
304
304
  `;
305
+ /* eslint-enable theme/no-raw-colors-in-styles */
@@ -2,7 +2,7 @@ import * as React from 'react';
2
2
  import styled from 'styled-components';
3
3
 
4
4
  import type { Version } from '@redocly/config';
5
- import type { SelectProps } from '@redocly/theme/core/types/select';
5
+ import type { SelectProps } from '@redocly/theme/core/types';
6
6
 
7
7
  import { useThemeHooks, useThemeConfig } from '@redocly/theme/core/hooks';
8
8
  import { Select } from '@redocly/theme/components/Select/Select';
@@ -58,6 +58,7 @@ export function VersionPicker(props: { versions?: Version[]; onChange: (v: Versi
58
58
  'aria-label': translate('versionPicker.label', 'Select version'),
59
59
  }}
60
60
  />
61
+ {/* eslint-disable-next-line theme/require-translate */}
61
62
  <SrOnly id="version-picker-description">
62
63
  This is version picker select, using it you can select a version of the API.
63
64
  </SrOnly>
@@ -1 +1 @@
1
- export * from './typedMemo';
1
+ export * from './typed-memo';
@@ -2,10 +2,10 @@ import { vi } from 'vitest';
2
2
 
3
3
  export const useThemeHooks = vi.fn(() => ({
4
4
  useTranslate: vi.fn(() => ({
5
- translate: vi.fn((key: string, defaultValue: string) =>
5
+ translate: vi.fn((key: string, defaultValue: string | { defaultValue: string }) =>
6
6
  defaultValue
7
7
  ? typeof defaultValue !== 'string'
8
- ? (defaultValue as any).defaultValue
8
+ ? (defaultValue as { defaultValue: string }).defaultValue
9
9
  : defaultValue
10
10
  : key,
11
11
  ),
@@ -3,8 +3,8 @@ export class MockIntersectionObserver {
3
3
  public readonly rootMargin: string;
4
4
  public readonly thresholds: ReadonlyArray<number>;
5
5
 
6
- private viewPort: any;
7
- private entries: any[];
6
+ private viewPort: Element | Document | Window;
7
+ private entries: Array<Partial<IntersectionObserverEntry> & { target: HTMLElement }>;
8
8
  private readonly callback: IntersectionObserverCallback;
9
9
 
10
10
  constructor(callback: IntersectionObserverCallback, options?: IntersectionObserverInit) {
@@ -19,10 +19,11 @@ export class MockIntersectionObserver {
19
19
  }
20
20
 
21
21
  private intersect = () => {
22
- this.entries.map((entry) => {
23
- entry.isIntersecting = this.isInViewPort(entry.target);
24
- });
25
- this.callback(this.entries, this);
22
+ this.entries = this.entries.map((entry) => ({
23
+ ...entry,
24
+ isIntersecting: this.isInViewPort(entry.target),
25
+ }));
26
+ this.callback(this.entries as IntersectionObserverEntry[], this);
26
27
  };
27
28
 
28
29
  isInViewPort(target: HTMLElement): boolean {
@@ -42,7 +43,7 @@ export class MockIntersectionObserver {
42
43
  this.entries = [];
43
44
  }
44
45
 
45
- takeRecords(): any[] {
46
- return this.entries;
46
+ takeRecords(): IntersectionObserverEntry[] {
47
+ return this.entries as IntersectionObserverEntry[];
47
48
  }
48
49
  }
@@ -16,17 +16,17 @@ export function useCatalogEntitySchema({ entity, relatedEntity }: CatalogEntityS
16
16
  parsedSchema = undefined;
17
17
  }
18
18
 
19
- let parsedApiDefinition: any | undefined;
19
+ let parsedApiDefinition: Record<string, unknown> | undefined;
20
20
 
21
21
  try {
22
22
  parsedApiDefinition = relatedEntity?.metadata?.schema
23
- ? JSON.parse(relatedEntity.metadata.schema)
23
+ ? (JSON.parse(relatedEntity.metadata.schema) as Record<string, unknown>)
24
24
  : undefined;
25
25
  } catch (err) {
26
26
  parsedApiDefinition = undefined;
27
27
  }
28
28
 
29
- const definition: any =
29
+ const definition: Record<string, unknown> =
30
30
  !parsedApiDefinition || relatedEntity?.metadata?.specType !== 'openapi'
31
31
  ? {
32
32
  openapi: '3.0.0',
@@ -42,7 +42,7 @@ type EntityGraphData = {
42
42
  key: string;
43
43
  };
44
44
 
45
- // TODO: This isn't final implementation, leaved comments for future reference.
45
+ // Note: This isn't final implementation, leaved comments for future reference.
46
46
  export function useGraph({ entity, relations }: UseGraphProps): UseGraphReturn {
47
47
  const rootNodeId = entity.id;
48
48
 
@@ -18,7 +18,7 @@ export class MockIntersectionObserver {
18
18
  this.disconnect = vi.fn();
19
19
  }
20
20
 
21
- takeRecords(): any[] {
21
+ takeRecords(): IntersectionObserverEntry[] {
22
22
  return [];
23
23
  }
24
24
  }
@@ -0,0 +1,24 @@
1
+ import { vi } from 'vitest';
2
+
3
+ export class MockIntersectionObserver {
4
+ public readonly root: Element | Document | null;
5
+ public readonly rootMargin: string;
6
+ public readonly thresholds: ReadonlyArray<number>;
7
+ observe: (target: HTMLElement) => void;
8
+ unobserve: (target: HTMLElement) => void;
9
+ disconnect: () => void;
10
+
11
+ // @ts-ignore
12
+ constructor(callback: IntersectionObserverCallback, options?: IntersectionObserverInit) {
13
+ this.root = null;
14
+ this.rootMargin = '0px';
15
+ this.thresholds = [1];
16
+ this.observe = vi.fn();
17
+ this.unobserve = vi.fn();
18
+ this.disconnect = vi.fn();
19
+ }
20
+
21
+ takeRecords(): IntersectionObserverEntry[] {
22
+ return [];
23
+ }
24
+ }
@@ -211,6 +211,7 @@ export function useCodeWalkthroughControls(
211
211
  continue;
212
212
  }
213
213
 
214
+ // eslint-disable-next-line no-warning-comments
214
215
  // code-walk-todo: need to check if we have a default fallback
215
216
  const items = Array.isArray(filter?.items) ? filter.items : [];
216
217
 
@@ -299,7 +299,7 @@ type StepsGroup = {
299
299
  freeSpace: number;
300
300
  usedSpace: number;
301
301
  offset: number;
302
- steps: { offset: number; height: number }[];
302
+ steps: { offset: number; height: number; ref?: HTMLElement }[];
303
303
  };
304
304
  /**
305
305
  * This function analyzes the offset and height of each step to determine
@@ -358,7 +358,7 @@ function getGroups(steps: CodeWalkthroughStep[]): StepsGroup[] {
358
358
  offset: stepOffset - currentGroup.offset,
359
359
  height: stepHeight,
360
360
  ref: step.compRef,
361
- } as any);
361
+ });
362
362
  currentGroup.usedSpace += stepHeight + margin;
363
363
  }
364
364
 
@@ -3,7 +3,7 @@ import { useMemo } from 'react';
3
3
  import type { CodeWalkthroughFile } from '@redocly/config';
4
4
 
5
5
  import { findClosestCommonDirectory } from '../../utils/find-closest-common-directory';
6
- import { getFileIconByExt } from '../../utils/get-file-icon';
6
+ import { getFileIconByExt } from '../../utils/GetFileIcon';
7
7
  import { removeLeadingSlash } from '../../utils/urls';
8
8
 
9
9
  export type RenderableFile = CodeWalkthroughFile & {
@@ -37,11 +37,14 @@ export * from './code-walkthrough/use-renderable-files';
37
37
  export * from './use-element-size';
38
38
  export * from './use-time-ago';
39
39
  export * from './use-input-key-commands';
40
- export * from './catalog/useCatalogEntities';
41
- export * from './catalog/useGraph';
40
+ export * from './catalog/use-catalog-entities';
41
+ export * from './catalog/use-graph';
42
42
  export * from './use-active-page-version';
43
43
  export * from './use-page-versions';
44
44
  export * from './use-user-teams';
45
45
  export * from './use-page-actions';
46
46
  export * from './use-mcp-config';
47
47
  export * from './use-connect-mcp-button';
48
+ export * from './catalog/use-catalog-table-view-row';
49
+ export * from './catalog/use-catalog-entity-schema';
50
+ export * from './catalog/use-catalog-table-header-cell-actions';
@@ -199,13 +199,13 @@ function setStyles<T extends Partial<CSSStyleDeclaration>>(
199
199
  }
200
200
  }
201
201
  }
202
-
203
- export function useEvent<T extends (...args: any[]) => any>(callback?: T) {
202
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
203
+ export function useEvent<T extends (...args: any[]) => any>(callback?: T): T {
204
204
  const ref = useRef<T | undefined>(callback);
205
205
 
206
206
  useEffect(() => {
207
207
  ref.current = callback;
208
208
  });
209
209
 
210
- return useCallback(((...args: any) => ref.current?.(...args)) as T, []);
210
+ return useCallback(((...args: Parameters<T>) => ref.current?.(...args)) as T, []);
211
211
  }
@@ -42,6 +42,7 @@ export const useMobileMenuItems = (menuType: MobileMenuType) => {
42
42
 
43
43
  if (menuType === MobileMenuType.PAGE) {
44
44
  if (activeVersion) {
45
+ // eslint-disable-next-line no-warning-comments
45
46
  // TODO: consider to refactor
46
47
  const versionsSection = buildVersionSection(translate, versions, activeVersion);
47
48
  menuItems.push(...versionsSection);
@@ -1,6 +1,6 @@
1
1
  import { useMemo } from 'react';
2
2
 
3
- import { useThemeConfig } from './use-theme-config';
3
+ import { useThemeHooks } from './use-theme-hooks';
4
4
  import { IS_BROWSER } from '../utils/dom';
5
5
  import { DEFAULT_MCP_SERVER_NAME } from '../constants';
6
6
  import { generateMCPDeepLink } from '../utils/mcp';
@@ -15,12 +15,18 @@ export type McpConfig = {
15
15
  };
16
16
 
17
17
  export function useMCPConfig(): McpConfig {
18
- const themeConfig = useThemeConfig();
18
+ const { useMcpData } = useThemeHooks();
19
19
 
20
- const origin = IS_BROWSER ? window.location.origin : (globalThis as any)['SSR_HOSTNAME'];
21
- const serverName = themeConfig.mcp?.docs?.name || DEFAULT_MCP_SERVER_NAME;
20
+ const {
21
+ docs: { enabled, name },
22
+ } = useMcpData();
23
+
24
+ const origin = IS_BROWSER
25
+ ? window.location.origin
26
+ : ((globalThis as { SSR_HOSTNAME?: string })['SSR_HOSTNAME'] ?? '');
27
+ const serverName = name || DEFAULT_MCP_SERVER_NAME;
22
28
  const serverUrl = `${origin}/mcp`;
23
- const isMcpDisabled = themeConfig.mcp?.hide || themeConfig.mcp?.docs?.hide || false;
29
+ const isMcpDisabled = !enabled || false;
24
30
 
25
31
  const cursorUrl = useMemo(
26
32
  () => generateMCPDeepLink('cursor', { serverName, url: serverUrl }),
@@ -77,7 +77,9 @@ export function usePageActions(
77
77
  return [];
78
78
  }
79
79
 
80
- const origin = IS_BROWSER ? window.location.origin : (globalThis as any)['SSR_HOSTNAME'];
80
+ const origin = IS_BROWSER
81
+ ? window.location.origin
82
+ : ((globalThis as { SSR_HOSTNAME?: string })['SSR_HOSTNAME'] ?? '');
81
83
  const normalizedSlug = pageSlug.startsWith('/') ? pageSlug : '/' + pageSlug;
82
84
  const mdPageUrl = new URL(
83
85
  origin + normalizedSlug + (normalizedSlug === '/' ? 'index.html.md' : '.md'),
@@ -1,3 +1,4 @@
1
+ // eslint-disable-next-line no-warning-comments
1
2
  // TODO we need to create some common way to do this.
2
3
  export const useTelemetryFallback = () => ({
3
4
  send: () => {},
@@ -4,6 +4,7 @@ import type { UiAccessibleConfig } from '../../config';
4
4
 
5
5
  import { ThemeDataContext } from '../contexts/ThemeDataContext';
6
6
 
7
+ // eslint-disable-next-line no-warning-comments
7
8
  // TODO: rename and additionally export as alias for backward compatibility
8
9
  export function useThemeConfig<T extends Record<string, unknown>>(
9
10
  useProductConfig: boolean = true,
@@ -22,6 +22,7 @@ const fallbacks = {
22
22
  usePageData: () => null,
23
23
  usePageProps: () => ({}),
24
24
  usePageSharedData: () => null,
25
+ useMcpData: () => ({ docs: { enabled: false } }),
25
26
  };
26
27
 
27
28
  export const useThemeHooks = () => {
@@ -30,7 +31,7 @@ export const useThemeHooks = () => {
30
31
  return new Proxy({} as ThemeHooks, {
31
32
  get(_, prop) {
32
33
  if (context && prop in context.hooks) {
33
- return (context.hooks as any)[prop];
34
+ return (context.hooks as Record<string, unknown>)[prop as string];
34
35
  } else if (prop in fallbacks) {
35
36
  return fallbacks[prop as keyof typeof fallbacks];
36
37
  } else {
@@ -19,7 +19,7 @@ export {
19
19
  withPathPrefix,
20
20
  } from '../utils/urls';
21
21
  export { capitalize } from '../utils/string';
22
- export { typedMemo } from '../hoc/typedMemo';
22
+ export { typedMemo } from '../hoc/typed-memo';
23
23
  export { useMount } from '../hooks/use-mount';
24
24
  export { GlobalStyle } from '../styles/global';
25
25
  export { breakpoints } from '../utils/media-css';
@@ -43,6 +43,7 @@ export default function ({ pageProps, children }: React.PropsWithChildren<Markdo
43
43
  }
44
44
  setWrapperElement(node);
45
45
  },
46
+ // eslint-disable-next-line no-warning-comments
46
47
  // TODO: is this correct?
47
48
  // eslint-disable-next-line react-hooks/exhaustive-deps
48
49
  [pageProps.headings],
@@ -130,7 +130,7 @@ export type CatalogSwitcherItem = {
130
130
  slug: string;
131
131
  selected: boolean;
132
132
  };
133
-
133
+ /* eslint-disable-next-line no-warning-comments */
134
134
  // TODO: remove this types after we make api-sdk package public and will be able import them from there
135
135
  export type BffCatalogRelatedEntity = {
136
136
  readonly id: string;
@@ -142,6 +142,7 @@ export type BffCatalogRelatedEntity = {
142
142
  relationRole: 'source' | 'target';
143
143
  relationType: EntityRelationType;
144
144
  sourceFile?: string | null;
145
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
145
146
  metadata?: Record<string, any>;
146
147
  readonly createdAt: string | null;
147
148
  readonly updatedAt: string | null;
@@ -159,6 +160,7 @@ export type BffCatalogEntity = {
159
160
  owners?: Array<BffCatalogRelatedEntity>;
160
161
  summary?: string | null;
161
162
  tags?: Array<string>;
163
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
162
164
  metadata?: Record<string, any>;
163
165
  git?: Array<string>;
164
166
  contact?: {
@@ -2,6 +2,7 @@ import type { ResolvedFilter } from './catalog';
2
2
  import type { RedoclyConfig } from '@redocly/config';
3
3
 
4
4
  export type FilterProps = {
5
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
5
6
  filter: ResolvedFilter & { selectedOptions: any };
6
7
  filterValuesCasing?:
7
8
  | NonNullable<RedoclyConfig['catalog']>[string]['filterValuesCasing']
@@ -131,6 +131,12 @@ export type ThemeHooks = {
131
131
  setSearchFacet: React.Dispatch<React.SetStateAction<SearchFacet | null>>;
132
132
  setSearchFacetQuery: React.Dispatch<React.SetStateAction<SearchFacetQuery | null>>;
133
133
  };
134
+ useMcpData: () => {
135
+ docs: {
136
+ enabled: boolean;
137
+ name?: string;
138
+ };
139
+ };
134
140
  useSidebarItems: (activeVersion?: Version | null) => {
135
141
  currentItems: ItemState[];
136
142
  allSidebarItems: ItemState[];
@@ -1,20 +1,21 @@
1
- export * from './breadcrumb';
2
- export * from './catalog';
3
- export * from './l10n';
4
- export * from './mcp';
5
- export * from './feedback';
6
- export * from './hooks';
7
- export * from './markdown';
8
- export * from './navbar';
1
+ export type * from './breadcrumb';
2
+ export type * from './catalog';
3
+ export type * from './l10n';
4
+ export type * from './mcp';
5
+ export type * from './feedback';
6
+ export type * from './hooks';
7
+ export type * from './markdown';
8
+ export type * from './navbar';
9
9
  export * from './search';
10
- export * from './select';
11
- export * from './sidebar';
12
- export * from './filter';
13
- export * from './user-menu';
14
- export * from './user-claims';
15
- export * from './common';
16
- export * from './open-api-server';
17
- export * from './marker';
18
- export * from './code-walkthrough';
19
- export * from './page-actions';
20
- export * from './open-api-info';
10
+ export type * from './select';
11
+ export type * from './sidebar';
12
+ export type * from './filter';
13
+ export type * from './user-menu';
14
+ export type * from './user-claims';
15
+ export type * from './common';
16
+ export type * from './open-api-server';
17
+ export type * from './marker';
18
+ export type * from './code-walkthrough';
19
+ export type * from './page-actions';
20
+ export type * from './open-api-info';
21
+ export type * from './segmented';
@@ -107,6 +107,10 @@ export type TranslationKey =
107
107
  | 'search.ai.error.header'
108
108
  | 'search.ai.error.header.forbidden'
109
109
  | 'search.ai.error.header.unauthorized'
110
+ | 'search.ai.feedback.more'
111
+ | 'search.searchItem.deprecated'
112
+ | 'search.groups.all'
113
+ | 'search.filter.field.footer'
110
114
  | 'aiAssistant.trigger'
111
115
  | 'toc.header'
112
116
  | 'footer.copyrightText'
@@ -151,6 +155,21 @@ export type TranslationKey =
151
155
  | 'catalog.entity.schema.title'
152
156
  | 'catalog.entity.properties.apiDescription.title'
153
157
  | 'catalog.backToAllLabel'
158
+ | 'catalog.tags.more'
159
+ | 'catalog.tags.label'
160
+ | 'catalog.sort'
161
+ | 'catalog.catalogs.label'
162
+ | 'catalog.owners.label'
163
+ | 'catalog.repositories.label'
164
+ | 'catalog.email.label'
165
+ | 'catalog.format.label'
166
+ | 'catalog.entityType.label'
167
+ | 'catalog.domains.label'
168
+ | 'catalog.contact.label'
169
+ | 'catalog.methodAndPath.label'
170
+ | 'catalog.links.label'
171
+ | 'catalog.metadata.domains'
172
+ | 'catalog.metadata.owners'
154
173
  | 'sidebar.menu.backLabel'
155
174
  | 'sidebar.menu.backToLabel'
156
175
  | 'sidebar.actions.show'
@@ -369,7 +388,11 @@ export type TranslationKey =
369
388
  | 'time.past.years'
370
389
  | 'page.internalServerError.title'
371
390
  | 'page.internalServerError.description'
372
- | 'page.skipToContent.label';
391
+ | 'page.skipToContent.label'
392
+ | 'select.noResults'
393
+ | 'loaders.loading'
394
+ | 'filter.dateRange.from'
395
+ | 'filter.dateRange.to';
373
396
 
374
397
  export type Locale = { code: string; name: string };
375
398
 
@@ -14,7 +14,7 @@ export type OperationParameter = {
14
14
  example: string | undefined;
15
15
  enum: string[] | undefined;
16
16
  };
17
-
17
+ /* eslint-disable-next-line no-warning-comments */
18
18
  // TODO: review SearchHit type as it might contain properties that are not in the search results
19
19
  export type SearchHit = {
20
20
  id: string;
@@ -5,6 +5,7 @@ export type SegmentedOption<T> = SelectOption<T> & {
5
5
  divider?: React.ReactNode;
6
6
  };
7
7
 
8
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
8
9
  export type SegmentedProps<T = any> = {
9
10
  options: SegmentedOption<T>[];
10
11
  value: T;
@@ -7,6 +7,7 @@ export type SelectOption<T> = {
7
7
  label?: string;
8
8
  };
9
9
 
10
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
10
11
  export type SelectProps<T = any> = {
11
12
  value?: SelectOption<T> | SelectOption<T>[] | T | T[];
12
13
  options: SelectOption<T>[];
@@ -1,7 +1,7 @@
1
- export function isEmptyArray(items: any): boolean {
1
+ export function isEmptyArray(items: unknown): boolean {
2
2
  return Array.isArray(items) && !items?.length;
3
3
  }
4
4
 
5
- export function isPrimitive(arg: any): boolean {
5
+ export function isPrimitive(arg: unknown): boolean {
6
6
  return ['string', 'boolean', 'number', 'undefined'].includes(typeof arg);
7
7
  }
@@ -10,7 +10,9 @@ export class ClipboardService {
10
10
  }
11
11
  let range;
12
12
  let selection;
13
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
13
14
  if ((document.body as any).createTextRange) {
15
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
14
16
  range = (document.body as any).createTextRange();
15
17
  range.moveToElementText(element);
16
18
  range.select();
@@ -2,6 +2,7 @@
2
2
  * Returns user agent. Handles SSR and browser.
3
3
  */
4
4
  export function getUserAgent() {
5
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
5
6
  const ssrUserAgent = (globalThis as any)['SSR_USER_AGENT'];
6
7
 
7
8
  if (ssrUserAgent) {
@@ -28,7 +28,7 @@ export * from './with-load-progress';
28
28
  export * from './text-trimmer';
29
29
  export * from './get-code-walkthrough-file-text';
30
30
  export * from './download-code-walkthrough';
31
- export * from './get-file-icon';
31
+ export * from './GetFileIcon';
32
32
  export * from './match-code-walkthrough-conditions';
33
33
  export * from './replace-inputs-with-value';
34
34
  export * from './find-closest-common-directory';
@@ -37,6 +37,6 @@ export * from './parse-style-string';
37
37
  export * from './lang-to-name';
38
38
  export * from './enhanced-smoothstep';
39
39
  export * from './icon-resolver';
40
- export * from './dynamic';
40
+ export * from './Dynamic';
41
41
  export * from './tabs';
42
42
  export * from './frontmatter-translate';
@@ -24,7 +24,7 @@ export function isBrowser() {
24
24
  return typeof window !== 'undefined' && 'HTMLElement' in window;
25
25
  }
26
26
 
27
- export function isPlainObject(obj: any): boolean {
27
+ export function isPlainObject(obj: unknown): boolean {
28
28
  return (
29
29
  typeof obj === 'object' &&
30
30
  obj !== null &&