@redocly/theme 0.1.7 → 0.1.8

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 (375) hide show
  1. package/Footer/Footer.d.ts +3 -0
  2. package/Footer/Footer.js +34 -0
  3. package/Footer/FooterColumn.d.ts +7 -0
  4. package/Footer/FooterColumn.js +38 -0
  5. package/Footer/FooterColumns.d.ts +7 -0
  6. package/Footer/FooterColumns.js +44 -0
  7. package/Footer/FooterCopyright.d.ts +5 -0
  8. package/Footer/FooterCopyright.js +29 -0
  9. package/Footer/index.d.ts +4 -0
  10. package/Footer/index.js +14 -0
  11. package/JsonViewer/JsonViewer.js +1 -1
  12. package/JsonViewer/index.d.ts +1 -0
  13. package/JsonViewer/index.js +1 -0
  14. package/Layout/PageLayout.d.ts +6 -0
  15. package/Layout/PageLayout.js +30 -0
  16. package/Layout/RootLayout.d.ts +7 -0
  17. package/Layout/RootLayout.js +31 -0
  18. package/Layout/index.d.ts +2 -0
  19. package/Layout/index.js +10 -0
  20. package/Logo/Logo.d.ts +1 -6
  21. package/Markdown/Admonition/Admonition.d.ts +9 -0
  22. package/Markdown/Admonition/Admonition.js +39 -0
  23. package/Markdown/CodeSample/CodeSample.d.ts +8 -0
  24. package/Markdown/CodeSample/CodeSample.js +30 -0
  25. package/Markdown/CodeSample/styled.d.ts +5 -0
  26. package/Markdown/CodeSample/styled.js +109 -0
  27. package/Markdown/CodeSample/types.d.ts +9 -0
  28. package/Markdown/CodeSample/types.js +2 -0
  29. package/Markdown/ContentWrapper.d.ts +5 -0
  30. package/Markdown/ContentWrapper.js +21 -0
  31. package/Markdown/Heading/Heading.d.ts +5 -0
  32. package/Markdown/Heading/Heading.js +23 -0
  33. package/Markdown/MarkdownLayout.d.ts +7 -0
  34. package/Markdown/MarkdownLayout.js +23 -0
  35. package/Markdown/Mermaid/Mermaid.d.ts +6 -0
  36. package/Markdown/Mermaid/Mermaid.js +19 -0
  37. package/Markdown/PageWrapper.d.ts +3 -0
  38. package/Markdown/PageWrapper.js +15 -0
  39. package/Markdown/StyledMarkdown.d.ts +8 -0
  40. package/Markdown/StyledMarkdown.js +54 -0
  41. package/Markdown/Tabs/Tab.d.ts +8 -0
  42. package/Markdown/Tabs/Tab.js +35 -0
  43. package/Markdown/Tabs/Tabs.d.ts +10 -0
  44. package/Markdown/Tabs/Tabs.js +43 -0
  45. package/Navbar/Navbar.d.ts +1 -0
  46. package/Navbar/Navbar.js +7 -1
  47. package/Navbar/NavbarItem.js +1 -1
  48. package/Navbar/NavbarMenu.js +4 -1
  49. package/OperationBadge/OperationBadge.d.ts +5 -0
  50. package/OperationBadge/OperationBadge.js +15 -0
  51. package/OperationBadge/index.d.ts +1 -0
  52. package/OperationBadge/index.js +17 -0
  53. package/PageNavigation/NextPageLink.d.ts +2 -0
  54. package/PageNavigation/NextPageLink.js +25 -0
  55. package/PageNavigation/PageNavigation.d.ts +2 -0
  56. package/PageNavigation/PageNavigation.js +31 -0
  57. package/PageNavigation/PreviousPageLink.d.ts +2 -0
  58. package/PageNavigation/PreviousPageLink.js +25 -0
  59. package/Panel/CodePanel.js +6 -6
  60. package/Panel/ContentPanel.js +4 -4
  61. package/Panel/Panel.d.ts +1 -1
  62. package/Panel/Panel.js +3 -3
  63. package/Panel/PanelComponent.d.ts +1 -1
  64. package/Panel/PanelComponent.js +3 -3
  65. package/Panel/index.d.ts +1 -0
  66. package/Panel/index.js +1 -0
  67. package/Search/Autocomplete.d.ts +13 -0
  68. package/Search/Autocomplete.js +79 -0
  69. package/Search/ClearIcon.d.ts +2 -0
  70. package/Search/ClearIcon.js +29 -0
  71. package/Search/Input.d.ts +3 -0
  72. package/Search/Input.js +15 -0
  73. package/Search/Parameters.d.ts +7 -0
  74. package/Search/Parameters.js +42 -0
  75. package/Search/Popover.d.ts +3 -0
  76. package/Search/Popover.js +15 -0
  77. package/Search/Search.d.ts +2 -0
  78. package/Search/Search.js +39 -0
  79. package/Search/SearchIcon.d.ts +2 -0
  80. package/Search/SearchIcon.js +29 -0
  81. package/Search/SearchItem.d.ts +7 -0
  82. package/Search/SearchItem.js +47 -0
  83. package/Search/utils.d.ts +2 -0
  84. package/Search/utils.js +21 -0
  85. package/Sidebar/ApiCallItem.d.ts +8 -0
  86. package/Sidebar/ApiCallItem.js +35 -0
  87. package/Sidebar/ArrowBack.d.ts +5 -0
  88. package/Sidebar/ArrowBack.js +28 -0
  89. package/Sidebar/BackButton.d.ts +6 -0
  90. package/Sidebar/BackButton.js +30 -0
  91. package/Sidebar/Drilldown.d.ts +8 -0
  92. package/Sidebar/Drilldown.js +45 -0
  93. package/Sidebar/DrilldownMenu.d.ts +3 -0
  94. package/Sidebar/DrilldownMenu.js +57 -0
  95. package/Sidebar/DrilldownMenuItem.d.ts +3 -0
  96. package/Sidebar/DrilldownMenuItem.js +31 -0
  97. package/Sidebar/ExternalIcon.d.ts +5 -0
  98. package/Sidebar/ExternalIcon.js +28 -0
  99. package/Sidebar/Menu.d.ts +4 -0
  100. package/Sidebar/Menu.js +14 -0
  101. package/Sidebar/MenuContainer.d.ts +2 -0
  102. package/Sidebar/MenuContainer.js +12 -0
  103. package/Sidebar/MenuGroup.d.ts +9 -0
  104. package/Sidebar/MenuGroup.js +37 -0
  105. package/Sidebar/MenuItem.d.ts +3 -0
  106. package/Sidebar/MenuItem.js +33 -0
  107. package/Sidebar/MenuItemLabel.d.ts +6 -0
  108. package/Sidebar/MenuItemLabel.js +18 -0
  109. package/Sidebar/MenuLink.d.ts +6 -0
  110. package/Sidebar/MenuLink.js +15 -0
  111. package/Sidebar/MenuLinkItem.d.ts +3 -0
  112. package/Sidebar/MenuLinkItem.js +30 -0
  113. package/Sidebar/MobileSidebarButton.d.ts +6 -0
  114. package/Sidebar/MobileSidebarButton.js +20 -0
  115. package/Sidebar/Separator.d.ts +3 -0
  116. package/Sidebar/Separator.js +31 -0
  117. package/Sidebar/SeparatorItem.d.ts +6 -0
  118. package/Sidebar/SeparatorItem.js +13 -0
  119. package/Sidebar/SeparatorLine.d.ts +4 -0
  120. package/Sidebar/SeparatorLine.js +14 -0
  121. package/Sidebar/Sidebar.d.ts +8 -0
  122. package/Sidebar/Sidebar.js +23 -0
  123. package/Sidebar/SidebarLayout.d.ts +7 -0
  124. package/Sidebar/SidebarLayout.js +35 -0
  125. package/Sidebar/types/DrilldownMenuProps.d.ts +6 -0
  126. package/Sidebar/types/DrilldownMenuProps.js +2 -0
  127. package/Sidebar/types/ItemState.d.ts +9 -0
  128. package/Sidebar/types/ItemState.js +2 -0
  129. package/Sidebar/types/MenuItemProps.d.ts +5 -0
  130. package/Sidebar/types/MenuItemProps.js +2 -0
  131. package/Sidebar/types/MenuStyle.d.ts +3 -0
  132. package/Sidebar/types/MenuStyle.js +8 -0
  133. package/Sidebar/types/NavItem.d.ts +26 -0
  134. package/Sidebar/types/NavItem.js +2 -0
  135. package/SourceCode/SourceCode.js +2 -2
  136. package/TableOfContent/TableOfContent.d.ts +9 -0
  137. package/TableOfContent/TableOfContent.js +64 -0
  138. package/globalStyle.js +1 -1
  139. package/hooks/index.d.ts +4 -0
  140. package/hooks/index.js +4 -0
  141. package/hooks/useActiveHeading.d.ts +2 -0
  142. package/hooks/useActiveHeading.js +34 -0
  143. package/hooks/useActiveSectionId.d.ts +3 -0
  144. package/hooks/useActiveSectionId.js +48 -0
  145. package/hooks/useFullHeight.d.ts +2 -0
  146. package/hooks/useFullHeight.js +47 -0
  147. package/hooks/useMobileMenu.d.ts +2 -0
  148. package/hooks/useMobileMenu.js +13 -0
  149. package/hooks/useNavbarHeight.d.ts +3 -0
  150. package/hooks/useNavbarHeight.js +20 -0
  151. package/icons/ShelfIcon/ShelfIcon.js +2 -2
  152. package/index.d.ts +1 -0
  153. package/index.js +1 -0
  154. package/mocks/hooks/usePageData.d.ts +5 -0
  155. package/mocks/hooks/usePageData.js +7 -0
  156. package/mocks/models.d.ts +3 -0
  157. package/mocks/models.js +2 -0
  158. package/mocks/search.d.ts +22 -0
  159. package/mocks/search.js +13 -0
  160. package/mocks/types/index.d.ts +1 -0
  161. package/mocks/types/index.js +2 -0
  162. package/mocks/usePreloadHistory.d.ts +3 -0
  163. package/mocks/usePreloadHistory.js +12 -0
  164. package/package.json +5 -2
  165. package/src/Button/Button.stories.tsx +1 -1
  166. package/src/Button/__tests__/Button.test.tsx +1 -1
  167. package/src/CodeBlock/__tests__/CodeBlock.test.tsx +1 -1
  168. package/src/CopyButton/CopyButton.stories.tsx +1 -1
  169. package/src/CopyButton/CopyButton.tsx +1 -1
  170. package/src/CopyButton/CopyButtonWrapper.tsx +4 -4
  171. package/src/CopyButton/__tests__/CopyButton.test.tsx +1 -1
  172. package/src/CopyButton/__tests__/CopyButtonWrapper.test.tsx +2 -1
  173. package/src/Footer/Footer.tsx +34 -0
  174. package/src/Footer/FooterColumn.tsx +62 -0
  175. package/src/Footer/FooterColumns.tsx +51 -0
  176. package/src/Footer/FooterCopyright.tsx +26 -0
  177. package/src/Footer/index.tsx +4 -0
  178. package/src/Headings/Headings.stories.tsx +1 -1
  179. package/src/Headings/Headings.ts +1 -1
  180. package/src/Headings/__tests__/Headings.test.tsx +1 -1
  181. package/src/JsonViewer/JsonViewer.stories.tsx +1 -1
  182. package/src/JsonViewer/JsonViewer.tsx +6 -7
  183. package/src/JsonViewer/__tests__/JsonViewer.test.tsx +2 -1
  184. package/src/JsonViewer/index.ts +1 -0
  185. package/src/Layout/PageLayout.tsx +34 -0
  186. package/src/Layout/RootLayout.tsx +24 -0
  187. package/src/Layout/index.tsx +2 -0
  188. package/src/Logo/Logo.tsx +1 -7
  189. package/src/Markdown/Admonition/Admonition.tsx +64 -0
  190. package/src/Markdown/CodeSample/CodeSample.tsx +39 -0
  191. package/src/Markdown/CodeSample/styled.ts +289 -0
  192. package/src/Markdown/CodeSample/types.ts +40 -0
  193. package/src/Markdown/ContentWrapper.tsx +20 -0
  194. package/src/Markdown/Heading/Heading.tsx +35 -0
  195. package/src/Markdown/MarkdownLayout.tsx +25 -0
  196. package/src/Markdown/Mermaid/Mermaid.tsx +23 -0
  197. package/src/Markdown/PageWrapper.tsx +9 -0
  198. package/src/Markdown/StyledMarkdown.tsx +312 -0
  199. package/src/Markdown/Tabs/Tab.tsx +37 -0
  200. package/src/Markdown/Tabs/Tabs.tsx +45 -0
  201. package/src/Navbar/Navbar.stories.tsx +0 -10
  202. package/src/Navbar/Navbar.tsx +19 -25
  203. package/src/Navbar/NavbarItem.tsx +1 -1
  204. package/src/Navbar/NavbarMenu.tsx +4 -4
  205. package/src/OperationBadge/OperationBadge.stories.tsx +35 -0
  206. package/src/OperationBadge/OperationBadge.ts +59 -0
  207. package/src/OperationBadge/__tests__/OperationBadge.test.tsx +59 -0
  208. package/src/OperationBadge/__tests__/__snapshots__/OperationBadge.test.tsx.snap +651 -0
  209. package/src/OperationBadge/index.ts +1 -0
  210. package/src/PageNavigation/NextPageLink.tsx +22 -0
  211. package/src/PageNavigation/PageNavigation.tsx +20 -0
  212. package/src/PageNavigation/PreviousPageLink.tsx +22 -0
  213. package/src/Panel/CodePanel.stories.tsx +1 -2
  214. package/src/Panel/CodePanel.ts +8 -7
  215. package/src/Panel/ContentPanel.stories.tsx +1 -2
  216. package/src/Panel/ContentPanel.ts +5 -6
  217. package/src/Panel/Panel.stories.tsx +1 -3
  218. package/src/Panel/Panel.ts +3 -3
  219. package/src/Panel/PanelComponent.tsx +4 -5
  220. package/src/Panel/__tests__/CodePanel.test.tsx +1 -1
  221. package/src/Panel/__tests__/ContentPanel.test.tsx +1 -1
  222. package/src/Panel/__tests__/Panel.test.tsx +1 -2
  223. package/src/Panel/__tests__/__snapshots__/CodePanel.test.tsx.snap +8 -8
  224. package/src/Panel/__tests__/__snapshots__/ContentPanel.test.tsx.snap +22 -22
  225. package/src/Panel/__tests__/__snapshots__/Panel.test.tsx.snap +16 -16
  226. package/src/Panel/index.ts +1 -0
  227. package/src/SamplesPanelControls/SamplesControlButton.stories.tsx +1 -1
  228. package/src/SamplesPanelControls/SamplesPanelControls.ts +1 -1
  229. package/src/Search/Autocomplete.tsx +128 -0
  230. package/src/Search/ClearIcon.tsx +31 -0
  231. package/src/Search/Input.tsx +19 -0
  232. package/src/Search/Parameters.tsx +62 -0
  233. package/src/Search/Popover.tsx +20 -0
  234. package/src/Search/Search.tsx +52 -0
  235. package/src/Search/SearchIcon.tsx +32 -0
  236. package/src/Search/SearchItem.tsx +85 -0
  237. package/src/Search/utils.tsx +19 -0
  238. package/src/Sidebar/ApiCallItem.tsx +33 -0
  239. package/src/Sidebar/ArrowBack.tsx +22 -0
  240. package/src/Sidebar/BackButton.tsx +44 -0
  241. package/src/Sidebar/Drilldown.tsx +46 -0
  242. package/src/Sidebar/DrilldownMenu.tsx +58 -0
  243. package/src/Sidebar/DrilldownMenuItem.tsx +40 -0
  244. package/src/Sidebar/ExternalIcon.tsx +37 -0
  245. package/src/Sidebar/Menu.tsx +11 -0
  246. package/src/Sidebar/MenuContainer.tsx +8 -0
  247. package/src/Sidebar/MenuGroup.tsx +55 -0
  248. package/src/Sidebar/MenuItem.tsx +25 -0
  249. package/src/Sidebar/MenuItemLabel.tsx +41 -0
  250. package/src/Sidebar/MenuLink.tsx +14 -0
  251. package/src/Sidebar/MenuLinkItem.tsx +24 -0
  252. package/src/Sidebar/MobileSidebarButton.tsx +44 -0
  253. package/src/Sidebar/Separator.tsx +17 -0
  254. package/src/Sidebar/SeparatorItem.tsx +14 -0
  255. package/src/Sidebar/SeparatorLine.tsx +9 -0
  256. package/src/Sidebar/Sidebar.tsx +54 -0
  257. package/src/Sidebar/SidebarLayout.tsx +30 -0
  258. package/src/Sidebar/types/DrilldownMenuProps.ts +7 -0
  259. package/src/Sidebar/types/ItemState.ts +11 -0
  260. package/src/Sidebar/types/MenuItemProps.ts +6 -0
  261. package/src/Sidebar/types/MenuStyle.ts +4 -0
  262. package/src/Sidebar/types/NavItem.ts +27 -0
  263. package/src/SidebarLogo/SidebarLogo.stories.tsx +1 -1
  264. package/src/SidebarLogo/__tests__/SidebarLogo.test.tsx +1 -1
  265. package/src/SourceCode/SourceCode.stories.tsx +1 -1
  266. package/src/SourceCode/SourceCode.tsx +7 -3
  267. package/src/SourceCode/__tests__/SourceCode.test.tsx +2 -1
  268. package/src/TableOfContent/TableOfContent.tsx +112 -0
  269. package/src/Tooltip/Tooltip.stories.tsx +1 -1
  270. package/src/Tooltip/Tooltip.tsx +1 -1
  271. package/src/Tooltip/__tests__/Tooltip.test.tsx +1 -1
  272. package/src/globalStyle.ts +10 -34
  273. package/src/hooks/index.ts +4 -0
  274. package/src/hooks/useActiveHeading.ts +46 -0
  275. package/src/hooks/useActiveSectionId.ts +53 -0
  276. package/src/hooks/useFullHeight.ts +47 -0
  277. package/src/hooks/useMobileMenu.ts +11 -0
  278. package/src/hooks/useNavbarHeight.ts +24 -0
  279. package/src/icons/ShelfIcon/ShelfIcon.stories.tsx +1 -1
  280. package/src/icons/ShelfIcon/ShelfIcon.tsx +1 -1
  281. package/src/icons/ShelfIcon/__tests__/ShelfIcon.test.tsx +1 -1
  282. package/src/index.ts +1 -0
  283. package/src/mocks/hooks/usePageData.ts +8 -0
  284. package/src/mocks/models.ts +3 -0
  285. package/src/mocks/search.ts +31 -0
  286. package/src/mocks/types/index.ts +1 -0
  287. package/src/mocks/usePreloadHistory.ts +9 -0
  288. package/src/types/portal/index.d.ts +6 -0
  289. package/src/types/portal/src/client/app/Sidebar/types.d.ts +50 -0
  290. package/src/types/portal/src/client/app/media-css.d.ts +7 -0
  291. package/src/types/portal/src/client/styling/default.d.ts +407 -0
  292. package/src/types/portal/src/client/styling/index.d.ts +14 -0
  293. package/src/types/portal/src/client/styling/resolve.d.ts +1 -0
  294. package/src/types/portal/src/server/constants.d.ts +11 -0
  295. package/src/types/portal/src/server/plugins/markdown/types.d.ts +28 -0
  296. package/src/types/portal/src/server/plugins/nav-utils.d.ts +19 -0
  297. package/src/types/portal/src/server/plugins/portal-config/types.d.ts +23 -0
  298. package/src/types/portal/src/server/plugins/sidebars/index.d.ts +16 -0
  299. package/src/types/portal/src/server/plugins/versions/index.d.ts +15 -0
  300. package/src/types/portal/src/server/plugins/versions/types.d.ts +23 -0
  301. package/src/types/portal/src/server/plugins/versions/utils.d.ts +10 -0
  302. package/src/types/portal/src/server/store.d.ts +101 -0
  303. package/src/types/portal/src/server/utils/async.d.ts +5 -0
  304. package/src/types/portal/src/server/utils/crypto.d.ts +3 -0
  305. package/src/types/portal/src/server/utils/fs.d.ts +3 -0
  306. package/src/types/portal/src/server/utils/index.d.ts +6 -0
  307. package/src/types/portal/src/server/utils/paths.d.ts +16 -0
  308. package/src/types/portal/src/server/utils/reporter/formatter.d.ts +11 -0
  309. package/src/types/portal/src/server/utils/reporter/reporter.d.ts +17 -0
  310. package/src/types/portal/src/server/utils/watcher.d.ts +16 -0
  311. package/src/types/portal/src/server/utils/yaml.d.ts +1 -0
  312. package/src/types/portal/src/shared/constants.d.ts +8 -0
  313. package/src/types/portal/src/shared/types.d.ts +77 -0
  314. package/src/types/portal/src/shared/urls.d.ts +7 -0
  315. package/src/types/portal/src/shared/utils.d.ts +10 -0
  316. package/src/ui/AlertIcon.tsx +110 -0
  317. package/src/ui/Arrow/Arrow.tsx +36 -0
  318. package/src/ui/Background.tsx +16 -0
  319. package/src/ui/Box.tsx +39 -0
  320. package/src/ui/Button.tsx +19 -0
  321. package/src/ui/Dropdown.tsx +132 -0
  322. package/src/ui/Flex.tsx +21 -0
  323. package/src/ui/Jumbotron.tsx +57 -0
  324. package/src/ui/Tiles/ThinTile.tsx +151 -0
  325. package/src/ui/Tiles/TileHeader.ts +13 -0
  326. package/src/ui/Tiles/TileText.tsx +12 -0
  327. package/src/ui/Tiles/WideTile.tsx +138 -0
  328. package/src/ui/Typography.tsx +167 -0
  329. package/src/ui/UniversalLink.tsx +100 -0
  330. package/src/ui/index.tsx +12 -0
  331. package/src/utils/__tests__/ClipboardService.test.ts +1 -1
  332. package/src/utils/__tests__/css-variables.test.ts +1 -1
  333. package/src/utils/__tests__/highlight.test.ts +1 -1
  334. package/src/utils/__tests__/jsonToHtml.test.ts +1 -1
  335. package/src/utils/__tests__/media-css.test.ts +1 -1
  336. package/src/utils/__tests__/theme-helpers.test.ts +1 -1
  337. package/src/utils/getNavbarElement.ts +10 -0
  338. package/src/utils/isUrl.ts +42 -0
  339. package/src/utils/replaceHashInColor.ts +3 -0
  340. package/ui/AlertIcon.d.ts +9 -0
  341. package/ui/AlertIcon.js +45 -0
  342. package/ui/Arrow/Arrow.d.ts +7 -0
  343. package/ui/Arrow/Arrow.js +42 -0
  344. package/ui/Background.d.ts +7 -0
  345. package/ui/Background.js +16 -0
  346. package/ui/Box.d.ts +6 -0
  347. package/ui/Box.js +16 -0
  348. package/ui/Button.d.ts +7 -0
  349. package/ui/Button.js +27 -0
  350. package/ui/Dropdown.d.ts +8 -0
  351. package/ui/Dropdown.js +54 -0
  352. package/ui/Flex.d.ts +10 -0
  353. package/ui/Flex.js +31 -0
  354. package/ui/Jumbotron.d.ts +18 -0
  355. package/ui/Jumbotron.js +44 -0
  356. package/ui/Tiles/ThinTile.d.ts +21 -0
  357. package/ui/Tiles/ThinTile.js +98 -0
  358. package/ui/Tiles/TileHeader.d.ts +5 -0
  359. package/ui/Tiles/TileHeader.js +15 -0
  360. package/ui/Tiles/TileText.d.ts +5 -0
  361. package/ui/Tiles/TileText.js +15 -0
  362. package/ui/Tiles/WideTile.d.ts +7 -0
  363. package/ui/Tiles/WideTile.js +93 -0
  364. package/ui/Typography.d.ts +110 -0
  365. package/ui/Typography.js +137 -0
  366. package/ui/UniversalLink.d.ts +17 -0
  367. package/ui/UniversalLink.js +62 -0
  368. package/ui/index.d.ts +10 -0
  369. package/ui/index.js +30 -0
  370. package/utils/getNavbarElement.d.ts +1 -0
  371. package/utils/getNavbarElement.js +14 -0
  372. package/utils/isUrl.d.ts +12 -0
  373. package/utils/isUrl.js +35 -0
  374. package/utils/replaceHashInColor.d.ts +1 -0
  375. package/utils/replaceHashInColor.js +6 -0
