@verdaccio/ui-components 2.0.0-6-next.5 → 2.0.0-6-next.7

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 (266) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/build/sections/Footer/Footer.js +7 -5
  3. package/package.json +4 -4
  4. package/src/components/LoginDialog/LoginDialog.test.tsx +1 -1
  5. package/src/components/Search/Search.test.tsx +1 -1
  6. package/src/sections/Footer/Footer.test.tsx +5 -4
  7. package/src/sections/Footer/Footer.tsx +1 -1
  8. package/.storybook/main.js +0 -13
  9. package/.storybook/preview-head.html +0 -10
  10. package/.storybook/preview.js +0 -52
  11. package/build/Theme/ResetStyles.js.map +0 -1
  12. package/build/Theme/StyleBaseline.js.map +0 -1
  13. package/build/Theme/ThemeProvider.js.map +0 -1
  14. package/build/Theme/colors.js.map +0 -1
  15. package/build/Theme/index.js.map +0 -1
  16. package/build/Theme/theme.js.map +0 -1
  17. package/build/__mocks__/react-markdown.js.map +0 -1
  18. package/build/__mocks__/remark-plugin.js.map +0 -1
  19. package/build/components/ActionBar/ActionBar.js.map +0 -1
  20. package/build/components/ActionBar/ActionBarAction.js.map +0 -1
  21. package/build/components/ActionBar/__snapshots__/ActionBar.test.tsx.snap +0 -263
  22. package/build/components/ActionBar/index.js.map +0 -1
  23. package/build/components/Author/Author.js.map +0 -1
  24. package/build/components/Author/__snapshots__/Author.test.tsx.snap +0 -753
  25. package/build/components/Author/index.js.map +0 -1
  26. package/build/components/Author/styles.js.map +0 -1
  27. package/build/components/CopyClipboard/CopyToClipBoard.js.map +0 -1
  28. package/build/components/CopyClipboard/index.js.map +0 -1
  29. package/build/components/CopyClipboard/utils.js.map +0 -1
  30. package/build/components/Dependencies/Dependencies.js.map +0 -1
  31. package/build/components/Dependencies/index.js.map +0 -1
  32. package/build/components/Dependencies/styles.js.map +0 -1
  33. package/build/components/Dependencies/types.js.map +0 -1
  34. package/build/components/Deprecated/Deprecated.js.map +0 -1
  35. package/build/components/Deprecated/index.js.map +0 -1
  36. package/build/components/Developers/Developers.js.map +0 -1
  37. package/build/components/Developers/Title.js.map +0 -1
  38. package/build/components/Developers/__snapshots__/Developers.test.tsx.snap +0 -668
  39. package/build/components/Developers/get-unique-developer-values.js.map +0 -1
  40. package/build/components/Developers/index.js.map +0 -1
  41. package/build/components/Developers/styles.js.map +0 -1
  42. package/build/components/Distribution/Dist.js.map +0 -1
  43. package/build/components/Distribution/__snapshots__/Dist.test.tsx.snap +0 -1436
  44. package/build/components/Distribution/index.js.map +0 -1
  45. package/build/components/Distribution/styles.js.map +0 -1
  46. package/build/components/Distribution/utils.js.map +0 -1
  47. package/build/components/Engines/Engines.js.map +0 -1
  48. package/build/components/Engines/index.js.map +0 -1
  49. package/build/components/Engines/styles.js.map +0 -1
  50. package/build/components/ErrorBoundary/ErrorBoundary.js.map +0 -1
  51. package/build/components/ErrorBoundary/index.js.map +0 -1
  52. package/build/components/FundButton/FundButton.js.map +0 -1
  53. package/build/components/FundButton/index.js.map +0 -1
  54. package/build/components/HeaderInfoDialog/HeaderInfoDialog.js.map +0 -1
  55. package/build/components/HeaderInfoDialog/index.js.map +0 -1
  56. package/build/components/Heading/Heading.js.map +0 -1
  57. package/build/components/Heading/index.js.map +0 -1
  58. package/build/components/Help/Help.js.map +0 -1
  59. package/build/components/Help/__snapshots__/Help.test.tsx.snap +0 -395
  60. package/build/components/Help/index.js.map +0 -1
  61. package/build/components/Help/styles.js.map +0 -1
  62. package/build/components/Icons/DevsIcons/CommonJS.js.map +0 -1
  63. package/build/components/Icons/DevsIcons/ES6Module.js.map +0 -1
  64. package/build/components/Icons/DevsIcons/Git.js.map +0 -1
  65. package/build/components/Icons/DevsIcons/NodeJS.js.map +0 -1
  66. package/build/components/Icons/DevsIcons/TypeScript.js.map +0 -1
  67. package/build/components/Icons/DevsIcons/index.js.map +0 -1
  68. package/build/components/Icons/Earth.js.map +0 -1
  69. package/build/components/Icons/FileBinary.js.map +0 -1
  70. package/build/components/Icons/Law.js.map +0 -1
  71. package/build/components/Icons/Managers/Npm.js.map +0 -1
  72. package/build/components/Icons/Managers/Pnpm.js.map +0 -1
  73. package/build/components/Icons/Managers/Yarn.js.map +0 -1
  74. package/build/components/Icons/Managers/index.js.map +0 -1
  75. package/build/components/Icons/SvgIcon.js.map +0 -1
  76. package/build/components/Icons/Time.js.map +0 -1
  77. package/build/components/Icons/Version.js.map +0 -1
  78. package/build/components/Icons/index.js.map +0 -1
  79. package/build/components/Install/Install.js.map +0 -1
  80. package/build/components/Install/InstallListItem.js.map +0 -1
  81. package/build/components/Install/index.js.map +0 -1
  82. package/build/components/Label/Label.js.map +0 -1
  83. package/build/components/Label/__snapshots__/Label.test.tsx.snap +0 -14
  84. package/build/components/Label/index.js.map +0 -1
  85. package/build/components/Link/Link.js.map +0 -1
  86. package/build/components/Link/index.js.map +0 -1
  87. package/build/components/Loading/Loading.js.map +0 -1
  88. package/build/components/Loading/Spinner/Spinner.js.map +0 -1
  89. package/build/components/Loading/Spinner/__snapshots__/Spinner.test.tsx.snap +0 -246
  90. package/build/components/Loading/Spinner/index.js.map +0 -1
  91. package/build/components/Loading/__snapshots__/Loading.test.tsx.snap +0 -138
  92. package/build/components/Loading/index.js.map +0 -1
  93. package/build/components/Loading/styles.js.map +0 -1
  94. package/build/components/LoginDialog/LoginDialog.js.map +0 -1
  95. package/build/components/LoginDialog/LoginDialogCloseButton.js.map +0 -1
  96. package/build/components/LoginDialog/LoginDialogForm.js.map +0 -1
  97. package/build/components/LoginDialog/LoginDialogFormError.js.map +0 -1
  98. package/build/components/LoginDialog/LoginDialogHeader.js.map +0 -1
  99. package/build/components/LoginDialog/__snapshots__/LoginDialog.test.tsx.snap +0 -3
  100. package/build/components/LoginDialog/index.js.map +0 -1
  101. package/build/components/Logo/Logo.js.map +0 -1
  102. package/build/components/Logo/__snapshots__/Logo.test.tsx.snap +0 -21
  103. package/build/components/Logo/index.js.map +0 -1
  104. package/build/components/MenuItem/MenuItem.js.map +0 -1
  105. package/build/components/MenuItem/index.js.map +0 -1
  106. package/build/components/NoItems/NoItems.js.map +0 -1
  107. package/build/components/NoItems/__snapshots__/Noitems.test.tsx.snap +0 -18
  108. package/build/components/NoItems/index.js.map +0 -1
  109. package/build/components/NotFound/NotFound.js.map +0 -1
  110. package/build/components/NotFound/__snapshots__/Notfound.test.tsx.snap +0 -171
  111. package/build/components/NotFound/index.js.map +0 -1
  112. package/build/components/Package/Package.js.map +0 -1
  113. package/build/components/Package/Tag/Tag.js.map +0 -1
  114. package/build/components/Package/Tag/__snapshots__/Tag.test.tsx.snap +0 -21
  115. package/build/components/Package/Tag/index.js.map +0 -1
  116. package/build/components/Package/Tag/styles.js.map +0 -1
  117. package/build/components/Package/index.js.map +0 -1
  118. package/build/components/Package/styles.js.map +0 -1
  119. package/build/components/PackageList/PackageList.js.map +0 -1
  120. package/build/components/PackageList/index.js.map +0 -1
  121. package/build/components/RawViewer/RawViewer.js.map +0 -1
  122. package/build/components/RawViewer/index.js.map +0 -1
  123. package/build/components/Readme/__snapshots__/Readme.spec.tsx.snap +0 -110
  124. package/build/components/Readme/index.js.map +0 -1
  125. package/build/components/Readme/types.js.map +0 -1
  126. package/build/components/Readme/utils.js.map +0 -1
  127. package/build/components/RegistryInfoDialog/RegistryInfoDialog.js.map +0 -1
  128. package/build/components/RegistryInfoDialog/index.js.map +0 -1
  129. package/build/components/RegistryInfoDialog/styles.js.map +0 -1
  130. package/build/components/RegistryInfoDialog/types.js.map +0 -1
  131. package/build/components/Repository/Repository.js.map +0 -1
  132. package/build/components/Repository/__snapshots__/Repository.test.tsx.snap +0 -3
  133. package/build/components/Repository/index.js.map +0 -1
  134. package/build/components/Search/AutoComplete/AutoComplete.js.map +0 -1
  135. package/build/components/Search/AutoComplete/index.js.map +0 -1
  136. package/build/components/Search/AutoComplete/styles.js.map +0 -1
  137. package/build/components/Search/Search.js.map +0 -1
  138. package/build/components/Search/SearchItem.js.map +0 -1
  139. package/build/components/Search/__snapshots__/Search.test.tsx.snap +0 -473
  140. package/build/components/Search/index.js.map +0 -1
  141. package/build/components/Search/styles.js.map +0 -1
  142. package/build/components/SideBarTittle/SideBarTittle.js.map +0 -1
  143. package/build/components/SideBarTittle/index.js.map +0 -1
  144. package/build/components/SideBarTittle/utils.js.map +0 -1
  145. package/build/components/TextField/TextField.js.map +0 -1
  146. package/build/components/TextField/__snapshots__/TextField.test.tsx.snap +0 -236
  147. package/build/components/TextField/index.js.map +0 -1
  148. package/build/components/UpLinks/UpLinks.js.map +0 -1
  149. package/build/components/UpLinks/__snapshots__/UpLinks.test.tsx.snap +0 -407
  150. package/build/components/UpLinks/index.js.map +0 -1
  151. package/build/components/UpLinks/styles.js.map +0 -1
  152. package/build/components/Versions/HistoryList.js.map +0 -1
  153. package/build/components/Versions/TagList.js.map +0 -1
  154. package/build/components/Versions/Versions.js.map +0 -1
  155. package/build/components/Versions/index.js.map +0 -1
  156. package/build/components/Versions/styles.js.map +0 -1
  157. package/build/components/Versions/types.js.map +0 -1
  158. package/build/hooks/index.js.map +0 -1
  159. package/build/hooks/useLocalStorage.js.map +0 -1
  160. package/build/hooks/useOnClickOutside.js.map +0 -1
  161. package/build/index.js.map +0 -1
  162. package/build/jest/server-handlers.d.ts +0 -1
  163. package/build/jest/server.d.ts +0 -2
  164. package/build/layouts/Version/Version.js.map +0 -1
  165. package/build/layouts/Version/index.js.map +0 -1
  166. package/build/providers/AppConfigurationProvider/AppConfigurationProvider.js.map +0 -1
  167. package/build/providers/AppConfigurationProvider/index.js.map +0 -1
  168. package/build/providers/TranslatorProvider/TranslatorProvider.js.map +0 -1
  169. package/build/providers/TranslatorProvider/index.js.map +0 -1
  170. package/build/providers/VersionProvider/VersionProvider.js.map +0 -1
  171. package/build/providers/VersionProvider/index.js.map +0 -1
  172. package/build/providers/index.js.map +0 -1
  173. package/build/sections/Detail/ContainerContent.js.map +0 -1
  174. package/build/sections/Detail/Detail.js.map +0 -1
  175. package/build/sections/Detail/ReadmeSection.js.map +0 -1
  176. package/build/sections/Detail/Tabs.js.map +0 -1
  177. package/build/sections/Detail/__snapshots__/Detail.test.tsx.snap +0 -237
  178. package/build/sections/Detail/index.js.map +0 -1
  179. package/build/sections/Footer/Footer.js.map +0 -1
  180. package/build/sections/Footer/__snapshots__/Footer.test.tsx.snap +0 -486
  181. package/build/sections/Footer/index.js.map +0 -1
  182. package/build/sections/Footer/styles.js.map +0 -1
  183. package/build/sections/Header/Header.js.map +0 -1
  184. package/build/sections/Header/HeaderGreetings.js.map +0 -1
  185. package/build/sections/Header/HeaderLeft.js.map +0 -1
  186. package/build/sections/Header/HeaderMenu.js.map +0 -1
  187. package/build/sections/Header/HeaderRight.js.map +0 -1
  188. package/build/sections/Header/HeaderSettingsDialog.js.map +0 -1
  189. package/build/sections/Header/HeaderToolTip.js.map +0 -1
  190. package/build/sections/Header/HeaderToolTipIcon.js.map +0 -1
  191. package/build/sections/Header/LanguageSwitch.js.map +0 -1
  192. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.js.map +0 -1
  193. package/build/sections/Header/RegistryInfoContent/index.js.map +0 -1
  194. package/build/sections/Header/RegistryInfoContent/styles.js.map +0 -1
  195. package/build/sections/Header/RegistryInfoDialog/RegistryInfoDialog.js.map +0 -1
  196. package/build/sections/Header/RegistryInfoDialog/index.js.map +0 -1
  197. package/build/sections/Header/RegistryInfoDialog/styles.js.map +0 -1
  198. package/build/sections/Header/RegistryInfoDialog/types.js.map +0 -1
  199. package/build/sections/Header/index.js.map +0 -1
  200. package/build/sections/Header/styles.js.map +0 -1
  201. package/build/sections/Home/Home.js.map +0 -1
  202. package/build/sections/Home/index.js.map +0 -1
  203. package/build/sections/SideBar/Sidebar.js.map +0 -1
  204. package/build/sections/SideBar/index.js.map +0 -1
  205. package/build/sections/index.js.map +0 -1
  206. package/build/store/api.js.map +0 -1
  207. package/build/store/index.js.map +0 -1
  208. package/build/store/models/configuration.js.map +0 -1
  209. package/build/store/models/download.js.map +0 -1
  210. package/build/store/models/index.js.map +0 -1
  211. package/build/store/models/login.js.map +0 -1
  212. package/build/store/models/manifest.js.map +0 -1
  213. package/build/store/models/packages.js.map +0 -1
  214. package/build/store/models/search.js.map +0 -1
  215. package/build/store/storage.js.map +0 -1
  216. package/build/store/store.js.map +0 -1
  217. package/build/test/i18n-config.js.map +0 -1
  218. package/build/test/test-react-testing-library.js.map +0 -1
  219. package/build/types/index.js.map +0 -1
  220. package/build/types/packageMeta.js.map +0 -1
  221. package/build/utils/__partials__/packageMeta.js.map +0 -1
  222. package/build/utils/cli-utils.js.map +0 -1
  223. package/build/utils/index.js.map +0 -1
  224. package/build/utils/loadable.js.map +0 -1
  225. package/build/utils/routes.js.map +0 -1
  226. package/build/utils/url.js.map +0 -1
  227. package/build/utils/utils.js.map +0 -1
  228. package/jest/api/home-packages.json +0 -40
  229. package/jest/api/jquery-readme.js +0 -3
  230. package/jest/api/jquery-sidebar.json +0 -5908
  231. package/jest/api/search-verdaccio.json +0 -1192
  232. package/jest/api/storybook-readme.txt +0 -2
  233. package/jest/api/storybook-sidebar.json +0 -53782
  234. package/jest/api/storybook-v.json +0 -53782
  235. package/jest/identity.js +0 -29
  236. package/jest/jest.config.js +0 -38
  237. package/jest/jestEnvironment.js +0 -1
  238. package/jest/server-handlers.ts +0 -57
  239. package/jest/server.ts +0 -6
  240. package/jest/setup-env.ts +0 -15
  241. package/jest/setup.ts +0 -31
  242. package/jest/unit/empty-string.ts +0 -1
  243. package/jest/unit/empty.ts +0 -1
  244. package/msw/browser.js +0 -5
  245. package/public/dark-logo.png +0 -0
  246. package/public/mockServiceWorker.js +0 -302
  247. package/src/components/ActionBar/__snapshots__/ActionBar.test.tsx.snap +0 -263
  248. package/src/components/Author/__snapshots__/Author.test.tsx.snap +0 -753
  249. package/src/components/Developers/__snapshots__/Developers.test.tsx.snap +0 -668
  250. package/src/components/Distribution/__snapshots__/Dist.test.tsx.snap +0 -1436
  251. package/src/components/Help/__snapshots__/Help.test.tsx.snap +0 -395
  252. package/src/components/Label/__snapshots__/Label.test.tsx.snap +0 -14
  253. package/src/components/Loading/Spinner/__snapshots__/Spinner.test.tsx.snap +0 -246
  254. package/src/components/Loading/__snapshots__/Loading.test.tsx.snap +0 -138
  255. package/src/components/LoginDialog/__snapshots__/LoginDialog.test.tsx.snap +0 -3
  256. package/src/components/Logo/__snapshots__/Logo.test.tsx.snap +0 -21
  257. package/src/components/NoItems/__snapshots__/Noitems.test.tsx.snap +0 -18
  258. package/src/components/NotFound/__snapshots__/Notfound.test.tsx.snap +0 -171
  259. package/src/components/Package/Tag/__snapshots__/Tag.test.tsx.snap +0 -21
  260. package/src/components/Readme/__snapshots__/Readme.spec.tsx.snap +0 -110
  261. package/src/components/Repository/__snapshots__/Repository.test.tsx.snap +0 -3
  262. package/src/components/Search/__snapshots__/Search.test.tsx.snap +0 -473
  263. package/src/components/TextField/__snapshots__/TextField.test.tsx.snap +0 -236
  264. package/src/components/UpLinks/__snapshots__/UpLinks.test.tsx.snap +0 -407
  265. package/src/sections/Detail/__snapshots__/Detail.test.tsx.snap +0 -237
  266. package/src/sections/Footer/__snapshots__/Footer.test.tsx.snap +0 -486
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/components/Versions/types.ts"],"sourcesContent":["import { PackageMetaInterface } from '../../types/packageMeta';\n\nexport interface DetailContextProps {\n enableLoading: () => void;\n hasNotBeenFound: boolean;\n isLoading: boolean;\n packageMeta: PackageMetaInterface;\n packageName: string;\n packageVersion?: string;\n readMe: string;\n}\n\nexport interface VersionPageConsumerProps {\n enableLoading: () => void;\n packageMeta: PackageMetaInterface;\n packageName: string;\n packageVersion?: string;\n readMe: string;\n}\n"],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/hooks/index.ts"],"sourcesContent":["export { default as useLocalStorage } from './useLocalStorage';\nexport { default as useOnClickOutside } from './useOnClickOutside';\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AAAmE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useLocalStorage.js","names":["useLocalStorage","key","initialValue","useState","item","window","localStorage","getItem","JSON","parse","error","console","storedValue","setStoredValue","setValue","value","valueToStore","Function","setItem","stringify"],"sources":["../../src/hooks/useLocalStorage.ts"],"sourcesContent":["import { useState } from 'react';\n\n/**\n* \n* @example\n ```jsx\n const [isDarkModeStorage, setIsDarkMode] = useLocalStorage('darkMode', isDarkModeDefault);\n ```\n\n based on https://usehooks.com/useLocalStorage/\n @category Hooks\n */\nconst useLocalStorage = <V>(key: string, initialValue: V) => {\n // State to store our value\n // Pass initial state function to useState so logic is only executed once\n const [storedValue, setStoredValue] = useState(() => {\n try {\n // Get from local storage by key\n const item = window.localStorage.getItem(key);\n // Parse stored json or if none return initialValue\n return item ? JSON.parse(item) : initialValue;\n } catch (error: any) {\n // If error also return initialValue\n // eslint-disable-next-line no-console\n console.error('An error occurred getting a sessionStorage key', error);\n return initialValue;\n }\n });\n\n // Return a wrapped version of useState's setter function that ...\n // ... persists the new value to localStorage.\n const setValue = (value: V) => {\n try {\n // Allow value to be a function so we have same API as useState\n const valueToStore = value instanceof Function ? value(storedValue) : value;\n // Save state\n setStoredValue(valueToStore);\n // Save to local storage\n window.localStorage.setItem(key, JSON.stringify(valueToStore));\n } catch (error: any) {\n // eslint-disable-next-line no-console\n console.error('An error occurred writing to sessionStorage', error);\n }\n };\n\n return [storedValue, setValue];\n};\n\nexport default useLocalStorage;\n"],"mappings":";;;;;;AAAA;AAAiC;AAAA;AAAA;AAAA;AAAA;AAAA;AAEjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMA,eAAe,GAAG,SAAlBA,eAAe,CAAOC,GAAW,EAAEC,YAAe,EAAK;EAC3D;EACA;EACA,gBAAsC,IAAAC,eAAQ,EAAC,YAAM;MACnD,IAAI;QACF;QACA,IAAMC,IAAI,GAAGC,MAAM,CAACC,YAAY,CAACC,OAAO,CAACN,GAAG,CAAC;QAC7C;QACA,OAAOG,IAAI,GAAGI,IAAI,CAACC,KAAK,CAACL,IAAI,CAAC,GAAGF,YAAY;MAC/C,CAAC,CAAC,OAAOQ,KAAU,EAAE;QACnB;QACA;QACAC,OAAO,CAACD,KAAK,CAAC,gDAAgD,EAAEA,KAAK,CAAC;QACtE,OAAOR,YAAY;MACrB;IACF,CAAC,CAAC;IAAA;IAZKU,WAAW;IAAEC,cAAc;;EAclC;EACA;EACA,IAAMC,QAAQ,GAAG,SAAXA,QAAQ,CAAIC,KAAQ,EAAK;IAC7B,IAAI;MACF;MACA,IAAMC,YAAY,GAAGD,KAAK,YAAYE,QAAQ,GAAGF,KAAK,CAACH,WAAW,CAAC,GAAGG,KAAK;MAC3E;MACAF,cAAc,CAACG,YAAY,CAAC;MAC5B;MACAX,MAAM,CAACC,YAAY,CAACY,OAAO,CAACjB,GAAG,EAAEO,IAAI,CAACW,SAAS,CAACH,YAAY,CAAC,CAAC;IAChE,CAAC,CAAC,OAAON,KAAU,EAAE;MACnB;MACAC,OAAO,CAACD,KAAK,CAAC,6CAA6C,EAAEA,KAAK,CAAC;IACrE;EACF,CAAC;EAED,OAAO,CAACE,WAAW,EAAEE,QAAQ,CAAC;AAChC,CAAC;AAAC,eAEad,eAAe;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useOnClickOutside.js","names":["useOnClickOutside","ref","handler","useEffect","listener","event","current","contains","target","document","addEventListener","removeEventListener"],"sources":["../../src/hooks/useOnClickOutside.ts"],"sourcesContent":["import React, { useEffect } from 'react';\n\n/**\n* \n* @example\n based on https://usehooks.com/useOnClickOutside/\n @category Hooks\n */\nfunction useOnClickOutside<R extends HTMLElementTagNameMap[keyof HTMLElementTagNameMap]>(\n ref: React.RefObject<R>,\n handler: (event: MouseEvent | TouchEvent) => void\n) {\n useEffect(() => {\n const listener = (event: MouseEvent | TouchEvent) => {\n // Do nothing if clicking ref's element or descendent elements\n if (!ref.current || ref.current.contains(event.target as HTMLElement)) {\n return;\n }\n\n handler(event);\n };\n\n document.addEventListener('mousedown', listener);\n document.addEventListener('touchstart', listener);\n\n return () => {\n document.removeEventListener('mousedown', listener);\n document.removeEventListener('touchstart', listener);\n };\n }, [ref, handler]);\n}\n\nexport default useOnClickOutside;\n"],"mappings":";;;;;;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,iBAAiB,CACxBC,GAAuB,EACvBC,OAAiD,EACjD;EACA,IAAAC,gBAAS,EAAC,YAAM;IACd,IAAMC,QAAQ,GAAG,SAAXA,QAAQ,CAAIC,KAA8B,EAAK;MACnD;MACA,IAAI,CAACJ,GAAG,CAACK,OAAO,IAAIL,GAAG,CAACK,OAAO,CAACC,QAAQ,CAACF,KAAK,CAACG,MAAM,CAAgB,EAAE;QACrE;MACF;MAEAN,OAAO,CAACG,KAAK,CAAC;IAChB,CAAC;IAEDI,QAAQ,CAACC,gBAAgB,CAAC,WAAW,EAAEN,QAAQ,CAAC;IAChDK,QAAQ,CAACC,gBAAgB,CAAC,YAAY,EAAEN,QAAQ,CAAC;IAEjD,OAAO,YAAM;MACXK,QAAQ,CAACE,mBAAmB,CAAC,WAAW,EAAEP,QAAQ,CAAC;MACnDK,QAAQ,CAACE,mBAAmB,CAAC,YAAY,EAAEP,QAAQ,CAAC;IACtD,CAAC;EACH,CAAC,EAAE,CAACH,GAAG,EAAEC,OAAO,CAAC,CAAC;AACpB;AAAC,eAEcF,iBAAiB;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["export { default as CopyClipboard, copyToClipBoardUtility } from './components/CopyClipboard';\nexport * from './components/CopyClipboard';\nexport { Link } from './components/Link';\nexport { default as ActionBar } from './components/ActionBar';\nexport { default as Author } from './components/Author';\nexport { default as Dependencies } from './components/Dependencies';\nexport { default as Deprecated } from './components/Deprecated';\nexport { default as Developers } from './components/Developers';\nexport { default as Distribution } from './components/Distribution';\nexport { default as Engines } from './components/Engines';\nexport { default as FundButton } from './components/FundButton';\nexport { default as Heading } from './components/Heading';\nexport * as Icons from './components/Icons';\nexport { default as Install } from './components/Install';\nexport { default as RawViewer } from './components/RawViewer';\nexport { default as Readme } from './components/Readme';\nexport { default as SideBarTitle } from './components/SideBarTittle';\nexport { default as UpLinks } from './components/UpLinks';\nexport { default as Versions } from './components/Versions';\nexport { default as TextField } from './components/TextField';\nexport { default as Label } from './components/Label';\nexport { default as Logo } from './components/Logo';\nexport { default as MenuItem } from './components/MenuItem';\nexport { default as NotFound } from './components/NotFound';\nexport { default as LoginDialog } from './components/LoginDialog';\nexport { default as Search } from './components/Search';\nexport { default as HeaderInfoDialog } from './components/HeaderInfoDialog';\nexport { default as Loading } from './components/Loading';\nexport { default as Package } from './components/Package';\nexport { default as Help } from './components/Help';\nexport { default as PackageList } from './components/PackageList';\nexport { default as ErrorBoundary } from './components/ErrorBoundary';\n// sections\nexport { default as SideBar } from './sections/SideBar';\nexport { default as Detail } from './sections/Detail';\nexport { default as Header } from './sections/Header';\nexport { default as Home } from './sections/Home';\nexport { default as Footer } from './sections/Footer';\n\n// layout\nexport { VersionLayout } from './layouts/Version';\n\n// providers\nexport { default as AppConfigurationProvider } from './providers/AppConfigurationProvider';\nexport * from './providers/AppConfigurationProvider';\nexport { TranslatorProvider, useLanguage, LanguageItem } from './providers/TranslatorProvider';\nexport * from './providers/TranslatorProvider';\nexport { VersionProvider } from './providers/VersionProvider';\nexport * from './providers/VersionProvider';\n\n// utils\nexport * from './utils';\nexport { loadable, Route } from './utils';\n// hooks\nexport * from './hooks';\n// others\nexport * from './Theme';\nexport { store, api, RootState, Dispatch, LoginError, LoginBody, LoginResponse } from './store';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAA0D;AAAA;AAE1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAGA;AAGA;AACA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AACA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AACA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAGA;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAGA;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAEA;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAgG;AAAA;AAAA"}
@@ -1 +0,0 @@
1
- export declare const handlers: import("msw").RestHandler<import("msw/lib/SetupApi-b2f0e5ac").M<import("msw/lib/SetupApi-b2f0e5ac").c>>[];
@@ -1,2 +0,0 @@
1
- declare const server: import("msw/lib/SetupServerApi-70cc71a7").S;
2
- export { server };
@@ -1 +0,0 @@
1
- {"version":3,"file":"Version.js","names":["VersionLayout"],"sources":["../../../src/layouts/Version/Version.tsx"],"sourcesContent":["import Grid from '@mui/material/Grid';\nimport React from 'react';\n\nimport { Detail, SideBar } from '../../sections';\n\nconst VersionLayout: React.FC = () => {\n return (\n <Grid className={'container content'} container={true} data-testid=\"version-layout\" spacing={0}>\n <Grid item={true} md={8} xs={12}>\n <Detail />\n </Grid>\n <Grid item={true} md={4} xs={12}>\n <SideBar />\n </Grid>\n </Grid>\n );\n};\n\nexport default VersionLayout;\n"],"mappings":";;;;;;AAAA;AACA;AAEA;AAAiD;AAEjD,IAAMA,aAAuB,GAAG,SAA1BA,aAAuB,GAAS;EACpC,oBACE,gCAAC,gBAAI;IAAC,SAAS,EAAE,mBAAoB;IAAC,SAAS,EAAE,IAAK;IAAC,eAAY,gBAAgB;IAAC,OAAO,EAAE;EAAE,gBAC7F,gCAAC,gBAAI;IAAC,IAAI,EAAE,IAAK;IAAC,EAAE,EAAE,CAAE;IAAC,EAAE,EAAE;EAAG,gBAC9B,gCAAC,gBAAM,OAAG,CACL,eACP,gCAAC,gBAAI;IAAC,IAAI,EAAE,IAAK;IAAC,EAAE,EAAE,CAAE;IAAC,EAAE,EAAE;EAAG,gBAC9B,gCAAC,iBAAO,OAAG,CACN,CACF;AAEX,CAAC;AAAC,eAEaA,aAAa;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/layouts/Version/index.ts"],"sourcesContent":["export { default as VersionLayout } from './Version';\n"],"mappings":";;;;;;;;;;;AAAA;AAAqD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"AppConfigurationProvider.js","names":["defaultValues","configOptions","primaryColor","PRIMARY_COLOR","pkgManagers","scope","base","flags","login","url_prefix","showInfo","showSettings","showThemeSwitch","showFooter","showSearch","showRaw","showDownloadTarball","title","getConfiguration","uiConfiguration","merge","window","__VERDACCIO_BASENAME_UI_OPTIONS","isNil","isEmpty","AppConfigurationContext","createContext","AppConfigurationProvider","children","useState","value","useMemo","useConfig","useContext"],"sources":["../../../src/providers/AppConfigurationProvider/AppConfigurationProvider.tsx"],"sourcesContent":["import isEmpty from 'lodash/isEmpty';\nimport isNil from 'lodash/isNil';\nimport merge from 'lodash/merge';\nimport React, { FunctionComponent, createContext, useContext, useMemo, useState } from 'react';\n\nimport { TemplateUIOptions } from '@verdaccio/types';\n\nimport { PRIMARY_COLOR } from '../../Theme/colors';\n\ntype ConfigProviderProps = {\n configOptions: TemplateUIOptions;\n};\n\nconst defaultValues: ConfigProviderProps = {\n configOptions: {\n // note: dark mode set as undefined by design\n primaryColor: PRIMARY_COLOR,\n pkgManagers: ['yarn', 'pnpm', 'npm'],\n scope: '',\n base: '',\n flags: {},\n login: true,\n url_prefix: '',\n showInfo: true,\n showSettings: true,\n showThemeSwitch: true,\n showFooter: true,\n showSearch: true,\n showRaw: true,\n showDownloadTarball: true,\n title: 'Verdaccio',\n },\n};\n\nfunction getConfiguration() {\n const uiConfiguration = merge(\n defaultValues.configOptions,\n window?.__VERDACCIO_BASENAME_UI_OPTIONS\n );\n\n if (window?.__VERDACCIO_BASENAME_UI_OPTIONS.pkgManagers) {\n uiConfiguration.pkgManagers = window?.__VERDACCIO_BASENAME_UI_OPTIONS.pkgManagers;\n }\n\n if (isNil(uiConfiguration.primaryColor) || isEmpty(uiConfiguration.primaryColor)) {\n uiConfiguration.primaryColor = PRIMARY_COLOR;\n }\n\n return uiConfiguration;\n}\n\nconst AppConfigurationContext = createContext<ConfigProviderProps>(defaultValues);\n\nconst AppConfigurationProvider: FunctionComponent<{ children: React.ReactElement<any> }> = ({\n children,\n}) => {\n // Read only\n const [configOptions] = useState<TemplateUIOptions>(getConfiguration());\n\n const value = useMemo(\n () => ({\n configOptions,\n }),\n [configOptions]\n );\n\n return (\n <AppConfigurationContext.Provider value={value}>{children}</AppConfigurationContext.Provider>\n );\n};\n\nexport default AppConfigurationProvider;\n\nexport const useConfig = () => useContext(AppConfigurationContext);\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AAIA;AAAmD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMnD,IAAMA,aAAkC,GAAG;EACzCC,aAAa,EAAE;IACb;IACAC,YAAY,EAAEC,qBAAa;IAC3BC,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IACpCC,KAAK,EAAE,EAAE;IACTC,IAAI,EAAE,EAAE;IACRC,KAAK,EAAE,CAAC,CAAC;IACTC,KAAK,EAAE,IAAI;IACXC,UAAU,EAAE,EAAE;IACdC,QAAQ,EAAE,IAAI;IACdC,YAAY,EAAE,IAAI;IAClBC,eAAe,EAAE,IAAI;IACrBC,UAAU,EAAE,IAAI;IAChBC,UAAU,EAAE,IAAI;IAChBC,OAAO,EAAE,IAAI;IACbC,mBAAmB,EAAE,IAAI;IACzBC,KAAK,EAAE;EACT;AACF,CAAC;AAED,SAASC,gBAAgB,GAAG;EAAA;EAC1B,IAAMC,eAAe,GAAG,IAAAC,iBAAK,EAC3BpB,aAAa,CAACC,aAAa,aAC3BoB,MAAM,4CAAN,QAAQC,+BAA+B,CACxC;EAED,gBAAID,MAAM,qCAAN,SAAQC,+BAA+B,CAAClB,WAAW,EAAE;IAAA;IACvDe,eAAe,CAACf,WAAW,eAAGiB,MAAM,6CAAN,SAAQC,+BAA+B,CAAClB,WAAW;EACnF;EAEA,IAAI,IAAAmB,iBAAK,EAACJ,eAAe,CAACjB,YAAY,CAAC,IAAI,IAAAsB,mBAAO,EAACL,eAAe,CAACjB,YAAY,CAAC,EAAE;IAChFiB,eAAe,CAACjB,YAAY,GAAGC,qBAAa;EAC9C;EAEA,OAAOgB,eAAe;AACxB;AAEA,IAAMM,uBAAuB,gBAAG,IAAAC,oBAAa,EAAsB1B,aAAa,CAAC;AAEjF,IAAM2B,wBAAkF,GAAG,SAArFA,wBAAkF,OAElF;EAAA,IADJC,QAAQ,QAARA,QAAQ;EAER;EACA,gBAAwB,IAAAC,eAAQ,EAAoBX,gBAAgB,EAAE,CAAC;IAAA;IAAhEjB,aAAa;EAEpB,IAAM6B,KAAK,GAAG,IAAAC,cAAO,EACnB;IAAA,OAAO;MACL9B,aAAa,EAAbA;IACF,CAAC;EAAA,CAAC,EACF,CAACA,aAAa,CAAC,CAChB;EAED,oBACE,gCAAC,uBAAuB,CAAC,QAAQ;IAAC,KAAK,EAAE6B;EAAM,GAAEF,QAAQ,CAAoC;AAEjG,CAAC;AAAC,eAEaD,wBAAwB;AAAA;AAEhC,IAAMK,SAAS,GAAG,SAAZA,SAAS;EAAA,OAAS,IAAAC,iBAAU,EAACR,uBAAuB,CAAC;AAAA;AAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/providers/AppConfigurationProvider/index.ts"],"sourcesContent":["export { default, useConfig } from './AppConfigurationProvider';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAgE;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"TranslatorProvider.js","names":["I18nTranslatorContext","createContext","setLanguage","_lng","language","listLanguages","TranslatorProvider","children","onMount","i18n","currentLanguage","languages","useLocalStorage","changeLanguage","useCallback","useEffect","useLanguage","useContext"],"sources":["../../../src/providers/TranslatorProvider/TranslatorProvider.tsx"],"sourcesContent":["import React, { FunctionComponent, createContext, useCallback, useContext, useEffect } from 'react';\nimport { I18nextProvider } from 'react-i18next';\n\nimport useLocalStorage from '../../hooks/useLocalStorage';\n\nexport type TranslatorProviderProps = {\n setLanguage: (lng: string) => void;\n language: string;\n listLanguages: LanguageItem[];\n};\n\nexport type LanguageItem = { lng: string; icon: any; menuKey: string };\n\nconst I18nTranslatorContext = createContext<TranslatorProviderProps>({\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setLanguage: (_lng: string) => {},\n language: 'en-US',\n listLanguages: [],\n});\n\n/**\n * Translator provider\n * @category Provider\n */\nconst TranslatorProvider: FunctionComponent<{\n children: React.ReactElement<any>;\n i18n: any;\n listLanguages: any;\n onMount: () => {};\n}> = ({ children, onMount, i18n, listLanguages }) => {\n const currentLanguage = i18n.languages?.[0];\n const [language, setLanguage] = useLocalStorage<string>('language', currentLanguage);\n const changeLanguage = useCallback(async () => {\n await i18n.changeLanguage(language);\n }, [i18n, language]);\n\n useEffect(() => {\n changeLanguage();\n onMount();\n }, [language, onMount, changeLanguage]);\n\n return (\n <I18nextProvider i18n={i18n}>\n <I18nTranslatorContext.Provider value={{ setLanguage, language, listLanguages }}>\n {children}\n </I18nTranslatorContext.Provider>\n </I18nextProvider>\n );\n};\n\nexport default TranslatorProvider;\n\nexport const useLanguage = () => useContext(I18nTranslatorContext);\n"],"mappings":";;;;;;;AAAA;AACA;AAEA;AAA0D;AAAA;AAAA;AAAA,+CAF1D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA,IAAMA,qBAAqB,gBAAG,IAAAC,oBAAa,EAA0B;EACnE;EACAC,WAAW,EAAE,qBAACC,IAAY,EAAK,CAAC,CAAC;EACjCC,QAAQ,EAAE,OAAO;EACjBC,aAAa,EAAE;AACjB,CAAC,CAAC;;AAEF;AACA;AACA;AACA;AACA,IAAMC,kBAKJ,GAAG,SALCA,kBAKJ,OAAmD;EAAA;EAAA,IAA7CC,QAAQ,QAARA,QAAQ;IAAEC,OAAO,QAAPA,OAAO;IAAEC,IAAI,QAAJA,IAAI;IAAEJ,aAAa,QAAbA,aAAa;EAC5C,IAAMK,eAAe,sBAAGD,IAAI,CAACE,SAAS,oDAAd,gBAAiB,CAAC,CAAC;EAC3C,uBAAgC,IAAAC,4BAAe,EAAS,UAAU,EAAEF,eAAe,CAAC;IAAA;IAA7EN,QAAQ;IAAEF,WAAW;EAC5B,IAAMW,cAAc,GAAG,IAAAC,kBAAW,2EAAC;IAAA;MAAA;QAAA;UAAA;YAAA;YAAA,OAC3BL,IAAI,CAACI,cAAc,CAACT,QAAQ,CAAC;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CACpC,IAAE,CAACK,IAAI,EAAEL,QAAQ,CAAC,CAAC;EAEpB,IAAAW,gBAAS,EAAC,YAAM;IACdF,cAAc,EAAE;IAChBL,OAAO,EAAE;EACX,CAAC,EAAE,CAACJ,QAAQ,EAAEI,OAAO,EAAEK,cAAc,CAAC,CAAC;EAEvC,oBACE,gCAAC,6BAAe;IAAC,IAAI,EAAEJ;EAAK,gBAC1B,gCAAC,qBAAqB,CAAC,QAAQ;IAAC,KAAK,EAAE;MAAEP,WAAW,EAAXA,WAAW;MAAEE,QAAQ,EAARA,QAAQ;MAAEC,aAAa,EAAbA;IAAc;EAAE,GAC7EE,QAAQ,CACsB,CACjB;AAEtB,CAAC;AAAC,eAEaD,kBAAkB;AAAA;AAE1B,IAAMU,WAAW,GAAG,SAAdA,WAAW;EAAA,OAAS,IAAAC,iBAAU,EAACjB,qBAAqB,CAAC;AAAA;AAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/providers/TranslatorProvider/index.ts"],"sourcesContent":["export { default as TranslatorProvider, useLanguage, LanguageItem } from './TranslatorProvider';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAgG;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"VersionProvider.js","names":["getRouterPackageName","packageName","scope","DetailContext","createContext","VersionProvider","children","useParams","packageVersion","version","pkgName","useSelector","state","manifest","readme","hasNotBeenFound","isLoading","loading","models","dispatch","useDispatch","useEffect","getManifest","packageMeta","readMe","useVersion","useContext"],"sources":["../../../src/providers/VersionProvider/VersionProvider.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { createContext, useContext } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { useParams } from 'react-router-dom';\n\nimport { Dispatch, RootState } from '../../store/store';\nimport { PackageMetaInterface } from '../../types/packageMeta';\n\nfunction getRouterPackageName(packageName: string, scope?: string): string {\n if (scope) {\n return `@${scope}/${packageName}`;\n }\n\n return packageName;\n}\n\nexport interface DetailContextProps {\n enableLoading: () => void;\n hasNotBeenFound: boolean;\n isLoading: boolean;\n packageMeta: PackageMetaInterface;\n packageName: string;\n packageVersion?: string;\n readMe: string;\n}\n\nexport interface VersionPageConsumerProps {\n enableLoading: () => void;\n packageMeta: PackageMetaInterface;\n packageName: string;\n packageVersion?: string;\n readMe: string;\n}\n\nexport const DetailContext = createContext<Partial<DetailContextProps>>({});\n\ninterface Params {\n scope?: string;\n package: string;\n version?: string;\n}\n\n/**\n* \n* @example\n Once a component has been wrapped with `VersionProvider`, use the hook `useVersion()` to get an object with:\n ```jsx\n function CustomComponent() {\n const { packageMeta, packageName, packageVersion } = useVersion();\n return <div />;\n }\n\n <Route path={Routes.PACKAGE}>\n <VersionProvider>\n <CustomComponent />\n </VersionProvider>\n </Route>;\n ```\n On mount, the provider will fetch data from the store for specific package or version provided via router.\n @category Provider\n */\nconst VersionProvider: React.FC<{ children: any }> = ({ children }) => {\n const { version: packageVersion, package: pkgName, scope } = useParams<Params>();\n // @ts-ignore\n const { manifest, readme, packageName, hasNotBeenFound } = useSelector(\n (state: RootState) => state.manifest\n );\n const isLoading = useSelector((state: RootState) => state?.loading?.models.manifest);\n const dispatch = useDispatch<Dispatch>();\n useEffect(() => {\n const packageName = getRouterPackageName(pkgName, scope);\n\n dispatch.manifest.getManifest({ packageName, packageVersion });\n }, [dispatch, packageVersion, pkgName, scope]);\n\n return (\n <DetailContext.Provider\n value={{\n packageMeta: manifest,\n packageVersion,\n readMe: readme,\n packageName,\n isLoading,\n hasNotBeenFound,\n }}\n >\n {children}\n </DetailContext.Provider>\n );\n};\n\nexport default VersionProvider;\n\nexport const useVersion = () => useContext(DetailContext);\n"],"mappings":";;;;;;;AAAA;AAEA;AACA;AAA6C;AAAA;AAK7C,SAASA,oBAAoB,CAACC,WAAmB,EAAEC,KAAc,EAAU;EACzE,IAAIA,KAAK,EAAE;IACT,kBAAWA,KAAK,cAAID,WAAW;EACjC;EAEA,OAAOA,WAAW;AACpB;AAoBO,IAAME,aAAa,gBAAG,IAAAC,oBAAa,EAA8B,CAAC,CAAC,CAAC;AAAC;AAQ5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMC,eAA4C,GAAG,SAA/CA,eAA4C,OAAqB;EAAA,IAAfC,QAAQ,QAARA,QAAQ;EAC9D,iBAA6D,IAAAC,yBAAS,GAAU;IAA/DC,cAAc,cAAvBC,OAAO;IAA2BC,OAAO;IAAER,KAAK,cAALA,KAAK;EACxD;EACA,mBAA2D,IAAAS,uBAAW,EACpE,UAACC,KAAgB;MAAA,OAAKA,KAAK,CAACC,QAAQ;IAAA,EACrC;IAFOA,QAAQ,gBAARA,QAAQ;IAAEC,MAAM,gBAANA,MAAM;IAAEb,WAAW,gBAAXA,WAAW;IAAEc,eAAe,gBAAfA,eAAe;EAGtD,IAAMC,SAAS,GAAG,IAAAL,uBAAW,EAAC,UAACC,KAAgB;IAAA;IAAA,OAAKA,KAAK,aAALA,KAAK,yCAALA,KAAK,CAAEK,OAAO,mDAAd,eAAgBC,MAAM,CAACL,QAAQ;EAAA,EAAC;EACpF,IAAMM,QAAQ,GAAG,IAAAC,uBAAW,GAAY;EACxC,IAAAC,gBAAS,EAAC,YAAM;IACd,IAAMpB,WAAW,GAAGD,oBAAoB,CAACU,OAAO,EAAER,KAAK,CAAC;IAExDiB,QAAQ,CAACN,QAAQ,CAACS,WAAW,CAAC;MAAErB,WAAW,EAAXA,WAAW;MAAEO,cAAc,EAAdA;IAAe,CAAC,CAAC;EAChE,CAAC,EAAE,CAACW,QAAQ,EAAEX,cAAc,EAAEE,OAAO,EAAER,KAAK,CAAC,CAAC;EAE9C,oBACE,gCAAC,aAAa,CAAC,QAAQ;IACrB,KAAK,EAAE;MACLqB,WAAW,EAAEV,QAAQ;MACrBL,cAAc,EAAdA,cAAc;MACdgB,MAAM,EAAEV,MAAM;MACdb,WAAW,EAAXA,WAAW;MACXe,SAAS,EAATA,SAAS;MACTD,eAAe,EAAfA;IACF;EAAE,GAEDT,QAAQ,CACc;AAE7B,CAAC;AAAC,eAEaD,eAAe;AAAA;AAEvB,IAAMoB,UAAU,GAAG,SAAbA,UAAU;EAAA,OAAS,IAAAC,iBAAU,EAACvB,aAAa,CAAC;AAAA;AAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/providers/VersionProvider/index.ts"],"sourcesContent":["export { default as VersionProvider, useVersion } from './VersionProvider';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAA2E;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/providers/index.ts"],"sourcesContent":["export * from './AppConfigurationProvider';\nexport * from './VersionProvider';\nexport * from './TranslatorProvider';\n"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ContainerContent.js","names":["TabPosition","Versions","loadable","UpLinks","Dependencies","ContainerContent","tabPosition","readDescription","useVersion","packageMeta","packageName","README","UPLINKS","VERSIONS","DEPENDENCIES"],"sources":["../../../src/sections/Detail/ContainerContent.tsx"],"sourcesContent":["import React from 'react';\n\nimport { useVersion } from '../../providers';\nimport loadable from '../../utils/loadable';\nimport ReadmeSection from './ReadmeSection';\n\nexport enum TabPosition {\n README = 'readme',\n DEPENDENCIES = 'dependencies',\n VERSIONS = 'versions',\n UPLINKS = 'uplinks',\n}\n\nconst Versions = loadable(\n () => import(/* webpackChunkName: \"Versions\" */ '../../components/Versions')\n);\nconst UpLinks = loadable(\n () => import(/* webpackChunkName: \"UpLinks\" */ '../../components/UpLinks')\n);\n\nconst Dependencies = loadable(\n () => import(/* webpackChunkName: \"Dependencies\" */ '../../components/Dependencies')\n);\n\ninterface Props {\n tabPosition: TabPosition;\n readDescription?: string;\n}\n\nconst ContainerContent: React.FC<Props> = ({ tabPosition, readDescription }) => {\n const { packageMeta, packageName } = useVersion();\n switch (tabPosition) {\n case TabPosition.README:\n return <ReadmeSection description={readDescription} />;\n case TabPosition.UPLINKS:\n return <UpLinks packageMeta={packageMeta} />;\n case TabPosition.VERSIONS:\n return <Versions packageMeta={packageMeta} packageName={packageName} />;\n case TabPosition.DEPENDENCIES:\n return <Dependencies packageMeta={packageMeta} />;\n default:\n return null;\n }\n};\n\nexport default ContainerContent;\n"],"mappings":";;;;;;AAAA;AAEA;AACA;AACA;AAA4C;AAAA;AAAA;AAAA;AAAA,IAEhCA,WAAW;AAAA;AAAA,WAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;AAAA,GAAXA,WAAW,2BAAXA,WAAW;AAOvB,IAAMC,QAAQ,GAAG,IAAAC,oBAAQ,EACvB;EAAA;IAAA,wCAAa,kCAAmC,2BAA2B;EAAA;AAAA,CAAC,CAC7E;AACD,IAAMC,OAAO,GAAG,IAAAD,oBAAQ,EACtB;EAAA;IAAA,wCAAa,iCAAkC,0BAA0B;EAAA;AAAA,CAAC,CAC3E;AAED,IAAME,YAAY,GAAG,IAAAF,oBAAQ,EAC3B;EAAA;IAAA,wCAAa,sCAAuC,+BAA+B;EAAA;AAAA,CAAC,CACrF;AAOD,IAAMG,gBAAiC,GAAG,SAApCA,gBAAiC,OAAyC;EAAA,IAAnCC,WAAW,QAAXA,WAAW;IAAEC,eAAe,QAAfA,eAAe;EACvE,kBAAqC,IAAAC,qBAAU,GAAE;IAAzCC,WAAW,eAAXA,WAAW;IAAEC,WAAW,eAAXA,WAAW;EAChC,QAAQJ,WAAW;IACjB,KAAKN,WAAW,CAACW,MAAM;MACrB,oBAAO,gCAAC,yBAAa;QAAC,WAAW,EAAEJ;MAAgB,EAAG;IACxD,KAAKP,WAAW,CAACY,OAAO;MACtB,oBAAO,gCAAC,OAAO;QAAC,WAAW,EAAEH;MAAY,EAAG;IAC9C,KAAKT,WAAW,CAACa,QAAQ;MACvB,oBAAO,gCAAC,QAAQ;QAAC,WAAW,EAAEJ,WAAY;QAAC,WAAW,EAAEC;MAAY,EAAG;IACzE,KAAKV,WAAW,CAACc,YAAY;MAC3B,oBAAO,gCAAC,YAAY;QAAC,WAAW,EAAEL;MAAY,EAAG;IACnD;MACE,OAAO,IAAI;EAAC;AAElB,CAAC;AAAC,eAEaJ,gBAAgB;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Detail.js","names":["TabPosition","DetailContainer","tabs","Object","values","useState","tabPosition","setTabPosition","useVersion","readMe","packageMeta","handleChange","event","newValue","latest","deprecated"],"sources":["../../../src/sections/Detail/Detail.tsx"],"sourcesContent":["import Box from '@mui/material/Box';\nimport React, { useState } from 'react';\n\nimport Deprecated from '../../components/Deprecated';\nimport { useVersion } from '../../providers';\nimport ContainerContent from './ContainerContent';\nimport Tabs from './Tabs';\n\nexport enum TabPosition {\n README = 'readme',\n DEPENDENCIES = 'dependencies',\n VERSIONS = 'versions',\n UPLINKS = 'uplinks',\n}\n\nconst DetailContainer: React.FC = () => {\n const tabs = Object.values(TabPosition);\n const [tabPosition, setTabPosition] = useState(0);\n const { readMe, packageMeta } = useVersion();\n\n const handleChange = (event: React.ChangeEvent<{}>, newValue: number) => {\n setTabPosition(newValue);\n };\n\n return (\n <Box component=\"div\" display=\"flex\" flexDirection=\"column\" padding={2}>\n <Tabs onChange={handleChange} tabPosition={tabPosition} />\n {packageMeta?.latest?.deprecated && <Deprecated message={packageMeta?.latest?.deprecated} />}\n <ContainerContent readDescription={readMe} tabPosition={tabs[tabPosition]} />\n </Box>\n );\n};\n\nexport default DetailContainer;\n"],"mappings":";;;;;;;AAAA;AACA;AAEA;AACA;AACA;AACA;AAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAEdA,WAAW;AAAA;AAAA,WAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;AAAA,GAAXA,WAAW,2BAAXA,WAAW;AAOvB,IAAMC,eAAyB,GAAG,SAA5BA,eAAyB,GAAS;EAAA;EACtC,IAAMC,IAAI,GAAGC,MAAM,CAACC,MAAM,CAACJ,WAAW,CAAC;EACvC,gBAAsC,IAAAK,eAAQ,EAAC,CAAC,CAAC;IAAA;IAA1CC,WAAW;IAAEC,cAAc;EAClC,kBAAgC,IAAAC,qBAAU,GAAE;IAApCC,MAAM,eAANA,MAAM;IAAEC,WAAW,eAAXA,WAAW;EAE3B,IAAMC,YAAY,GAAG,SAAfA,YAAY,CAAIC,KAA4B,EAAEC,QAAgB,EAAK;IACvEN,cAAc,CAACM,QAAQ,CAAC;EAC1B,CAAC;EAED,oBACE,gCAAC,eAAG;IAAC,SAAS,EAAC,KAAK;IAAC,OAAO,EAAC,MAAM;IAAC,aAAa,EAAC,QAAQ;IAAC,OAAO,EAAE;EAAE,gBACpE,gCAAC,gBAAI;IAAC,QAAQ,EAAEF,YAAa;IAAC,WAAW,EAAEL;EAAY,EAAG,EACzD,CAAAI,WAAW,aAAXA,WAAW,8CAAXA,WAAW,CAAEI,MAAM,wDAAnB,oBAAqBC,UAAU,kBAAI,gCAAC,sBAAU;IAAC,OAAO,EAAEL,WAAW,aAAXA,WAAW,+CAAXA,WAAW,CAAEI,MAAM,yDAAnB,qBAAqBC;EAAW,EAAG,eAC5F,gCAAC,4BAAgB;IAAC,eAAe,EAAEN,MAAO;IAAC,WAAW,EAAEP,IAAI,CAACI,WAAW;EAAE,EAAG,CACzE;AAEV,CAAC;AAAC,eAEaL,eAAe;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReadmeSection.js","names":["DetailContainerContentReadme","description"],"sources":["../../../src/sections/Detail/ReadmeSection.tsx"],"sourcesContent":["import React from 'react';\n\nimport Readme from '../../components/Readme';\n\ninterface Props {\n description?: string;\n}\n\nconst DetailContainerContentReadme: React.FC<Props> = ({ description }) => {\n if (!description) {\n return null;\n }\n\n return <Readme description={description} />;\n};\n\nexport default DetailContainerContentReadme;\n"],"mappings":";;;;;;AAAA;AAEA;AAA6C;AAM7C,IAAMA,4BAA6C,GAAG,SAAhDA,4BAA6C,OAAwB;EAAA,IAAlBC,WAAW,QAAXA,WAAW;EAClE,IAAI,CAACA,WAAW,EAAE;IAChB,OAAO,IAAI;EACb;EAEA,oBAAO,gCAAC,kBAAM;IAAC,WAAW,EAAEA;EAAY,EAAG;AAC7C,CAAC;AAAC,eAEaD,4BAA4B;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Tabs.js","names":["DetailContainerTabs","tabPosition","onChange","useTranslation","t","Tabs","MuiTabs"],"sources":["../../../src/sections/Detail/Tabs.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport Tab from '@mui/material/Tab';\nimport { default as MuiTabs } from '@mui/material/Tabs';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { Theme } from '../../Theme';\n\ninterface Props {\n onChange: (event: React.ChangeEvent<{}>, newValue: number) => void;\n tabPosition: number;\n}\n\nconst DetailContainerTabs: React.FC<Props> = ({ tabPosition, onChange }) => {\n const { t } = useTranslation();\n return (\n <Tabs\n color={'primary'}\n indicatorColor={'primary'}\n onChange={onChange}\n value={tabPosition}\n variant={'fullWidth'}\n >\n <Tab data-testid={'readme-tab'} id={'readme-tab'} label={t('tab.readme')} />\n <Tab data-testid={'dependencies-tab'} id={'dependencies-tab'} label={t('tab.dependencies')} />\n <Tab data-testid={'versions-tab'} id={'versions-tab'} label={t('tab.versions')} />\n <Tab data-testid={'uplinks-tab'} id={'uplinks-tab'} label={t('tab.uplinks')} />\n </Tabs>\n );\n};\n\nexport default DetailContainerTabs;\n\nconst Tabs = styled(MuiTabs)<{ theme?: Theme }>({\n marginBottom: 16,\n});\n"],"mappings":";;;;;;;AACA;AACA;AACA;AACA;AAA+C;AAAA;AAS/C,IAAMA,mBAAoC,GAAG,SAAvCA,mBAAoC,OAAkC;EAAA,IAA5BC,WAAW,QAAXA,WAAW;IAAEC,QAAQ,QAARA,QAAQ;EACnE,sBAAc,IAAAC,4BAAc,GAAE;IAAtBC,CAAC,mBAADA,CAAC;EACT,oBACE,gCAAC,IAAI;IACH,KAAK,EAAE,SAAU;IACjB,cAAc,EAAE,SAAU;IAC1B,QAAQ,EAAEF,QAAS;IACnB,KAAK,EAAED,WAAY;IACnB,OAAO,EAAE;EAAY,gBAErB,gCAAC,eAAG;IAAC,eAAa,YAAa;IAAC,EAAE,EAAE,YAAa;IAAC,KAAK,EAAEG,CAAC,CAAC,YAAY;EAAE,EAAG,eAC5E,gCAAC,eAAG;IAAC,eAAa,kBAAmB;IAAC,EAAE,EAAE,kBAAmB;IAAC,KAAK,EAAEA,CAAC,CAAC,kBAAkB;EAAE,EAAG,eAC9F,gCAAC,eAAG;IAAC,eAAa,cAAe;IAAC,EAAE,EAAE,cAAe;IAAC,KAAK,EAAEA,CAAC,CAAC,cAAc;EAAE,EAAG,eAClF,gCAAC,eAAG;IAAC,eAAa,aAAc;IAAC,EAAE,EAAE,aAAc;IAAC,KAAK,EAAEA,CAAC,CAAC,aAAa;EAAE,EAAG,CAC1E;AAEX,CAAC;AAAC,eAEaJ,mBAAmB;AAAA;AAElC,IAAMK,IAAI,gBAAG,sBAAOC,gBAAO;EAAA;AAAA;EAAA;EAAA;AAAA,EAAC;EAAA;EAAA;AAAA;EAAA;EAAA;EAAA;EAAA;AAAA,EAE1B"}
@@ -1,237 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`DetailContainer renders correctly 1`] = `
4
- .emotion-0 {
5
- display: -webkit-box;
6
- display: -webkit-flex;
7
- display: -ms-flexbox;
8
- display: flex;
9
- -webkit-flex-direction: column;
10
- -ms-flex-direction: column;
11
- flex-direction: column;
12
- padding: 16px;
13
- }
14
-
15
- .emotion-2 {
16
- overflow: hidden;
17
- min-height: 48px;
18
- -webkit-overflow-scrolling: touch;
19
- display: -webkit-box;
20
- display: -webkit-flex;
21
- display: -ms-flexbox;
22
- display: flex;
23
- margin-bottom: 16px;
24
- }
25
-
26
- @media (max-width:599.95px) {
27
- .emotion-2 .MuiTabs-scrollButtons {
28
- display: none;
29
- }
30
- }
31
-
32
- .emotion-3 {
33
- position: relative;
34
- display: inline-block;
35
- -webkit-flex: 1 1 auto;
36
- -ms-flex: 1 1 auto;
37
- flex: 1 1 auto;
38
- white-space: nowrap;
39
- overflow-x: hidden;
40
- width: 100%;
41
- }
42
-
43
- .emotion-4 {
44
- display: -webkit-box;
45
- display: -webkit-flex;
46
- display: -ms-flexbox;
47
- display: flex;
48
- }
49
-
50
- .emotion-5 {
51
- display: -webkit-inline-box;
52
- display: -webkit-inline-flex;
53
- display: -ms-inline-flexbox;
54
- display: inline-flex;
55
- -webkit-align-items: center;
56
- -webkit-box-align: center;
57
- -ms-flex-align: center;
58
- align-items: center;
59
- -webkit-box-pack: center;
60
- -ms-flex-pack: center;
61
- -webkit-justify-content: center;
62
- justify-content: center;
63
- position: relative;
64
- box-sizing: border-box;
65
- -webkit-tap-highlight-color: transparent;
66
- background-color: transparent;
67
- outline: 0;
68
- border: 0;
69
- margin: 0;
70
- border-radius: 0;
71
- padding: 0;
72
- cursor: pointer;
73
- -webkit-user-select: none;
74
- -moz-user-select: none;
75
- -ms-user-select: none;
76
- user-select: none;
77
- vertical-align: middle;
78
- -moz-appearance: none;
79
- -webkit-appearance: none;
80
- -webkit-text-decoration: none;
81
- text-decoration: none;
82
- color: inherit;
83
- font-family: -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
84
- font-weight: 500;
85
- font-size: 0.875rem;
86
- line-height: 1.25;
87
- text-transform: uppercase;
88
- max-width: none;
89
- min-width: 90px;
90
- position: relative;
91
- min-height: 48px;
92
- -webkit-flex-shrink: 1;
93
- -ms-flex-negative: 1;
94
- flex-shrink: 1;
95
- padding: 12px 16px;
96
- overflow: hidden;
97
- white-space: normal;
98
- text-align: center;
99
- -webkit-flex-direction: column;
100
- -ms-flex-direction: column;
101
- flex-direction: column;
102
- color: rgba(0, 0, 0, 0.6);
103
- -webkit-box-flex: 1;
104
- -webkit-flex-grow: 1;
105
- -ms-flex-positive: 1;
106
- flex-grow: 1;
107
- -webkit-flex-basis: 0;
108
- -ms-flex-preferred-size: 0;
109
- flex-basis: 0;
110
- }
111
-
112
- .emotion-5::-moz-focus-inner {
113
- border-style: none;
114
- }
115
-
116
- .emotion-5.Mui-disabled {
117
- pointer-events: none;
118
- cursor: default;
119
- }
120
-
121
- @media print {
122
- .emotion-5 {
123
- -webkit-print-color-adjust: exact;
124
- color-adjust: exact;
125
- }
126
- }
127
-
128
- .emotion-5.Mui-selected {
129
- color: #4b5e40;
130
- }
131
-
132
- .emotion-5.Mui-disabled {
133
- color: rgba(0, 0, 0, 0.38);
134
- }
135
-
136
- .emotion-6 {
137
- overflow: hidden;
138
- pointer-events: none;
139
- position: absolute;
140
- z-index: 0;
141
- top: 0;
142
- right: 0;
143
- bottom: 0;
144
- left: 0;
145
- border-radius: inherit;
146
- }
147
-
148
- .emotion-13 {
149
- position: absolute;
150
- height: 2px;
151
- bottom: 0;
152
- width: 100%;
153
- -webkit-transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
154
- transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
155
- background-color: #4b5e40;
156
- }
157
-
158
- <div
159
- class="MuiBox-root emotion-0"
160
- >
161
- <div
162
- class="MuiTabs-root emotion-1 emotion-2"
163
- color="primary"
164
- >
165
- <div
166
- class="MuiTabs-scroller MuiTabs-fixed emotion-3"
167
- style="overflow: hidden; margin-bottom: 0px;"
168
- >
169
- <div
170
- class="MuiTabs-flexContainer emotion-4"
171
- role="tablist"
172
- >
173
- <button
174
- aria-selected="true"
175
- class="MuiButtonBase-root MuiTab-root MuiTab-textColorPrimary MuiTab-fullWidth Mui-selected emotion-5"
176
- data-testid="readme-tab"
177
- id="readme-tab"
178
- role="tab"
179
- tabindex="0"
180
- type="button"
181
- >
182
- tab.readme
183
- <span
184
- class="MuiTouchRipple-root emotion-6"
185
- />
186
- </button>
187
- <button
188
- aria-selected="false"
189
- class="MuiButtonBase-root MuiTab-root MuiTab-textColorPrimary MuiTab-fullWidth emotion-5"
190
- data-testid="dependencies-tab"
191
- id="dependencies-tab"
192
- role="tab"
193
- tabindex="-1"
194
- type="button"
195
- >
196
- tab.dependencies
197
- <span
198
- class="MuiTouchRipple-root emotion-6"
199
- />
200
- </button>
201
- <button
202
- aria-selected="false"
203
- class="MuiButtonBase-root MuiTab-root MuiTab-textColorPrimary MuiTab-fullWidth emotion-5"
204
- data-testid="versions-tab"
205
- id="versions-tab"
206
- role="tab"
207
- tabindex="-1"
208
- type="button"
209
- >
210
- tab.versions
211
- <span
212
- class="MuiTouchRipple-root emotion-6"
213
- />
214
- </button>
215
- <button
216
- aria-selected="false"
217
- class="MuiButtonBase-root MuiTab-root MuiTab-textColorPrimary MuiTab-fullWidth emotion-5"
218
- data-testid="uplinks-tab"
219
- id="uplinks-tab"
220
- role="tab"
221
- tabindex="-1"
222
- type="button"
223
- >
224
- tab.uplinks
225
- <span
226
- class="MuiTouchRipple-root emotion-6"
227
- />
228
- </button>
229
- </div>
230
- <span
231
- class="MuiTabs-indicator emotion-13"
232
- style="left: 0px; width: 0px;"
233
- />
234
- </div>
235
- </div>
236
- </div>
237
- `;
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/sections/Detail/index.ts"],"sourcesContent":["export { default } from './Detail';\n"],"mappings":";;;;;;;;;;;AAAA;AAAmC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Footer.js","names":["goToVerdaccioWebsite","window","open","Footer","useTranslation","t","useConfig","configOptions","version","StyledEarth","Earth","theme","margin","spacing","Flags","display","gridTemplateColumns","gridGap","position","background","palette","greyAthens","padding","borderRadius","height","alignItems","visibility","top","content","left","marginLeft","border","borderColor","transform","Icon","ToolTip"],"sources":["../../../src/sections/Footer/Footer.tsx"],"sourcesContent":["/* eslint-disable react/jsx-max-depth */\n\n/* eslint-disable react/jsx-pascal-case */\nimport styled from '@emotion/styled';\nimport FlagsIcon from 'country-flag-icons/react/3x2';\nimport React from 'react';\nimport { Trans, useTranslation } from 'react-i18next';\n\nimport { Logo, Theme, useConfig } from '../../';\nimport { Earth } from '../../components/Icons';\nimport { Inner, Left, Love, Right, Wrapper } from './styles';\n\nfunction goToVerdaccioWebsite(): void {\n window.open('https://verdaccio.org', '_blank');\n}\n\n/* eslint-disable react/jsx-key */\nconst Footer = () => {\n const { t } = useTranslation();\n const { configOptions } = useConfig();\n return (\n <Wrapper data-testid=\"footer\">\n <Inner>\n <Left>\n <Trans components={[<Love />]} i18nKey=\"footer.made-with-love-on\" />\n <ToolTip>\n <StyledEarth />\n <Flags>\n <Icon>\n <FlagsIcon.ES />\n </Icon>\n <Icon>\n <FlagsIcon.NI />\n </Icon>\n <Icon>\n <FlagsIcon.IN />\n </Icon>\n <Icon>\n <FlagsIcon.BR />\n </Icon>\n <Icon>\n <FlagsIcon.CN />\n </Icon>\n <Icon>\n <FlagsIcon.AU />\n </Icon>\n <Icon>\n <FlagsIcon.DE />\n </Icon>\n <Icon>\n <FlagsIcon.TW />\n </Icon>\n </Flags>\n </ToolTip>\n </Left>\n <Right>\n {configOptions?.version && (\n <>\n {t('footer.powered-by')}\n <Logo isDefault={true} onClick={goToVerdaccioWebsite} size=\"x-small\" />\n {`/ ${configOptions.version}`}\n </>\n )}\n </Right>\n </Inner>\n </Wrapper>\n );\n};\n\nexport default Footer;\n\nconst StyledEarth = styled(Earth)<{ theme?: Theme }>(({ theme }) => ({\n margin: theme.spacing(0, 1),\n}));\n\nconst Flags = styled('span')<{ theme?: Theme }>(({ theme }) => ({\n display: 'inline-grid',\n gridTemplateColumns: 'repeat(8, max-content)',\n gridGap: theme.spacing(0, 1),\n position: 'absolute',\n background: theme?.palette.greyAthens,\n padding: '1px 4px',\n borderRadius: 3,\n height: 20,\n alignItems: 'center',\n visibility: 'hidden',\n top: -2,\n ':before': {\n content: \"''\",\n position: 'absolute',\n top: '29%',\n left: -4,\n marginLeft: -5,\n border: '5px solid',\n borderColor: `${theme?.palette.greyAthens} transparent transparent transparent`,\n transform: 'rotate(90deg)',\n },\n}));\n\nconst Icon = styled('div')({\n width: '10px',\n});\n\nconst ToolTip = styled('span')({\n position: 'relative',\n height: '18px',\n ':hover': {\n [`${Flags}`]: {\n visibility: 'visible',\n },\n },\n});\n"],"mappings":";;;;;;;;AAIA;AACA;AACA;AAEA;AACA;AACA;AAA6D;AAAA;AAAA;AAAA;AAAA;AAE7D,SAASA,oBAAoB,GAAS;EACpCC,MAAM,CAACC,IAAI,CAAC,uBAAuB,EAAE,QAAQ,CAAC;AAChD;;AAEA;AACA,IAAMC,MAAM,GAAG,SAATA,MAAM,GAAS;EACnB,sBAAc,IAAAC,4BAAc,GAAE;IAAtBC,CAAC,mBAADA,CAAC;EACT,iBAA0B,IAAAC,WAAS,GAAE;IAA7BC,aAAa,cAAbA,aAAa;EACrB,oBACE,gCAAC,eAAO;IAAC,eAAY;EAAQ,gBAC3B,gCAAC,aAAK,qBACJ,gCAAC,YAAI,qBACH,gCAAC,mBAAK;IAAC,UAAU,EAAE,cAAC,gCAAC,YAAI,OAAG,CAAE;IAAC,OAAO,EAAC;EAA0B,EAAG,eACpE,gCAAC,OAAO,qBACN,gCAAC,WAAW,OAAG,eACf,gCAAC,KAAK,qBACJ,gCAAC,IAAI,qBACH,gCAAC,aAAS,CAAC,EAAE,OAAG,CACX,eACP,gCAAC,IAAI,qBACH,gCAAC,aAAS,CAAC,EAAE,OAAG,CACX,eACP,gCAAC,IAAI,qBACH,gCAAC,aAAS,CAAC,EAAE,OAAG,CACX,eACP,gCAAC,IAAI,qBACH,gCAAC,aAAS,CAAC,EAAE,OAAG,CACX,eACP,gCAAC,IAAI,qBACH,gCAAC,aAAS,CAAC,EAAE,OAAG,CACX,eACP,gCAAC,IAAI,qBACH,gCAAC,aAAS,CAAC,EAAE,OAAG,CACX,eACP,gCAAC,IAAI,qBACH,gCAAC,aAAS,CAAC,EAAE,OAAG,CACX,eACP,gCAAC,IAAI,qBACH,gCAAC,aAAS,CAAC,EAAE,OAAG,CACX,CACD,CACA,CACL,eACP,gCAAC,aAAK,QACH,CAAAA,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEC,OAAO,kBACrB,kEACGH,CAAC,CAAC,mBAAmB,CAAC,eACvB,gCAAC,MAAI;IAAC,SAAS,EAAE,IAAK;IAAC,OAAO,EAAEL,oBAAqB;IAAC,IAAI,EAAC;EAAS,EAAG,cACjEO,aAAa,CAACC,OAAO,EAE9B,CACK,CACF,CACA;AAEd,CAAC;AAAC,eAEaL,MAAM;AAAA;AAErB,IAAMM,WAAW,gBAAG,sBAAOC,YAAK;EAAA;AAAA;EAAA;EAAA;AAAA,EAAC,CAAoB;EAAA,IAAGC,KAAK,QAALA,KAAK;EAAA,OAAQ;IACnEC,MAAM,EAAED,KAAK,CAACE,OAAO,CAAC,CAAC,EAAE,CAAC;EAC5B,CAAC;AAAA,CAAC,6pIAAC;AAEH,IAAMC,KAAK,gBAAG,sBAAO,MAAM;EAAA;AAAA;EAAA;EAAA;AAAA,EAAC,CAAoB;EAAA,IAAGH,KAAK,SAALA,KAAK;EAAA,OAAQ;IAC9DI,OAAO,EAAE,aAAa;IACtBC,mBAAmB,EAAE,wBAAwB;IAC7CC,OAAO,EAAEN,KAAK,CAACE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5BK,QAAQ,EAAE,UAAU;IACpBC,UAAU,EAAER,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAES,OAAO,CAACC,UAAU;IACrCC,OAAO,EAAE,SAAS;IAClBC,YAAY,EAAE,CAAC;IACfC,MAAM,EAAE,EAAE;IACVC,UAAU,EAAE,QAAQ;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE,CAAC,CAAC;IACP,SAAS,EAAE;MACTC,OAAO,EAAE,IAAI;MACbV,QAAQ,EAAE,UAAU;MACpBS,GAAG,EAAE,KAAK;MACVE,IAAI,EAAE,CAAC,CAAC;MACRC,UAAU,EAAE,CAAC,CAAC;MACdC,MAAM,EAAE,WAAW;MACnBC,WAAW,YAAKrB,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAES,OAAO,CAACC,UAAU,yCAAsC;MAC/EY,SAAS,EAAE;IACb;EACF,CAAC;AAAA,CAAC,ypIAAC;AAEH,IAAMC,IAAI,gBAAG,sBAAO,KAAK;EAAA;AAAA;EAAA;EAAA;AAAA,EAAC;EAAA;EAAA;AAAA;EAAA;EAAA;EAAA;EAAA;AAAA,EAExB;AAEF,IAAMC,OAAO,gBAAG,sBAAO,MAAM;EAAA;AAAA;EAAA;EAAA;AAAA,EAAC,CAAC;EAC7BjB,QAAQ,EAAE,UAAU;EACpBM,MAAM,EAAE,MAAM;EACd,QAAQ,gCACFV,KAAK,GAAK;IACZY,UAAU,EAAE;EACd,CAAC;AAEL,CAAC,6pIAAC"}