@verdaccio/ui-theme 3.1.0 → 6.0.0-6-next.11

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 (381) hide show
  1. package/.babelrc +33 -0
  2. package/.eslintrc +115 -0
  3. package/.stylelintrc +40 -0
  4. package/CHANGELOG.md +152 -554
  5. package/LICENSE +1 -1
  6. package/README.md +22 -95
  7. package/config/env.js +9 -0
  8. package/jest/api/packages.json +42 -0
  9. package/jest/identity.js +29 -0
  10. package/jest/jest.config.js +39 -0
  11. package/jest/jestEnvironment.js +1 -0
  12. package/jest/server-handlers.ts +9 -0
  13. package/jest/server.ts +6 -0
  14. package/jest/setup-env.ts +15 -0
  15. package/jest/setup.ts +31 -0
  16. package/jest/unit/components/__mocks__/api.ts +47 -0
  17. package/jest/unit/components/__mocks__/token.ts +31 -0
  18. package/jest/unit/components/store/login.ts +23 -0
  19. package/jest/unit/components/store/logo.ts +7 -0
  20. package/jest/unit/components/store/package.ts +174 -0
  21. package/jest/unit/components/store/packageMeta.ts +592 -0
  22. package/jest/unit/empty.ts +1 -0
  23. package/lib/constants.ts +9 -0
  24. package/package.json +153 -228
  25. package/src/App/App.test.tsx +123 -0
  26. package/src/App/App.tsx +54 -0
  27. package/src/App/AppError.tsx +38 -0
  28. package/src/App/AppRoute.tsx +63 -0
  29. package/src/App/Footer/Footer.test.tsx +20 -0
  30. package/src/App/Footer/Footer.tsx +111 -0
  31. package/src/App/Footer/__snapshots__/Footer.test.tsx.snap +456 -0
  32. package/src/App/Footer/index.ts +1 -0
  33. package/src/App/Footer/styles.ts +44 -0
  34. package/src/App/Header/Header.test.tsx +152 -0
  35. package/src/App/Header/Header.tsx +74 -0
  36. package/src/App/Header/HeaderGreetings.tsx +22 -0
  37. package/src/App/Header/HeaderInfoDialog.tsx +19 -0
  38. package/src/App/Header/HeaderLeft.tsx +31 -0
  39. package/src/App/Header/HeaderMenu.tsx +65 -0
  40. package/src/App/Header/HeaderRight.tsx +118 -0
  41. package/src/App/Header/HeaderToolTip.tsx +19 -0
  42. package/src/App/Header/HeaderToolTipIcon.tsx +75 -0
  43. package/src/App/Header/LanguageSwitch.tsx +125 -0
  44. package/src/App/Header/LoginDialog/LoginDialog.test.tsx +112 -0
  45. package/src/App/Header/LoginDialog/LoginDialog.tsx +81 -0
  46. package/src/App/Header/LoginDialog/LoginDialogCloseButton.tsx +32 -0
  47. package/src/App/Header/LoginDialog/LoginDialogForm.tsx +97 -0
  48. package/src/App/Header/LoginDialog/LoginDialogFormError.tsx +43 -0
  49. package/src/App/Header/LoginDialog/LoginDialogHeader.tsx +48 -0
  50. package/src/App/Header/LoginDialog/__snapshots__/LoginDialog.test.tsx.snap +3 -0
  51. package/src/App/Header/LoginDialog/index.ts +1 -0
  52. package/src/App/Header/RegistryInfoContent/RegistryInfoContent.test.tsx +27 -0
  53. package/src/App/Header/RegistryInfoContent/RegistryInfoContent.tsx +155 -0
  54. package/src/App/Header/RegistryInfoContent/index.ts +1 -0
  55. package/src/App/Header/RegistryInfoDialog/RegistryInfoDialog.tsx +30 -0
  56. package/src/App/Header/RegistryInfoDialog/index.ts +1 -0
  57. package/src/App/Header/RegistryInfoDialog/styles.ts +16 -0
  58. package/src/App/Header/RegistryInfoDialog/types.ts +7 -0
  59. package/src/App/Header/Search/Search.test.tsx +168 -0
  60. package/src/App/Header/Search/Search.tsx +127 -0
  61. package/src/App/Header/Search/SearchAdornment.tsx +18 -0
  62. package/src/App/Header/Search/__snapshots__/Search.test.tsx.snap +101 -0
  63. package/src/App/Header/Search/index.ts +1 -0
  64. package/src/App/Header/index.ts +1 -0
  65. package/src/App/Header/styles.ts +89 -0
  66. package/src/App/index.ts +1 -0
  67. package/src/App/utils/loadable.tsx +10 -0
  68. package/src/components/.eslintrc +7 -0
  69. package/src/components/ActionBar/ActionBar.test.tsx +91 -0
  70. package/src/components/ActionBar/ActionBar.tsx +45 -0
  71. package/src/components/ActionBar/ActionBarAction.tsx +75 -0
  72. package/src/components/ActionBar/__snapshots__/ActionBar.test.tsx.snap +122 -0
  73. package/src/components/ActionBar/index.ts +1 -0
  74. package/src/components/AppBar.tsx +10 -0
  75. package/src/components/Author/Author.test.tsx +75 -0
  76. package/src/components/Author/Author.tsx +47 -0
  77. package/src/components/Author/__snapshots__/Author.test.tsx.snap +353 -0
  78. package/src/components/Author/index.ts +1 -0
  79. package/src/components/Author/styles.ts +23 -0
  80. package/src/components/AutoComplete/AutoComplete.tsx +179 -0
  81. package/src/components/AutoComplete/AutoCompleteV2.tsx +296 -0
  82. package/src/components/AutoComplete/index.ts +1 -0
  83. package/src/components/AutoComplete/styles.tsx +58 -0
  84. package/src/components/AutoComplete/useAutoComplete.tsx +61 -0
  85. package/src/components/Avatar.tsx +3 -0
  86. package/src/components/Box.tsx +8 -0
  87. package/src/components/Button.tsx +10 -0
  88. package/src/components/Card.tsx +10 -0
  89. package/src/components/CardActions.tsx +13 -0
  90. package/src/components/CardContent.tsx +10 -0
  91. package/src/components/Chip.tsx +10 -0
  92. package/src/components/CircularProgress.tsx +15 -0
  93. package/src/components/CopyToClipBoard.tsx +45 -0
  94. package/src/components/Dialog.tsx +10 -0
  95. package/src/components/DialogActions.tsx +16 -0
  96. package/src/components/DialogContent.tsx +16 -0
  97. package/src/components/DialogTitle.tsx +10 -0
  98. package/src/components/Divider.tsx +10 -0
  99. package/src/components/FloatingActionButton.tsx +12 -0
  100. package/src/components/FormControl.tsx +10 -0
  101. package/src/components/FormHelperText.tsx +16 -0
  102. package/src/components/Grid.tsx +10 -0
  103. package/src/components/Heading.tsx +15 -0
  104. package/src/components/IconButton.tsx +10 -0
  105. package/src/components/Icons/.eslintrc +5 -0
  106. package/src/components/Icons/Earth.tsx +36 -0
  107. package/src/components/Icons/FileBinary.tsx +20 -0
  108. package/src/components/Icons/Law.tsx +20 -0
  109. package/src/components/Icons/License.tsx +18 -0
  110. package/src/components/Icons/Time.tsx +19 -0
  111. package/src/components/Icons/Version.tsx +20 -0
  112. package/src/components/Icons/index.ts +5 -0
  113. package/src/components/Input.tsx +10 -0
  114. package/src/components/InputAdornment/InputAdornment.tsx +16 -0
  115. package/src/components/InputAdornment/index.ts +1 -0
  116. package/src/components/InputLabel.tsx +10 -0
  117. package/src/components/Label/Label.test.tsx +15 -0
  118. package/src/components/Label/Label.tsx +35 -0
  119. package/src/components/Label/__snapshots__/Label.test.tsx.snap +14 -0
  120. package/src/components/Label/index.ts +1 -0
  121. package/src/components/Link.tsx +39 -0
  122. package/src/components/List.tsx +10 -0
  123. package/src/components/ListItem.tsx +23 -0
  124. package/src/components/ListItemText.tsx +16 -0
  125. package/src/components/Loading/Loading.test.tsx +12 -0
  126. package/src/components/Loading/Loading.tsx +17 -0
  127. package/src/components/Loading/Spinner/Spinner.test.tsx +14 -0
  128. package/src/components/Loading/Spinner/Spinner.tsx +35 -0
  129. package/src/components/Loading/Spinner/__snapshots__/Spinner.test.tsx.snap +148 -0
  130. package/src/components/Loading/Spinner/index.tsx +1 -0
  131. package/src/components/Loading/__snapshots__/Loading.test.tsx.snap +86 -0
  132. package/src/components/Loading/index.ts +1 -0
  133. package/src/components/Loading/styles.ts +17 -0
  134. package/src/components/Logo/Logo.test.tsx +12 -0
  135. package/src/components/Logo/Logo.tsx +55 -0
  136. package/src/components/Logo/__snapshots__/Logo.test.tsx.snap +19 -0
  137. package/src/components/Logo/img/logo-black-and-white.svg +1 -0
  138. package/src/components/Logo/img/logo.svg +1 -0
  139. package/src/components/Logo/index.ts +1 -0
  140. package/src/components/Menu.tsx +10 -0
  141. package/src/components/MenuItem.tsx +25 -0
  142. package/src/components/NotFound/NotFound.tsx +52 -0
  143. package/src/components/NotFound/Notfound.test.tsx +37 -0
  144. package/src/components/NotFound/__snapshots__/Notfound.test.tsx.snap +44 -0
  145. package/src/components/NotFound/img/package.svg +1 -0
  146. package/src/components/NotFound/index.ts +1 -0
  147. package/src/components/NotFound/styles.ts +40 -0
  148. package/src/components/Paper.tsx +10 -0
  149. package/src/components/SnackbarContent.tsx +15 -0
  150. package/src/components/SvgIcon.tsx +38 -0
  151. package/src/components/Tab.tsx +10 -0
  152. package/src/components/Tabs.tsx +14 -0
  153. package/src/components/Text/Text.tsx +17 -0
  154. package/src/components/Text/TextConfig.ts +7 -0
  155. package/src/components/Text/index.ts +2 -0
  156. package/src/components/TextField/TextField.test.tsx +16 -0
  157. package/src/components/TextField/TextField.tsx +23 -0
  158. package/src/components/TextField/__snapshots__/TextField.test.tsx.snap +19 -0
  159. package/src/components/TextField/index.ts +1 -0
  160. package/src/components/Toolbar.tsx +10 -0
  161. package/src/components/Tooltip.tsx +25 -0
  162. package/src/design-tokens/ResetStyles.tsx +44 -0
  163. package/src/design-tokens/StyleBaseline.tsx +14 -0
  164. package/src/design-tokens/ThemeContext.ts +13 -0
  165. package/src/design-tokens/ThemeProvider.tsx +44 -0
  166. package/src/design-tokens/emotion.ts +5 -0
  167. package/src/design-tokens/load-dayjs-locale.ts +98 -0
  168. package/src/design-tokens/theme.ts +159 -0
  169. package/src/design-tokens/useLocalStorage.ts +40 -0
  170. package/src/design-tokens/useOnClickOutside.ts +28 -0
  171. package/src/design-tokens/useTheme.ts +7 -0
  172. package/src/i18n/ABOUT_TRANSLATIONS.md +13 -0
  173. package/src/i18n/config.ts +52 -0
  174. package/src/i18n/crowdin/ui.json +170 -0
  175. package/src/i18n/deprecated_translations_dont_use/cs-CZ.json +168 -0
  176. package/src/i18n/deprecated_translations_dont_use/de-DE.json +168 -0
  177. package/src/i18n/deprecated_translations_dont_use/en-US.json +170 -0
  178. package/src/i18n/deprecated_translations_dont_use/es-ES.json +168 -0
  179. package/src/i18n/deprecated_translations_dont_use/fr-FR.json +168 -0
  180. package/src/i18n/deprecated_translations_dont_use/ja-JP.json +168 -0
  181. package/src/i18n/deprecated_translations_dont_use/km-KH.json +168 -0
  182. package/src/i18n/deprecated_translations_dont_use/pt-BR.json +168 -0
  183. package/src/i18n/deprecated_translations_dont_use/ru-RU.json +168 -0
  184. package/src/i18n/deprecated_translations_dont_use/tr-TR.json +168 -0
  185. package/src/i18n/deprecated_translations_dont_use/uk-UA.json +168 -0
  186. package/src/i18n/deprecated_translations_dont_use/zh-CN.json +168 -0
  187. package/src/i18n/deprecated_translations_dont_use/zh-TW.json +165 -0
  188. package/src/i18n/enabledLanguages.ts +35 -0
  189. package/src/index.tsx +36 -0
  190. package/src/lib/constants.ts +9 -0
  191. package/src/pages/Version/DetailContainer/Dependencies/Dependencies.test.tsx +93 -0
  192. package/src/pages/Version/DetailContainer/Dependencies/Dependencies.tsx +100 -0
  193. package/src/pages/Version/DetailContainer/Dependencies/index.ts +1 -0
  194. package/src/pages/Version/DetailContainer/Dependencies/styles.ts +26 -0
  195. package/src/pages/Version/DetailContainer/Dependencies/types.ts +7 -0
  196. package/src/pages/Version/DetailContainer/Deprecated/Deprecated.test.tsx +34 -0
  197. package/src/pages/Version/DetailContainer/Deprecated/Deprecated.tsx +31 -0
  198. package/src/pages/Version/DetailContainer/Deprecated/index.ts +1 -0
  199. package/src/pages/Version/DetailContainer/DetailContainer.test.tsx +13 -0
  200. package/src/pages/Version/DetailContainer/DetailContainer.tsx +37 -0
  201. package/src/pages/Version/DetailContainer/DetailContainerContent.tsx +41 -0
  202. package/src/pages/Version/DetailContainer/DetailContainerContentReadme.tsx +19 -0
  203. package/src/pages/Version/DetailContainer/DetailContainerTabs.tsx +36 -0
  204. package/src/pages/Version/DetailContainer/NoItems/NoItems.tsx +16 -0
  205. package/src/pages/Version/DetailContainer/NoItems/Noitems.test.tsx +16 -0
  206. package/src/pages/Version/DetailContainer/NoItems/__snapshots__/Noitems.test.tsx.snap +9 -0
  207. package/src/pages/Version/DetailContainer/NoItems/index.ts +1 -0
  208. package/src/pages/Version/DetailContainer/Readme/Readme.spec.tsx +19 -0
  209. package/src/pages/Version/DetailContainer/Readme/Readme.tsx +22 -0
  210. package/src/pages/Version/DetailContainer/Readme/__snapshots__/Readme.spec.tsx.snap +94 -0
  211. package/src/pages/Version/DetailContainer/Readme/index.ts +1 -0
  212. package/src/pages/Version/DetailContainer/Readme/types.ts +3 -0
  213. package/src/pages/Version/DetailContainer/UpLinks/UpLinks.test.tsx +58 -0
  214. package/src/pages/Version/DetailContainer/UpLinks/UpLinks.tsx +45 -0
  215. package/src/pages/Version/DetailContainer/UpLinks/__snapshots__/UpLinks.test.tsx.snap +247 -0
  216. package/src/pages/Version/DetailContainer/UpLinks/index.ts +1 -0
  217. package/src/pages/Version/DetailContainer/UpLinks/styles.ts +24 -0
  218. package/src/pages/Version/DetailContainer/Versions/Versions.test.tsx +60 -0
  219. package/src/pages/Version/DetailContainer/Versions/Versions.tsx +41 -0
  220. package/src/pages/Version/DetailContainer/Versions/VersionsHistoryList.tsx +40 -0
  221. package/src/pages/Version/DetailContainer/Versions/VersionsTagList.tsx +28 -0
  222. package/src/pages/Version/DetailContainer/Versions/__partials__/data.json +5984 -0
  223. package/src/pages/Version/DetailContainer/Versions/__snapshots__/Versions.test.tsx.snap +3 -0
  224. package/src/pages/Version/DetailContainer/Versions/index.ts +1 -0
  225. package/src/pages/Version/DetailContainer/Versions/styles.ts +30 -0
  226. package/src/pages/Version/DetailContainer/__snapshots__/DetailContainer.test.tsx.snap +103 -0
  227. package/src/pages/Version/DetailContainer/index.ts +1 -0
  228. package/src/pages/Version/DetailSidebar/DetailSidebar.tsx +55 -0
  229. package/src/pages/Version/DetailSidebar/DetailSidebarFundButton.test.tsx +111 -0
  230. package/src/pages/Version/DetailSidebar/DetailSidebarFundButton.tsx +53 -0
  231. package/src/pages/Version/DetailSidebar/DetailSidebarTitle.tsx +40 -0
  232. package/src/pages/Version/DetailSidebar/Developers/Developers.test.tsx +117 -0
  233. package/src/pages/Version/DetailSidebar/Developers/Developers.tsx +90 -0
  234. package/src/pages/Version/DetailSidebar/Developers/DevelopersTitle.tsx +32 -0
  235. package/src/pages/Version/DetailSidebar/Developers/__snapshots__/Developers.test.tsx.snap +380 -0
  236. package/src/pages/Version/DetailSidebar/Developers/get-unique-developer-values.ts +16 -0
  237. package/src/pages/Version/DetailSidebar/Developers/index.ts +1 -0
  238. package/src/pages/Version/DetailSidebar/Developers/styles.ts +31 -0
  239. package/src/pages/Version/DetailSidebar/Dist/Dist.test.tsx +78 -0
  240. package/src/pages/Version/DetailSidebar/Dist/Dist.tsx +49 -0
  241. package/src/pages/Version/DetailSidebar/Dist/__snapshots__/Dist.test.tsx.snap +602 -0
  242. package/src/pages/Version/DetailSidebar/Dist/index.ts +1 -0
  243. package/src/pages/Version/DetailSidebar/Dist/styles.ts +27 -0
  244. package/src/pages/Version/DetailSidebar/Engines/Engines.test.tsx +71 -0
  245. package/src/pages/Version/DetailSidebar/Engines/Engines.tsx +58 -0
  246. package/src/pages/Version/DetailSidebar/Engines/img/node.png +0 -0
  247. package/src/pages/Version/DetailSidebar/Engines/index.ts +1 -0
  248. package/src/pages/Version/DetailSidebar/Engines/styles.ts +14 -0
  249. package/src/pages/Version/DetailSidebar/Install/Install.test.tsx +64 -0
  250. package/src/pages/Version/DetailSidebar/Install/Install.tsx +52 -0
  251. package/src/pages/Version/DetailSidebar/Install/InstallListItem.tsx +97 -0
  252. package/src/pages/Version/DetailSidebar/Install/__partials__/data.json +5984 -0
  253. package/src/pages/Version/DetailSidebar/Install/img/npm.svg +15 -0
  254. package/src/pages/Version/DetailSidebar/Install/img/pnpm.svg +1 -0
  255. package/src/pages/Version/DetailSidebar/Install/img/yarn.svg +1 -0
  256. package/src/pages/Version/DetailSidebar/Install/index.ts +1 -0
  257. package/src/pages/Version/DetailSidebar/Repository/Repository.test.tsx +78 -0
  258. package/src/pages/Version/DetailSidebar/Repository/Repository.tsx +93 -0
  259. package/src/pages/Version/DetailSidebar/Repository/__partials__/data.json +5984 -0
  260. package/src/pages/Version/DetailSidebar/Repository/__snapshots__/Repository.test.tsx.snap +3 -0
  261. package/src/pages/Version/DetailSidebar/Repository/img/git.png +0 -0
  262. package/src/pages/Version/DetailSidebar/Repository/index.ts +1 -0
  263. package/src/pages/Version/DetailSidebar/index.ts +1 -0
  264. package/src/pages/Version/Version.test.tsx +68 -0
  265. package/src/pages/Version/Version.tsx +41 -0
  266. package/src/pages/Version/VersionContextProvider.tsx +43 -0
  267. package/src/pages/Version/VersionLayout.tsx +20 -0
  268. package/src/pages/Version/__partials__/data.json +5984 -0
  269. package/src/pages/Version/context.ts +10 -0
  270. package/src/pages/Version/get-route-package-name.ts +9 -0
  271. package/src/pages/Version/index.ts +4 -0
  272. package/src/pages/Version/version-config.ts +19 -0
  273. package/src/pages/home/Home.tsx +25 -0
  274. package/src/pages/home/PackageList/Help/Help.test.tsx +12 -0
  275. package/src/pages/home/PackageList/Help/Help.tsx +56 -0
  276. package/src/pages/home/PackageList/Help/__snapshots__/Help.test.tsx.snap +159 -0
  277. package/src/pages/home/PackageList/Help/index.ts +1 -0
  278. package/src/pages/home/PackageList/Help/styles.ts +13 -0
  279. package/src/pages/home/PackageList/Package/Package.test.tsx +56 -0
  280. package/src/pages/home/PackageList/Package/Package.tsx +253 -0
  281. package/src/pages/home/PackageList/Package/Tag/Tag.test.tsx +16 -0
  282. package/src/pages/home/PackageList/Package/Tag/Tag.tsx +11 -0
  283. package/src/pages/home/PackageList/Package/Tag/__snapshots__/Tag.test.tsx.snap +21 -0
  284. package/src/pages/home/PackageList/Package/Tag/index.ts +1 -0
  285. package/src/pages/home/PackageList/Package/Tag/styles.ts +11 -0
  286. package/src/pages/home/PackageList/Package/index.ts +1 -0
  287. package/src/pages/home/PackageList/Package/styles.ts +112 -0
  288. package/src/pages/home/PackageList/PackageList.tsx +81 -0
  289. package/src/pages/home/PackageList/Packagelist.test.tsx +60 -0
  290. package/src/pages/home/PackageList/index.ts +1 -0
  291. package/src/pages/home/index.ts +1 -0
  292. package/src/providers/API/api.test.ts +136 -0
  293. package/src/providers/API/api.ts +73 -0
  294. package/src/providers/API/storage.ts +12 -0
  295. package/src/providers/config/AppConfigurationProvider.tsx +57 -0
  296. package/src/providers/config/index.ts +1 -0
  297. package/src/store/index.ts +1 -0
  298. package/src/store/models/configuration.ts +42 -0
  299. package/src/store/models/download.ts +31 -0
  300. package/src/store/models/index.ts +17 -0
  301. package/src/store/models/login.ts +90 -0
  302. package/src/store/models/manifest.ts +91 -0
  303. package/src/store/models/packages.ts +36 -0
  304. package/src/store/models/search.ts +81 -0
  305. package/src/store/store.ts +15 -0
  306. package/src/template/favicon.ico +0 -0
  307. package/src/template/index.html +21 -0
  308. package/src/utils/.eslintrc +5 -0
  309. package/src/utils/cli-utils.test.ts +66 -0
  310. package/src/utils/cli-utils.ts +38 -0
  311. package/src/utils/colors.ts +1 -0
  312. package/src/utils/constants.ts +5 -0
  313. package/src/utils/file-size.ts +13 -0
  314. package/src/utils/i18nForTests.ts +25 -0
  315. package/src/utils/login.test.ts +71 -0
  316. package/src/utils/login.ts +44 -0
  317. package/src/utils/package.test.ts +101 -0
  318. package/src/utils/package.ts +105 -0
  319. package/src/utils/sec-utils.ts +15 -0
  320. package/src/utils/storage.ts +12 -0
  321. package/src/utils/test-react-testing-library.tsx +38 -0
  322. package/src/utils/url.test.ts +28 -0
  323. package/src/utils/url.ts +58 -0
  324. package/src/utils/windows.ts +3 -0
  325. package/static/favicon.ico +0 -0
  326. package/static/index.html +21 -0
  327. package/static/main.c57129036f278d0c7acf.js +2 -0
  328. package/static/main.c57129036f278d0c7acf.js.LICENSE.txt +1456 -0
  329. package/static/manifest.json +5 -17
  330. package/static/runtime.c57129036f278d0c7acf.js +2 -0
  331. package/static/{runtime.f6e570dfe38870a45bf5.js.LICENSE.txt → runtime.c57129036f278d0c7acf.js.LICENSE.txt} +2 -2
  332. package/static/vendors.c57129036f278d0c7acf.js +2 -0
  333. package/static/vendors.c57129036f278d0c7acf.js.LICENSE.txt +2932 -0
  334. package/tools/.eslintrc +14 -0
  335. package/tools/_verdaccio.config.yaml +59 -0
  336. package/tools/dev.server.js +48 -0
  337. package/tools/getPackageJson.js +25 -0
  338. package/tools/verdaccio.js +31 -0
  339. package/tools/webpack.config.js +82 -0
  340. package/tools/webpack.dev.config.babel.js +60 -0
  341. package/tools/webpack.prod.config.babel.js +81 -0
  342. package/tsconfig.build.json +24 -0
  343. package/tsconfig.json +27 -0
  344. package/types/custom.d.ts +9 -0
  345. package/types/files.d.ts +9 -0
  346. package/types/index.ts +12 -0
  347. package/types/jest-dom.d.ts +1 -0
  348. package/types/packageMeta.ts +82 -0
  349. package/static/238.f6e570dfe38870a45bf5.js +0 -2
  350. package/static/238.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  351. package/static/718.f6e570dfe38870a45bf5.js +0 -2
  352. package/static/718.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  353. package/static/73.f6e570dfe38870a45bf5.js +0 -2
  354. package/static/73.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  355. package/static/Dependencies.f6e570dfe38870a45bf5.js +0 -2
  356. package/static/Dependencies.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  357. package/static/Dist.f6e570dfe38870a45bf5.js +0 -2
  358. package/static/Dist.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  359. package/static/Engines.f6e570dfe38870a45bf5.js +0 -2
  360. package/static/Engines.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  361. package/static/Home.f6e570dfe38870a45bf5.js +0 -2
  362. package/static/Home.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  363. package/static/Install.f6e570dfe38870a45bf5.js +0 -2
  364. package/static/Install.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  365. package/static/NotFound.f6e570dfe38870a45bf5.js +0 -2
  366. package/static/NotFound.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  367. package/static/Provider.f6e570dfe38870a45bf5.js +0 -2
  368. package/static/Provider.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  369. package/static/Repository.f6e570dfe38870a45bf5.js +0 -2
  370. package/static/Repository.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  371. package/static/UpLinks.f6e570dfe38870a45bf5.js +0 -2
  372. package/static/UpLinks.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  373. package/static/Version.f6e570dfe38870a45bf5.js +0 -2
  374. package/static/Version.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  375. package/static/Versions.f6e570dfe38870a45bf5.js +0 -2
  376. package/static/Versions.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  377. package/static/main.f6e570dfe38870a45bf5.js +0 -2
  378. package/static/main.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -10
  379. package/static/runtime.f6e570dfe38870a45bf5.js +0 -2
  380. package/static/vendors.f6e570dfe38870a45bf5.js +0 -2
  381. package/static/vendors.f6e570dfe38870a45bf5.js.LICENSE.txt +0 -98