@@ -0,0 +1,10 @@
1
+ export function getNavbarElement(): HTMLElement | null {
2
+ const navElements = (typeof document !== 'undefined' && document.querySelectorAll('nav')) || [];
3
+ // there can be multiple nav elements (e.g. mobile and non-mobile), let's use the first one with non-zero height
4
+ for (let i = 0; i < navElements.length; i++) {
5
+ if (navElements[i].getBoundingClientRect().height > 1) {
6
+ return navElements[i];
7
+ }
8
+ }
9
+ return navElements[0] || null;
10
+ }
@@ -0,0 +1,42 @@
1
+ /**
2
+ * RegExps.
3
+ * A URL must match #1 and then at least one of #2/#3.
4
+ * Use two levels of REs to avoid REDOS.
5
+ */
6
+
7
+ const protocolAndDomainRE = /^(?:\w+:)?\/\/(\S+)$/;
8
+
9
+ const localhostDomainRE = /^localhost[:?\d]*(?:[^:?\d]\S*)?$/;
10
+ const nonLocalhostDomainRE = /^[^\s.]+\.\S{2,}$/;
11
+
12
+ /**
13
+ * Loosely validate a URL `string`.
14
+ *
15
+ * @param {String} string
16
+ * @return {Boolean}
17
+ */
18
+
19
+ export default function isUrl(string: string): boolean {
20
+ if (typeof string !== 'string') {
21
+ return false;
22
+ }
23
+
24
+ const match = string.match(protocolAndDomainRE);
25
+ if (!match) {
26
+ return false;
27
+ }
28
+
29
+ const everythingAfterProtocol = match[1];
30
+ if (!everythingAfterProtocol) {
31
+ return false;
32
+ }
33
+
34
+ if (
35
+ localhostDomainRE.test(everythingAfterProtocol) ||
36
+ nonLocalhostDomainRE.test(everythingAfterProtocol)
37
+ ) {
38
+ return true;
39
+ }
40
+
41
+ return false;
42
+ }
@@ -0,0 +1,3 @@
1
+ export default function replaceHashInColor(color: string): string {
2
+ return color.replace('#', '%23');
3
+ }
@@ -0,0 +1,9 @@
1
+ import { HTMLProps } from 'react';
2
+ interface IconProps extends HTMLProps<HTMLElement> {
3
+ type: 'warning' | 'success' | 'danger' | 'attention' | 'info';
4
+ }
5
+ declare function Icon({ type, className }: IconProps): JSX.Element;
6
+ export declare const AlertIcon: import("styled-components").StyledComponent<typeof Icon, any, {
7
+ 'data-component-name': string;
8
+ }, "data-component-name">;
9
+ export {};
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.AlertIcon = void 0;
22
+ var jsx_runtime_1 = require("react/jsx-runtime");
23
+ var styled_components_1 = __importDefault(require("styled-components"));
24
+ function Icon(_a) {
25
+ var type = _a.type, className = _a.className;
26
+ switch (type) {
27
+ case 'warning':
28
+ return ((0, jsx_runtime_1.jsxs)("svg", __assign({ className: className, xmlns: "http://www.w3.org/2000/svg", version: "1.1", id: "Layer_1", x: "0", y: "0", viewBox: "0 0 500.6 500.6", enableBackground: "new 0 0 500.6 500.6" }, { children: [(0, jsx_runtime_1.jsx)("path", { d: "M250.3 15.1c-132.5 0-239.8 107.2-239.8 239.8 0 132.5 107.2 239.8 239.8 239.8 132.5 0 239.8-107.2 239.8-239.8C490.1 122.3 382.8 15.1 250.3 15.1zM250.3 457.1C138.5 457.1 48 366.7 48 254.8 48 143 138.5 52.5 250.3 52.5c111.8 0 202.3 90.5 202.3 202.3C452.6 366.7 362.1 457.1 250.3 457.1z" }), (0, jsx_runtime_1.jsx)("path", { d: "M250.3 135.8c-10.3 0-18.7 8.4-18.7 18.7v120.6c0 10.3 8.4 18.7 18.7 18.7s18.7-8.4 18.7-18.7V154.5C269 144.2 260.7 135.8 250.3 135.8z" }), (0, jsx_runtime_1.jsx)("circle", { cx: "250.3", cy: "342.1", r: "25.3" })] })));
29
+ case 'success':
30
+ return ((0, jsx_runtime_1.jsxs)("svg", __assign({ className: className, xmlns: "http://www.w3.org/2000/svg", version: "1.1", id: "Layer_1", x: "0", y: "0", viewBox: "0 0 500.6 500.6", enableBackground: "new 0 0 500.6 500.6" }, { children: [(0, jsx_runtime_1.jsx)("path", { d: "M250.3 490.1c132.5 0 239.8-107.2 239.8-239.8 0-132.5-107.2-239.8-239.8-239.8 -132.5 0-239.8 107.2-239.8 239.8C10.6 382.8 117.8 490.1 250.3 490.1zM250.3 48c111.8 0 202.3 90.5 202.3 202.3 0 111.8-90.5 202.3-202.3 202.3C138.5 452.6 48 362.1 48 250.3 48 138.5 138.5 48 250.3 48z" }), (0, jsx_runtime_1.jsx)("path", { d: "M224.7 349.6c8.5 5.9 20.2 3.8 26.1-4.6L355 195.7c5.9-8.5 3.8-20.2-4.6-26.1s-20.2-3.8-26.1 4.6L220 323.5C214.1 332 216.2 343.7 224.7 349.6z" }), (0, jsx_runtime_1.jsx)("path", { d: "M247.1 346.2c7.3-7.3 7.3-19.2 0-26.5l-55.9-55.9c-7.3-7.3-19.2-7.3-26.5 0s-7.3 19.2 0 26.5l55.9 55.9C228 353.5 239.8 353.5 247.1 346.2z" })] })));
31
+ case 'danger':
32
+ return ((0, jsx_runtime_1.jsxs)("svg", __assign({ className: className, xmlns: "http://www.w3.org/2000/svg", version: "1.1", id: "Layer_1", x: "0", y: "0", viewBox: "0 0 500.6 500.6", enableBackground: "new 0 0 500.6 500.6" }, { children: [(0, jsx_runtime_1.jsx)("path", { d: "M250.3 490.1c132.5 0 239.8-107.2 239.8-239.8 0-132.5-107.2-239.8-239.8-239.8 -132.5 0-239.8 107.2-239.8 239.8C10.6 382.8 117.8 490.1 250.3 490.1zM250.3 48c111.8 0 202.3 90.5 202.3 202.3 0 111.8-90.5 202.3-202.3 202.3C138.5 452.6 48 362.1 48 250.3 48 138.5 138.5 48 250.3 48z" }), (0, jsx_runtime_1.jsx)("path", { d: "M168.4 332.2c7.3 7.3 19.2 7.3 26.5 0l137.3-137.3c7.3-7.3 7.3-19.2 0-26.5 -7.3-7.3-19.2-7.3-26.5 0L168.4 305.7C161.1 313 161.1 324.9 168.4 332.2z" }), (0, jsx_runtime_1.jsx)("path", { d: "M168.4 168.4c-7.3 7.3-7.3 19.2 0 26.5l137.3 137.3c7.3 7.3 19.2 7.3 26.5 0 7.3-7.3 7.3-19.2 0-26.5L194.9 168.4C187.6 161.1 175.7 161.1 168.4 168.4z" })] })));
33
+ case 'attention':
34
+ return ((0, jsx_runtime_1.jsxs)("svg", __assign({ className: className, xmlns: "http://www.w3.org/2000/svg", version: "1.1", id: "Layer_1", x: "0", y: "0", viewBox: "0 0 500.6 500.6", enableBackground: "new 0 0 500.6 500.6" }, { children: [(0, jsx_runtime_1.jsx)("path", { d: "M250.3 301.8c-8.3 0-15-6.7-15-15V181.9c0-8.3 6.7-15 15-15 8.3 0 15 6.7 15 15v104.9C265.3 295.1 258.6 301.8 250.3 301.8zM483.7 377L297.2 66.1c-21.2-35.3-72.6-35.4-93.8 0L16.9 377c-17.6 29.4 3.6 67.1 38 67.1h390.8C480.1 444.1 501.4 406.4 483.7 377L483.7 377zM445.7 414.1H54.9c-11.2 0-18-12.2-12.3-21.7L229.1 81.5c9.6-16 32.8-16 42.4 0L458 392.4C463.7 401.9 456.9 414.1 445.7 414.1z" }), (0, jsx_runtime_1.jsx)("circle", { cx: "250.3", cy: "339.2", r: "22.5" })] })));
35
+ default:
36
+ return ((0, jsx_runtime_1.jsxs)("svg", __assign({ className: className, xmlns: "http://www.w3.org/2000/svg", version: "1.1", id: "Layer_1", x: "0", y: "0", viewBox: "0 0 500.6 500.6", enableBackground: "new 0 0 500.6 500.6" }, { children: [(0, jsx_runtime_1.jsx)("path", { d: "M250.3 490.7c132.5 0 239.8-107.2 239.8-239.8 0-132.5-107.2-239.8-239.8-239.8 -132.5 0-239.8 107.2-239.8 239.8C10.6 383.5 117.8 490.7 250.3 490.7zM250.3 48.6c111.8 0 202.3 90.5 202.3 202.3 0 111.8-90.5 202.3-202.3 202.3C138.5 453.2 48 362.7 48 250.9 48 139.1 138.5 48.6 250.3 48.6z" }), (0, jsx_runtime_1.jsx)("path", { d: "M250.3 370c10.3 0 18.7-8.4 18.7-18.7V230.6c0-10.3-8.4-18.7-18.7-18.7 -10.3 0-18.7 8.4-18.7 18.7v120.6C231.6 361.6 240 370 250.3 370z" }), (0, jsx_runtime_1.jsx)("circle", { cx: "250.3", cy: "163.7", r: "25.3" })] })));
37
+ }
38
+ }
39
+ exports.AlertIcon = (0, styled_components_1.default)(Icon).attrs(function () { return ({
40
+ 'data-component-name': 'ui/AlertIcon',
41
+ }); })(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: absolute;\n left: var(--alert-padding-horizontal);\n top: 50%;\n transform: translateY(-50%);\n width: var(--alert-icon-size);\n height: var(--alert-icon-size);\n margin-right: var(--alert-padding-horizontal);\n flex-shrink: 0;\n\n fill: ", ";\n"], ["\n position: absolute;\n left: var(--alert-padding-horizontal);\n top: 50%;\n transform: translateY(-50%);\n width: var(--alert-icon-size);\n height: var(--alert-icon-size);\n margin-right: var(--alert-padding-horizontal);\n flex-shrink: 0;\n\n fill: ", ";\n"])), function (_a) {
42
+ var type = _a.type;
43
+ return "var(--alert-".concat(type, "-icon-color)");
44
+ });
45
+ var templateObject_1;
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ export interface ArrowProps {
3
+ direction?: string;
4
+ }
5
+ export declare const Arrow: import("styled-components").StyledComponent<({ className }: {
6
+ className?: string | undefined;
7
+ }) => JSX.Element, any, ArrowProps, never>;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.Arrow = void 0;
22
+ var jsx_runtime_1 = require("react/jsx-runtime");
23
+ var styled_components_1 = __importDefault(require("styled-components"));
24
+ function directionToTransform(_a) {
25
+ var direction = _a.direction;
26
+ switch (direction) {
27
+ case 'up':
28
+ return 180;
29
+ case 'right':
30
+ return -90;
31
+ case 'left':
32
+ return 90;
33
+ default:
34
+ return 0;
35
+ }
36
+ }
37
+ var Icon = function (_a) {
38
+ var className = _a.className;
39
+ return ((0, jsx_runtime_1.jsx)("span", __assign({ "data-component-name": "ui/Arrow/Arrow" }, { children: (0, jsx_runtime_1.jsx)("svg", __assign({ fill: "none", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 7 5", className: className }, { children: (0, jsx_runtime_1.jsx)("path", { d: "M3.5 2.51L5.806.205a.7.7 0 01.99.99l-2.8 2.8a.698.698 0 01-.99 0l-2.8-2.8a.7.7 0 11.99-.99L3.5 2.51z" }) })) })));
40
+ };
41
+ exports.Arrow = (0, styled_components_1.default)(Icon)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n width: var(--sidebar-chevron-size);\n height: var(--sidebar-chevron-size);\n fill: var(--sidebar-chevron-color);\n transform: rotate(", "deg);\n\n vertical-align: middle;\n"], ["\n width: var(--sidebar-chevron-size);\n height: var(--sidebar-chevron-size);\n fill: var(--sidebar-chevron-color);\n transform: rotate(", "deg);\n\n vertical-align: middle;\n"])), directionToTransform);
42
+ var templateObject_1;
@@ -0,0 +1,7 @@
1
+ export declare const Background: import("styled-components").StyledComponent<"div", any, {
2
+ 'data-component-name': string;
3
+ } & import("./Box").BoxProps & {
4
+ 'data-component-name': string;
5
+ } & import("../ui/Flex").FlexProps & {
6
+ 'data-component-name': string;
7
+ }, "data-component-name">;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.Background = void 0;
11
+ var styled_components_1 = __importDefault(require("styled-components"));
12
+ var Flex_1 = require("../ui/Flex");
13
+ exports.Background = (0, styled_components_1.default)(Flex_1.Flex).attrs(function () { return ({
14
+ 'data-component-name': 'ui/Background',
15
+ }); })(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background: var(--navbar-color-background);\n color: var(--color-primary-contrast);\n font-family: var(--h-font-family);\n\n a:not([role='button']),\n a:not([role='button']):hover {\n color: var(--color-primary-contrast);\n }\n"], ["\n background: var(--navbar-color-background);\n color: var(--color-primary-contrast);\n font-family: var(--h-font-family);\n\n a:not([role='button']),\n a:not([role='button']):hover {\n color: var(--color-primary-contrast);\n }\n"])));
16
+ var templateObject_1;
package/ui/Box.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ import { SpaceProps, LayoutProps, TextAlignProps, ColorProps, PositionProps, FlexProps, BordersProps } from 'styled-system';
2
+ export interface BoxProps extends SpaceProps, LayoutProps, PositionProps, FlexProps, TextAlignProps, ColorProps, BordersProps {
3
+ }
4
+ export declare const Box: import("styled-components").StyledComponent<"div", any, {
5
+ 'data-component-name': string;
6
+ } & BoxProps, "data-component-name">;
package/ui/Box.js ADDED
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.Box = void 0;
11
+ var styled_system_1 = require("styled-system");
12
+ var styled_components_1 = __importDefault(require("styled-components"));
13
+ exports.Box = styled_components_1.default.div.attrs(function () { return ({
14
+ 'data-component-name': 'ui/Box',
15
+ }); })(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n max-width: 100%;\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n"], ["\n max-width: 100%;\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n"])), styled_system_1.space, styled_system_1.layout, styled_system_1.position, styled_system_1.flex, styled_system_1.textAlign, styled_system_1.color, styled_system_1.border);
16
+ var templateObject_1;
package/ui/Button.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { LinkProps } from 'react-router-dom';
3
+ import { ButtonProps } from '../Button';
4
+ export declare function Button(props: ButtonProps & Partial<LinkProps<never>> & {
5
+ ref?: any;
6
+ external?: boolean;
7
+ }): JSX.Element;
package/ui/Button.js ADDED
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.Button = void 0;
15
+ var jsx_runtime_1 = require("react/jsx-runtime");
16
+ var Button_1 = require("../Button");
17
+ var Link_1 = require("../mocks/Link");
18
+ var StyledButtonAsLink = Button_1.Button.withComponent(Link_1.Link);
19
+ function Button(props) {
20
+ if (props.to) {
21
+ return (0, jsx_runtime_1.jsx)(StyledButtonAsLink, __assign({}, props, { role: "button", "data-component-name": "ui/Button" }));
22
+ }
23
+ else {
24
+ return ((0, jsx_runtime_1.jsx)(Button_1.Button, __assign({}, props, { role: "button", "data-component-name": "ui/Button" })));
25
+ }
26
+ }
27
+ exports.Button = Button;
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { Version } from '@theme/types/portal';
3
+ declare type DropdownProps = {
4
+ items: Version[];
5
+ activeItem: Version;
6
+ };
7
+ export default function Dropdown({ items, activeItem }: DropdownProps): JSX.Element;
8
+ export {};
package/ui/Dropdown.js ADDED
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ var jsx_runtime_1 = require("react/jsx-runtime");
22
+ var react_1 = require("react");
23
+ var styled_components_1 = __importDefault(require("styled-components"));
24
+ var Link_1 = require("../mocks/Link");
25
+ var Icon = function () { return ((0, jsx_runtime_1.jsx)("svg", __assign({ xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }, { children: (0, jsx_runtime_1.jsx)("polyline", { points: "6 9 12 15 18 9" }) }))); };
26
+ var DropDownContainer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n padding: calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 4);\n"], ["\n position: relative;\n padding: calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 4);\n"])));
27
+ var DropDownHeader = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n background: #fff;\n padding: 8px 10px;\n border-radius: 4px;\n border: 1px solid #e4e7eb;\n font-weight: 600;\n color: var(--color-text-main);\n background: var(--color-secondary-300);\n"], ["\n display: flex;\n justify-content: space-between;\n align-items: center;\n background: #fff;\n padding: 8px 10px;\n border-radius: 4px;\n border: 1px solid #e4e7eb;\n font-weight: 600;\n color: var(--color-text-main);\n background: var(--color-secondary-300);\n"])));
28
+ var DropDownList = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: absolute;\n background: var(--color-secondary-300);\n margin: 2px 20px 0 20px;\n padding: 0;\n border-radius: 4px;\n border: 1px solid rgba(38, 50, 56, 0.2);\n z-index: 9999;\n left: 0;\n right: 0;\n"], ["\n position: absolute;\n background: var(--color-secondary-300);\n margin: 2px 20px 0 20px;\n padding: 0;\n border-radius: 4px;\n border: 1px solid rgba(38, 50, 56, 0.2);\n z-index: 9999;\n left: 0;\n right: 0;\n"])));
29
+ var IconWrapper = styled_components_1.default.span(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n transition: transform 0.2s;\n display: inline-block;\n font-size: 0;\n &.active {\n transform: rotate(-180deg);\n }\n"], ["\n transition: transform 0.2s;\n display: inline-block;\n font-size: 0;\n &.active {\n transform: rotate(-180deg);\n }\n"])));
30
+ var ListItem = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n background-color: var(--background-color);\n padding: 0.4em 10px;\n font-size: 1em;\n color: var(--color-text-main);\n cursor: pointer;\n &:hover {\n background-color: rgba(38, 50, 56, 0.12);\n }\n &.active {\n background-color: rgba(0, 0, 0, 0.05);\n }\n"], ["\n background-color: var(--background-color);\n padding: 0.4em 10px;\n font-size: 1em;\n color: var(--color-text-main);\n cursor: pointer;\n &:hover {\n background-color: rgba(38, 50, 56, 0.12);\n }\n &.active {\n background-color: rgba(0, 0, 0, 0.05);\n }\n"])));
31
+ var DropDownLink = (0, styled_components_1.default)(Link_1.Link)(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n display: block;\n text-decoration: none;\n color: var(--color-text-main);\n"], ["\n display: block;\n text-decoration: none;\n color: var(--color-text-main);\n"])));
32
+ function Dropdown(_a) {
33
+ var items = _a.items, activeItem = _a.activeItem;
34
+ var ref = (0, react_1.useRef)(null);
35
+ var _b = (0, react_1.useState)(false), isOpen = _b[0], setIsOpen = _b[1];
36
+ var toggling = function () { return setIsOpen(!isOpen); };
37
+ (0, react_1.useEffect)(function () {
38
+ var checkIfClickedOutside = function (e) {
39
+ if (!(e.target instanceof HTMLElement)) {
40
+ return;
41
+ }
42
+ if (isOpen && ref.current && !ref.current.contains(e.target)) {
43
+ setIsOpen(false);
44
+ }
45
+ };
46
+ document.addEventListener('mousedown', checkIfClickedOutside);
47
+ return function () {
48
+ document.removeEventListener('mousedown', checkIfClickedOutside);
49
+ };
50
+ }, [isOpen]);
51
+ return ((0, jsx_runtime_1.jsxs)(DropDownContainer, __assign({ ref: ref, "data-component-name": "ui/Dropdown" }, { children: [(0, jsx_runtime_1.jsxs)(DropDownHeader, __assign({ onClick: toggling }, { children: [(activeItem === null || activeItem === void 0 ? void 0 : activeItem.label) || activeItem.version, (0, jsx_runtime_1.jsx)(IconWrapper, __assign({ className: isOpen ? 'active' : '' }, { children: (0, jsx_runtime_1.jsx)(Icon, {}) }))] })), isOpen && ((0, jsx_runtime_1.jsx)(DropDownList, { children: items.map(function (item) { return ((0, jsx_runtime_1.jsx)(ListItem, __assign({ className: activeItem.version === item.version ? 'active' : '', onClick: toggling }, { children: (0, jsx_runtime_1.jsx)(DropDownLink, __assign({ to: (item === null || item === void 0 ? void 0 : item.link) || '#' }, { children: (item === null || item === void 0 ? void 0 : item.label) || item.version })) }), (item === null || item === void 0 ? void 0 : item.link) + (item === null || item === void 0 ? void 0 : item.version))); }) }))] })));
52
+ }
53
+ exports.default = Dropdown;
54
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6;
package/ui/Flex.d.ts ADDED
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { FlexboxProps, WidthProps } from 'styled-system';
3
+ export interface FlexProps extends FlexboxProps, WidthProps {
4
+ }
5
+ export declare const Flex: import("styled-components").StyledComponent<"div", any, {
6
+ 'data-component-name': string;
7
+ } & import("../ui/Box").BoxProps & {
8
+ 'data-component-name': string;
9
+ } & FlexProps, "data-component-name">;
10
+ export declare function FlexSection(props: React.PropsWithChildren<FlexProps>): JSX.Element;
package/ui/Flex.js ADDED
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.FlexSection = exports.Flex = void 0;
22
+ var jsx_runtime_1 = require("react/jsx-runtime");
23
+ var styled_components_1 = __importDefault(require("styled-components"));
24
+ var styled_system_1 = require("styled-system");
25
+ var Box_1 = require("../ui/Box");
26
+ exports.Flex = (0, styled_components_1.default)(Box_1.Box).attrs({ 'data-component-name': 'ui/Flex' })(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n ", "\n ", "\n"], ["\n display: flex;\n ", "\n ", "\n"])), styled_system_1.flexbox, styled_system_1.width);
27
+ function FlexSection(props) {
28
+ return ((0, jsx_runtime_1.jsx)(exports.Flex, __assign({}, props, { width: props.width || { xs: '90%', large: 910 } }, { children: props.children })));
29
+ }
30
+ exports.FlexSection = FlexSection;
31
+ var templateObject_1;
@@ -0,0 +1,18 @@
1
+ export declare const Jumbotron: import("styled-components").StyledComponent<"div", any, {
2
+ 'data-component-name': string;
3
+ } & import("./Box").BoxProps & {
4
+ 'data-component-name': string;
5
+ } & import("./Flex").FlexProps & {
6
+ 'data-component-name': string;
7
+ } & {
8
+ 'data-component-name': string;
9
+ } & {
10
+ pt?: string | undefined;
11
+ pb?: string | undefined;
12
+ pl?: string | undefined;
13
+ pr?: string | undefined;
14
+ bgImage?: string | undefined;
15
+ bgColor?: string | undefined;
16
+ parallaxEffect?: boolean | undefined;
17
+ textColor?: string | undefined;
18
+ }, "data-component-name">;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.Jumbotron = void 0;
11
+ var styled_system_1 = require("styled-system");
12
+ var styled_components_1 = __importDefault(require("styled-components"));
13
+ var Typography_1 = require("../ui/Typography");
14
+ var Background_1 = require("../ui/Background");
15
+ exports.Jumbotron = (0, styled_components_1.default)(Background_1.Background).attrs(function () { return ({
16
+ 'data-component-name': 'ui/Jumbotron',
17
+ }); })(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n flex-direction: column;\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n ", ";\n ", ";\n ", ";\n ", "\n ", ", ", " {\n color: ", ";\n text-align: center;\n padding: 0;\n }\n h1 {\n font-size: 3.5em;\n line-height: 1.2;\n font-weight: var(--font-weight-bold);\n margin: 1.75em 0 0.5em 0;\n }\n h2 {\n font-size: 1.875em;\n line-height: 1;\n font-weight: var(--font-weight-light);\n margin: 0;\n margin-bottom: 2em;\n }\n"], ["\n flex-direction: column;\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n ", ";\n ", ";\n ", ";\n ", "\n ", ", ", " {\n color: ", ";\n text-align: center;\n padding: 0;\n }\n h1 {\n font-size: 3.5em;\n line-height: 1.2;\n font-weight: var(--font-weight-bold);\n margin: 1.75em 0 0.5em 0;\n }\n h2 {\n font-size: 1.875em;\n line-height: 1;\n font-weight: var(--font-weight-light);\n margin: 0;\n margin-bottom: 2em;\n }\n"])), function (_a) {
18
+ var pt = _a.pt;
19
+ return pt || '0';
20
+ }, function (_a) {
21
+ var pb = _a.pb;
22
+ return pb || '8em';
23
+ }, function (_a) {
24
+ var pl = _a.pl;
25
+ return pl || '0';
26
+ }, function (_a) {
27
+ var pr = _a.pr;
28
+ return pr || '0';
29
+ }, function (_a) {
30
+ var bgColor = _a.bgColor;
31
+ return bgColor && "background: ".concat(bgColor);
32
+ }, function (_a) {
33
+ var bgImage = _a.bgImage, bgColor = _a.bgColor;
34
+ return bgImage &&
35
+ "\n background: ".concat(bgColor || 'var(--color-primary-main)', " url(").concat(bgImage, ");\n background-repeat: no-repeat;\n background-size: cover;\n background-position: center;\n ");
36
+ }, function (_a) {
37
+ var parallaxEffect = _a.parallaxEffect;
38
+ return parallaxEffect &&
39
+ "\n background-attachment: scroll, fixed;\n ";
40
+ }, styled_system_1.space, Typography_1.H1, Typography_1.H2, function (_a) {
41
+ var textColor = _a.textColor;
42
+ return textColor || 'var(--navbar-color-text)';
43
+ });
44
+ var templateObject_1;
@@ -0,0 +1,21 @@
1
+ import { Component, CSSProperties } from 'react';
2
+ declare type TextAlign = 'left' | 'right' | 'center' | 'justify';
3
+ export interface TileProps {
4
+ header?: string;
5
+ icon?: string;
6
+ children?: string;
7
+ to?: string;
8
+ target?: string;
9
+ headerAlign?: TextAlign;
10
+ textAlign?: TextAlign;
11
+ bgColor?: string;
12
+ bgImage?: string;
13
+ color?: string;
14
+ className?: string;
15
+ style?: CSSProperties;
16
+ maxWidth?: string;
17
+ }
18
+ export declare class ThinTile extends Component<TileProps> {
19
+ render(): JSX.Element;
20
+ }
21
+ export {};
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __extends = (this && this.__extends) || (function () {
7
+ var extendStatics = function (d, b) {
8
+ extendStatics = Object.setPrototypeOf ||
9
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
10
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
11
+ return extendStatics(d, b);
12
+ };
13
+ return function (d, b) {
14
+ if (typeof b !== "function" && b !== null)
15
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
16
+ extendStatics(d, b);
17
+ function __() { this.constructor = d; }
18
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
19
+ };
20
+ })();
21
+ var __assign = (this && this.__assign) || function () {
22
+ __assign = Object.assign || function(t) {
23
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
24
+ s = arguments[i];
25
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
26
+ t[p] = s[p];
27
+ }
28
+ return t;
29
+ };
30
+ return __assign.apply(this, arguments);
31
+ };
32
+ var __importDefault = (this && this.__importDefault) || function (mod) {
33
+ return (mod && mod.__esModule) ? mod : { "default": mod };
34
+ };
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.ThinTile = void 0;
37
+ var jsx_runtime_1 = require("react/jsx-runtime");
38
+ var react_1 = require("react");
39
+ var styled_components_1 = __importDefault(require("styled-components"));
40
+ var Link_1 = require("../../mocks/Link");
41
+ var Flex_1 = require("../../ui/Flex");
42
+ var TileText_1 = require("../../ui/Tiles/TileText");
43
+ var TileHeader_1 = require("../../ui/Tiles/TileHeader");
44
+ var ThinTileWrapper = (0, styled_components_1.default)(Link_1.Link)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n border-radius: 10px;\n box-shadow: 0px 10px 30px 0px rgba(35, 35, 35, 0.1);\n box-sizing: border-box;\n transition: box-shadow 0.25s ease;\n padding: 24px;\n margin-bottom: 20px;\n text-decoration: none;\n width: 100%;\n background-color: ", ";\n background-image: ", ";\n background-repeat: no-repeat;\n\n :hover {\n box-shadow: 0px 10px 100px 0px rgba(35, 35, 35, 0.2);\n }\n\n ", " {\n width: calc(50% - 20px);\n margin-right: 10px;\n margin-left: 10px;\n }\n\n ", " {\n width: 250px;\n }\n\n ", " {\n width: 280px;\n }\n\n &.external-url {\n :after {\n display: none;\n }\n }\n"], ["\n display: flex;\n flex-direction: column;\n border-radius: 10px;\n box-shadow: 0px 10px 30px 0px rgba(35, 35, 35, 0.1);\n box-sizing: border-box;\n transition: box-shadow 0.25s ease;\n padding: 24px;\n margin-bottom: 20px;\n text-decoration: none;\n width: 100%;\n background-color: ", ";\n background-image: ", ";\n background-repeat: no-repeat;\n\n :hover {\n box-shadow: 0px 10px 100px 0px rgba(35, 35, 35, 0.2);\n }\n\n ", " {\n width: calc(50% - 20px);\n margin-right: 10px;\n margin-left: 10px;\n }\n\n ", " {\n width: 250px;\n }\n\n ", " {\n width: 280px;\n }\n\n &.external-url {\n :after {\n display: none;\n }\n }\n"])), function (_a) {
45
+ var bgColor = _a.bgColor;
46
+ return bgColor || '#fff';
47
+ }, function (_a) {
48
+ var bgImage = _a.bgImage;
49
+ return (bgImage ? "url(".concat(bgImage, ")") : 'none');
50
+ }, function (_a) {
51
+ var theme = _a.theme;
52
+ return theme.mediaQueries.small;
53
+ }, function (_a) {
54
+ var theme = _a.theme;
55
+ return theme.mediaQueries.medium;
56
+ }, function (_a) {
57
+ var theme = _a.theme;
58
+ return theme.mediaQueries.large;
59
+ });
60
+ var ThinTileIcon = styled_components_1.default.img(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n width: 90px;\n\n ", " {\n width: 80px;\n }\n"], ["\n width: 90px;\n\n ", " {\n width: 80px;\n }\n"])), function (_a) {
61
+ var theme = _a.theme;
62
+ return theme.mediaQueries.medium;
63
+ });
64
+ var ThinTileHeader = (0, styled_components_1.default)(TileHeader_1.TileHeader)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n font-size: 24px;\n text-align: ", ";\n"], ["\n font-size: 24px;\n text-align: ", ";\n"])), function (_a) {
65
+ var align = _a.align;
66
+ return align || 'center';
67
+ });
68
+ var ThinTileText = (0, styled_components_1.default)(TileText_1.TileText)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n font-size: 18px;\n line-height: 1.5;\n flex-shrink: 0;\n min-height: 3em;\n text-align: ", ";\n ", ";\n ", " {\n min-height: 6em;\n }\n\n ", " {\n min-height: 4.5em;\n }\n"], ["\n font-size: 18px;\n line-height: 1.5;\n flex-shrink: 0;\n min-height: 3em;\n text-align: ", ";\n ", ";\n ", " {\n min-height: 6em;\n }\n\n ", " {\n min-height: 4.5em;\n }\n"])), function (_a) {
69
+ var align = _a.align;
70
+ return align || 'center';
71
+ }, function (_a) {
72
+ var icon = _a.icon;
73
+ return icon
74
+ ? "\n display: -webkit-box;\n -webkit-line-clamp: 8;\n -webkit-box-orient: vertical;\n overflow: hidden;\n line-clamp: 8;\n "
75
+ : '';
76
+ }, function (_a) {
77
+ var theme = _a.theme;
78
+ return theme.mediaQueries.small;
79
+ }, function (_a) {
80
+ var theme = _a.theme;
81
+ return theme.mediaQueries.medium;
82
+ });
83
+ var ThinTile = /** @class */ (function (_super) {
84
+ __extends(ThinTile, _super);
85
+ function ThinTile() {
86
+ return _super !== null && _super.apply(this, arguments) || this;
87
+ }
88
+ ThinTile.prototype.render = function () {
89
+ var _a = this.props, header = _a.header, icon = _a.icon, children = _a.children, to = _a.to, target = _a.target, headerAlign = _a.headerAlign, textAlign = _a.textAlign, color = _a.color, className = _a.className, style = _a.style;
90
+ var Wrapper = to
91
+ ? ThinTileWrapper
92
+ : ThinTileWrapper.withComponent('div');
93
+ return ((0, jsx_runtime_1.jsxs)(Wrapper, __assign({ to: to, target: target, color: color, className: className, style: style, "data-component-name": "ui/Tiles/ThinTile" }, { children: [(icon || header) && ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, __assign({ flexDirection: "column" }, { children: [icon && ((0, jsx_runtime_1.jsx)(Flex_1.Flex, __assign({ flexShrink: 0, height: { xs: 'auto', small: '100px', medium: '110px' }, alignItems: "center", justifyContent: "center", mb: "25px" }, { children: (0, jsx_runtime_1.jsx)(ThinTileIcon, { src: icon }) }))), header && ((0, jsx_runtime_1.jsx)(ThinTileHeader, __assign({ align: headerAlign, color: color, "data-cy": "Thin-".concat(header) }, { children: header })))] }))), children && ((0, jsx_runtime_1.jsx)(ThinTileText, __assign({ icon: icon, align: textAlign, color: color }, { children: children })))] })));
94
+ };
95
+ return ThinTile;
96
+ }(react_1.Component));
97
+ exports.ThinTile = ThinTile;
98
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
@@ -0,0 +1,5 @@
1
+ export declare const TileHeader: import("styled-components").StyledComponent<"h3", any, {
2
+ 'data-component-name': string;
3
+ } & {
4
+ color?: string | undefined;
5
+ }, "data-component-name">;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.TileHeader = void 0;
11
+ var styled_components_1 = __importDefault(require("styled-components"));
12
+ exports.TileHeader = styled_components_1.default.h3.attrs(function () { return ({
13
+ 'data-component-name': 'ui/Tiles/TileHeader',
14
+ }); })(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n font-weight: var(--font-weight-bold);\n line-height: 1.25;\n color: ", ";\n font-family: var(--h-font-family);\n && {\n margin: 0 0 0.5em;\n }\n"], ["\n font-weight: var(--font-weight-bold);\n line-height: 1.25;\n color: ", ";\n font-family: var(--h-font-family);\n && {\n margin: 0 0 0.5em;\n }\n"])), function (props) { return props.color || 'var(--color-primary-main)'; });
15
+ var templateObject_1;
@@ -0,0 +1,5 @@
1
+ export declare const TileText: import("styled-components").StyledComponent<"span", any, {
2
+ 'data-component-name': string;
3
+ } & {
4
+ color?: string | undefined;
5
+ }, "data-component-name">;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.TileText = void 0;
11
+ var styled_components_1 = __importDefault(require("styled-components"));
12
+ exports.TileText = styled_components_1.default.span.attrs(function () { return ({
13
+ 'data-component-name': 'ui/Tiles/TileText',
14
+ }); })(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: inline-block;\n font-weight: var(--font-weight-regular);\n overflow: hidden;\n color: ", ";\n line-height: 1.25;\n font-family: var(--font-family-primary);\n"], ["\n display: inline-block;\n font-weight: var(--font-weight-regular);\n overflow: hidden;\n color: ", ";\n line-height: 1.25;\n font-family: var(--font-family-primary);\n"])), function (props) { return props.color || 'var(--color-text-main)'; });
15
+ var templateObject_1;
@@ -0,0 +1,7 @@
1
+ import { Component } from 'react';
2
+ import { TileProps } from '../../ui';
3
+ export declare class WideTile extends Component<TileProps & {
4
+ disableArrow?: boolean;
5
+ }> {
6
+ render(): JSX.Element;
7
+ }