@verdaccio/ui-components 5.0.0-next-9.2 → 5.0.0-next-9.4

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 (813) hide show
  1. package/build/Theme/ResetStyles.js +29 -25
  2. package/build/Theme/ResetStyles.js.map +1 -1
  3. package/build/Theme/ResetStyles.mjs +32 -0
  4. package/build/Theme/ResetStyles.mjs.map +1 -0
  5. package/build/Theme/StyleBaseline.js +10 -7
  6. package/build/Theme/StyleBaseline.js.map +1 -1
  7. package/build/Theme/StyleBaseline.mjs +11 -0
  8. package/build/Theme/StyleBaseline.mjs.map +1 -0
  9. package/build/Theme/ThemeProvider.js +33 -23
  10. package/build/Theme/ThemeProvider.js.map +1 -1
  11. package/build/Theme/ThemeProvider.mjs +40 -0
  12. package/build/Theme/ThemeProvider.mjs.map +1 -0
  13. package/build/Theme/colors.js +26 -12
  14. package/build/Theme/colors.js.map +1 -1
  15. package/build/Theme/colors.mjs +22 -0
  16. package/build/Theme/colors.mjs.map +1 -0
  17. package/build/Theme/index.js +5 -5
  18. package/build/Theme/index.mjs +5 -0
  19. package/build/Theme/modes.js +15 -12
  20. package/build/Theme/modes.js.map +1 -1
  21. package/build/Theme/modes.mjs +30 -0
  22. package/build/Theme/modes.mjs.map +1 -0
  23. package/build/Theme/theme.js +19 -16
  24. package/build/Theme/theme.js.map +1 -1
  25. package/build/Theme/theme.mjs +22 -0
  26. package/build/Theme/theme.mjs.map +1 -0
  27. package/build/Theme/tokens.js +14 -8
  28. package/build/Theme/tokens.js.map +1 -1
  29. package/build/Theme/tokens.mjs +33 -0
  30. package/build/Theme/tokens.mjs.map +1 -0
  31. package/build/_virtual/_rolldown/runtime.js +29 -7
  32. package/build/_virtual/_rolldown/runtime.mjs +13 -0
  33. package/build/api/use-data-mutation.js +31 -24
  34. package/build/api/use-data-mutation.js.map +1 -1
  35. package/build/api/use-data-mutation.mjs +45 -0
  36. package/build/api/use-data-mutation.mjs.map +1 -0
  37. package/build/api/use-data.js +17 -12
  38. package/build/api/use-data.js.map +1 -1
  39. package/build/api/use-data.mjs +23 -0
  40. package/build/api/use-data.mjs.map +1 -0
  41. package/build/components/ActionBar/ActionBar.js +37 -28
  42. package/build/components/ActionBar/ActionBar.js.map +1 -1
  43. package/build/components/ActionBar/ActionBar.mjs +52 -0
  44. package/build/components/ActionBar/ActionBar.mjs.map +1 -0
  45. package/build/components/ActionBar/ActionBarAction.js +66 -52
  46. package/build/components/ActionBar/ActionBarAction.js.map +1 -1
  47. package/build/components/ActionBar/ActionBarAction.mjs +85 -0
  48. package/build/components/ActionBar/ActionBarAction.mjs.map +1 -0
  49. package/build/components/ActionBar/index.js +1 -1
  50. package/build/components/ActionBar/index.mjs +1 -0
  51. package/build/components/AppRoute/AppRoute.js +58 -47
  52. package/build/components/AppRoute/AppRoute.js.map +1 -1
  53. package/build/components/AppRoute/AppRoute.mjs +76 -0
  54. package/build/components/AppRoute/AppRoute.mjs.map +1 -0
  55. package/build/components/Author/Author.js +26 -22
  56. package/build/components/Author/Author.js.map +1 -1
  57. package/build/components/Author/Author.mjs +33 -0
  58. package/build/components/Author/Author.mjs.map +1 -0
  59. package/build/components/Author/index.js +1 -1
  60. package/build/components/Author/index.mjs +1 -0
  61. package/build/components/Author/styles.js +13 -8
  62. package/build/components/Author/styles.js.map +1 -1
  63. package/build/components/Author/styles.mjs +26 -0
  64. package/build/components/Author/styles.mjs.map +1 -0
  65. package/build/components/CopyClipboard/CopyToClipBoard.js +35 -28
  66. package/build/components/CopyClipboard/CopyToClipBoard.js.map +1 -1
  67. package/build/components/CopyClipboard/CopyToClipBoard.mjs +57 -0
  68. package/build/components/CopyClipboard/CopyToClipBoard.mjs.map +1 -0
  69. package/build/components/CopyClipboard/index.js +2 -2
  70. package/build/components/CopyClipboard/index.mjs +2 -0
  71. package/build/components/CopyClipboard/utils.js +4 -3
  72. package/build/components/CopyClipboard/utils.js.map +1 -1
  73. package/build/components/CopyClipboard/utils.mjs +9 -0
  74. package/build/components/CopyClipboard/utils.mjs.map +1 -0
  75. package/build/components/Dependencies/Dependencies.js +38 -26
  76. package/build/components/Dependencies/Dependencies.js.map +1 -1
  77. package/build/components/Dependencies/Dependencies.mjs +45 -0
  78. package/build/components/Dependencies/Dependencies.mjs.map +1 -0
  79. package/build/components/Dependencies/DependencyBlock.js +50 -38
  80. package/build/components/Dependencies/DependencyBlock.js.map +1 -1
  81. package/build/components/Dependencies/DependencyBlock.mjs +70 -0
  82. package/build/components/Dependencies/DependencyBlock.mjs.map +1 -0
  83. package/build/components/Dependencies/index.js +2 -2
  84. package/build/components/Dependencies/index.mjs +2 -0
  85. package/build/components/Dependencies/utits.js +3 -3
  86. package/build/components/Dependencies/utits.js.map +1 -1
  87. package/build/components/Dependencies/utits.mjs +8 -0
  88. package/build/components/Dependencies/utits.mjs.map +1 -0
  89. package/build/components/Deprecated/Deprecated.js +17 -12
  90. package/build/components/Deprecated/Deprecated.js.map +1 -1
  91. package/build/components/Deprecated/Deprecated.mjs +18 -0
  92. package/build/components/Deprecated/Deprecated.mjs.map +1 -0
  93. package/build/components/Deprecated/index.js +1 -1
  94. package/build/components/Deprecated/index.mjs +1 -0
  95. package/build/components/Developers/DeveloperType.js +5 -3
  96. package/build/components/Developers/DeveloperType.js.map +1 -1
  97. package/build/components/Developers/DeveloperType.mjs +10 -0
  98. package/build/components/Developers/DeveloperType.mjs.map +1 -0
  99. package/build/components/Developers/Developers.js +50 -37
  100. package/build/components/Developers/Developers.js.map +1 -1
  101. package/build/components/Developers/Developers.mjs +68 -0
  102. package/build/components/Developers/Developers.mjs.map +1 -0
  103. package/build/components/Developers/Title.js +23 -18
  104. package/build/components/Developers/Title.js.map +1 -1
  105. package/build/components/Developers/Title.mjs +32 -0
  106. package/build/components/Developers/Title.mjs.map +1 -0
  107. package/build/components/Developers/get-unique-developer-values.js +4 -3
  108. package/build/components/Developers/get-unique-developer-values.js.map +1 -1
  109. package/build/components/Developers/get-unique-developer-values.mjs +9 -0
  110. package/build/components/Developers/get-unique-developer-values.mjs.map +1 -0
  111. package/build/components/Developers/index.js +2 -2
  112. package/build/components/Developers/index.mjs +2 -0
  113. package/build/components/Distribution/Dist.js +32 -27
  114. package/build/components/Distribution/Dist.js.map +1 -1
  115. package/build/components/Distribution/Dist.mjs +42 -0
  116. package/build/components/Distribution/Dist.mjs.map +1 -0
  117. package/build/components/Distribution/index.js +1 -1
  118. package/build/components/Distribution/index.mjs +1 -0
  119. package/build/components/Distribution/styles.js +22 -13
  120. package/build/components/Distribution/styles.js.map +1 -1
  121. package/build/components/Distribution/styles.mjs +41 -0
  122. package/build/components/Distribution/styles.mjs.map +1 -0
  123. package/build/components/Engines/Engines.js +61 -43
  124. package/build/components/Engines/Engines.js.map +1 -1
  125. package/build/components/Engines/Engines.mjs +82 -0
  126. package/build/components/Engines/Engines.mjs.map +1 -0
  127. package/build/components/Engines/index.js +1 -1
  128. package/build/components/Engines/index.mjs +1 -0
  129. package/build/components/Engines/styles.js +16 -10
  130. package/build/components/Engines/styles.js.map +1 -1
  131. package/build/components/Engines/styles.mjs +29 -0
  132. package/build/components/Engines/styles.mjs.map +1 -0
  133. package/build/components/ErrorBoundary/ErrorBoundary.js +18 -14
  134. package/build/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  135. package/build/components/ErrorBoundary/ErrorBoundary.mjs +31 -0
  136. package/build/components/ErrorBoundary/ErrorBoundary.mjs.map +1 -0
  137. package/build/components/ErrorBoundary/index.js +1 -1
  138. package/build/components/ErrorBoundary/index.mjs +1 -0
  139. package/build/components/Forbidden/Forbidden.js +37 -27
  140. package/build/components/Forbidden/Forbidden.js.map +1 -1
  141. package/build/components/Forbidden/Forbidden.mjs +70 -0
  142. package/build/components/Forbidden/Forbidden.mjs.map +1 -0
  143. package/build/components/Forbidden/index.js +1 -1
  144. package/build/components/Forbidden/index.mjs +1 -0
  145. package/build/components/FundButton/FundButton.js +38 -29
  146. package/build/components/FundButton/FundButton.js.map +1 -1
  147. package/build/components/FundButton/FundButton.mjs +60 -0
  148. package/build/components/FundButton/FundButton.mjs.map +1 -0
  149. package/build/components/FundButton/index.js +1 -1
  150. package/build/components/FundButton/index.mjs +1 -0
  151. package/build/components/HeaderInfoDialog/HeaderInfoDialog.js +52 -42
  152. package/build/components/HeaderInfoDialog/HeaderInfoDialog.js.map +1 -1
  153. package/build/components/HeaderInfoDialog/HeaderInfoDialog.mjs +71 -0
  154. package/build/components/HeaderInfoDialog/HeaderInfoDialog.mjs.map +1 -0
  155. package/build/components/HeaderInfoDialog/index.js +1 -1
  156. package/build/components/HeaderInfoDialog/index.mjs +1 -0
  157. package/build/components/Heading/Heading.js +12 -9
  158. package/build/components/Heading/Heading.js.map +1 -1
  159. package/build/components/Heading/Heading.mjs +15 -0
  160. package/build/components/Heading/Heading.mjs.map +1 -0
  161. package/build/components/Heading/index.js +1 -1
  162. package/build/components/Heading/index.mjs +1 -0
  163. package/build/components/Help/Help.js +42 -34
  164. package/build/components/Help/Help.js.map +1 -1
  165. package/build/components/Help/Help.mjs +60 -0
  166. package/build/components/Help/Help.mjs.map +1 -0
  167. package/build/components/Help/index.js +1 -1
  168. package/build/components/Help/index.mjs +1 -0
  169. package/build/components/Help/styles.js +9 -6
  170. package/build/components/Help/styles.js.map +1 -1
  171. package/build/components/Help/styles.mjs +21 -0
  172. package/build/components/Help/styles.mjs.map +1 -0
  173. package/build/components/Icons/DevsIcons/CommonJS2.js +9 -7
  174. package/build/components/Icons/DevsIcons/CommonJS2.js.map +1 -1
  175. package/build/components/Icons/DevsIcons/CommonJS2.mjs +16 -0
  176. package/build/components/Icons/DevsIcons/CommonJS2.mjs.map +1 -0
  177. package/build/components/Icons/DevsIcons/ES6Module2.js +9 -7
  178. package/build/components/Icons/DevsIcons/ES6Module2.js.map +1 -1
  179. package/build/components/Icons/DevsIcons/ES6Module2.mjs +16 -0
  180. package/build/components/Icons/DevsIcons/ES6Module2.mjs.map +1 -0
  181. package/build/components/Icons/DevsIcons/Git2.js +9 -7
  182. package/build/components/Icons/DevsIcons/Git2.js.map +1 -1
  183. package/build/components/Icons/DevsIcons/Git2.mjs +16 -0
  184. package/build/components/Icons/DevsIcons/Git2.mjs.map +1 -0
  185. package/build/components/Icons/DevsIcons/NodeJS2.js +9 -7
  186. package/build/components/Icons/DevsIcons/NodeJS2.js.map +1 -1
  187. package/build/components/Icons/DevsIcons/NodeJS2.mjs +16 -0
  188. package/build/components/Icons/DevsIcons/NodeJS2.mjs.map +1 -0
  189. package/build/components/Icons/DevsIcons/TypeScript2.js +9 -7
  190. package/build/components/Icons/DevsIcons/TypeScript2.js.map +1 -1
  191. package/build/components/Icons/DevsIcons/TypeScript2.mjs +16 -0
  192. package/build/components/Icons/DevsIcons/TypeScript2.mjs.map +1 -0
  193. package/build/components/Icons/DevsIcons/commonjs.js +2 -2
  194. package/build/components/Icons/DevsIcons/commonjs.js.map +1 -1
  195. package/build/components/Icons/DevsIcons/commonjs.mjs +6 -0
  196. package/build/components/Icons/DevsIcons/commonjs.mjs.map +1 -0
  197. package/build/components/Icons/DevsIcons/es6module.js +2 -2
  198. package/build/components/Icons/DevsIcons/es6module.js.map +1 -1
  199. package/build/components/Icons/DevsIcons/es6module.mjs +6 -0
  200. package/build/components/Icons/DevsIcons/es6module.mjs.map +1 -0
  201. package/build/components/Icons/DevsIcons/git.js +2 -2
  202. package/build/components/Icons/DevsIcons/git.js.map +1 -1
  203. package/build/components/Icons/DevsIcons/git.mjs +6 -0
  204. package/build/components/Icons/DevsIcons/git.mjs.map +1 -0
  205. package/build/components/Icons/DevsIcons/index.js +5 -5
  206. package/build/components/Icons/DevsIcons/index.mjs +5 -0
  207. package/build/components/Icons/DevsIcons/nodejs.js +2 -2
  208. package/build/components/Icons/DevsIcons/nodejs.js.map +1 -1
  209. package/build/components/Icons/DevsIcons/nodejs.mjs +6 -0
  210. package/build/components/Icons/DevsIcons/nodejs.mjs.map +1 -0
  211. package/build/components/Icons/DevsIcons/typescript.js +2 -2
  212. package/build/components/Icons/DevsIcons/typescript.js.map +1 -1
  213. package/build/components/Icons/DevsIcons/typescript.mjs +6 -0
  214. package/build/components/Icons/DevsIcons/typescript.mjs.map +1 -0
  215. package/build/components/Icons/Earth.js +19 -17
  216. package/build/components/Icons/Earth.js.map +1 -1
  217. package/build/components/Icons/Earth.mjs +41 -0
  218. package/build/components/Icons/Earth.mjs.map +1 -0
  219. package/build/components/Icons/FileBinary.js +12 -10
  220. package/build/components/Icons/FileBinary.js.map +1 -1
  221. package/build/components/Icons/FileBinary.mjs +17 -0
  222. package/build/components/Icons/FileBinary.mjs.map +1 -0
  223. package/build/components/Icons/Law.js +12 -10
  224. package/build/components/Icons/Law.js.map +1 -1
  225. package/build/components/Icons/Law.mjs +20 -0
  226. package/build/components/Icons/Law.mjs.map +1 -0
  227. package/build/components/Icons/License.js +12 -10
  228. package/build/components/Icons/License.js.map +1 -1
  229. package/build/components/Icons/License.mjs +17 -0
  230. package/build/components/Icons/License.mjs.map +1 -0
  231. package/build/components/Icons/Managers/Npm2.js +9 -7
  232. package/build/components/Icons/Managers/Npm2.js.map +1 -1
  233. package/build/components/Icons/Managers/Npm2.mjs +16 -0
  234. package/build/components/Icons/Managers/Npm2.mjs.map +1 -0
  235. package/build/components/Icons/Managers/Pnpm2.js +9 -7
  236. package/build/components/Icons/Managers/Pnpm2.js.map +1 -1
  237. package/build/components/Icons/Managers/Pnpm2.mjs +16 -0
  238. package/build/components/Icons/Managers/Pnpm2.mjs.map +1 -0
  239. package/build/components/Icons/Managers/Yarn2.js +9 -7
  240. package/build/components/Icons/Managers/Yarn2.js.map +1 -1
  241. package/build/components/Icons/Managers/Yarn2.mjs +16 -0
  242. package/build/components/Icons/Managers/Yarn2.mjs.map +1 -0
  243. package/build/components/Icons/Managers/index.js +3 -3
  244. package/build/components/Icons/Managers/index.mjs +3 -0
  245. package/build/components/Icons/Managers/npm.js +2 -2
  246. package/build/components/Icons/Managers/npm.js.map +1 -1
  247. package/build/components/Icons/Managers/npm.mjs +6 -0
  248. package/build/components/Icons/Managers/npm.mjs.map +1 -0
  249. package/build/components/Icons/Managers/pnpm.js +2 -2
  250. package/build/components/Icons/Managers/pnpm.js.map +1 -1
  251. package/build/components/Icons/Managers/pnpm.mjs +6 -0
  252. package/build/components/Icons/Managers/pnpm.mjs.map +1 -0
  253. package/build/components/Icons/Managers/yarn.js +2 -2
  254. package/build/components/Icons/Managers/yarn.js.map +1 -1
  255. package/build/components/Icons/Managers/yarn.mjs +6 -0
  256. package/build/components/Icons/Managers/yarn.mjs.map +1 -0
  257. package/build/components/Icons/SvgIcon.js +28 -19
  258. package/build/components/Icons/SvgIcon.js.map +1 -1
  259. package/build/components/Icons/SvgIcon.mjs +31 -0
  260. package/build/components/Icons/SvgIcon.mjs.map +1 -0
  261. package/build/components/Icons/Time.js +14 -12
  262. package/build/components/Icons/Time.js.map +1 -1
  263. package/build/components/Icons/Time.mjs +24 -0
  264. package/build/components/Icons/Time.mjs.map +1 -0
  265. package/build/components/Icons/Version.js +12 -10
  266. package/build/components/Icons/Version.js.map +1 -1
  267. package/build/components/Icons/Version.mjs +22 -0
  268. package/build/components/Icons/Version.mjs.map +1 -0
  269. package/build/components/Icons/index.js +38 -33
  270. package/build/components/Icons/index.mjs +38 -0
  271. package/build/components/Icons/index.mjs.map +1 -0
  272. package/build/components/Install/Install.js +44 -36
  273. package/build/components/Install/Install.js.map +1 -1
  274. package/build/components/Install/Install.mjs +66 -0
  275. package/build/components/Install/Install.mjs.map +1 -0
  276. package/build/components/Install/InstallListItem.js +66 -51
  277. package/build/components/Install/InstallListItem.js.map +1 -1
  278. package/build/components/Install/InstallListItem.mjs +109 -0
  279. package/build/components/Install/InstallListItem.mjs.map +1 -0
  280. package/build/components/Install/index.js +1 -1
  281. package/build/components/Install/index.mjs +1 -0
  282. package/build/components/Keywords/KeywordListItems.js +17 -12
  283. package/build/components/Keywords/KeywordListItems.js.map +1 -1
  284. package/build/components/Keywords/KeywordListItems.mjs +28 -0
  285. package/build/components/Keywords/KeywordListItems.mjs.map +1 -0
  286. package/build/components/Keywords/Keywords.js +22 -16
  287. package/build/components/Keywords/Keywords.js.map +1 -1
  288. package/build/components/Keywords/Keywords.mjs +29 -0
  289. package/build/components/Keywords/Keywords.mjs.map +1 -0
  290. package/build/components/Keywords/index.js +1 -1
  291. package/build/components/Keywords/index.mjs +1 -0
  292. package/build/components/Label/Label.js +20 -14
  293. package/build/components/Label/Label.js.map +1 -1
  294. package/build/components/Label/Label.mjs +23 -0
  295. package/build/components/Label/Label.mjs.map +1 -0
  296. package/build/components/Label/index.js +1 -1
  297. package/build/components/Label/index.mjs +1 -0
  298. package/build/components/Link/Link.js +23 -18
  299. package/build/components/Link/Link.js.map +1 -1
  300. package/build/components/Link/Link.mjs +37 -0
  301. package/build/components/Link/Link.mjs.map +1 -0
  302. package/build/components/Link/index.js +1 -1
  303. package/build/components/Link/index.mjs +1 -0
  304. package/build/components/LinkExternal/LinkExternal.js +15 -12
  305. package/build/components/LinkExternal/LinkExternal.js.map +1 -1
  306. package/build/components/LinkExternal/LinkExternal.mjs +21 -0
  307. package/build/components/LinkExternal/LinkExternal.mjs.map +1 -0
  308. package/build/components/LinkExternal/index.js +1 -1
  309. package/build/components/LinkExternal/index.mjs +1 -0
  310. package/build/components/Loading/Loading.js +12 -10
  311. package/build/components/Loading/Loading.js.map +1 -1
  312. package/build/components/Loading/Loading.mjs +16 -0
  313. package/build/components/Loading/Loading.mjs.map +1 -0
  314. package/build/components/Loading/Spinner/Spinner.js +20 -14
  315. package/build/components/Loading/Spinner/Spinner.js.map +1 -1
  316. package/build/components/Loading/Spinner/Spinner.mjs +32 -0
  317. package/build/components/Loading/Spinner/Spinner.mjs.map +1 -0
  318. package/build/components/Loading/Spinner/index.js +1 -1
  319. package/build/components/Loading/Spinner/index.mjs +1 -0
  320. package/build/components/Loading/index.js +1 -1
  321. package/build/components/Loading/index.mjs +1 -0
  322. package/build/components/Loading/styles.js +12 -8
  323. package/build/components/Loading/styles.js.map +1 -1
  324. package/build/components/Loading/styles.mjs +30 -0
  325. package/build/components/Loading/styles.mjs.map +1 -0
  326. package/build/components/LoginDialog/LoginDialog.js +25 -20
  327. package/build/components/LoginDialog/LoginDialog.js.map +1 -1
  328. package/build/components/LoginDialog/LoginDialog.mjs +31 -0
  329. package/build/components/LoginDialog/LoginDialog.mjs.map +1 -0
  330. package/build/components/LoginDialog/LoginDialogCloseButton.js +25 -18
  331. package/build/components/LoginDialog/LoginDialogCloseButton.js.map +1 -1
  332. package/build/components/LoginDialog/LoginDialogCloseButton.mjs +30 -0
  333. package/build/components/LoginDialog/LoginDialogCloseButton.mjs.map +1 -0
  334. package/build/components/LoginDialog/LoginDialogForm.js +15 -13
  335. package/build/components/LoginDialog/LoginDialogForm.js.map +1 -1
  336. package/build/components/LoginDialog/LoginDialogForm.mjs +19 -0
  337. package/build/components/LoginDialog/LoginDialogForm.mjs.map +1 -0
  338. package/build/components/LoginDialog/LoginDialogFormError.js +32 -22
  339. package/build/components/LoginDialog/LoginDialogFormError.js.map +1 -1
  340. package/build/components/LoginDialog/LoginDialogFormError.mjs +36 -0
  341. package/build/components/LoginDialog/LoginDialogFormError.mjs.map +1 -0
  342. package/build/components/LoginDialog/index.js +1 -1
  343. package/build/components/LoginDialog/index.mjs +1 -0
  344. package/build/components/LoginForm/Login.js +45 -36
  345. package/build/components/LoginForm/Login.js.map +1 -1
  346. package/build/components/LoginForm/Login.mjs +69 -0
  347. package/build/components/LoginForm/Login.mjs.map +1 -0
  348. package/build/components/LoginForm/PasswordField.js +24 -19
  349. package/build/components/LoginForm/PasswordField.js.map +1 -1
  350. package/build/components/LoginForm/PasswordField.mjs +34 -0
  351. package/build/components/LoginForm/PasswordField.mjs.map +1 -0
  352. package/build/components/LoginForm/UsernameField.js +24 -19
  353. package/build/components/LoginForm/UsernameField.js.map +1 -1
  354. package/build/components/LoginForm/UsernameField.mjs +32 -0
  355. package/build/components/LoginForm/UsernameField.mjs.map +1 -0
  356. package/build/components/LoginForm/styles.js +42 -32
  357. package/build/components/LoginForm/styles.js.map +1 -1
  358. package/build/components/LoginForm/styles.mjs +52 -0
  359. package/build/components/LoginForm/styles.mjs.map +1 -0
  360. package/build/components/LoginForm/useLoginForm.js +23 -18
  361. package/build/components/LoginForm/useLoginForm.js.map +1 -1
  362. package/build/components/LoginForm/useLoginForm.mjs +38 -0
  363. package/build/components/LoginForm/useLoginForm.mjs.map +1 -0
  364. package/build/components/Logo/Logo.js +44 -36
  365. package/build/components/Logo/Logo.js.map +1 -1
  366. package/build/components/Logo/Logo.mjs +74 -0
  367. package/build/components/Logo/Logo.mjs.map +1 -0
  368. package/build/components/Logo/img/logo-black-and-white.js +2 -2
  369. package/build/components/Logo/img/logo-black-and-white.js.map +1 -1
  370. package/build/components/Logo/img/logo-black-and-white.mjs +6 -0
  371. package/build/components/Logo/img/logo-black-and-white.mjs.map +1 -0
  372. package/build/components/Logo/img/logo.js +2 -2
  373. package/build/components/Logo/img/logo.js.map +1 -1
  374. package/build/components/Logo/img/logo.mjs +6 -0
  375. package/build/components/Logo/img/logo.mjs.map +1 -0
  376. package/build/components/Logo/index.js +1 -1
  377. package/build/components/Logo/index.mjs +1 -0
  378. package/build/components/MenuItem/MenuItem.js +18 -13
  379. package/build/components/MenuItem/MenuItem.js.map +1 -1
  380. package/build/components/MenuItem/MenuItem.mjs +30 -0
  381. package/build/components/MenuItem/MenuItem.mjs.map +1 -0
  382. package/build/components/MenuItem/index.js +1 -1
  383. package/build/components/MenuItem/index.mjs +1 -0
  384. package/build/components/NoItems/NoItems.js +13 -9
  385. package/build/components/NoItems/NoItems.js.map +1 -1
  386. package/build/components/NoItems/NoItems.mjs +16 -0
  387. package/build/components/NoItems/NoItems.mjs.map +1 -0
  388. package/build/components/NoItems/index.js +1 -1
  389. package/build/components/NoItems/index.mjs +1 -0
  390. package/build/components/NotFound/NotFound.js +37 -27
  391. package/build/components/NotFound/NotFound.js.map +1 -1
  392. package/build/components/NotFound/NotFound.mjs +70 -0
  393. package/build/components/NotFound/NotFound.mjs.map +1 -0
  394. package/build/components/NotFound/index.js +1 -1
  395. package/build/components/NotFound/index.mjs +1 -0
  396. package/build/components/Package/Package.js +146 -112
  397. package/build/components/Package/Package.js.map +1 -1
  398. package/build/components/Package/Package.mjs +188 -0
  399. package/build/components/Package/Package.mjs.map +1 -0
  400. package/build/components/Package/index.js +1 -1
  401. package/build/components/Package/index.mjs +1 -0
  402. package/build/components/Package/styles.js +70 -41
  403. package/build/components/Package/styles.js.map +1 -1
  404. package/build/components/Package/styles.mjs +142 -0
  405. package/build/components/Package/styles.mjs.map +1 -0
  406. package/build/components/PackageList/PackageList.js +64 -55
  407. package/build/components/PackageList/PackageList.js.map +1 -1
  408. package/build/components/PackageList/PackageList.mjs +71 -0
  409. package/build/components/PackageList/PackageList.mjs.map +1 -0
  410. package/build/components/PackageList/index.js +1 -1
  411. package/build/components/PackageList/index.mjs +1 -0
  412. package/build/components/Person/Person.js +28 -23
  413. package/build/components/Person/Person.js.map +1 -1
  414. package/build/components/Person/Person.mjs +39 -0
  415. package/build/components/Person/Person.mjs.map +1 -0
  416. package/build/components/Person/PersonTooltip.js +20 -17
  417. package/build/components/Person/PersonTooltip.js.map +1 -1
  418. package/build/components/Person/PersonTooltip.mjs +26 -0
  419. package/build/components/Person/PersonTooltip.mjs.map +1 -0
  420. package/build/components/Person/index.js +1 -1
  421. package/build/components/Person/index.mjs +1 -0
  422. package/build/components/Person/utils.js +11 -8
  423. package/build/components/Person/utils.js.map +1 -1
  424. package/build/components/Person/utils.mjs +14 -0
  425. package/build/components/Person/utils.mjs.map +1 -0
  426. package/build/components/RawViewer/RawViewer.js +41 -30
  427. package/build/components/RawViewer/RawViewer.js.map +1 -1
  428. package/build/components/RawViewer/RawViewer.mjs +58 -0
  429. package/build/components/RawViewer/RawViewer.mjs.map +1 -0
  430. package/build/components/RawViewer/index.js +1 -1
  431. package/build/components/RawViewer/index.mjs +1 -0
  432. package/build/components/Readme/Readme.js +30 -23
  433. package/build/components/Readme/Readme.js.map +1 -1
  434. package/build/components/Readme/Readme.mjs +45 -0
  435. package/build/components/Readme/Readme.mjs.map +1 -0
  436. package/build/components/Readme/index.js +1 -1
  437. package/build/components/Readme/index.mjs +1 -0
  438. package/build/components/Readme/utils.js +21 -18
  439. package/build/components/Readme/utils.js.map +1 -1
  440. package/build/components/Readme/utils.mjs +26 -0
  441. package/build/components/Readme/utils.mjs.map +1 -0
  442. package/build/components/RegistryInfoDialog/RegistryInfoDialog.js +23 -18
  443. package/build/components/RegistryInfoDialog/RegistryInfoDialog.js.map +1 -1
  444. package/build/components/RegistryInfoDialog/RegistryInfoDialog.mjs +32 -0
  445. package/build/components/RegistryInfoDialog/RegistryInfoDialog.mjs.map +1 -0
  446. package/build/components/RegistryInfoDialog/index.js +1 -1
  447. package/build/components/RegistryInfoDialog/index.mjs +1 -0
  448. package/build/components/RegistryInfoDialog/styles.js +19 -13
  449. package/build/components/RegistryInfoDialog/styles.js.map +1 -1
  450. package/build/components/RegistryInfoDialog/styles.mjs +25 -0
  451. package/build/components/RegistryInfoDialog/styles.mjs.map +1 -0
  452. package/build/components/Repository/Repository.js +63 -46
  453. package/build/components/Repository/Repository.js.map +1 -1
  454. package/build/components/Repository/Repository.mjs +96 -0
  455. package/build/components/Repository/Repository.mjs.map +1 -0
  456. package/build/components/Repository/index.js +1 -1
  457. package/build/components/Repository/index.mjs +1 -0
  458. package/build/components/Search/AutoComplete/AutoComplete.js +42 -27
  459. package/build/components/Search/AutoComplete/AutoComplete.js.map +1 -1
  460. package/build/components/Search/AutoComplete/AutoComplete.mjs +47 -0
  461. package/build/components/Search/AutoComplete/AutoComplete.mjs.map +1 -0
  462. package/build/components/Search/AutoComplete/index.js +1 -1
  463. package/build/components/Search/AutoComplete/index.mjs +1 -0
  464. package/build/components/Search/AutoComplete/styles.js +7 -5
  465. package/build/components/Search/AutoComplete/styles.js.map +1 -1
  466. package/build/components/Search/AutoComplete/styles.mjs +20 -0
  467. package/build/components/Search/AutoComplete/styles.mjs.map +1 -0
  468. package/build/components/Search/Search.js +121 -78
  469. package/build/components/Search/Search.js.map +1 -1
  470. package/build/components/Search/Search.mjs +133 -0
  471. package/build/components/Search/Search.mjs.map +1 -0
  472. package/build/components/Search/SearchItem.js +62 -47
  473. package/build/components/Search/SearchItem.js.map +1 -1
  474. package/build/components/Search/SearchItem.mjs +115 -0
  475. package/build/components/Search/SearchItem.mjs.map +1 -0
  476. package/build/components/Search/index.js +1 -1
  477. package/build/components/Search/index.mjs +1 -0
  478. package/build/components/Search/styles.js +17 -12
  479. package/build/components/Search/styles.js.map +1 -1
  480. package/build/components/Search/styles.mjs +32 -0
  481. package/build/components/Search/styles.mjs.map +1 -0
  482. package/build/components/Search/utils.js +13 -10
  483. package/build/components/Search/utils.js.map +1 -1
  484. package/build/components/Search/utils.mjs +19 -0
  485. package/build/components/Search/utils.mjs.map +1 -0
  486. package/build/components/SettingsMenu/SettingsMenu.js +84 -61
  487. package/build/components/SettingsMenu/SettingsMenu.js.map +1 -1
  488. package/build/components/SettingsMenu/SettingsMenu.mjs +111 -0
  489. package/build/components/SettingsMenu/SettingsMenu.mjs.map +1 -0
  490. package/build/components/SettingsMenu/index.js +1 -1
  491. package/build/components/SettingsMenu/index.mjs +1 -0
  492. package/build/components/SideBarTitle/SideBarTitle.js +47 -34
  493. package/build/components/SideBarTitle/SideBarTitle.js.map +1 -1
  494. package/build/components/SideBarTitle/SideBarTitle.mjs +79 -0
  495. package/build/components/SideBarTitle/SideBarTitle.mjs.map +1 -0
  496. package/build/components/SideBarTitle/index.js +1 -1
  497. package/build/components/SideBarTitle/index.mjs +1 -0
  498. package/build/components/SideBarTitle/utils.js +10 -7
  499. package/build/components/SideBarTitle/utils.js.map +1 -1
  500. package/build/components/SideBarTitle/utils.mjs +13 -0
  501. package/build/components/SideBarTitle/utils.mjs.map +1 -0
  502. package/build/components/UpLinks/UpLinks.js +46 -38
  503. package/build/components/UpLinks/UpLinks.js.map +1 -1
  504. package/build/components/UpLinks/UpLinks.mjs +60 -0
  505. package/build/components/UpLinks/UpLinks.mjs.map +1 -0
  506. package/build/components/UpLinks/UplinkLink.js +15 -13
  507. package/build/components/UpLinks/UplinkLink.js.map +1 -1
  508. package/build/components/UpLinks/UplinkLink.mjs +19 -0
  509. package/build/components/UpLinks/UplinkLink.mjs.map +1 -0
  510. package/build/components/UpLinks/index.js +2 -2
  511. package/build/components/UpLinks/index.mjs +2 -0
  512. package/build/components/UpLinks/styles.js +20 -12
  513. package/build/components/UpLinks/styles.js.map +1 -1
  514. package/build/components/UpLinks/styles.mjs +31 -0
  515. package/build/components/UpLinks/styles.mjs.map +1 -0
  516. package/build/components/Versions/HistoryList.js +51 -41
  517. package/build/components/Versions/HistoryList.js.map +1 -1
  518. package/build/components/Versions/HistoryList.mjs +67 -0
  519. package/build/components/Versions/HistoryList.mjs.map +1 -0
  520. package/build/components/Versions/TagList.js +26 -20
  521. package/build/components/Versions/TagList.js.map +1 -1
  522. package/build/components/Versions/TagList.mjs +33 -0
  523. package/build/components/Versions/TagList.mjs.map +1 -0
  524. package/build/components/Versions/Versions.js +73 -48
  525. package/build/components/Versions/Versions.js.map +1 -1
  526. package/build/components/Versions/Versions.mjs +92 -0
  527. package/build/components/Versions/Versions.mjs.map +1 -0
  528. package/build/components/Versions/index.js +2 -2
  529. package/build/components/Versions/index.mjs +2 -0
  530. package/build/components/Versions/styles.js +15 -10
  531. package/build/components/Versions/styles.js.map +1 -1
  532. package/build/components/Versions/styles.mjs +26 -0
  533. package/build/components/Versions/styles.mjs.map +1 -0
  534. package/build/configuration.js +6 -6
  535. package/build/configuration.js.map +1 -1
  536. package/build/configuration.mjs +23 -0
  537. package/build/configuration.mjs.map +1 -0
  538. package/build/hooks/index.js +2 -2
  539. package/build/hooks/index.mjs +2 -0
  540. package/build/hooks/useLocalStorage.js +28 -14
  541. package/build/hooks/useLocalStorage.js.map +1 -1
  542. package/build/hooks/useLocalStorage.mjs +37 -0
  543. package/build/hooks/useLocalStorage.mjs.map +1 -0
  544. package/build/hooks/useOnClickOutside.js +20 -9
  545. package/build/hooks/useOnClickOutside.js.map +1 -1
  546. package/build/hooks/useOnClickOutside.mjs +26 -0
  547. package/build/hooks/useOnClickOutside.mjs.map +1 -0
  548. package/build/index.js +225 -118
  549. package/build/index.mjs +118 -0
  550. package/build/layouts/Security/Dialog.js +14 -8
  551. package/build/layouts/Security/Dialog.js.map +1 -1
  552. package/build/layouts/Security/Dialog.mjs +23 -0
  553. package/build/layouts/Security/Dialog.mjs.map +1 -0
  554. package/build/layouts/Version/Version.js +31 -26
  555. package/build/layouts/Version/Version.js.map +1 -1
  556. package/build/layouts/Version/Version.mjs +32 -0
  557. package/build/layouts/Version/Version.mjs.map +1 -0
  558. package/build/layouts/Version/index.js +1 -1
  559. package/build/layouts/Version/index.mjs +1 -0
  560. package/build/pages/Front/Home.js +4 -4
  561. package/build/pages/Front/Home.js.map +1 -1
  562. package/build/pages/Front/Home.mjs +8 -0
  563. package/build/pages/Front/Home.mjs.map +1 -0
  564. package/build/pages/Front/index.js +2 -2
  565. package/build/pages/Front/index.mjs +2 -0
  566. package/build/pages/Security/AddUser.js +4 -4
  567. package/build/pages/Security/AddUser.js.map +1 -1
  568. package/build/pages/Security/AddUser.mjs +8 -0
  569. package/build/pages/Security/AddUser.mjs.map +1 -0
  570. package/build/pages/Security/ChangePassword.js +4 -4
  571. package/build/pages/Security/ChangePassword.js.map +1 -1
  572. package/build/pages/Security/ChangePassword.mjs +8 -0
  573. package/build/pages/Security/ChangePassword.mjs.map +1 -0
  574. package/build/pages/Security/Login.js +4 -4
  575. package/build/pages/Security/Login.js.map +1 -1
  576. package/build/pages/Security/Login.mjs +8 -0
  577. package/build/pages/Security/Login.mjs.map +1 -0
  578. package/build/pages/Security/Success.js +4 -4
  579. package/build/pages/Security/Success.js.map +1 -1
  580. package/build/pages/Security/Success.mjs +8 -0
  581. package/build/pages/Security/Success.mjs.map +1 -0
  582. package/build/pages/Security/index.js +4 -4
  583. package/build/pages/Security/index.mjs +4 -0
  584. package/build/pages/Version/Version.js +19 -13
  585. package/build/pages/Version/Version.js.map +1 -1
  586. package/build/pages/Version/Version.mjs +22 -0
  587. package/build/pages/Version/Version.mjs.map +1 -0
  588. package/build/pages/Version/index.js +2 -2
  589. package/build/pages/Version/index.mjs +2 -0
  590. package/build/providers/AppConfigurationProvider/AppConfigurationProvider.js +44 -34
  591. package/build/providers/AppConfigurationProvider/AppConfigurationProvider.js.map +1 -1
  592. package/build/providers/AppConfigurationProvider/AppConfigurationProvider.mjs +62 -0
  593. package/build/providers/AppConfigurationProvider/AppConfigurationProvider.mjs.map +1 -0
  594. package/build/providers/AppConfigurationProvider/index.js +1 -1
  595. package/build/providers/AppConfigurationProvider/index.mjs +1 -0
  596. package/build/providers/AuthProvider/AuthProvider.js +41 -25
  597. package/build/providers/AuthProvider/AuthProvider.js.map +1 -1
  598. package/build/providers/AuthProvider/AuthProvider.mjs +51 -0
  599. package/build/providers/AuthProvider/AuthProvider.mjs.map +1 -0
  600. package/build/providers/AuthProvider/index.js +1 -1
  601. package/build/providers/AuthProvider/index.mjs +1 -0
  602. package/build/providers/AuthProvider/utils.js +13 -12
  603. package/build/providers/AuthProvider/utils.js.map +1 -1
  604. package/build/providers/AuthProvider/utils.mjs +22 -0
  605. package/build/providers/AuthProvider/utils.mjs.map +1 -0
  606. package/build/providers/DownloadProvider/DownloadProvider.js +27 -21
  607. package/build/providers/DownloadProvider/DownloadProvider.js.map +1 -1
  608. package/build/providers/DownloadProvider/DownloadProvider.mjs +34 -0
  609. package/build/providers/DownloadProvider/DownloadProvider.mjs.map +1 -0
  610. package/build/providers/DownloadProvider/index.js +1 -1
  611. package/build/providers/DownloadProvider/index.mjs +1 -0
  612. package/build/providers/ManifestsProvider/ManifestsProvider.js +21 -15
  613. package/build/providers/ManifestsProvider/ManifestsProvider.js.map +1 -1
  614. package/build/providers/ManifestsProvider/ManifestsProvider.mjs +25 -0
  615. package/build/providers/ManifestsProvider/ManifestsProvider.mjs.map +1 -0
  616. package/build/providers/ManifestsProvider/index.js +1 -1
  617. package/build/providers/ManifestsProvider/index.mjs +1 -0
  618. package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.js +28 -19
  619. package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.js.map +1 -1
  620. package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.mjs +30 -0
  621. package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.mjs.map +1 -0
  622. package/build/providers/PersistenceSettingProvider/index.js +1 -1
  623. package/build/providers/PersistenceSettingProvider/index.mjs +1 -0
  624. package/build/providers/SearchProvider/SearchProvider.js +47 -36
  625. package/build/providers/SearchProvider/SearchProvider.js.map +1 -1
  626. package/build/providers/SearchProvider/SearchProvider.mjs +53 -0
  627. package/build/providers/SearchProvider/SearchProvider.mjs.map +1 -0
  628. package/build/providers/SearchProvider/index.js +1 -1
  629. package/build/providers/SearchProvider/index.mjs +1 -0
  630. package/build/providers/TranslatorProvider/TranslatorProvider.js +37 -24
  631. package/build/providers/TranslatorProvider/TranslatorProvider.js.map +1 -1
  632. package/build/providers/TranslatorProvider/TranslatorProvider.mjs +45 -0
  633. package/build/providers/TranslatorProvider/TranslatorProvider.mjs.map +1 -0
  634. package/build/providers/TranslatorProvider/index.js +1 -1
  635. package/build/providers/TranslatorProvider/index.mjs +1 -0
  636. package/build/providers/VersionProvider/VersionProvider.js +49 -36
  637. package/build/providers/VersionProvider/VersionProvider.js.map +1 -1
  638. package/build/providers/VersionProvider/VersionProvider.mjs +55 -0
  639. package/build/providers/VersionProvider/VersionProvider.mjs.map +1 -0
  640. package/build/providers/VersionProvider/index.js +1 -1
  641. package/build/providers/VersionProvider/index.mjs +1 -0
  642. package/build/providers/index.js +16 -16
  643. package/build/providers/index.mjs +16 -0
  644. package/build/sections/Detail/ContainerContent.js +28 -18
  645. package/build/sections/Detail/ContainerContent.js.map +1 -1
  646. package/build/sections/Detail/ContainerContent.mjs +34 -0
  647. package/build/sections/Detail/ContainerContent.mjs.map +1 -0
  648. package/build/sections/Detail/Detail.js +38 -26
  649. package/build/sections/Detail/Detail.js.map +1 -1
  650. package/build/sections/Detail/Detail.mjs +50 -0
  651. package/build/sections/Detail/Detail.mjs.map +1 -0
  652. package/build/sections/Detail/ReadmeSection.js +11 -6
  653. package/build/sections/Detail/ReadmeSection.js.map +1 -1
  654. package/build/sections/Detail/ReadmeSection.mjs +13 -0
  655. package/build/sections/Detail/ReadmeSection.mjs.map +1 -0
  656. package/build/sections/Detail/Tabs.js +36 -27
  657. package/build/sections/Detail/Tabs.js.map +1 -1
  658. package/build/sections/Detail/Tabs.mjs +59 -0
  659. package/build/sections/Detail/Tabs.mjs.map +1 -0
  660. package/build/sections/Detail/index.js +1 -1
  661. package/build/sections/Detail/index.mjs +1 -0
  662. package/build/sections/Footer/Footer.js +56 -46
  663. package/build/sections/Footer/Footer.js.map +1 -1
  664. package/build/sections/Footer/Footer.mjs +105 -0
  665. package/build/sections/Footer/Footer.mjs.map +1 -0
  666. package/build/sections/Footer/index.js +1 -1
  667. package/build/sections/Footer/index.mjs +1 -0
  668. package/build/sections/Footer/styles.js +31 -21
  669. package/build/sections/Footer/styles.js.map +1 -1
  670. package/build/sections/Footer/styles.mjs +65 -0
  671. package/build/sections/Footer/styles.mjs.map +1 -0
  672. package/build/sections/Header/Header.js +76 -63
  673. package/build/sections/Header/Header.js.map +1 -1
  674. package/build/sections/Header/Header.mjs +101 -0
  675. package/build/sections/Header/Header.mjs.map +1 -0
  676. package/build/sections/Header/HeaderGreetings.js +13 -11
  677. package/build/sections/Header/HeaderGreetings.js.map +1 -1
  678. package/build/sections/Header/HeaderGreetings.mjs +19 -0
  679. package/build/sections/Header/HeaderGreetings.mjs.map +1 -0
  680. package/build/sections/Header/HeaderLeft.js +17 -14
  681. package/build/sections/Header/HeaderLeft.js.map +1 -1
  682. package/build/sections/Header/HeaderLeft.mjs +33 -0
  683. package/build/sections/Header/HeaderLeft.mjs.map +1 -0
  684. package/build/sections/Header/HeaderMenu.js +27 -22
  685. package/build/sections/Header/HeaderMenu.js.map +1 -1
  686. package/build/sections/Header/HeaderMenu.mjs +45 -0
  687. package/build/sections/Header/HeaderMenu.mjs.map +1 -0
  688. package/build/sections/Header/HeaderRight.js +68 -47
  689. package/build/sections/Header/HeaderRight.js.map +1 -1
  690. package/build/sections/Header/HeaderRight.mjs +95 -0
  691. package/build/sections/Header/HeaderRight.mjs.map +1 -0
  692. package/build/sections/Header/HeaderSettingsDialog.js +70 -59
  693. package/build/sections/Header/HeaderSettingsDialog.js.map +1 -1
  694. package/build/sections/Header/HeaderSettingsDialog.mjs +99 -0
  695. package/build/sections/Header/HeaderSettingsDialog.mjs.map +1 -0
  696. package/build/sections/Header/HeaderToolTip.js +9 -7
  697. package/build/sections/Header/HeaderToolTip.js.map +1 -1
  698. package/build/sections/Header/HeaderToolTip.mjs +12 -0
  699. package/build/sections/Header/HeaderToolTip.mjs.map +1 -0
  700. package/build/sections/Header/HeaderToolTipIcon.js +38 -31
  701. package/build/sections/Header/HeaderToolTipIcon.js.map +1 -1
  702. package/build/sections/Header/HeaderToolTipIcon.mjs +58 -0
  703. package/build/sections/Header/HeaderToolTipIcon.mjs.map +1 -0
  704. package/build/sections/Header/LanguageSwitch.js +75 -51
  705. package/build/sections/Header/LanguageSwitch.js.map +1 -1
  706. package/build/sections/Header/LanguageSwitch.mjs +99 -0
  707. package/build/sections/Header/LanguageSwitch.mjs.map +1 -0
  708. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.js +136 -105
  709. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.js.map +1 -1
  710. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.mjs +199 -0
  711. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.mjs.map +1 -0
  712. package/build/sections/Header/RegistryInfoContent/index.js +1 -1
  713. package/build/sections/Header/RegistryInfoContent/index.mjs +1 -0
  714. package/build/sections/Header/RegistryInfoContent/styles.js +10 -6
  715. package/build/sections/Header/RegistryInfoContent/styles.js.map +1 -1
  716. package/build/sections/Header/RegistryInfoContent/styles.mjs +20 -0
  717. package/build/sections/Header/RegistryInfoContent/styles.mjs.map +1 -0
  718. package/build/sections/Header/index.js +1 -1
  719. package/build/sections/Header/index.mjs +1 -0
  720. package/build/sections/Header/styles.js +60 -37
  721. package/build/sections/Header/styles.js.map +1 -1
  722. package/build/sections/Header/styles.mjs +126 -0
  723. package/build/sections/Header/styles.mjs.map +1 -0
  724. package/build/sections/Home/Home.js +14 -11
  725. package/build/sections/Home/Home.js.map +1 -1
  726. package/build/sections/Home/Home.mjs +20 -0
  727. package/build/sections/Home/Home.mjs.map +1 -0
  728. package/build/sections/Home/index.js +1 -1
  729. package/build/sections/Home/index.mjs +1 -0
  730. package/build/sections/Security/AddUser.js +84 -68
  731. package/build/sections/Security/AddUser.js.map +1 -1
  732. package/build/sections/Security/AddUser.mjs +132 -0
  733. package/build/sections/Security/AddUser.mjs.map +1 -0
  734. package/build/sections/Security/ChangePassword.js +83 -71
  735. package/build/sections/Security/ChangePassword.js.map +1 -1
  736. package/build/sections/Security/ChangePassword.mjs +123 -0
  737. package/build/sections/Security/ChangePassword.mjs.map +1 -0
  738. package/build/sections/Security/Login.js +70 -54
  739. package/build/sections/Security/Login.js.map +1 -1
  740. package/build/sections/Security/Login.mjs +94 -0
  741. package/build/sections/Security/Login.mjs.map +1 -0
  742. package/build/sections/Security/Success.js +39 -26
  743. package/build/sections/Security/Success.js.map +1 -1
  744. package/build/sections/Security/Success.mjs +51 -0
  745. package/build/sections/Security/Success.mjs.map +1 -0
  746. package/build/sections/Security/index.js +4 -4
  747. package/build/sections/Security/index.mjs +4 -0
  748. package/build/sections/Security/styles.js +19 -14
  749. package/build/sections/Security/styles.js.map +1 -1
  750. package/build/sections/Security/styles.mjs +29 -0
  751. package/build/sections/Security/styles.mjs.map +1 -0
  752. package/build/sections/Security/utils.js +14 -11
  753. package/build/sections/Security/utils.js.map +1 -1
  754. package/build/sections/Security/utils.mjs +19 -0
  755. package/build/sections/Security/utils.mjs.map +1 -0
  756. package/build/sections/SideBar/Sidebar.js +73 -64
  757. package/build/sections/SideBar/Sidebar.js.map +1 -1
  758. package/build/sections/SideBar/Sidebar.mjs +93 -0
  759. package/build/sections/SideBar/Sidebar.mjs.map +1 -0
  760. package/build/sections/SideBar/index.js +1 -1
  761. package/build/sections/SideBar/index.mjs +1 -0
  762. package/build/sections/index.js +4 -4
  763. package/build/sections/index.mjs +4 -0
  764. package/build/store/api.js +57 -41
  765. package/build/store/api.js.map +1 -1
  766. package/build/store/api.mjs +76 -0
  767. package/build/store/api.mjs.map +1 -0
  768. package/build/store/index.js +1 -1
  769. package/build/store/index.mjs +1 -0
  770. package/build/store/routes.js +13 -3
  771. package/build/store/routes.js.map +1 -1
  772. package/build/store/routes.mjs +18 -0
  773. package/build/store/routes.mjs.map +1 -0
  774. package/build/store/storage.js +22 -13
  775. package/build/store/storage.js.map +1 -1
  776. package/build/store/storage.mjs +29 -0
  777. package/build/store/storage.mjs.map +1 -0
  778. package/build/store/utils.js +5 -4
  779. package/build/store/utils.js.map +1 -1
  780. package/build/store/utils.mjs +9 -0
  781. package/build/store/utils.mjs.map +1 -0
  782. package/build/ui-components.css +1198 -1
  783. package/build/utils/cli-utils.js +19 -16
  784. package/build/utils/cli-utils.js.map +1 -1
  785. package/build/utils/cli-utils.mjs +26 -0
  786. package/build/utils/cli-utils.mjs.map +1 -0
  787. package/build/utils/index.js +6 -6
  788. package/build/utils/index.mjs +6 -0
  789. package/build/utils/loadable.js +18 -7
  790. package/build/utils/loadable.js.map +1 -1
  791. package/build/utils/loadable.mjs +23 -0
  792. package/build/utils/loadable.mjs.map +1 -0
  793. package/build/utils/routes.js +26 -5
  794. package/build/utils/routes.js.map +1 -1
  795. package/build/utils/routes.mjs +30 -0
  796. package/build/utils/routes.mjs.map +1 -0
  797. package/build/utils/schemas.js +22 -14
  798. package/build/utils/schemas.js.map +1 -1
  799. package/build/utils/schemas.mjs +22 -0
  800. package/build/utils/schemas.mjs.map +1 -0
  801. package/build/utils/token.js +19 -15
  802. package/build/utils/token.js.map +1 -1
  803. package/build/utils/token.mjs +23 -0
  804. package/build/utils/token.mjs.map +1 -0
  805. package/build/utils/url.js +50 -30
  806. package/build/utils/url.js.map +1 -1
  807. package/build/utils/url.mjs +61 -0
  808. package/build/utils/url.mjs.map +1 -0
  809. package/build/utils/utils.js +93 -49
  810. package/build/utils/utils.js.map +1 -1
  811. package/build/utils/utils.mjs +93 -0
  812. package/build/utils/utils.mjs.map +1 -0
  813. package/package.json +17 -9