@@ -0,0 +1,3 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`<Version /> component should render the component in default state 1`] = `"<h6 class=\\"MuiTypography-root css-1ikpjfo e1h4if9v0 MuiTypography-subtitle1\\">Current Tags</h6><ul class=\\"MuiList-root MuiList-dense MuiList-padding\\"><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">canary</span></div><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">8.0.1-master.1</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">token</span></div><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">2.2.1-pr-token-3</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">next</span></div><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">8.0.1-next.1</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">beta</span></div><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">2.0.0-beta.3</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">latest</span></div><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">8.0.0</span></div></li></ul><h6 class=\\"MuiTypography-root css-1ikpjfo e1h4if9v0 MuiTypography-subtitle1\\">Version History</h6><ul class=\\"MuiList-root MuiList-dense MuiList-padding\\"><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.1-master.1\\">8.0.1-master.1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.1-dependabot-npm-and-yarn-eslint-plugin-jest-22-16-0.0\\">8.0.1-dependabot-npm-and-yarn-eslint-plugin-jest-22-16-0.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.1-next.1\\">8.0.1-next.1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.1-remove-install-warnings.16\\">8.0.1-remove-install-warnings.16</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.1-master.19\\">8.0.1-master.19</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.1-master.18\\">8.0.1-master.18</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.1-master.7\\">8.0.1-master.7</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.0\\">8.0.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.1-greenkeeper-tools-eslint-6-2-2.6\\">8.0.1-greenkeeper-tools-eslint-6-2-2.6</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.1-master.5\\">8.0.1-master.5</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.0-remove-eslint-warnings.28\\">8.0.0-remove-eslint-warnings.28</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.0-master.16\\">8.0.0-master.16</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.0-next.4\\">8.0.0-next.4</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 month ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/8.0.0-next.3\\">8.0.0-next.3</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.3.0\\">2.3.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.2.1-1\\">2.2.1-1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.2.1-pr-token-3\\">2.2.1-pr-token-3</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.2.1-pr-token-2\\">2.2.1-pr-token-2</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.2.1-pr-token-1\\">2.2.1-pr-token-1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.2.1-pr-token\\">2.2.1-pr-token</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.2.1-pr-168-1\\">2.2.1-pr-168-1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.2.1\\">2.2.1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">3 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.1.0\\">2.1.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">6 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.0.0\\">2.0.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">6 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.0.0-beta.3\\">2.0.0-beta.3</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">7 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.0.0-beta.2\\">2.0.0-beta.2</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">7 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.1.7\\">1.1.7</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">7 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.1.6\\">1.1.6</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">8 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.1.5\\">1.1.5</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">8 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.1.4\\">1.1.4</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">8 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.0.0-beta.1\\">2.0.0-beta.1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">8 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/2.0.0-beta.0\\">2.0.0-beta.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">8 months ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.2.0\\">1.2.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.1.3\\">1.1.3</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.1.2\\">1.1.2</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.1.1\\">1.1.1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.1.0\\">1.1.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.0.3\\">1.0.3</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.0.2\\">1.0.2</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.0.1\\">1.0.1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/1.0.0\\">1.0.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.4.2\\">0.4.2</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.4.1\\">0.4.1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.4.0\\">0.4.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.3.0\\">0.3.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.2.1\\">0.2.1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.2.0\\">0.2.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.1.4\\">0.1.4</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.1.3\\">0.1.3</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">over 1 year ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.1.2\\">0.1.2</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">almost 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.1.1\\">0.1.1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">almost 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.1.0\\">0.1.0</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">almost 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.14\\">0.0.14</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">almost 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.13\\">0.0.13</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">almost 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.12\\">0.0.12</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">almost 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.11\\">0.0.11</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">almost 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.10\\">0.0.10</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">almost 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.8\\">0.0.8</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">almost 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.7\\">0.0.7</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">almost 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.6\\">0.0.6</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">almost 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.5\\">0.0.5</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.4\\">0.0.4</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.3\\">0.0.3</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.2\\">0.0.2</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 years ago</span></div></li><li class=\\"MuiListItem-root version-item MuiListItem-dense MuiListItem-gutters\\"><a class=\\"MuiTypography-root MuiLink-root MuiLink-underlineHover MuiTypography-colorPrimary\\" href=\\"/-/web/detail/foo/v/0.0.1\\">0.0.1</a><div class=\\"css-5ufqjc e1h4if9v1\\"></div><div class=\\"MuiListItemText-root css-5tz9yo e1h4if9v2 MuiListItemText-dense\\"><span class=\\"MuiTypography-root MuiListItemText-primary MuiTypography-body2\\">about 2 years ago</span></div></li></ul>"`;
@@ -0,0 +1 @@
1
+ export { default } from './Versions';
@@ -0,0 +1,30 @@
1
+ import styled from '@emotion/styled';
2
+
3
+ import Link from 'verdaccio-ui/components/Link';
4
+ import { default as MuiListItemText } from 'verdaccio-ui/components/ListItemText';
5
+ import Text from 'verdaccio-ui/components/Text';
6
+ import { Theme } from 'verdaccio-ui/design-tokens/theme';
7
+
8
+ export const StyledText = styled(Text)<{ theme?: Theme }>((props) => ({
9
+ fontWeight: props.theme?.fontWeight.bold,
10
+ }));
11
+
12
+ export const Spacer = styled('div')<{ theme?: Theme }>(({ theme }) => ({
13
+ flex: '1 1 auto',
14
+ borderBottom: `1px dotted ${
15
+ theme?.palette.type == 'light' ? 'rgba(0, 0, 0, 0.2)' : 'rgba(255, 255, 255, 0.2)'
16
+ } `,
17
+ whiteSpace: 'nowrap',
18
+ height: '0.5em',
19
+ margin: '0 16px',
20
+ }));
21
+
22
+ export const ListItemText = styled(MuiListItemText)<{ theme?: Theme }>(({ theme }) => ({
23
+ flex: 'none',
24
+ opacity: 0.6,
25
+ color: theme?.palette.type == 'light' ? theme?.palette.black : theme?.palette.white,
26
+ }));
27
+
28
+ export const StyledLink = styled(Link)({
29
+ textDecoration: 'none',
30
+ });
@@ -0,0 +1,103 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`DetailContainer renders correctly 1`] = `
4
+ .emotion-0 {
5
+ margin-bottom: 16px;
6
+ }
7
+
8
+ <div
9
+ class="MuiBox-root MuiBox-root-1"
10
+ >
11
+ <div
12
+ class="MuiTabs-root emotion-0 emotion-1"
13
+ color="primary"
14
+ >
15
+ <div
16
+ class="MuiTabs-scroller MuiTabs-fixed"
17
+ style="overflow: hidden;"
18
+ >
19
+ <div
20
+ class="MuiTabs-flexContainer"
21
+ role="tablist"
22
+ >
23
+ <button
24
+ aria-selected="true"
25
+ class="MuiButtonBase-root MuiTab-root MuiTab-textColorInherit Mui-selected MuiTab-fullWidth"
26
+ data-testid="readme-tab"
27
+ id="readme-tab"
28
+ role="tab"
29
+ tabindex="0"
30
+ type="button"
31
+ >
32
+ <span
33
+ class="MuiTab-wrapper"
34
+ >
35
+ Readme
36
+ </span>
37
+ <span
38
+ class="MuiTouchRipple-root"
39
+ />
40
+ </button>
41
+ <button
42
+ aria-selected="false"
43
+ class="MuiButtonBase-root MuiTab-root MuiTab-textColorInherit MuiTab-fullWidth"
44
+ data-testid="dependencies-tab"
45
+ id="dependencies-tab"
46
+ role="tab"
47
+ tabindex="-1"
48
+ type="button"
49
+ >
50
+ <span
51
+ class="MuiTab-wrapper"
52
+ >
53
+ Dependencies
54
+ </span>
55
+ <span
56
+ class="MuiTouchRipple-root"
57
+ />
58
+ </button>
59
+ <button
60
+ aria-selected="false"
61
+ class="MuiButtonBase-root MuiTab-root MuiTab-textColorInherit MuiTab-fullWidth"
62
+ data-testid="versions-tab"
63
+ id="versions-tab"
64
+ role="tab"
65
+ tabindex="-1"
66
+ type="button"
67
+ >
68
+ <span
69
+ class="MuiTab-wrapper"
70
+ >
71
+ Versions
72
+ </span>
73
+ <span
74
+ class="MuiTouchRipple-root"
75
+ />
76
+ </button>
77
+ <button
78
+ aria-selected="false"
79
+ class="MuiButtonBase-root MuiTab-root MuiTab-textColorInherit MuiTab-fullWidth"
80
+ data-testid="uplinks-tab"
81
+ id="uplinks-tab"
82
+ role="tab"
83
+ tabindex="-1"
84
+ type="button"
85
+ >
86
+ <span
87
+ class="MuiTab-wrapper"
88
+ >
89
+ Uplinks
90
+ </span>
91
+ <span
92
+ class="MuiTouchRipple-root"
93
+ />
94
+ </button>
95
+ </div>
96
+ <span
97
+ class="PrivateTabIndicator-root-2 PrivateTabIndicator-colorPrimary-3 MuiTabs-indicator"
98
+ style="left: 0px; width: 0px;"
99
+ />
100
+ </div>
101
+ </div>
102
+ </div>
103
+ `;
@@ -0,0 +1 @@
1
+ export { default } from './DetailContainer';
@@ -0,0 +1,55 @@
1
+ import styled from '@emotion/styled';
2
+ import React, { useContext } from 'react';
3
+
4
+ import ActionBar from 'verdaccio-ui/components/ActionBar';
5
+ import Author from 'verdaccio-ui/components/Author';
6
+ import Paper from 'verdaccio-ui/components/Paper';
7
+ import { Theme } from 'verdaccio-ui/design-tokens/theme';
8
+
9
+ import { DetailContext } from '..';
10
+ import loadable from '../../../App/utils/loadable';
11
+
12
+ import DetailSidebarFundButton from './DetailSidebarFundButton';
13
+ import DetailSidebarTitle from './DetailSidebarTitle';
14
+ import Developers from './Developers';
15
+ import { DeveloperType } from './Developers/DevelopersTitle';
16
+
17
+ const Engines = loadable(() => import(/* webpackChunkName: "Engines" */ './Engines'));
18
+ const Dist = loadable(() => import(/* webpackChunkName: "Dist" */ './Dist'));
19
+ const Install = loadable(() => import(/* webpackChunkName: "Install" */ './Install'));
20
+ const Repository = loadable(() => import(/* webpackChunkName: "Repository" */ './Repository'));
21
+
22
+ const DetailSidebar: React.FC = () => {
23
+ const detailContext = useContext(DetailContext);
24
+ const { packageMeta, packageName, packageVersion } = detailContext;
25
+
26
+ if (!packageMeta || !packageName) {
27
+ return null;
28
+ }
29
+
30
+ return (
31
+ <StyledPaper className={'sidebar-info'}>
32
+ <DetailSidebarTitle
33
+ description={packageMeta.latest?.description}
34
+ isLatest={typeof packageVersion === 'undefined'}
35
+ packageName={packageName}
36
+ version={packageVersion || packageMeta.latest.version}
37
+ />
38
+ <ActionBar />
39
+ <Install />
40
+ <DetailSidebarFundButton />
41
+ <Repository />
42
+ <Engines />
43
+ <Dist />
44
+ <Author />
45
+ <Developers type={DeveloperType.MAINTAINERS} />
46
+ <Developers type={DeveloperType.CONTRIBUTORS} />
47
+ </StyledPaper>
48
+ );
49
+ };
50
+
51
+ export default DetailSidebar;
52
+
53
+ const StyledPaper = styled(Paper)<{ theme?: Theme }>(({ theme }) => ({
54
+ padding: theme?.spacing(3, 2),
55
+ }));
@@ -0,0 +1,111 @@
1
+ import _ from 'lodash';
2
+ import React from 'react';
3
+
4
+ import { render } from 'verdaccio-ui/utils/test-react-testing-library';
5
+
6
+ import { DetailContext } from '../context';
7
+ import { DetailContextProps } from '../version-config';
8
+
9
+ import DetailSidebarFundButton from './DetailSidebarFundButton';
10
+
11
+ const ComponentToBeRendered: React.FC<{ contextValue: DetailContextProps }> = ({
12
+ contextValue,
13
+ }) => (
14
+ <DetailContext.Provider value={contextValue}>
15
+ <DetailSidebarFundButton />
16
+ </DetailContext.Provider>
17
+ );
18
+
19
+ const detailContextValue: DetailContextProps = {
20
+ packageName: 'foo',
21
+ readMe: 'test',
22
+ enableLoading: () => {},
23
+ isLoading: false,
24
+ hasNotBeenFound: false,
25
+ packageMeta: {
26
+ _uplinks: {},
27
+ latest: {
28
+ name: 'verdaccio-ui/local-storage',
29
+ version: '8.0.1-next.1',
30
+ dist: {
31
+ fileCount: 0,
32
+ unpackedSize: 0,
33
+ tarball: 'http://localhost:8080/bootstrap/-/bootstrap-4.3.1.tgz',
34
+ },
35
+ homepage: 'https://verdaccio.org',
36
+ bugs: {
37
+ url: 'https://github.com/verdaccio/monorepo/issues',
38
+ },
39
+ },
40
+ },
41
+ };
42
+
43
+ describe('test DetailSidebarFundButton', () => {
44
+ test('should not display the button if fund is missing', () => {
45
+ const wrapper = render(<ComponentToBeRendered contextValue={detailContextValue} />);
46
+
47
+ expect(wrapper.queryByText('Fund')).toBeNull();
48
+ });
49
+
50
+ test('should not display the button if url is missing', () => {
51
+ const value = _.merge(detailContextValue, {
52
+ packageMeta: {
53
+ latest: {
54
+ funding: {},
55
+ },
56
+ },
57
+ });
58
+
59
+ const wrapper = render(<ComponentToBeRendered contextValue={value} />);
60
+
61
+ expect(wrapper.queryByText('Fund')).toBeNull();
62
+ });
63
+
64
+ test('should not display the button if url is not a string', () => {
65
+ const value = _.merge(detailContextValue, {
66
+ packageMeta: {
67
+ latest: {
68
+ funding: {
69
+ url: null,
70
+ },
71
+ },
72
+ },
73
+ });
74
+
75
+ const wrapper = render(<ComponentToBeRendered contextValue={value} />);
76
+
77
+ expect(wrapper.queryByText('Fund')).toBeNull();
78
+ });
79
+
80
+ test('should not display the button if url is not an url', () => {
81
+ const value = _.merge(detailContextValue, {
82
+ packageMeta: {
83
+ latest: {
84
+ funding: {
85
+ url: 'somethign different as url',
86
+ },
87
+ },
88
+ },
89
+ });
90
+
91
+ const wrapper = render(<ComponentToBeRendered contextValue={value} />);
92
+
93
+ expect(wrapper.queryByText('Fund')).toBeNull();
94
+ });
95
+
96
+ test('should display the button if url is a valid url', () => {
97
+ const value = _.merge(detailContextValue, {
98
+ packageMeta: {
99
+ latest: {
100
+ funding: {
101
+ url: 'https://opencollective.com/verdaccio',
102
+ },
103
+ },
104
+ },
105
+ });
106
+
107
+ const wrapper = render(<ComponentToBeRendered contextValue={value} />);
108
+
109
+ expect(wrapper.getByText('Fund')).toBeTruthy();
110
+ });
111
+ });
@@ -0,0 +1,53 @@
1
+ import styled from '@emotion/styled';
2
+ import Favorite from '@material-ui/icons/Favorite';
3
+ import React, { useContext } from 'react';
4
+ import { Trans } from 'react-i18next';
5
+
6
+ import Button from 'verdaccio-ui/components/Button';
7
+ import Link from 'verdaccio-ui/components/Link';
8
+ import { Theme } from 'verdaccio-ui/design-tokens/theme';
9
+ import { isURL } from 'verdaccio-ui/utils/url';
10
+
11
+ import { DetailContext } from '..';
12
+
13
+ /* eslint-disable react/jsx-no-bind */
14
+ const DetailSidebarFundButton: React.FC = () => {
15
+ const detailContext = useContext(DetailContext);
16
+
17
+ const { packageMeta } = detailContext;
18
+
19
+ const fundingUrl = packageMeta?.latest?.funding?.url as string;
20
+
21
+ if (!isURL(fundingUrl)) {
22
+ return null;
23
+ }
24
+
25
+ return (
26
+ <StyledLink external={true} to={fundingUrl}>
27
+ <Button
28
+ color="primary"
29
+ fullWidth={true}
30
+ startIcon={<StyledFavoriteIcon />}
31
+ variant="outlined">
32
+ <Trans components={[<StyledFundStrong key="fund" />]} i18nKey="button.fund-this-package" />
33
+ </Button>
34
+ </StyledLink>
35
+ );
36
+ };
37
+
38
+ export default DetailSidebarFundButton;
39
+
40
+ const StyledLink = styled(Link)<{ theme?: Theme }>(({ theme }) => ({
41
+ marginTop: theme?.spacing(1),
42
+ marginBottom: theme?.spacing(1),
43
+ textDecoration: 'none',
44
+ display: 'block',
45
+ }));
46
+
47
+ const StyledFavoriteIcon = styled(Favorite)<{ theme?: Theme }>(({ theme }) => ({
48
+ color: theme?.palette.orange,
49
+ }));
50
+
51
+ const StyledFundStrong = styled('strong')({
52
+ marginRight: 3,
53
+ });
@@ -0,0 +1,40 @@
1
+ import styled from '@emotion/styled';
2
+ import React from 'react';
3
+ import { useTranslation } from 'react-i18next';
4
+
5
+ import Box from 'verdaccio-ui/components/Box';
6
+ import Heading from 'verdaccio-ui/components/Heading';
7
+ import { Theme } from 'verdaccio-ui/design-tokens/theme';
8
+
9
+ interface Props {
10
+ packageName: string;
11
+ description?: string;
12
+ version: string;
13
+ isLatest: boolean;
14
+ }
15
+
16
+ const DetailSidebarTitle: React.FC<Props> = ({ description, packageName, version, isLatest }) => {
17
+ const { t } = useTranslation();
18
+ return (
19
+ <Box className={'detail-info'} display="flex" flexDirection="column" marginBottom="8px">
20
+ <StyledHeading>{packageName}</StyledHeading>
21
+ {description && <div>{description}</div>}
22
+ <StyledBoxVersion>
23
+ {isLatest
24
+ ? t('sidebar.detail.latest-version', { version })
25
+ : t('sidebar.detail.version', { version })}
26
+ </StyledBoxVersion>
27
+ </Box>
28
+ );
29
+ };
30
+
31
+ export default DetailSidebarTitle;
32
+
33
+ const StyledHeading = styled(Heading)({
34
+ fontSize: '1rem',
35
+ fontWeight: 700,
36
+ });
37
+
38
+ const StyledBoxVersion = styled(Box)<{ theme?: Theme }>(({ theme }) => ({
39
+ color: theme && theme.palette.text.secondary,
40
+ }));
@@ -0,0 +1,117 @@
1
+ import React from 'react';
2
+
3
+ import { render, cleanup, fireEvent } from 'verdaccio-ui/utils/test-react-testing-library';
4
+
5
+ import { DetailContextProvider } from '../../context';
6
+
7
+ import Developers from './Developers';
8
+ import { DeveloperType } from './DevelopersTitle';
9
+
10
+ describe('test Developers', () => {
11
+ afterEach(() => {
12
+ cleanup();
13
+ });
14
+
15
+ const packageMeta = {
16
+ latest: {
17
+ packageName: 'foo',
18
+ version: '1.0.0',
19
+ maintainers: [
20
+ {
21
+ name: 'dmethvin',
22
+ email: 'test@gmail.com',
23
+ },
24
+ {
25
+ name: 'mgol',
26
+ email: 'm.goleb@gmail.com',
27
+ },
28
+ ],
29
+ contributors: [
30
+ {
31
+ name: 'dmethvin',
32
+ email: 'test@gmail.com',
33
+ },
34
+ {
35
+ name: 'mgol',
36
+ email: 'm.goleb@gmail.com',
37
+ },
38
+ ],
39
+ },
40
+ };
41
+
42
+ test('should render the component with no items', () => {
43
+ const packageMeta = {
44
+ latest: {},
45
+ };
46
+ const wrapper = render(
47
+ // @ts-ignore
48
+ <DetailContextProvider value={{ packageMeta }}>
49
+ <Developers type={DeveloperType.MAINTAINERS} />
50
+ </DetailContextProvider>
51
+ );
52
+
53
+ expect(wrapper).toMatchSnapshot();
54
+ });
55
+
56
+ test('should render the component for maintainers with items', () => {
57
+ const wrapper = render(
58
+ // @ts-ignore
59
+ <DetailContextProvider value={{ packageMeta }}>
60
+ <Developers type={DeveloperType.MAINTAINERS} />
61
+ </DetailContextProvider>
62
+ );
63
+
64
+ expect(wrapper).toMatchSnapshot();
65
+ });
66
+
67
+ test('should render the component for contributors with items', () => {
68
+ const wrapper = render(
69
+ // @ts-ignore
70
+ <DetailContextProvider value={{ packageMeta }}>
71
+ <Developers type={DeveloperType.CONTRIBUTORS} />
72
+ </DetailContextProvider>
73
+ );
74
+
75
+ expect(wrapper).toMatchSnapshot();
76
+ });
77
+
78
+ test('should test onClick the component avatar', () => {
79
+ const packageMeta = {
80
+ latest: {
81
+ packageName: 'foo',
82
+ version: '1.0.0',
83
+ contributors: [
84
+ {
85
+ name: 'dmethvin',
86
+ email: 'test@gmail.com',
87
+ },
88
+ {
89
+ name: 'dmethvin2',
90
+ email: 'test2@gmail.com',
91
+ },
92
+ {
93
+ name: 'dmethvin3',
94
+ email: 'test3@gmail.com',
95
+ },
96
+ ],
97
+ },
98
+ };
99
+
100
+ const wrapper = render(
101
+ // @ts-ignore
102
+ <DetailContextProvider value={{ packageMeta }}>
103
+ <Developers type={DeveloperType.CONTRIBUTORS} visibleMax={1} />
104
+ </DetailContextProvider>
105
+ );
106
+
107
+ // const item2 = wrapper.find(Fab);
108
+ // // TODO: I am not sure here how to verify the method inside the component was called.
109
+ // item2.simulate('click');
110
+
111
+ expect(wrapper.getByText('Contributors')).toBeInTheDocument();
112
+ fireEvent.click(wrapper.getByTestId('fab'));
113
+
114
+ expect(wrapper.getByTitle(packageMeta.latest.contributors[0].name)).toBeInTheDocument();
115
+ expect(wrapper.getByTitle(packageMeta.latest.contributors[1].name)).toBeInTheDocument();
116
+ });
117
+ });