@@ -0,0 +1,47 @@
1
+ import { Wrapper } from "./styles.mjs";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import { useState } from "react";
4
+ import { useTranslation } from "react-i18next";
5
+ import Autocomplete from "@mui/material/Autocomplete";
6
+ //#region src/components/Search/AutoComplete/AutoComplete.tsx
7
+ var AutoComplete = ({ suggestions = [], onSuggestionsFetch, onCleanSuggestions, renderInput, renderOption, getOptionLabel, onSelectItem, suggestionsLoading = false }) => {
8
+ const { t } = useTranslation();
9
+ const [inputValue, setInputValue] = useState("");
10
+ const handleOnInputChange = (event, value, reason) => {
11
+ if (reason === "input") {
12
+ event.preventDefault();
13
+ onSuggestionsFetch({ value });
14
+ setInputValue(value);
15
+ } else if (reason === "clear") {
16
+ onCleanSuggestions(event);
17
+ setInputValue("");
18
+ }
19
+ };
20
+ const handleOnClose = (event) => {
21
+ onCleanSuggestions(event);
22
+ setInputValue("");
23
+ };
24
+ return /* @__PURE__ */ jsx(Wrapper, { children: /* @__PURE__ */ jsx(Autocomplete, {
25
+ clearOnBlur: true,
26
+ disablePortal: true,
27
+ filterOptions: (options, state) => state.inputValue.trim() ? options : [],
28
+ fullWidth: true,
29
+ getOptionLabel,
30
+ id: "search-header-suggest",
31
+ inputValue,
32
+ loading: suggestionsLoading,
33
+ loadingText: t("autoComplete.loading"),
34
+ noOptionsText: t("autoComplete.no-results-found"),
35
+ onChange: onSelectItem,
36
+ onClose: handleOnClose,
37
+ onInputChange: handleOnInputChange,
38
+ options: suggestions,
39
+ renderInput,
40
+ renderOption,
41
+ renderTags: () => null
42
+ }) });
43
+ };
44
+ //#endregion
45
+ export { AutoComplete as default };
46
+
47
+ //# sourceMappingURL=AutoComplete.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AutoComplete.mjs","names":["Autocomplete","FC","React","useState","useTranslation","SearchResultWeb","Wrapper","OnSelecItem","event","SyntheticEvent","value","reason","details","Props","suggestions","suggestionsLoading","placeholder","renderOption","props","option","JSX","Element","renderInput","params","onSuggestionsFetch","getOptionLabel","onCleanSuggestions","onSelectItem","AutoComplete","t","inputValue","setInputValue","handleOnInputChange","preventDefault","handleOnClose","options","state","trim"],"sources":["../../../../src/components/Search/AutoComplete/AutoComplete.tsx"],"sourcesContent":["import Autocomplete from '@mui/material/Autocomplete';\nimport type { FC } from 'react';\nimport React, { useState } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport type { SearchResultWeb } from '@verdaccio/types';\n\nimport { Wrapper } from './styles';\n\nexport type OnSelecItem = (\n event: React.SyntheticEvent,\n value: SearchResultWeb,\n reason: string,\n details?: string\n) => void;\ninterface Props {\n suggestions?: SearchResultWeb[];\n suggestionsLoading?: boolean;\n placeholder: string;\n renderOption?: (props: any, option: any) => JSX.Element;\n renderInput: (params: any) => JSX.Element;\n onSuggestionsFetch: any;\n getOptionLabel: (option: any) => any;\n onCleanSuggestions: (event: React.SyntheticEvent) => void;\n onSelectItem: OnSelecItem;\n}\n\nconst AutoComplete: FC<Props> = ({\n suggestions = [],\n onSuggestionsFetch,\n onCleanSuggestions,\n renderInput,\n renderOption,\n getOptionLabel,\n onSelectItem,\n suggestionsLoading = false,\n}: Props) => {\n const { t } = useTranslation();\n const [inputValue, setInputValue] = useState('');\n\n const handleOnInputChange = (event: React.SyntheticEvent, value: string, reason: string) => {\n if (reason === 'input') {\n event.preventDefault();\n onSuggestionsFetch({ value });\n setInputValue(value);\n } else if (reason === 'clear') {\n onCleanSuggestions(event);\n setInputValue('');\n }\n };\n\n const handleOnClose = (event) => {\n onCleanSuggestions(event);\n setInputValue('');\n };\n\n // @ts-ignore\n return (\n <Wrapper>\n <Autocomplete\n /* @ts-ignore */\n clearOnBlur={true}\n disablePortal={true}\n filterOptions={(options, state) => (state.inputValue.trim() ? options : [])}\n fullWidth={true}\n getOptionLabel={getOptionLabel}\n id=\"search-header-suggest\"\n inputValue={inputValue}\n loading={suggestionsLoading}\n loadingText={t('autoComplete.loading')}\n noOptionsText={t('autoComplete.no-results-found')}\n onChange={onSelectItem as any}\n onClose={handleOnClose}\n onInputChange={handleOnInputChange}\n options={suggestions}\n renderInput={renderInput}\n renderOption={renderOption}\n renderTags={() => null}\n />\n </Wrapper>\n );\n};\n\nexport default AutoComplete;\n"],"mappings":";;;;;;AA2BA,IAAM4B,gBAA2B,EAC/Bd,cAAc,EAAE,EAChBU,oBACAE,oBACAJ,aACAL,cACAQ,gBACAE,cACAZ,qBAAqB,YACV;CACX,MAAM,EAAEc,MAAMzB,gBAAgB;CAC9B,MAAM,CAAC0B,YAAYC,iBAAiB5B,SAAS,GAAG;CAEhD,MAAM6B,uBAAuBxB,OAA6BE,OAAeC,WAAmB;AAC1F,MAAIA,WAAW,SAAS;AACtBH,SAAMyB,gBAAgB;AACtBT,sBAAmB,EAAEd,OAAO,CAAC;AAC7BqB,iBAAcrB,MAAM;aACXC,WAAW,SAAS;AAC7Be,sBAAmBlB,MAAM;AACzBuB,iBAAc,GAAG;;;CAIrB,MAAMG,iBAAiB1B,UAAU;AAC/BkB,qBAAmBlB,MAAM;AACzBuB,gBAAc,GAAG;;AAInB,QACE,oBAAC,SAAD,EAAA,UACE,oBAAC,cAAD;EAEE,aAAa;EACb,eAAe;EACf,gBAAgBI,SAASC,UAAWA,MAAMN,WAAWO,MAAM,GAAGF,UAAU,EAAG;EAC3E,WAAW;EACKV;EAChB,IAAG;EACSK;EACZ,SAASf;EACT,aAAac,EAAE,uBAAuB;EACtC,eAAeA,EAAE,gCAAgC;EACjD,UAAUF;EACV,SAASO;EACT,eAAeF;EACf,SAASlB;EACIQ;EACCL;EACd,kBAAkB;EAAK,CAAA,EAEjB,CAAA"}
@@ -1 +1 @@
1
- import "./AutoComplete.js";
1
+ require("./AutoComplete.js");
@@ -0,0 +1 @@
1
+ import "./AutoComplete.mjs";
@@ -1,9 +1,11 @@
1
- import e from "@emotion/styled/base";
1
+ const require_runtime = require("../../../_virtual/_rolldown/runtime.js");
2
+ let _emotion_styled_base = require("@emotion/styled/base");
3
+ _emotion_styled_base = require_runtime.__toESM(_emotion_styled_base);
2
4
  //#region src/components/Search/AutoComplete/styles.ts
3
- function t() {
5
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() {
4
6
  return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).";
5
7
  }
6
- var n = /* @__PURE__ */ e("div", process.env.NODE_ENV === "production" ? { target: "e17sb8qr0" } : {
8
+ var Wrapper = /* @__PURE__ */ (0, _emotion_styled_base.default)("div", process.env.NODE_ENV === "production" ? { target: "e17sb8qr0" } : {
7
9
  target: "e17sb8qr0",
8
10
  label: "Wrapper"
9
11
  })(process.env.NODE_ENV === "production" ? {
@@ -12,9 +14,9 @@ var n = /* @__PURE__ */ e("div", process.env.NODE_ENV === "production" ? { targe
12
14
  } : {
13
15
  name: "1ayuow2",
14
16
  styles: "width:100%;position:relative;z-index:1/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3ZlcmRhY2Npby92ZXJkYWNjaW8vcGFja2FnZXMvdWktY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9TZWFyY2gvQXV0b0NvbXBsZXRlL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFdUIiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdmVyZGFjY2lvL3ZlcmRhY2Npby9wYWNrYWdlcy91aS1jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL1NlYXJjaC9BdXRvQ29tcGxldGUvc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG5leHBvcnQgY29uc3QgV3JhcHBlciA9IHN0eWxlZCgnZGl2Jykoe1xuICB3aWR0aDogJzEwMCUnLFxuICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcbiAgekluZGV4OiAxLFxufSk7XG4iXX0= */",
15
- toString: t
17
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
16
18
  });
17
19
  //#endregion
18
- export { n as Wrapper };
20
+ exports.Wrapper = Wrapper;
19
21
 
20
22
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["Wrapper","_styled","process","env","NODE_ENV","target","label","name","styles","toString","_EMOTION_STRINGIFIED_CSS_ERROR__"],"sources":["../../../../src/components/Search/AutoComplete/styles.ts"],"sourcesContent":["import styled from '@emotion/styled';\n\nexport const Wrapper = styled('div')({\n width: '100%',\n position: 'relative',\n zIndex: 1,\n});\n"],"mappings":";;;;;AAEA,IAAaA,IAAUC,kBAAO,OAAA,QAAA,IAAA,aAAK,eAAA,EAAAI,QAAA,aAAA,GAAA;CAAAA,QAAA;CAAAC,OAAA;CAAA,CAAC,CAAA,QAAA,IAAA,aAAA,eAAA;CAAAC,MAAA;CAAAC,QAAA;CAAA,GAAA;CAAAD,MAAA;CAAAC,QAAA;CAAAC,UAAAC;CAInC,CAAC"}
1
+ {"version":3,"file":"styles.js","names":["Wrapper","_styled","process","env","NODE_ENV","target","label","name","styles","toString","_EMOTION_STRINGIFIED_CSS_ERROR__"],"sources":["../../../../src/components/Search/AutoComplete/styles.ts"],"sourcesContent":["import styled from '@emotion/styled';\n\nexport const Wrapper = styled('div')({\n width: '100%',\n position: 'relative',\n zIndex: 1,\n});\n"],"mappings":";;;;;;;AAEA,IAAaA,UAAUC,iBAAAA,GAAAA,qBAAAA,SAAO,OAAA,QAAA,IAAA,aAAK,eAAA,EAAAI,QAAA,aAAA,GAAA;CAAAA,QAAA;CAAAC,OAAA;CAAA,CAAC,CAAA,QAAA,IAAA,aAAA,eAAA;CAAAC,MAAA;CAAAC,QAAA;CAAA,GAAA;CAAAD,MAAA;CAAAC,QAAA;CAAAC,UAAAC;CAInC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import _styled from "@emotion/styled/base";
2
+ //#region src/components/Search/AutoComplete/styles.ts
3
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() {
4
+ return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).";
5
+ }
6
+ var Wrapper = /* @__PURE__ */ _styled("div", process.env.NODE_ENV === "production" ? { target: "e17sb8qr0" } : {
7
+ target: "e17sb8qr0",
8
+ label: "Wrapper"
9
+ })(process.env.NODE_ENV === "production" ? {
10
+ name: "1ayuow2",
11
+ styles: "width:100%;position:relative;z-index:1"
12
+ } : {
13
+ name: "1ayuow2",
14
+ styles: "width:100%;position:relative;z-index:1/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3ZlcmRhY2Npby92ZXJkYWNjaW8vcGFja2FnZXMvdWktY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9TZWFyY2gvQXV0b0NvbXBsZXRlL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFdUIiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdmVyZGFjY2lvL3ZlcmRhY2Npby9wYWNrYWdlcy91aS1jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL1NlYXJjaC9BdXRvQ29tcGxldGUvc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG5leHBvcnQgY29uc3QgV3JhcHBlciA9IHN0eWxlZCgnZGl2Jykoe1xuICB3aWR0aDogJzEwMCUnLFxuICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcbiAgekluZGV4OiAxLFxufSk7XG4iXX0= */",
15
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
16
+ });
17
+ //#endregion
18
+ export { Wrapper };
19
+
20
+ //# sourceMappingURL=styles.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.mjs","names":["Wrapper","_styled","process","env","NODE_ENV","target","label","name","styles","toString","_EMOTION_STRINGIFIED_CSS_ERROR__"],"sources":["../../../../src/components/Search/AutoComplete/styles.ts"],"sourcesContent":["import styled from '@emotion/styled';\n\nexport const Wrapper = styled('div')({\n width: '100%',\n position: 'relative',\n zIndex: 1,\n});\n"],"mappings":";;;;;AAEA,IAAaA,UAAUC,wBAAO,OAAA,QAAA,IAAA,aAAK,eAAA,EAAAI,QAAA,aAAA,GAAA;CAAAA,QAAA;CAAAC,OAAA;CAAA,CAAC,CAAA,QAAA,IAAA,aAAA,eAAA;CAAAC,MAAA;CAAAC,QAAA;CAAA,GAAA;CAAAD,MAAA;CAAAC,QAAA;CAAAC,UAAAC;CAInC,CAAC"}
@@ -1,94 +1,137 @@
1
- import { Route as e } from "../../utils/routes.js";
2
- import "../../utils/index.js";
3
- import { useConfig as t } from "../../providers/AppConfigurationProvider/AppConfigurationProvider.js";
4
- import { useSearch as n } from "../../providers/SearchProvider/SearchProvider.js";
5
- import r from "./AutoComplete/AutoComplete.js";
6
- import "./AutoComplete/index.js";
7
- import i from "./SearchItem.js";
8
- import { StyledInputAdornment as a, StyledTextField as o } from "./styles.js";
9
- import "../../index.js";
10
- import { jsx as s } from "react/jsx-runtime";
11
- import { useCallback as c, useEffect as l, useRef as u } from "react";
12
- import { useTranslation as d } from "react-i18next";
13
- import { useNavigate as f } from "react-router";
14
- import p from "lodash/debounce";
15
- import m from "@mui/icons-material/Search";
1
+ const require_runtime = require("../../_virtual/_rolldown/runtime.js");
2
+ const require_routes = require("../../utils/routes.js");
3
+ require("../../utils/index.js");
4
+ const require_AppConfigurationProvider = require("../../providers/AppConfigurationProvider/AppConfigurationProvider.js");
5
+ const require_SearchProvider = require("../../providers/SearchProvider/SearchProvider.js");
6
+ const require_AutoComplete = require("./AutoComplete/AutoComplete.js");
7
+ require("./AutoComplete/index.js");
8
+ const require_SearchItem = require("./SearchItem.js");
9
+ const require_styles = require("./styles.js");
10
+ require("../../index.js");
11
+ let react_jsx_runtime = require("react/jsx-runtime");
12
+ let react = require("react");
13
+ react = require_runtime.__toESM(react);
14
+ let react_i18next = require("react-i18next");
15
+ let react_router = require("react-router");
16
+ let lodash_debounce = require("lodash/debounce");
17
+ lodash_debounce = require_runtime.__toESM(lodash_debounce);
18
+ let _mui_icons_material_Search = require("@mui/icons-material/Search");
19
+ _mui_icons_material_Search = require_runtime.__toESM(_mui_icons_material_Search);
16
20
  //#region src/components/Search/Search.tsx
17
- var h = {
21
+ var CONSTANTS = {
18
22
  API_DELAY: 300,
19
23
  ABORT_ERROR: "AbortError"
20
- }, g = () => {
21
- let { t: g } = d(), _ = f(), { searchResults: v, isLoading: y, doSearch: b } = n(), { configOptions: { flags: x } } = t(), S = x?.searchRemote ?? !1, C = u(null), w = c(() => {
22
- C.current &&= (C.current.abort(), null);
24
+ };
25
+ var Search = () => {
26
+ const { t } = (0, react_i18next.useTranslation)();
27
+ const navigate = (0, react_router.useNavigate)();
28
+ const { searchResults, isLoading, doSearch } = require_SearchProvider.useSearch();
29
+ const { configOptions: { flags } } = require_AppConfigurationProvider.useConfig();
30
+ const searchRemote = flags?.searchRemote ?? false;
31
+ const abortControllerRef = (0, react.useRef)(null);
32
+ const cancelAllSearchRequests = (0, react.useCallback)(() => {
33
+ if (abortControllerRef.current) {
34
+ abortControllerRef.current.abort();
35
+ abortControllerRef.current = null;
36
+ }
23
37
  }, []);
24
- return l(() => () => w(), [w]), /* @__PURE__ */ s(r, {
25
- getOptionLabel: (e) => e?.package?.name,
26
- onCleanSuggestions: c((e) => {
27
- e.stopPropagation(), w();
28
- }, [w]),
29
- onSelectItem: c((t, n, r) => {
30
- if (t.stopPropagation(), r === "selectOption") {
31
- let t = S ? n.package.name : n.name;
32
- _(`${e.DETAIL}${t}`);
33
- }
34
- }, [_, S]),
35
- onSuggestionsFetch: p(c(async ({ value: e }) => {
36
- if (e?.trim() !== "") {
37
- w();
38
- let t = new AbortController();
39
- C.current = t;
40
- try {
41
- await b?.({
42
- text: e,
43
- signal: t.signal
44
- });
45
- } catch (e) {
46
- e.name === h.ABORT_ERROR ? console.warn("Search request aborted") : console.error("Search error:", e);
47
- }
38
+ const handleOnBlur = (0, react.useCallback)((event) => {
39
+ event.stopPropagation();
40
+ cancelAllSearchRequests();
41
+ }, [cancelAllSearchRequests]);
42
+ const handleClickSearch = (0, react.useCallback)((event, value, reason) => {
43
+ event.stopPropagation();
44
+ if (reason === "selectOption") {
45
+ const pkgName = value["package"]?.name ?? value.name;
46
+ navigate(`${require_routes.Route.DETAIL}${pkgName}`);
47
+ }
48
+ }, [navigate, searchRemote]);
49
+ const doSearchRef = (0, react.useRef)(doSearch);
50
+ doSearchRef.current = doSearch;
51
+ /**
52
+ * Stable fetch function that reads the latest doSearch from a ref,
53
+ * avoiding dependency changes that would break the debounce.
54
+ */
55
+ const handleFetchPackages = (0, react.useCallback)(async ({ value }) => {
56
+ if (value?.trim() !== "") {
57
+ cancelAllSearchRequests();
58
+ const controller = new AbortController();
59
+ abortControllerRef.current = controller;
60
+ try {
61
+ await doSearchRef.current?.({
62
+ text: value,
63
+ signal: controller.signal
64
+ });
65
+ } catch (err) {
66
+ if (err.name === CONSTANTS.ABORT_ERROR) console.warn("Search request aborted");
67
+ else console.error("Search error:", err);
48
68
  }
49
- }, [b, w]), h.API_DELAY),
50
- placeholder: g("search.packages"),
51
- renderInput: (e) => /* @__PURE__ */ s(o, {
52
- ...e,
69
+ }
70
+ }, [cancelAllSearchRequests]);
71
+ const debouncedFetch = (0, react.useMemo)(() => (0, lodash_debounce.default)(handleFetchPackages, CONSTANTS.API_DELAY), [handleFetchPackages]);
72
+ (0, react.useEffect)(() => {
73
+ return () => {
74
+ debouncedFetch.cancel?.();
75
+ cancelAllSearchRequests();
76
+ };
77
+ }, [debouncedFetch, cancelAllSearchRequests]);
78
+ const renderOption = (props, option) => {
79
+ const { key, ...otherProps } = props;
80
+ if (searchRemote) {
81
+ const item = option.package;
82
+ const isPrivate = option?.verdaccioPrivate;
83
+ const isCached = option?.verdaccioPkgCached;
84
+ const isRemote = !isCached && !isPrivate;
85
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_SearchItem.default, {
86
+ ...otherProps,
87
+ description: item?.description,
88
+ isCached,
89
+ isPrivate,
90
+ isRemote,
91
+ name: item?.name,
92
+ version: item?.version
93
+ }, key);
94
+ } else {
95
+ const item = option.package;
96
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_SearchItem.default, {
97
+ ...otherProps,
98
+ description: item?.description,
99
+ name: item?.name,
100
+ version: item?.version
101
+ }, key);
102
+ }
103
+ };
104
+ const renderInput = (params) => {
105
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.StyledTextField, {
106
+ ...params,
53
107
  InputProps: {
54
- ...e.InputProps,
55
- startAdornment: /* @__PURE__ */ s(a, {
108
+ ...params.InputProps,
109
+ startAdornment: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.StyledInputAdornment, {
56
110
  position: "start",
57
- children: /* @__PURE__ */ s(m, {})
111
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mui_icons_material_Search.default, {})
58
112
  })
59
113
  },
60
114
  label: "",
61
- placeholder: g("search.packages"),
115
+ placeholder: t("search.packages"),
62
116
  variant: "standard"
63
- }),
64
- renderOption: (e, t) => {
65
- let { key: n, ...r } = e;
66
- if (S) {
67
- let e = t.package, a = t?.verdaccioPrivate, o = t?.verdaccioPkgCached, c = !o && !a;
68
- return /* @__PURE__ */ s(i, {
69
- ...r,
70
- description: e?.description,
71
- isCached: o,
72
- isPrivate: a,
73
- isRemote: c,
74
- name: e?.name,
75
- version: e?.version
76
- }, n);
77
- } else {
78
- let e = t.package;
79
- return /* @__PURE__ */ s(i, {
80
- ...r,
81
- description: e?.description,
82
- name: e?.name,
83
- version: e?.version
84
- }, n);
85
- }
86
- },
87
- suggestions: v,
88
- suggestionsLoading: y
117
+ });
118
+ };
119
+ const getOptionLabel = (option) => {
120
+ return option?.package?.name;
121
+ };
122
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_AutoComplete.default, {
123
+ getOptionLabel,
124
+ onCleanSuggestions: handleOnBlur,
125
+ onSelectItem: handleClickSearch,
126
+ onSuggestionsFetch: debouncedFetch,
127
+ placeholder: t("search.packages"),
128
+ renderInput,
129
+ renderOption,
130
+ suggestions: searchResults,
131
+ suggestionsLoading: isLoading
89
132
  });
90
133
  };
91
134
  //#endregion
92
- export { g as default };
135
+ exports.default = Search;
93
136
 
94
137
  //# sourceMappingURL=Search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Search.js","names":["SearchMui","debounce","React","useCallback","useEffect","useRef","useTranslation","useNavigate","SearchResultWeb","useConfig","useSearch","Route","AutoComplete","SearchItem","StyledInputAdornment","StyledTextField","CONSTANTS","API_DELAY","ABORT_ERROR","Search","FC","t","navigate","searchResults","isLoading","doSearch","configOptions","flags","searchRemote","abortControllerRef","AbortController","cancelAllSearchRequests","current","abort","handleOnBlur","event","SyntheticEvent","stopPropagation","handleClickSearch","value","reason","pkgName","name","DETAIL","handleFetchPackages","trim","controller","text","signal","err","console","warn","error","renderOption","props","option","key","otherProps","item","package","isPrivate","verdaccioPrivate","isCached","verdaccioPkgCached","isRemote","description","version","renderInput","params","InputProps","startAdornment","getOptionLabel"],"sources":["../../../src/components/Search/Search.tsx"],"sourcesContent":["import SearchMui from '@mui/icons-material/Search';\nimport debounce from 'lodash/debounce';\nimport React, { useCallback, useEffect, useRef } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useNavigate } from 'react-router';\n\nimport type { SearchResultWeb } from '@verdaccio/types';\n\nimport { useConfig, useSearch } from '../../';\nimport { Route } from '../../utils';\nimport AutoComplete from './AutoComplete';\nimport SearchItem from './SearchItem';\nimport { StyledInputAdornment, StyledTextField } from './styles';\n\nconst CONSTANTS = {\n API_DELAY: 300,\n ABORT_ERROR: 'AbortError',\n};\n\nconst Search: React.FC = () => {\n const { t } = useTranslation();\n const navigate = useNavigate();\n const { searchResults, isLoading, doSearch } = useSearch();\n const {\n configOptions: { flags },\n } = useConfig();\n const searchRemote = flags?.searchRemote ?? false;\n\n const abortControllerRef = useRef<AbortController | null>(null);\n\n const cancelAllSearchRequests = useCallback(() => {\n if (abortControllerRef.current) {\n abortControllerRef.current.abort();\n abortControllerRef.current = null;\n }\n }, []);\n\n useEffect(() => {\n return () => cancelAllSearchRequests();\n }, [cancelAllSearchRequests]);\n\n const handleOnBlur = useCallback(\n (event: React.SyntheticEvent) => {\n event.stopPropagation();\n cancelAllSearchRequests();\n },\n [cancelAllSearchRequests]\n );\n\n const handleClickSearch = useCallback(\n (event: React.SyntheticEvent, value: SearchResultWeb, reason: string): void => {\n event.stopPropagation();\n if (reason === 'selectOption') {\n const pkgName = searchRemote ? value['package'].name : value.name;\n navigate(`${Route.DETAIL}${pkgName}`);\n }\n },\n [navigate, searchRemote]\n );\n\n /**\n * Fetch packages from API with Abort Logic.\n */\n const handleFetchPackages = useCallback(\n async ({ value }: { value: string }) => {\n if (value?.trim() !== '') {\n // 2. Abort any previous pending request before starting a new one\n cancelAllSearchRequests();\n\n // 3. Create a new controller for the current request\n const controller = new AbortController();\n abortControllerRef.current = controller;\n\n try {\n await doSearch?.({\n text: value,\n signal: controller.signal,\n });\n } catch (err: any) {\n if (err.name === CONSTANTS.ABORT_ERROR) {\n console.warn('Search request aborted');\n } else {\n console.error('Search error:', err);\n }\n }\n }\n },\n [doSearch, cancelAllSearchRequests]\n );\n\n const renderOption = (props, option) => {\n const { key, ...otherProps } = props;\n\n if (searchRemote) {\n const item: SearchResultWeb = option.package;\n const isPrivate = option?.verdaccioPrivate;\n const isCached = option?.verdaccioPkgCached;\n const isRemote = !isCached && !isPrivate;\n return (\n <SearchItem\n key={key}\n {...otherProps}\n description={item?.description}\n isCached={isCached}\n isPrivate={isPrivate}\n isRemote={isRemote}\n name={item?.name}\n version={item?.version}\n />\n );\n } else {\n const item: SearchResultWeb = option.package;\n return (\n <SearchItem\n key={key}\n {...otherProps}\n description={item?.description}\n name={item?.name}\n version={item?.version}\n />\n );\n }\n };\n\n const renderInput = (params) => {\n return (\n <StyledTextField\n {...params}\n InputProps={{\n ...params.InputProps,\n startAdornment: (\n <StyledInputAdornment position=\"start\">\n <SearchMui />\n </StyledInputAdornment>\n ),\n }}\n label=\"\"\n placeholder={t('search.packages')}\n variant=\"standard\"\n />\n );\n };\n\n const getOptionLabel = (option) => {\n return option?.package?.name;\n };\n\n return (\n <AutoComplete\n getOptionLabel={getOptionLabel}\n onCleanSuggestions={handleOnBlur}\n onSelectItem={handleClickSearch}\n // Debounce the entire fetcher wrapper\n onSuggestionsFetch={debounce(handleFetchPackages, CONSTANTS.API_DELAY)}\n placeholder={t('search.packages')}\n renderInput={renderInput}\n renderOption={renderOption}\n suggestions={searchResults}\n suggestionsLoading={isLoading}\n />\n );\n};\n\nexport default Search;\n"],"mappings":";;;;;;;;;;;;;;;;AAcA,IAAMgB,IAAY;CAChBC,WAAW;CACXC,aAAa;CACd,EAEKC,UAAyB;CAC7B,IAAM,EAAEE,SAAMf,GAAgB,EACxBgB,IAAWf,GAAa,EACxB,EAAEgB,kBAAeC,cAAWC,gBAAaf,GAAW,EACpD,EACJgB,eAAe,EAAEC,eACflB,GAAW,EACTmB,IAAeD,GAAOC,gBAAgB,IAEtCC,IAAqBxB,EAA+B,KAAK,EAEzD0B,IAA0B5B,QAAkB;AAChD,EAEE0B,EAAmBG,aADnBH,EAAmBG,QAAQC,OAAO,EACL;IAE9B,EAAE,CAAC;AAgHN,QA9GA7B,cACe2B,GAAyB,EACrC,CAACA,EAAwB,CAAC,EA6G3B,kBAAC,GAAD;EACkBwC,iBANIhB,MACfA,GAAQI,SAASjB;EAMtB,oBA7GiBvC,GAClBgC,MAAgC;AAE/BJ,GADAI,EAAME,iBAAiB,EACvBN,GAAyB;KAE3B,CAACA,EACH,CAAC;EAwGG,cAtGsB5B,GACvBgC,GAA6BI,GAAwBC,MAAyB;AAE7E,OADAL,EAAME,iBAAiB,EACnBG,MAAW,gBAAgB;IAC7B,IAAMC,IAAUb,IAAeW,EAAM,QAAWG,OAAOH,EAAMG;AAC7DpB,MAAS,GAAGX,EAAMgC,SAASF,IAAU;;KAGzC,CAACnB,GAAUM,EACb,CAAC;EA+FG,oBAAoB3B,EA1FIE,EAC1B,OAAO,EAAEoC,eAA+B;AACtC,OAAIA,GAAOM,MAAM,KAAK,IAAI;AAExBd,OAAyB;IAGzB,IAAMe,IAAa,IAAIhB,iBAAiB;AACxCD,MAAmBG,UAAUc;AAE7B,QAAI;AACF,WAAMrB,IAAW;MACfsB,MAAMR;MACNS,QAAQF,EAAWE;MACpB,CAAC;aACKC,GAAU;AACjB,KAAIA,EAAIP,SAAS1B,EAAUE,cACzBgC,QAAQC,KAAK,yBAAyB,GAEtCD,QAAQE,MAAM,iBAAiBH,EAAI;;;KAK3C,CAACxB,GAAUM,EACb,CAAC,EAiEqDf,EAAUC,UAAU;EACtE,aAAaI,EAAE,kBAAkB;EACpB8C,cA/BIC,MAEjB,kBAAC,GAAD;GACE,GAAIA;GACJ,YAAY;IACV,GAAGA,EAAOC;IACVC,gBACE,kBAAC,GAAD;KAAsB,UAAS;eAC7B,kBAAC,GAAD,EAAU,CAAA;KACU,CAAA;IAEzB;GACD,OAAM;GACN,aAAajD,EAAE,kBAAkB;GACjC,SAAQ;GACR,CAAA;EAiBYgC,eAlEIC,GAAOC,MAAW;GACtC,IAAM,EAAEC,QAAK,GAAGC,MAAeH;AAE/B,OAAI1B,GAAc;IAChB,IAAM8B,IAAwBH,EAAOI,SAC/BC,IAAYL,GAAQM,kBACpBC,IAAWP,GAAQQ,oBACnBC,IAAW,CAACF,KAAY,CAACF;AAC/B,WACE,kBAAC,GAAD;KAEE,GAAIH;KACJ,aAAaC,GAAMO;KACTH;KACCF;KACDI;KACV,MAAMN,GAAMhB;KACZ,SAASgB,GAAMQ;KACf,EARKV,EAQL;UAEC;IACL,IAAME,IAAwBH,EAAOI;AACrC,WACE,kBAAC,GAAD;KAEE,GAAIF;KACJ,aAAaC,GAAMO;KACnB,MAAMP,GAAMhB;KACZ,SAASgB,GAAMQ;KACf,EALKV,EAKL;;;EAsCJ,aAAajC;EACb,oBAAoBC;EACpB,CAAA"}
1
+ {"version":3,"file":"Search.js","names":["SearchMui","debounce","React","useCallback","useEffect","useMemo","useRef","useTranslation","useNavigate","SearchResultWeb","useConfig","useSearch","Route","AutoComplete","SearchItem","StyledInputAdornment","StyledTextField","CONSTANTS","API_DELAY","ABORT_ERROR","Search","FC","t","navigate","searchResults","isLoading","doSearch","configOptions","flags","searchRemote","abortControllerRef","AbortController","cancelAllSearchRequests","current","abort","handleOnBlur","event","SyntheticEvent","stopPropagation","handleClickSearch","value","reason","pkgName","name","DETAIL","doSearchRef","handleFetchPackages","trim","controller","text","signal","err","console","warn","error","debouncedFetch","cancel","renderOption","props","option","key","otherProps","item","package","isPrivate","verdaccioPrivate","isCached","verdaccioPkgCached","isRemote","description","version","renderInput","params","InputProps","startAdornment","getOptionLabel"],"sources":["../../../src/components/Search/Search.tsx"],"sourcesContent":["import SearchMui from '@mui/icons-material/Search';\nimport debounce from 'lodash/debounce';\nimport React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useNavigate } from 'react-router';\n\nimport type { SearchResultWeb } from '@verdaccio/types';\n\nimport { useConfig, useSearch } from '../../';\nimport { Route } from '../../utils';\nimport AutoComplete from './AutoComplete';\nimport SearchItem from './SearchItem';\nimport { StyledInputAdornment, StyledTextField } from './styles';\n\nconst CONSTANTS = {\n API_DELAY: 300,\n ABORT_ERROR: 'AbortError',\n};\n\nconst Search: React.FC = () => {\n const { t } = useTranslation();\n const navigate = useNavigate();\n const { searchResults, isLoading, doSearch } = useSearch();\n const {\n configOptions: { flags },\n } = useConfig();\n const searchRemote = flags?.searchRemote ?? false;\n\n const abortControllerRef = useRef<AbortController | null>(null);\n\n const cancelAllSearchRequests = useCallback(() => {\n if (abortControllerRef.current) {\n abortControllerRef.current.abort();\n abortControllerRef.current = null;\n }\n }, []);\n\n const handleOnBlur = useCallback(\n (event: React.SyntheticEvent) => {\n event.stopPropagation();\n cancelAllSearchRequests();\n },\n [cancelAllSearchRequests]\n );\n\n const handleClickSearch = useCallback(\n (event: React.SyntheticEvent, value: SearchResultWeb, reason: string): void => {\n event.stopPropagation();\n if (reason === 'selectOption') {\n const pkgName = value['package']?.name ?? value.name;\n navigate(`${Route.DETAIL}${pkgName}`);\n }\n },\n [navigate, searchRemote]\n );\n\n // Use a ref to always access the latest doSearch without re-creating the debounced function\n const doSearchRef = useRef(doSearch);\n doSearchRef.current = doSearch;\n\n /**\n * Stable fetch function that reads the latest doSearch from a ref,\n * avoiding dependency changes that would break the debounce.\n */\n const handleFetchPackages = useCallback(\n async ({ value }: { value: string }) => {\n if (value?.trim() !== '') {\n // Abort any previous pending request before starting a new one\n cancelAllSearchRequests();\n\n // Create a new controller for the current request\n const controller = new AbortController();\n abortControllerRef.current = controller;\n\n try {\n await doSearchRef.current?.({\n text: value,\n signal: controller.signal,\n });\n } catch (err: any) {\n if (err.name === CONSTANTS.ABORT_ERROR) {\n console.warn('Search request aborted');\n } else {\n console.error('Search error:', err);\n }\n }\n }\n },\n [cancelAllSearchRequests]\n );\n\n // Memoize the debounced function so a single instance is reused across renders,\n // ensuring the debounce timer works correctly instead of creating a new timer per render.\n const debouncedFetch = useMemo(\n () => debounce(handleFetchPackages, CONSTANTS.API_DELAY),\n [handleFetchPackages]\n );\n\n useEffect(() => {\n return () => {\n debouncedFetch.cancel?.();\n cancelAllSearchRequests();\n };\n }, [debouncedFetch, cancelAllSearchRequests]);\n\n const renderOption = (props, option) => {\n const { key, ...otherProps } = props;\n\n if (searchRemote) {\n const item: SearchResultWeb = option.package;\n const isPrivate = option?.verdaccioPrivate;\n const isCached = option?.verdaccioPkgCached;\n const isRemote = !isCached && !isPrivate;\n return (\n <SearchItem\n key={key}\n {...otherProps}\n description={item?.description}\n isCached={isCached}\n isPrivate={isPrivate}\n isRemote={isRemote}\n name={item?.name}\n version={item?.version}\n />\n );\n } else {\n const item: SearchResultWeb = option.package;\n return (\n <SearchItem\n key={key}\n {...otherProps}\n description={item?.description}\n name={item?.name}\n version={item?.version}\n />\n );\n }\n };\n\n const renderInput = (params) => {\n return (\n <StyledTextField\n {...params}\n InputProps={{\n ...params.InputProps,\n startAdornment: (\n <StyledInputAdornment position=\"start\">\n <SearchMui />\n </StyledInputAdornment>\n ),\n }}\n label=\"\"\n placeholder={t('search.packages')}\n variant=\"standard\"\n />\n );\n };\n\n const getOptionLabel = (option) => {\n return option?.package?.name;\n };\n\n return (\n <AutoComplete\n getOptionLabel={getOptionLabel}\n onCleanSuggestions={handleOnBlur}\n onSelectItem={handleClickSearch}\n onSuggestionsFetch={debouncedFetch}\n placeholder={t('search.packages')}\n renderInput={renderInput}\n renderOption={renderOption}\n suggestions={searchResults}\n suggestionsLoading={isLoading}\n />\n );\n};\n\nexport default Search;\n"],"mappings":"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"}
@@ -0,0 +1,133 @@
1
+ import { Route as Route$1 } from "../../utils/routes.mjs";
2
+ import "../../utils/index.mjs";
3
+ import { useConfig } from "../../providers/AppConfigurationProvider/AppConfigurationProvider.mjs";
4
+ import { useSearch } from "../../providers/SearchProvider/SearchProvider.mjs";
5
+ import AutoComplete from "./AutoComplete/AutoComplete.mjs";
6
+ import "./AutoComplete/index.mjs";
7
+ import SearchItem from "./SearchItem.mjs";
8
+ import { StyledInputAdornment, StyledTextField } from "./styles.mjs";
9
+ import "../../index.mjs";
10
+ import { jsx } from "react/jsx-runtime";
11
+ import { useCallback, useEffect, useMemo, useRef } from "react";
12
+ import { useTranslation } from "react-i18next";
13
+ import { useNavigate } from "react-router";
14
+ import debounce from "lodash/debounce";
15
+ import SearchMui from "@mui/icons-material/Search";
16
+ //#region src/components/Search/Search.tsx
17
+ var CONSTANTS = {
18
+ API_DELAY: 300,
19
+ ABORT_ERROR: "AbortError"
20
+ };
21
+ var Search = () => {
22
+ const { t } = useTranslation();
23
+ const navigate = useNavigate();
24
+ const { searchResults, isLoading, doSearch } = useSearch();
25
+ const { configOptions: { flags } } = useConfig();
26
+ const searchRemote = flags?.searchRemote ?? false;
27
+ const abortControllerRef = useRef(null);
28
+ const cancelAllSearchRequests = useCallback(() => {
29
+ if (abortControllerRef.current) {
30
+ abortControllerRef.current.abort();
31
+ abortControllerRef.current = null;
32
+ }
33
+ }, []);
34
+ const handleOnBlur = useCallback((event) => {
35
+ event.stopPropagation();
36
+ cancelAllSearchRequests();
37
+ }, [cancelAllSearchRequests]);
38
+ const handleClickSearch = useCallback((event, value, reason) => {
39
+ event.stopPropagation();
40
+ if (reason === "selectOption") {
41
+ const pkgName = value["package"]?.name ?? value.name;
42
+ navigate(`${Route$1.DETAIL}${pkgName}`);
43
+ }
44
+ }, [navigate, searchRemote]);
45
+ const doSearchRef = useRef(doSearch);
46
+ doSearchRef.current = doSearch;
47
+ /**
48
+ * Stable fetch function that reads the latest doSearch from a ref,
49
+ * avoiding dependency changes that would break the debounce.
50
+ */
51
+ const handleFetchPackages = useCallback(async ({ value }) => {
52
+ if (value?.trim() !== "") {
53
+ cancelAllSearchRequests();
54
+ const controller = new AbortController();
55
+ abortControllerRef.current = controller;
56
+ try {
57
+ await doSearchRef.current?.({
58
+ text: value,
59
+ signal: controller.signal
60
+ });
61
+ } catch (err) {
62
+ if (err.name === CONSTANTS.ABORT_ERROR) console.warn("Search request aborted");
63
+ else console.error("Search error:", err);
64
+ }
65
+ }
66
+ }, [cancelAllSearchRequests]);
67
+ const debouncedFetch = useMemo(() => debounce(handleFetchPackages, CONSTANTS.API_DELAY), [handleFetchPackages]);
68
+ useEffect(() => {
69
+ return () => {
70
+ debouncedFetch.cancel?.();
71
+ cancelAllSearchRequests();
72
+ };
73
+ }, [debouncedFetch, cancelAllSearchRequests]);
74
+ const renderOption = (props, option) => {
75
+ const { key, ...otherProps } = props;
76
+ if (searchRemote) {
77
+ const item = option.package;
78
+ const isPrivate = option?.verdaccioPrivate;
79
+ const isCached = option?.verdaccioPkgCached;
80
+ const isRemote = !isCached && !isPrivate;
81
+ return /* @__PURE__ */ jsx(SearchItem, {
82
+ ...otherProps,
83
+ description: item?.description,
84
+ isCached,
85
+ isPrivate,
86
+ isRemote,
87
+ name: item?.name,
88
+ version: item?.version
89
+ }, key);
90
+ } else {
91
+ const item = option.package;
92
+ return /* @__PURE__ */ jsx(SearchItem, {
93
+ ...otherProps,
94
+ description: item?.description,
95
+ name: item?.name,
96
+ version: item?.version
97
+ }, key);
98
+ }
99
+ };
100
+ const renderInput = (params) => {
101
+ return /* @__PURE__ */ jsx(StyledTextField, {
102
+ ...params,
103
+ InputProps: {
104
+ ...params.InputProps,
105
+ startAdornment: /* @__PURE__ */ jsx(StyledInputAdornment, {
106
+ position: "start",
107
+ children: /* @__PURE__ */ jsx(SearchMui, {})
108
+ })
109
+ },
110
+ label: "",
111
+ placeholder: t("search.packages"),
112
+ variant: "standard"
113
+ });
114
+ };
115
+ const getOptionLabel = (option) => {
116
+ return option?.package?.name;
117
+ };
118
+ return /* @__PURE__ */ jsx(AutoComplete, {
119
+ getOptionLabel,
120
+ onCleanSuggestions: handleOnBlur,
121
+ onSelectItem: handleClickSearch,
122
+ onSuggestionsFetch: debouncedFetch,
123
+ placeholder: t("search.packages"),
124
+ renderInput,
125
+ renderOption,
126
+ suggestions: searchResults,
127
+ suggestionsLoading: isLoading
128
+ });
129
+ };
130
+ //#endregion
131
+ export { Search as default };
132
+
133
+ //# sourceMappingURL=Search.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Search.mjs","names":["SearchMui","debounce","React","useCallback","useEffect","useMemo","useRef","useTranslation","useNavigate","SearchResultWeb","useConfig","useSearch","Route","AutoComplete","SearchItem","StyledInputAdornment","StyledTextField","CONSTANTS","API_DELAY","ABORT_ERROR","Search","FC","t","navigate","searchResults","isLoading","doSearch","configOptions","flags","searchRemote","abortControllerRef","AbortController","cancelAllSearchRequests","current","abort","handleOnBlur","event","SyntheticEvent","stopPropagation","handleClickSearch","value","reason","pkgName","name","DETAIL","doSearchRef","handleFetchPackages","trim","controller","text","signal","err","console","warn","error","debouncedFetch","cancel","renderOption","props","option","key","otherProps","item","package","isPrivate","verdaccioPrivate","isCached","verdaccioPkgCached","isRemote","description","version","renderInput","params","InputProps","startAdornment","getOptionLabel"],"sources":["../../../src/components/Search/Search.tsx"],"sourcesContent":["import SearchMui from '@mui/icons-material/Search';\nimport debounce from 'lodash/debounce';\nimport React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useNavigate } from 'react-router';\n\nimport type { SearchResultWeb } from '@verdaccio/types';\n\nimport { useConfig, useSearch } from '../../';\nimport { Route } from '../../utils';\nimport AutoComplete from './AutoComplete';\nimport SearchItem from './SearchItem';\nimport { StyledInputAdornment, StyledTextField } from './styles';\n\nconst CONSTANTS = {\n API_DELAY: 300,\n ABORT_ERROR: 'AbortError',\n};\n\nconst Search: React.FC = () => {\n const { t } = useTranslation();\n const navigate = useNavigate();\n const { searchResults, isLoading, doSearch } = useSearch();\n const {\n configOptions: { flags },\n } = useConfig();\n const searchRemote = flags?.searchRemote ?? false;\n\n const abortControllerRef = useRef<AbortController | null>(null);\n\n const cancelAllSearchRequests = useCallback(() => {\n if (abortControllerRef.current) {\n abortControllerRef.current.abort();\n abortControllerRef.current = null;\n }\n }, []);\n\n const handleOnBlur = useCallback(\n (event: React.SyntheticEvent) => {\n event.stopPropagation();\n cancelAllSearchRequests();\n },\n [cancelAllSearchRequests]\n );\n\n const handleClickSearch = useCallback(\n (event: React.SyntheticEvent, value: SearchResultWeb, reason: string): void => {\n event.stopPropagation();\n if (reason === 'selectOption') {\n const pkgName = value['package']?.name ?? value.name;\n navigate(`${Route.DETAIL}${pkgName}`);\n }\n },\n [navigate, searchRemote]\n );\n\n // Use a ref to always access the latest doSearch without re-creating the debounced function\n const doSearchRef = useRef(doSearch);\n doSearchRef.current = doSearch;\n\n /**\n * Stable fetch function that reads the latest doSearch from a ref,\n * avoiding dependency changes that would break the debounce.\n */\n const handleFetchPackages = useCallback(\n async ({ value }: { value: string }) => {\n if (value?.trim() !== '') {\n // Abort any previous pending request before starting a new one\n cancelAllSearchRequests();\n\n // Create a new controller for the current request\n const controller = new AbortController();\n abortControllerRef.current = controller;\n\n try {\n await doSearchRef.current?.({\n text: value,\n signal: controller.signal,\n });\n } catch (err: any) {\n if (err.name === CONSTANTS.ABORT_ERROR) {\n console.warn('Search request aborted');\n } else {\n console.error('Search error:', err);\n }\n }\n }\n },\n [cancelAllSearchRequests]\n );\n\n // Memoize the debounced function so a single instance is reused across renders,\n // ensuring the debounce timer works correctly instead of creating a new timer per render.\n const debouncedFetch = useMemo(\n () => debounce(handleFetchPackages, CONSTANTS.API_DELAY),\n [handleFetchPackages]\n );\n\n useEffect(() => {\n return () => {\n debouncedFetch.cancel?.();\n cancelAllSearchRequests();\n };\n }, [debouncedFetch, cancelAllSearchRequests]);\n\n const renderOption = (props, option) => {\n const { key, ...otherProps } = props;\n\n if (searchRemote) {\n const item: SearchResultWeb = option.package;\n const isPrivate = option?.verdaccioPrivate;\n const isCached = option?.verdaccioPkgCached;\n const isRemote = !isCached && !isPrivate;\n return (\n <SearchItem\n key={key}\n {...otherProps}\n description={item?.description}\n isCached={isCached}\n isPrivate={isPrivate}\n isRemote={isRemote}\n name={item?.name}\n version={item?.version}\n />\n );\n } else {\n const item: SearchResultWeb = option.package;\n return (\n <SearchItem\n key={key}\n {...otherProps}\n description={item?.description}\n name={item?.name}\n version={item?.version}\n />\n );\n }\n };\n\n const renderInput = (params) => {\n return (\n <StyledTextField\n {...params}\n InputProps={{\n ...params.InputProps,\n startAdornment: (\n <StyledInputAdornment position=\"start\">\n <SearchMui />\n </StyledInputAdornment>\n ),\n }}\n label=\"\"\n placeholder={t('search.packages')}\n variant=\"standard\"\n />\n );\n };\n\n const getOptionLabel = (option) => {\n return option?.package?.name;\n };\n\n return (\n <AutoComplete\n getOptionLabel={getOptionLabel}\n onCleanSuggestions={handleOnBlur}\n onSelectItem={handleClickSearch}\n onSuggestionsFetch={debouncedFetch}\n placeholder={t('search.packages')}\n renderInput={renderInput}\n renderOption={renderOption}\n suggestions={searchResults}\n suggestionsLoading={isLoading}\n />\n );\n};\n\nexport default Search;\n"],"mappings":"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"}