@verdaccio/ui-components 5.0.0-next-9.0 → 5.0.0-next-9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/Theme/ResetStyles.js +28 -47
- package/build/Theme/ResetStyles.js.map +1 -1
- package/build/Theme/StyleBaseline.js +9 -14
- package/build/Theme/StyleBaseline.js.map +1 -1
- package/build/Theme/ThemeProvider.js +31 -56
- package/build/Theme/ThemeProvider.js.map +1 -1
- package/build/Theme/colors.js +15 -18
- package/build/Theme/colors.js.map +1 -1
- package/build/Theme/index.js +5 -58
- package/build/Theme/modes.js +25 -38
- package/build/Theme/modes.js.map +1 -1
- package/build/Theme/theme.js +18 -31
- package/build/Theme/theme.js.map +1 -1
- package/build/Theme/tokens.js +28 -33
- package/build/Theme/tokens.js.map +1 -1
- package/build/_virtual/_rolldown/runtime.js +11 -0
- package/build/api/use-data-mutation.js +38 -95
- package/build/api/use-data-mutation.js.map +1 -1
- package/build/api/use-data.js +17 -33
- package/build/api/use-data.js.map +1 -1
- package/build/components/ActionBar/ActionBar.js +45 -86
- package/build/components/ActionBar/ActionBar.js.map +1 -1
- package/build/components/ActionBar/ActionBarAction.js +79 -107
- package/build/components/ActionBar/ActionBarAction.js.map +1 -1
- package/build/components/ActionBar/index.js +1 -14
- package/build/components/AppRoute/AppRoute.js +65 -87
- package/build/components/AppRoute/AppRoute.js.map +1 -1
- package/build/components/Author/Author.js +30 -41
- package/build/components/Author/Author.js.map +1 -1
- package/build/components/Author/index.js +1 -14
- package/build/components/Author/styles.js +21 -31
- package/build/components/Author/styles.js.map +1 -1
- package/build/components/CopyClipboard/CopyToClipBoard.js +52 -67
- package/build/components/CopyClipboard/CopyToClipBoard.js.map +1 -1
- package/build/components/CopyClipboard/index.js +2 -21
- package/build/components/CopyClipboard/utils.d.ts +1 -1
- package/build/components/CopyClipboard/utils.js +6 -13
- package/build/components/CopyClipboard/utils.js.map +1 -1
- package/build/components/Dependencies/Dependencies.js +36 -80
- package/build/components/Dependencies/Dependencies.js.map +1 -1
- package/build/components/Dependencies/DependencyBlock.d.ts +3 -3
- package/build/components/Dependencies/DependencyBlock.js +62 -108
- package/build/components/Dependencies/DependencyBlock.js.map +1 -1
- package/build/components/Dependencies/index.js +2 -14
- package/build/components/Dependencies/utits.js +6 -8
- package/build/components/Dependencies/utits.js.map +1 -1
- package/build/components/Deprecated/Deprecated.js +14 -23
- package/build/components/Deprecated/Deprecated.js.map +1 -1
- package/build/components/Deprecated/index.js +1 -14
- package/build/components/Developers/DeveloperType.js +6 -10
- package/build/components/Developers/DeveloperType.js.map +1 -1
- package/build/components/Developers/Developers.js +57 -98
- package/build/components/Developers/Developers.js.map +1 -1
- package/build/components/Developers/Title.js +29 -39
- package/build/components/Developers/Title.js.map +1 -1
- package/build/components/Developers/get-unique-developer-values.js +6 -22
- package/build/components/Developers/get-unique-developer-values.js.map +1 -1
- package/build/components/Developers/index.js +2 -21
- package/build/components/Distribution/Dist.js +38 -44
- package/build/components/Distribution/Dist.js.map +1 -1
- package/build/components/Distribution/index.js +1 -14
- package/build/components/Distribution/styles.js +33 -44
- package/build/components/Distribution/styles.js.map +1 -1
- package/build/components/Engines/Engines.js +66 -88
- package/build/components/Engines/Engines.js.map +1 -1
- package/build/components/Engines/index.js +1 -14
- package/build/components/Engines/styles.js +24 -32
- package/build/components/Engines/styles.js.map +1 -1
- package/build/components/ErrorBoundary/ErrorBoundary.js +27 -66
- package/build/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
- package/build/components/ErrorBoundary/index.js +1 -14
- package/build/components/Forbidden/Forbidden.js +62 -71
- package/build/components/Forbidden/Forbidden.js.map +1 -1
- package/build/components/Forbidden/index.js +1 -14
- package/build/components/FundButton/FundButton.js +52 -73
- package/build/components/FundButton/FundButton.js.map +1 -1
- package/build/components/FundButton/index.js +1 -14
- package/build/components/HeaderInfoDialog/HeaderInfoDialog.js +62 -88
- package/build/components/HeaderInfoDialog/HeaderInfoDialog.js.map +1 -1
- package/build/components/HeaderInfoDialog/index.js +1 -14
- package/build/components/Heading/Heading.d.ts +1 -1
- package/build/components/Heading/Heading.js +13 -23
- package/build/components/Heading/Heading.js.map +1 -1
- package/build/components/Heading/index.js +1 -14
- package/build/components/Help/Help.js +55 -55
- package/build/components/Help/Help.js.map +1 -1
- package/build/components/Help/index.js +1 -14
- package/build/components/Help/styles.js +17 -20
- package/build/components/Help/styles.js.map +1 -1
- package/build/components/Icons/DevsIcons/CommonJS2.js +16 -0
- package/build/components/Icons/DevsIcons/CommonJS2.js.map +1 -0
- package/build/components/Icons/DevsIcons/ES6Module2.js +16 -0
- package/build/components/Icons/DevsIcons/ES6Module2.js.map +1 -0
- package/build/components/Icons/DevsIcons/Git2.js +16 -0
- package/build/components/Icons/DevsIcons/Git2.js.map +1 -0
- package/build/components/Icons/DevsIcons/NodeJS2.js +16 -0
- package/build/components/Icons/DevsIcons/NodeJS2.js.map +1 -0
- package/build/components/Icons/DevsIcons/TypeScript2.js +16 -0
- package/build/components/Icons/DevsIcons/TypeScript2.js.map +1 -0
- package/build/components/Icons/DevsIcons/commonjs.js +6 -0
- package/build/components/Icons/DevsIcons/commonjs.js.map +1 -0
- package/build/components/Icons/DevsIcons/es6module.js +6 -0
- package/build/components/Icons/DevsIcons/es6module.js.map +1 -0
- package/build/components/Icons/DevsIcons/git.js +6 -0
- package/build/components/Icons/DevsIcons/git.js.map +1 -0
- package/build/components/Icons/DevsIcons/index.js +5 -41
- package/build/components/Icons/DevsIcons/nodejs.js +6 -0
- package/build/components/Icons/DevsIcons/nodejs.js.map +1 -0
- package/build/components/Icons/DevsIcons/typescript.js +6 -0
- package/build/components/Icons/DevsIcons/typescript.js.map +1 -0
- package/build/components/Icons/Earth.js +39 -42
- package/build/components/Icons/Earth.js.map +1 -1
- package/build/components/Icons/FileBinary.js +15 -24
- package/build/components/Icons/FileBinary.js.map +1 -1
- package/build/components/Icons/Law.js +18 -25
- package/build/components/Icons/Law.js.map +1 -1
- package/build/components/Icons/License.js +15 -26
- package/build/components/Icons/License.js.map +1 -1
- package/build/components/Icons/Managers/Npm2.js +16 -0
- package/build/components/Icons/Managers/Npm2.js.map +1 -0
- package/build/components/Icons/Managers/Pnpm2.js +16 -0
- package/build/components/Icons/Managers/Pnpm2.js.map +1 -0
- package/build/components/Icons/Managers/Yarn2.js +16 -0
- package/build/components/Icons/Managers/Yarn2.js.map +1 -0
- package/build/components/Icons/Managers/index.js +3 -27
- package/build/components/Icons/Managers/npm.js +6 -0
- package/build/components/Icons/Managers/npm.js.map +1 -0
- package/build/components/Icons/Managers/pnpm.js +6 -0
- package/build/components/Icons/Managers/pnpm.js.map +1 -0
- package/build/components/Icons/Managers/yarn.js +6 -0
- package/build/components/Icons/Managers/yarn.js.map +1 -0
- package/build/components/Icons/SvgIcon.d.ts +2 -6
- package/build/components/Icons/SvgIcon.js +24 -53
- package/build/components/Icons/SvgIcon.js.map +1 -1
- package/build/components/Icons/Time.js +22 -29
- package/build/components/Icons/Time.js.map +1 -1
- package/build/components/Icons/Version.js +20 -27
- package/build/components/Icons/Version.js.map +1 -1
- package/build/components/Icons/index.js +36 -78
- package/build/components/Icons/index.js.map +1 -1
- package/build/components/Install/Install.js +58 -74
- package/build/components/Install/Install.js.map +1 -1
- package/build/components/Install/InstallListItem.js +91 -120
- package/build/components/Install/InstallListItem.js.map +1 -1
- package/build/components/Install/index.js +1 -14
- package/build/components/Keywords/KeywordListItems.js +25 -34
- package/build/components/Keywords/KeywordListItems.js.map +1 -1
- package/build/components/Keywords/Keywords.js +25 -35
- package/build/components/Keywords/Keywords.js.map +1 -1
- package/build/components/Keywords/index.js +1 -14
- package/build/components/Label/Label.js +18 -37
- package/build/components/Label/Label.js.map +1 -1
- package/build/components/Label/index.js +1 -14
- package/build/components/Link/Link.d.ts +3 -1
- package/build/components/Link/Link.js +32 -40
- package/build/components/Link/Link.js.map +1 -1
- package/build/components/Link/index.js +1 -14
- package/build/components/LinkExternal/LinkExternal.d.ts +3 -1
- package/build/components/LinkExternal/LinkExternal.js +19 -30
- package/build/components/LinkExternal/LinkExternal.js.map +1 -1
- package/build/components/LinkExternal/index.js +1 -14
- package/build/components/Loading/Loading.js +14 -20
- package/build/components/Loading/Loading.js.map +1 -1
- package/build/components/Loading/Spinner/Spinner.js +28 -57
- package/build/components/Loading/Spinner/Spinner.js.map +1 -1
- package/build/components/Loading/Spinner/index.js +1 -14
- package/build/components/Loading/index.js +1 -14
- package/build/components/Loading/styles.d.ts +5 -5
- package/build/components/Loading/styles.js +26 -35
- package/build/components/Loading/styles.js.map +1 -1
- package/build/components/LoginDialog/LoginDialog.js +28 -39
- package/build/components/LoginDialog/LoginDialog.js.map +1 -1
- package/build/components/LoginDialog/LoginDialogCloseButton.js +27 -39
- package/build/components/LoginDialog/LoginDialogCloseButton.js.map +1 -1
- package/build/components/LoginDialog/LoginDialogForm.js +17 -26
- package/build/components/LoginDialog/LoginDialogForm.js.map +1 -1
- package/build/components/LoginDialog/LoginDialogFormError.js +30 -51
- package/build/components/LoginDialog/LoginDialogFormError.js.map +1 -1
- package/build/components/LoginDialog/index.js +1 -14
- package/build/components/LoginForm/Login.js +64 -85
- package/build/components/LoginForm/Login.js.map +1 -1
- package/build/components/LoginForm/PasswordField.js +31 -49
- package/build/components/LoginForm/PasswordField.js.map +1 -1
- package/build/components/LoginForm/UsernameField.js +29 -47
- package/build/components/LoginForm/UsernameField.js.map +1 -1
- package/build/components/LoginForm/styles.js +48 -58
- package/build/components/LoginForm/styles.js.map +1 -1
- package/build/components/LoginForm/useLoginForm.js +32 -64
- package/build/components/LoginForm/useLoginForm.js.map +1 -1
- package/build/components/Logo/Logo.js +66 -87
- package/build/components/Logo/Logo.js.map +1 -1
- package/build/components/Logo/img/logo-black-and-white.js +6 -0
- package/build/components/Logo/img/logo-black-and-white.js.map +1 -0
- package/build/components/Logo/img/logo.js +6 -0
- package/build/components/Logo/img/logo.js.map +1 -0
- package/build/components/Logo/index.js +1 -14
- package/build/components/MenuItem/MenuItem.d.ts +1 -1
- package/build/components/MenuItem/MenuItem.js +25 -39
- package/build/components/MenuItem/MenuItem.js.map +1 -1
- package/build/components/MenuItem/index.js +1 -14
- package/build/components/NoItems/NoItems.js +14 -24
- package/build/components/NoItems/NoItems.js.map +1 -1
- package/build/components/NoItems/index.js +1 -14
- package/build/components/NotFound/NotFound.js +63 -72
- package/build/components/NotFound/NotFound.js.map +1 -1
- package/build/components/NotFound/index.js +1 -14
- package/build/components/Package/Package.js +163 -230
- package/build/components/Package/Package.js.map +1 -1
- package/build/components/Package/index.js +1 -14
- package/build/components/Package/styles.d.ts +18 -18
- package/build/components/Package/styles.js +122 -185
- package/build/components/Package/styles.js.map +1 -1
- package/build/components/PackageList/PackageList.js +63 -92
- package/build/components/PackageList/PackageList.js.map +1 -1
- package/build/components/PackageList/index.js +1 -14
- package/build/components/Person/Person.js +36 -46
- package/build/components/Person/Person.js.map +1 -1
- package/build/components/Person/PersonTooltip.js +24 -21
- package/build/components/Person/PersonTooltip.js.map +1 -1
- package/build/components/Person/index.js +1 -14
- package/build/components/Person/utils.js +11 -14
- package/build/components/Person/utils.js.map +1 -1
- package/build/components/RawViewer/RawViewer.js +53 -64
- package/build/components/RawViewer/RawViewer.js.map +1 -1
- package/build/components/RawViewer/index.js +1 -14
- package/build/components/Readme/Readme.d.ts +2 -0
- package/build/components/Readme/Readme.js +40 -56
- package/build/components/Readme/Readme.js.map +1 -1
- package/build/components/Readme/index.js +1 -14
- package/build/components/Readme/utils.js +22 -27
- package/build/components/Readme/utils.js.map +1 -1
- package/build/components/RegistryInfoDialog/RegistryInfoDialog.js +30 -34
- package/build/components/RegistryInfoDialog/RegistryInfoDialog.js.map +1 -1
- package/build/components/RegistryInfoDialog/index.js +1 -14
- package/build/components/RegistryInfoDialog/styles.d.ts +5 -5
- package/build/components/RegistryInfoDialog/styles.js +22 -47
- package/build/components/RegistryInfoDialog/styles.js.map +1 -1
- package/build/components/Repository/Repository.js +79 -101
- package/build/components/Repository/Repository.js.map +1 -1
- package/build/components/Repository/index.js +1 -14
- package/build/components/Search/AutoComplete/AutoComplete.js +33 -76
- package/build/components/Search/AutoComplete/AutoComplete.js.map +1 -1
- package/build/components/Search/AutoComplete/index.js +1 -14
- package/build/components/Search/AutoComplete/styles.d.ts +2 -2
- package/build/components/Search/AutoComplete/styles.js +16 -19
- package/build/components/Search/AutoComplete/styles.js.map +1 -1
- package/build/components/Search/Search.js +91 -176
- package/build/components/Search/Search.js.map +1 -1
- package/build/components/Search/SearchItem.d.ts +3 -3
- package/build/components/Search/SearchItem.js +102 -144
- package/build/components/Search/SearchItem.js.map +1 -1
- package/build/components/Search/index.js +1 -14
- package/build/components/Search/styles.d.ts +2 -2
- package/build/components/Search/styles.js +29 -56
- package/build/components/Search/styles.js.map +1 -1
- package/build/components/Search/utils.js +13 -20
- package/build/components/Search/utils.js.map +1 -1
- package/build/components/SettingsMenu/SettingsMenu.js +94 -108
- package/build/components/SettingsMenu/SettingsMenu.js.map +1 -1
- package/build/components/SettingsMenu/index.js +1 -14
- package/build/components/SideBarTitle/SideBarTitle.js +65 -99
- package/build/components/SideBarTitle/SideBarTitle.js.map +1 -1
- package/build/components/SideBarTitle/index.js +1 -14
- package/build/components/SideBarTitle/utils.js +10 -16
- package/build/components/SideBarTitle/utils.js.map +1 -1
- package/build/components/UpLinks/UpLinks.js +57 -68
- package/build/components/UpLinks/UpLinks.js.map +1 -1
- package/build/components/UpLinks/UplinkLink.js +17 -19
- package/build/components/UpLinks/UplinkLink.js.map +1 -1
- package/build/components/UpLinks/index.js +2 -14
- package/build/components/UpLinks/styles.d.ts +5 -5
- package/build/components/UpLinks/styles.js +27 -48
- package/build/components/UpLinks/styles.js.map +1 -1
- package/build/components/Versions/HistoryList.js +59 -75
- package/build/components/Versions/HistoryList.js.map +1 -1
- package/build/components/Versions/TagList.js +29 -35
- package/build/components/Versions/TagList.js.map +1 -1
- package/build/components/Versions/Versions.js +76 -121
- package/build/components/Versions/Versions.js.map +1 -1
- package/build/components/Versions/index.js +2 -14
- package/build/components/Versions/styles.d.ts +5 -5
- package/build/components/Versions/styles.js +23 -37
- package/build/components/Versions/styles.js.map +1 -1
- package/build/configuration.js +20 -20
- package/build/configuration.js.map +1 -1
- package/build/dark-logo.png +0 -0
- package/build/favicon.ico +0 -0
- package/build/hooks/index.js +2 -21
- package/build/hooks/useLocalStorage.js +22 -59
- package/build/hooks/useLocalStorage.js.map +1 -1
- package/build/hooks/useOnClickOutside.js +14 -30
- package/build/hooks/useOnClickOutside.js.map +1 -1
- package/build/index.js +118 -483
- package/build/layouts/Security/Dialog.js +17 -25
- package/build/layouts/Security/Dialog.js.map +1 -1
- package/build/layouts/Version/Version.js +28 -28
- package/build/layouts/Version/Version.js.map +1 -1
- package/build/layouts/Version/index.js +1 -14
- package/build/mockServiceWorker.js +335 -0
- package/build/pages/Front/Home.js +6 -7
- package/build/pages/Front/Home.js.map +1 -1
- package/build/pages/Front/index.js +2 -14
- package/build/pages/Security/AddUser.js +6 -7
- package/build/pages/Security/AddUser.js.map +1 -1
- package/build/pages/Security/ChangePassword.js +6 -7
- package/build/pages/Security/ChangePassword.js.map +1 -1
- package/build/pages/Security/Login.js +6 -7
- package/build/pages/Security/Login.js.map +1 -1
- package/build/pages/Security/Success.js +6 -7
- package/build/pages/Security/Success.js.map +1 -1
- package/build/pages/Security/index.js +4 -35
- package/build/pages/Version/Version.js +16 -30
- package/build/pages/Version/Version.js.map +1 -1
- package/build/pages/Version/index.js +2 -14
- package/build/providers/AppConfigurationProvider/AppConfigurationProvider.js +51 -72
- package/build/providers/AppConfigurationProvider/AppConfigurationProvider.js.map +1 -1
- package/build/providers/AppConfigurationProvider/index.js +1 -19
- package/build/providers/AuthProvider/AuthProvider.js +37 -100
- package/build/providers/AuthProvider/AuthProvider.js.map +1 -1
- package/build/providers/AuthProvider/index.js +1 -17
- package/build/providers/AuthProvider/utils.js +19 -24
- package/build/providers/AuthProvider/utils.js.map +1 -1
- package/build/providers/DownloadProvider/DownloadProvider.js +29 -71
- package/build/providers/DownloadProvider/DownloadProvider.js.map +1 -1
- package/build/providers/DownloadProvider/index.js +1 -19
- package/build/providers/ManifestsProvider/ManifestsProvider.js +20 -31
- package/build/providers/ManifestsProvider/ManifestsProvider.js.map +1 -1
- package/build/providers/ManifestsProvider/index.js +1 -21
- package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.js +22 -50
- package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.js.map +1 -1
- package/build/providers/PersistenceSettingProvider/index.js +1 -19
- package/build/providers/SearchProvider/SearchProvider.js +45 -95
- package/build/providers/SearchProvider/SearchProvider.js.map +1 -1
- package/build/providers/SearchProvider/index.js +1 -25
- package/build/providers/TranslatorProvider/TranslatorProvider.js +33 -71
- package/build/providers/TranslatorProvider/TranslatorProvider.js.map +1 -1
- package/build/providers/TranslatorProvider/index.js +1 -21
- package/build/providers/VersionProvider/VersionProvider.js +42 -57
- package/build/providers/VersionProvider/VersionProvider.js.map +1 -1
- package/build/providers/VersionProvider/index.js +1 -21
- package/build/providers/index.js +16 -94
- package/build/sections/Detail/ContainerContent.js +24 -63
- package/build/sections/Detail/ContainerContent.js.map +1 -1
- package/build/sections/Detail/Detail.js +39 -62
- package/build/sections/Detail/Detail.js.map +1 -1
- package/build/sections/Detail/ReadmeSection.js +8 -18
- package/build/sections/Detail/ReadmeSection.js.map +1 -1
- package/build/sections/Detail/Tabs.js +52 -54
- package/build/sections/Detail/Tabs.js.map +1 -1
- package/build/sections/Detail/index.js +1 -14
- package/build/sections/Footer/Footer.js +94 -137
- package/build/sections/Footer/Footer.js.map +1 -1
- package/build/sections/Footer/index.js +1 -14
- package/build/sections/Footer/styles.d.ts +16 -16
- package/build/sections/Footer/styles.js +58 -89
- package/build/sections/Footer/styles.js.map +1 -1
- package/build/sections/Header/Header.js +89 -144
- package/build/sections/Header/Header.js.map +1 -1
- package/build/sections/Header/HeaderGreetings.js +17 -21
- package/build/sections/Header/HeaderGreetings.js.map +1 -1
- package/build/sections/Header/HeaderLeft.js +31 -32
- package/build/sections/Header/HeaderLeft.js.map +1 -1
- package/build/sections/Header/HeaderMenu.js +43 -50
- package/build/sections/Header/HeaderMenu.js.map +1 -1
- package/build/sections/Header/HeaderRight.js +76 -119
- package/build/sections/Header/HeaderRight.js.map +1 -1
- package/build/sections/Header/HeaderSettingsDialog.js +91 -107
- package/build/sections/Header/HeaderSettingsDialog.js.map +1 -1
- package/build/sections/Header/HeaderToolTip.js +10 -17
- package/build/sections/Header/HeaderToolTip.js.map +1 -1
- package/build/sections/Header/HeaderToolTipIcon.d.ts +1 -1
- package/build/sections/Header/HeaderToolTipIcon.js +56 -63
- package/build/sections/Header/HeaderToolTipIcon.js.map +1 -1
- package/build/sections/Header/LanguageSwitch.js +81 -128
- package/build/sections/Header/LanguageSwitch.js.map +1 -1
- package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.d.ts +6 -6
- package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.js +171 -166
- package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.js.map +1 -1
- package/build/sections/Header/RegistryInfoContent/index.js +1 -14
- package/build/sections/Header/RegistryInfoContent/styles.d.ts +6 -6
- package/build/sections/Header/RegistryInfoContent/styles.js +17 -30
- package/build/sections/Header/RegistryInfoContent/styles.js.map +1 -1
- package/build/sections/Header/index.js +1 -14
- package/build/sections/Header/styles.d.ts +10 -10
- package/build/sections/Header/styles.js +109 -146
- package/build/sections/Header/styles.js.map +1 -1
- package/build/sections/Home/Home.js +17 -21
- package/build/sections/Home/Home.js.map +1 -1
- package/build/sections/Home/index.js +1 -14
- package/build/sections/Security/AddUser.js +116 -179
- package/build/sections/Security/AddUser.js.map +1 -1
- package/build/sections/Security/ChangePassword.js +111 -169
- package/build/sections/Security/ChangePassword.js.map +1 -1
- package/build/sections/Security/Login.js +78 -142
- package/build/sections/Security/Login.js.map +1 -1
- package/build/sections/Security/Success.js +40 -50
- package/build/sections/Security/Success.js.map +1 -1
- package/build/sections/Security/index.js +4 -35
- package/build/sections/Security/styles.js +25 -38
- package/build/sections/Security/styles.js.map +1 -1
- package/build/sections/Security/utils.js +14 -57
- package/build/sections/Security/utils.js.map +1 -1
- package/build/sections/SideBar/Sidebar.js +85 -90
- package/build/sections/SideBar/Sidebar.js.map +1 -1
- package/build/sections/SideBar/index.js +1 -14
- package/build/sections/index.js +4 -21
- package/build/store/api.js +57 -116
- package/build/store/api.js.map +1 -1
- package/build/store/index.js +1 -14
- package/build/store/routes.js +6 -20
- package/build/store/routes.js.map +1 -1
- package/build/store/storage.js +19 -30
- package/build/store/storage.js.map +1 -1
- package/build/store/utils.js +7 -12
- package/build/store/utils.js.map +1 -1
- package/build/ui-components.css +2 -0
- package/build/utils/cli-utils.d.ts +1 -1
- package/build/utils/cli-utils.js +21 -36
- package/build/utils/cli-utils.js.map +1 -1
- package/build/utils/index.js +6 -75
- package/build/utils/loadable.js +12 -25
- package/build/utils/loadable.js.map +1 -1
- package/build/utils/routes.js +8 -31
- package/build/utils/routes.js.map +1 -1
- package/build/utils/schemas.js +15 -27
- package/build/utils/schemas.js.map +1 -1
- package/build/utils/token.js +20 -40
- package/build/utils/token.js.map +1 -1
- package/build/utils/url.js +45 -73
- package/build/utils/url.js.map +1 -1
- package/build/utils/utils.js +55 -111
- package/build/utils/utils.js.map +1 -1
- package/package.json +17 -12
- package/build/AppTest/AppRoute.js +0 -14
- package/build/AppTest/AppRoute.js.map +0 -1
- package/build/Theme/index.js.map +0 -1
- package/build/components/ActionBar/index.js.map +0 -1
- package/build/components/Author/index.js.map +0 -1
- package/build/components/CopyClipboard/index.js.map +0 -1
- package/build/components/Dependencies/index.js.map +0 -1
- package/build/components/Dependencies/types.js +0 -6
- package/build/components/Dependencies/types.js.map +0 -1
- package/build/components/Deprecated/index.js.map +0 -1
- package/build/components/Developers/index.js.map +0 -1
- package/build/components/Distribution/index.js.map +0 -1
- package/build/components/Engines/index.js.map +0 -1
- package/build/components/ErrorBoundary/index.js.map +0 -1
- package/build/components/Forbidden/index.js.map +0 -1
- package/build/components/FundButton/index.js.map +0 -1
- package/build/components/HeaderInfoDialog/index.js.map +0 -1
- package/build/components/Heading/index.js.map +0 -1
- package/build/components/Help/index.js.map +0 -1
- package/build/components/Icons/DevsIcons/CommonJS.js +0 -18
- package/build/components/Icons/DevsIcons/CommonJS.js.map +0 -1
- package/build/components/Icons/DevsIcons/ES6Module.js +0 -18
- package/build/components/Icons/DevsIcons/ES6Module.js.map +0 -1
- package/build/components/Icons/DevsIcons/Git.js +0 -18
- package/build/components/Icons/DevsIcons/Git.js.map +0 -1
- package/build/components/Icons/DevsIcons/NodeJS.js +0 -18
- package/build/components/Icons/DevsIcons/NodeJS.js.map +0 -1
- package/build/components/Icons/DevsIcons/TypeScript.js +0 -18
- package/build/components/Icons/DevsIcons/TypeScript.js.map +0 -1
- package/build/components/Icons/DevsIcons/commonjs.svg +0 -4
- package/build/components/Icons/DevsIcons/es6module.svg +0 -4
- package/build/components/Icons/DevsIcons/git.svg +0 -4
- package/build/components/Icons/DevsIcons/index.js.map +0 -1
- package/build/components/Icons/DevsIcons/nodejs.svg +0 -6
- package/build/components/Icons/DevsIcons/typescript.svg +0 -4
- package/build/components/Icons/Managers/Npm.js +0 -18
- package/build/components/Icons/Managers/Npm.js.map +0 -1
- package/build/components/Icons/Managers/Pnpm.js +0 -18
- package/build/components/Icons/Managers/Pnpm.js.map +0 -1
- package/build/components/Icons/Managers/Yarn.js +0 -18
- package/build/components/Icons/Managers/Yarn.js.map +0 -1
- package/build/components/Icons/Managers/index.js.map +0 -1
- package/build/components/Icons/Managers/npm.svg +0 -15
- package/build/components/Icons/Managers/pnpm.svg +0 -1
- package/build/components/Icons/Managers/yarn.svg +0 -1
- package/build/components/Install/index.js.map +0 -1
- package/build/components/Keywords/index.js.map +0 -1
- package/build/components/Label/index.js.map +0 -1
- package/build/components/Link/index.js.map +0 -1
- package/build/components/LinkExternal/index.js.map +0 -1
- package/build/components/Loading/Spinner/index.js.map +0 -1
- package/build/components/Loading/index.js.map +0 -1
- package/build/components/LoginDialog/index.js.map +0 -1
- package/build/components/Logo/img/logo-black-and-white.svg +0 -1
- package/build/components/Logo/img/logo.svg +0 -1
- package/build/components/Logo/index.js.map +0 -1
- package/build/components/MenuItem/index.js.map +0 -1
- package/build/components/NoItems/index.js.map +0 -1
- package/build/components/NotFound/img/package.svg +0 -1
- package/build/components/NotFound/index.js.map +0 -1
- package/build/components/Package/index.js.map +0 -1
- package/build/components/PackageList/index.js.map +0 -1
- package/build/components/Person/index.js.map +0 -1
- package/build/components/RawViewer/index.js.map +0 -1
- package/build/components/Readme/github-markdown.css +0 -1198
- package/build/components/Readme/index.js.map +0 -1
- package/build/components/Readme/types.js +0 -6
- package/build/components/Readme/types.js.map +0 -1
- package/build/components/RegistryInfoDialog/index.js.map +0 -1
- package/build/components/RegistryInfoDialog/types.js +0 -6
- package/build/components/RegistryInfoDialog/types.js.map +0 -1
- package/build/components/Repository/index.js.map +0 -1
- package/build/components/Search/AutoComplete/index.js.map +0 -1
- package/build/components/Search/index.js.map +0 -1
- package/build/components/SettingsMenu/index.js.map +0 -1
- package/build/components/SideBarTitle/index.js.map +0 -1
- package/build/components/UnAuthorized/UnAuthorized.js +0 -75
- package/build/components/UnAuthorized/UnAuthorized.js.map +0 -1
- package/build/components/UnAuthorized/index.js +0 -14
- package/build/components/UnAuthorized/index.js.map +0 -1
- package/build/components/UpLinks/index.js.map +0 -1
- package/build/components/Versions/index.js.map +0 -1
- package/build/components/Versions/types.js +0 -6
- package/build/components/Versions/types.js.map +0 -1
- package/build/hooks/index.js.map +0 -1
- package/build/index.js.map +0 -1
- package/build/layouts/Version/index.js.map +0 -1
- package/build/pages/Front/index.js.map +0 -1
- package/build/pages/Security/index.js.map +0 -1
- package/build/pages/Version/index.js.map +0 -1
- package/build/providers/AppConfigurationProvider/index.js.map +0 -1
- package/build/providers/AuthProvider/index.js.map +0 -1
- package/build/providers/AuthProvider/types.js +0 -6
- package/build/providers/AuthProvider/types.js.map +0 -1
- package/build/providers/DownloadProvider/index.js.map +0 -1
- package/build/providers/ManifestsProvider/README.md +0 -22
- package/build/providers/ManifestsProvider/index.js.map +0 -1
- package/build/providers/PersistenceSettingProvider/index.js.map +0 -1
- package/build/providers/SearchProvider/index.js.map +0 -1
- package/build/providers/TranslatorProvider/index.js.map +0 -1
- package/build/providers/VersionProvider/README.md +0 -22
- package/build/providers/VersionProvider/index.js.map +0 -1
- package/build/providers/index.js.map +0 -1
- package/build/routes/SecurityRoutes.js +0 -36
- package/build/routes/SecurityRoutes.js.map +0 -1
- package/build/sections/Detail/index.js.map +0 -1
- package/build/sections/Footer/index.js.map +0 -1
- package/build/sections/Header/RegistryInfoContent/index.js.map +0 -1
- package/build/sections/Header/index.js.map +0 -1
- package/build/sections/Home/index.js.map +0 -1
- package/build/sections/Security/index.js.map +0 -1
- package/build/sections/SideBar/index.js.map +0 -1
- package/build/sections/index.js.map +0 -1
- package/build/store/index.js.map +0 -1
- package/build/test/i18n-config.js +0 -26
- package/build/test/i18n-config.js.map +0 -1
- package/build/test/test-react-testing-library.js +0 -147
- package/build/test/test-react-testing-library.js.map +0 -1
- package/build/types/external-modules.d.js +0 -2
- package/build/types/external-modules.d.js.map +0 -1
- package/build/types/index.js +0 -6
- package/build/types/index.js.map +0 -1
- package/build/types/packageMeta.js +0 -6
- package/build/types/packageMeta.js.map +0 -1
- package/build/utils/index.js.map +0 -1
- package/build/utils/token-generate.js +0 -44
- package/build/utils/token-generate.js.map +0 -1
|
@@ -1,179 +1,94 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
var
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
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";
|
|
16
|
+
//#region src/components/Search/Search.tsx
|
|
17
|
+
var h = {
|
|
18
|
+
API_DELAY: 300,
|
|
19
|
+
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);
|
|
23
|
+
}, []);
|
|
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
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}, [b, w]), h.API_DELAY),
|
|
50
|
+
placeholder: g("search.packages"),
|
|
51
|
+
renderInput: (e) => /* @__PURE__ */ s(o, {
|
|
52
|
+
...e,
|
|
53
|
+
InputProps: {
|
|
54
|
+
...e.InputProps,
|
|
55
|
+
startAdornment: /* @__PURE__ */ s(a, {
|
|
56
|
+
position: "start",
|
|
57
|
+
children: /* @__PURE__ */ s(m, {})
|
|
58
|
+
})
|
|
59
|
+
},
|
|
60
|
+
label: "",
|
|
61
|
+
placeholder: g("search.packages"),
|
|
62
|
+
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
|
|
89
|
+
});
|
|
36
90
|
};
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
var _useTranslation = (0, _reactI18next.useTranslation)(),
|
|
40
|
-
t = _useTranslation.t;
|
|
41
|
-
var navigate = (0, _reactRouter.useNavigate)();
|
|
42
|
-
var _useSearch = (0, _.useSearch)(),
|
|
43
|
-
searchResults = _useSearch.searchResults,
|
|
44
|
-
isLoading = _useSearch.isLoading,
|
|
45
|
-
doSearch = _useSearch.doSearch;
|
|
46
|
-
var _useConfig = (0, _.useConfig)(),
|
|
47
|
-
flags = _useConfig.configOptions.flags;
|
|
48
|
-
var searchRemote = (_flags$searchRemote = flags === null || flags === void 0 ? void 0 : flags.searchRemote) !== null && _flags$searchRemote !== void 0 ? _flags$searchRemote : false;
|
|
49
|
-
var abortControllerRef = (0, _react.useRef)(null);
|
|
50
|
-
var cancelAllSearchRequests = (0, _react.useCallback)(function () {
|
|
51
|
-
if (abortControllerRef.current) {
|
|
52
|
-
abortControllerRef.current.abort();
|
|
53
|
-
abortControllerRef.current = null;
|
|
54
|
-
}
|
|
55
|
-
}, []);
|
|
56
|
-
(0, _react.useEffect)(function () {
|
|
57
|
-
return function () {
|
|
58
|
-
return cancelAllSearchRequests();
|
|
59
|
-
};
|
|
60
|
-
}, [cancelAllSearchRequests]);
|
|
61
|
-
var handleOnBlur = (0, _react.useCallback)(function (event) {
|
|
62
|
-
event.stopPropagation();
|
|
63
|
-
cancelAllSearchRequests();
|
|
64
|
-
}, [cancelAllSearchRequests]);
|
|
65
|
-
var handleClickSearch = (0, _react.useCallback)(function (event, value, reason) {
|
|
66
|
-
event.stopPropagation();
|
|
67
|
-
if (reason === 'selectOption') {
|
|
68
|
-
var pkgName = searchRemote ? value['package'].name : value.name;
|
|
69
|
-
navigate("".concat(_utils.Route.DETAIL).concat(pkgName));
|
|
70
|
-
}
|
|
71
|
-
}, [navigate, searchRemote]);
|
|
72
|
-
|
|
73
|
-
/**
|
|
74
|
-
* Fetch packages from API with Abort Logic.
|
|
75
|
-
*/
|
|
76
|
-
var handleFetchPackages = (0, _react.useCallback)(/*#__PURE__*/function () {
|
|
77
|
-
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref) {
|
|
78
|
-
var value, controller, _t;
|
|
79
|
-
return _regenerator().w(function (_context) {
|
|
80
|
-
while (1) switch (_context.p = _context.n) {
|
|
81
|
-
case 0:
|
|
82
|
-
value = _ref.value;
|
|
83
|
-
if (!((value === null || value === void 0 ? void 0 : value.trim()) !== '')) {
|
|
84
|
-
_context.n = 4;
|
|
85
|
-
break;
|
|
86
|
-
}
|
|
87
|
-
// 2. Abort any previous pending request before starting a new one
|
|
88
|
-
cancelAllSearchRequests();
|
|
91
|
+
//#endregion
|
|
92
|
+
export { g as default };
|
|
89
93
|
|
|
90
|
-
// 3. Create a new controller for the current request
|
|
91
|
-
controller = new AbortController();
|
|
92
|
-
abortControllerRef.current = controller;
|
|
93
|
-
_context.p = 1;
|
|
94
|
-
_context.n = 2;
|
|
95
|
-
return doSearch === null || doSearch === void 0 ? void 0 : doSearch({
|
|
96
|
-
text: value,
|
|
97
|
-
signal: controller.signal
|
|
98
|
-
});
|
|
99
|
-
case 2:
|
|
100
|
-
_context.n = 4;
|
|
101
|
-
break;
|
|
102
|
-
case 3:
|
|
103
|
-
_context.p = 3;
|
|
104
|
-
_t = _context.v;
|
|
105
|
-
if (_t.name === CONSTANTS.ABORT_ERROR) {
|
|
106
|
-
console.warn('Search request aborted');
|
|
107
|
-
} else {
|
|
108
|
-
console.error('Search error:', _t);
|
|
109
|
-
}
|
|
110
|
-
case 4:
|
|
111
|
-
return _context.a(2);
|
|
112
|
-
}
|
|
113
|
-
}, _callee, null, [[1, 3]]);
|
|
114
|
-
}));
|
|
115
|
-
return function (_x) {
|
|
116
|
-
return _ref2.apply(this, arguments);
|
|
117
|
-
};
|
|
118
|
-
}(), [doSearch, cancelAllSearchRequests]);
|
|
119
|
-
var renderOption = function renderOption(props, option) {
|
|
120
|
-
var key = props.key,
|
|
121
|
-
otherProps = _objectWithoutProperties(props, _excluded);
|
|
122
|
-
if (searchRemote) {
|
|
123
|
-
var item = option["package"];
|
|
124
|
-
var isPrivate = option === null || option === void 0 ? void 0 : option.verdaccioPrivate;
|
|
125
|
-
var isCached = option === null || option === void 0 ? void 0 : option.verdaccioPkgCached;
|
|
126
|
-
var isRemote = !isCached && !isPrivate;
|
|
127
|
-
return /*#__PURE__*/_react["default"].createElement(_SearchItem["default"], _extends({
|
|
128
|
-
key: key
|
|
129
|
-
}, otherProps, {
|
|
130
|
-
description: item === null || item === void 0 ? void 0 : item.description,
|
|
131
|
-
isCached: isCached,
|
|
132
|
-
isPrivate: isPrivate,
|
|
133
|
-
isRemote: isRemote,
|
|
134
|
-
name: item === null || item === void 0 ? void 0 : item.name,
|
|
135
|
-
version: item === null || item === void 0 ? void 0 : item.version
|
|
136
|
-
}));
|
|
137
|
-
} else {
|
|
138
|
-
var _item = option["package"];
|
|
139
|
-
return /*#__PURE__*/_react["default"].createElement(_SearchItem["default"], _extends({
|
|
140
|
-
key: key
|
|
141
|
-
}, otherProps, {
|
|
142
|
-
description: _item === null || _item === void 0 ? void 0 : _item.description,
|
|
143
|
-
name: _item === null || _item === void 0 ? void 0 : _item.name,
|
|
144
|
-
version: _item === null || _item === void 0 ? void 0 : _item.version
|
|
145
|
-
}));
|
|
146
|
-
}
|
|
147
|
-
};
|
|
148
|
-
var renderInput = function renderInput(params) {
|
|
149
|
-
return /*#__PURE__*/_react["default"].createElement(_styles.StyledTextField, _extends({}, params, {
|
|
150
|
-
InputProps: _objectSpread(_objectSpread({}, params.InputProps), {}, {
|
|
151
|
-
startAdornment: /*#__PURE__*/_react["default"].createElement(_styles.StyledInputAdornment, {
|
|
152
|
-
position: "start"
|
|
153
|
-
}, /*#__PURE__*/_react["default"].createElement(_Search["default"], null))
|
|
154
|
-
}),
|
|
155
|
-
label: "",
|
|
156
|
-
placeholder: t('search.packages'),
|
|
157
|
-
variant: "standard"
|
|
158
|
-
}));
|
|
159
|
-
};
|
|
160
|
-
var getOptionLabel = function getOptionLabel(option) {
|
|
161
|
-
var _option$package;
|
|
162
|
-
return option === null || option === void 0 || (_option$package = option["package"]) === null || _option$package === void 0 ? void 0 : _option$package.name;
|
|
163
|
-
};
|
|
164
|
-
return /*#__PURE__*/_react["default"].createElement(_AutoComplete["default"], {
|
|
165
|
-
getOptionLabel: getOptionLabel,
|
|
166
|
-
onCleanSuggestions: handleOnBlur,
|
|
167
|
-
onSelectItem: handleClickSearch
|
|
168
|
-
// Debounce the entire fetcher wrapper
|
|
169
|
-
,
|
|
170
|
-
onSuggestionsFetch: (0, _debounce["default"])(handleFetchPackages, CONSTANTS.API_DELAY),
|
|
171
|
-
placeholder: t('search.packages'),
|
|
172
|
-
renderInput: renderInput,
|
|
173
|
-
renderOption: renderOption,
|
|
174
|
-
suggestions: searchResults,
|
|
175
|
-
suggestionsLoading: isLoading
|
|
176
|
-
});
|
|
177
|
-
};
|
|
178
|
-
var _default = exports["default"] = Search;
|
|
179
94
|
//# sourceMappingURL=Search.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Search.js","names":["_Search","_interopRequireDefault","require","_debounce","_react","_interopRequireWildcard","_reactI18next","_reactRouter","_","_utils","_AutoComplete","_SearchItem","_styles","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t2","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_extends","assign","bind","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","_regenerator","iterator","toStringTag","c","prototype","Generator","u","create","_regeneratorDefine2","p","y","G","v","a","d","l","done","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","_next","_throw","CONSTANTS","API_DELAY","ABORT_ERROR","Search","_flags$searchRemote","_useTranslation","useTranslation","navigate","useNavigate","_useSearch","useSearch","searchResults","isLoading","doSearch","_useConfig","useConfig","flags","configOptions","searchRemote","abortControllerRef","useRef","cancelAllSearchRequests","useCallback","current","abort","useEffect","handleOnBlur","event","stopPropagation","handleClickSearch","reason","pkgName","name","concat","Route","DETAIL","handleFetchPackages","_ref2","_callee","_ref","controller","_t","_context","trim","AbortController","text","signal","console","warn","error","_x","renderOption","props","option","key","otherProps","item","isPrivate","verdaccioPrivate","isCached","verdaccioPkgCached","isRemote","createElement","description","version","renderInput","params","StyledTextField","InputProps","startAdornment","StyledInputAdornment","position","label","placeholder","variant","getOptionLabel","_option$package","onCleanSuggestions","onSelectItem","onSuggestionsFetch","debounce","suggestions","suggestionsLoading","_default","exports"],"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":";;;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAC,uBAAA,CAAAH,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AACA,IAAAK,YAAA,GAAAL,OAAA;AAIA,IAAAM,CAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,aAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,WAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,OAAA,GAAAV,OAAA;AAAiE,IAAAW,SAAA;AAAA,SAAAR,wBAAAS,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAX,uBAAA,YAAAA,wBAAAS,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,mBAAAT,CAAA,iBAAAA,CAAA,gBAAAU,OAAA,CAAAV,CAAA,0BAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,GAAA,IAAAd,CAAA,gBAAAc,GAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,GAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,GAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,GAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,GAAA,IAAAd,CAAA,CAAAc,GAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAAA,SAAAd,uBAAAa,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAK,UAAA,GAAAL,CAAA,gBAAAA,CAAA;AAAA,SAAAoB,QAAApB,CAAA,EAAAG,CAAA,QAAAF,CAAA,GAAAgB,MAAA,CAAAI,IAAA,CAAArB,CAAA,OAAAiB,MAAA,CAAAK,qBAAA,QAAAhB,CAAA,GAAAW,MAAA,CAAAK,qBAAA,CAAAtB,CAAA,GAAAG,CAAA,KAAAG,CAAA,GAAAA,CAAA,CAAAiB,MAAA,WAAApB,CAAA,WAAAc,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAG,CAAA,EAAAqB,UAAA,OAAAvB,CAAA,CAAAwB,IAAA,CAAAC,KAAA,CAAAzB,CAAA,EAAAK,CAAA,YAAAL,CAAA;AAAA,SAAA0B,cAAA3B,CAAA,aAAAG,CAAA,MAAAA,CAAA,GAAAyB,SAAA,CAAAC,MAAA,EAAA1B,CAAA,UAAAF,CAAA,WAAA2B,SAAA,CAAAzB,CAAA,IAAAyB,SAAA,CAAAzB,CAAA,QAAAA,CAAA,OAAAiB,OAAA,CAAAH,MAAA,CAAAhB,CAAA,OAAA6B,OAAA,WAAA3B,CAAA,IAAA4B,eAAA,CAAA/B,CAAA,EAAAG,CAAA,EAAAF,CAAA,CAAAE,CAAA,SAAAc,MAAA,CAAAe,yBAAA,GAAAf,MAAA,CAAAgB,gBAAA,CAAAjC,CAAA,EAAAiB,MAAA,CAAAe,yBAAA,CAAA/B,CAAA,KAAAmB,OAAA,CAAAH,MAAA,CAAAhB,CAAA,GAAA6B,OAAA,WAAA3B,CAAA,IAAAc,MAAA,CAAAC,cAAA,CAAAlB,CAAA,EAAAG,CAAA,EAAAc,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAE,CAAA,iBAAAH,CAAA;AAAA,SAAA+B,gBAAA/B,CAAA,EAAAG,CAAA,EAAAF,CAAA,YAAAE,CAAA,GAAA+B,cAAA,CAAA/B,CAAA,MAAAH,CAAA,GAAAiB,MAAA,CAAAC,cAAA,CAAAlB,CAAA,EAAAG,CAAA,IAAAgC,KAAA,EAAAlC,CAAA,EAAAuB,UAAA,MAAAY,YAAA,MAAAC,QAAA,UAAArC,CAAA,CAAAG,CAAA,IAAAF,CAAA,EAAAD,CAAA;AAAA,SAAAkC,eAAAjC,CAAA,QAAAM,CAAA,GAAA+B,YAAA,CAAArC,CAAA,gCAAAS,OAAA,CAAAH,CAAA,IAAAA,CAAA,GAAAA,CAAA;AAAA,SAAA+B,aAAArC,CAAA,EAAAE,CAAA,oBAAAO,OAAA,CAAAT,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAD,CAAA,GAAAC,CAAA,CAAAsC,MAAA,CAAAC,WAAA,kBAAAxC,CAAA,QAAAO,CAAA,GAAAP,CAAA,CAAAgB,IAAA,CAAAf,CAAA,EAAAE,CAAA,gCAAAO,OAAA,CAAAH,CAAA,UAAAA,CAAA,YAAAkC,SAAA,yEAAAtC,CAAA,GAAAuC,MAAA,GAAAC,MAAA,EAAA1C,CAAA;AAAA,SAAA2C,SAAA,WAAAA,QAAA,GAAA3B,MAAA,CAAA4B,MAAA,GAAA5B,MAAA,CAAA4B,MAAA,CAAAC,IAAA,eAAA1C,CAAA,aAAAJ,CAAA,MAAAA,CAAA,GAAA4B,SAAA,CAAAC,MAAA,EAAA7B,CAAA,UAAAC,CAAA,GAAA2B,SAAA,CAAA5B,CAAA,YAAAG,CAAA,IAAAF,CAAA,OAAAc,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAE,CAAA,MAAAC,CAAA,CAAAD,CAAA,IAAAF,CAAA,CAAAE,CAAA,aAAAC,CAAA,KAAAwC,QAAA,CAAAlB,KAAA,OAAAE,SAAA;AAAA,SAAAmB,yBAAA/C,CAAA,EAAAC,CAAA,gBAAAD,CAAA,iBAAAM,CAAA,EAAAH,CAAA,EAAAI,CAAA,GAAAyC,6BAAA,CAAAhD,CAAA,EAAAC,CAAA,OAAAgB,MAAA,CAAAK,qBAAA,QAAAlB,CAAA,GAAAa,MAAA,CAAAK,qBAAA,CAAAtB,CAAA,QAAAG,CAAA,MAAAA,CAAA,GAAAC,CAAA,CAAAyB,MAAA,EAAA1B,CAAA,IAAAG,CAAA,GAAAF,CAAA,CAAAD,CAAA,UAAAF,CAAA,CAAAgD,OAAA,CAAA3C,CAAA,QAAA4C,oBAAA,CAAAlC,IAAA,CAAAhB,CAAA,EAAAM,CAAA,MAAAC,CAAA,CAAAD,CAAA,IAAAN,CAAA,CAAAM,CAAA,aAAAC,CAAA;AAAA,SAAAyC,8BAAA7C,CAAA,EAAAH,CAAA,gBAAAG,CAAA,iBAAAF,CAAA,gBAAAG,CAAA,IAAAD,CAAA,SAAAY,cAAA,CAAAC,IAAA,CAAAb,CAAA,EAAAC,CAAA,gBAAAJ,CAAA,CAAAiD,OAAA,CAAA7C,CAAA,aAAAH,CAAA,CAAAG,CAAA,IAAAD,CAAA,CAAAC,CAAA,YAAAH,CAAA;AAAA,SAAAkD,aAAA,IAXjE,uKAAAnD,CAAA,EAAAC,CAAA,EAAAE,CAAA,wBAAAoC,MAAA,GAAAA,MAAA,OAAAnC,CAAA,GAAAD,CAAA,CAAAiD,QAAA,kBAAA9C,CAAA,GAAAH,CAAA,CAAAkD,WAAA,8BAAA9C,EAAAJ,CAAA,EAAAC,CAAA,EAAAE,CAAA,EAAAC,CAAA,QAAA+C,CAAA,GAAAlD,CAAA,IAAAA,CAAA,CAAAmD,SAAA,YAAAC,SAAA,GAAApD,CAAA,GAAAoD,SAAA,EAAAC,CAAA,GAAAxC,MAAA,CAAAyC,MAAA,CAAAJ,CAAA,CAAAC,SAAA,UAAAI,mBAAA,CAAAF,CAAA,uBAAAtD,CAAA,EAAAC,CAAA,EAAAE,CAAA,QAAAC,CAAA,EAAA+C,CAAA,EAAAG,CAAA,EAAAjD,CAAA,MAAAoD,CAAA,GAAAtD,CAAA,QAAAuD,CAAA,OAAAC,CAAA,KAAAF,CAAA,KAAAxD,CAAA,KAAA2D,CAAA,EAAA/D,CAAA,EAAAgE,CAAA,EAAAC,CAAA,EAAAzD,CAAA,EAAAyD,CAAA,CAAAnB,IAAA,CAAA9C,CAAA,MAAAiE,CAAA,WAAAA,EAAAhE,CAAA,EAAAE,CAAA,WAAAI,CAAA,GAAAN,CAAA,EAAAqD,CAAA,MAAAG,CAAA,GAAAzD,CAAA,EAAA8D,CAAA,CAAA1D,CAAA,GAAAD,CAAA,EAAA6D,CAAA,gBAAAC,EAAA9D,CAAA,EAAAC,CAAA,SAAAkD,CAAA,GAAAnD,CAAA,EAAAsD,CAAA,GAAArD,CAAA,EAAAH,CAAA,OAAA4D,CAAA,IAAArD,CAAA,KAAAF,CAAA,IAAAL,CAAA,GAAA2D,CAAA,CAAA/B,MAAA,EAAA5B,CAAA,UAAAK,CAAA,EAAAC,CAAA,GAAAqD,CAAA,CAAA3D,CAAA,GAAAgE,CAAA,GAAAH,CAAA,CAAAF,CAAA,EAAAM,CAAA,GAAA3D,CAAA,KAAAJ,CAAA,QAAAG,CAAA,GAAA4D,CAAA,KAAA9D,CAAA,MAAAqD,CAAA,GAAAlD,CAAA,EAAA+C,CAAA,GAAA/C,CAAA,YAAA+C,CAAA,WAAA/C,CAAA,MAAAA,CAAA,MAAAP,CAAA,IAAAO,CAAA,OAAA0D,CAAA,MAAA3D,CAAA,GAAAH,CAAA,QAAA8D,CAAA,GAAA1D,CAAA,QAAA+C,CAAA,MAAAQ,CAAA,CAAAC,CAAA,GAAA3D,CAAA,EAAA0D,CAAA,CAAA1D,CAAA,GAAAG,CAAA,OAAA0D,CAAA,GAAAC,CAAA,KAAA5D,CAAA,GAAAH,CAAA,QAAAI,CAAA,MAAAH,CAAA,IAAAA,CAAA,GAAA8D,CAAA,MAAA3D,CAAA,MAAAJ,CAAA,EAAAI,CAAA,MAAAH,CAAA,EAAA0D,CAAA,CAAA1D,CAAA,GAAA8D,CAAA,EAAAZ,CAAA,cAAAhD,CAAA,IAAAH,CAAA,aAAA6D,CAAA,QAAAH,CAAA,OAAAzD,CAAA,qBAAAE,CAAA,EAAAsD,CAAA,EAAAM,CAAA,QAAA1D,CAAA,YAAAiC,SAAA,uCAAAoB,CAAA,UAAAD,CAAA,IAAAK,CAAA,CAAAL,CAAA,EAAAM,CAAA,GAAAZ,CAAA,GAAAM,CAAA,EAAAH,CAAA,GAAAS,CAAA,GAAAjE,CAAA,GAAAqD,CAAA,OAAAtD,CAAA,GAAAyD,CAAA,MAAAI,CAAA,KAAAtD,CAAA,KAAA+C,CAAA,GAAAA,CAAA,QAAAA,CAAA,SAAAQ,CAAA,CAAA1D,CAAA,QAAA6D,CAAA,CAAAX,CAAA,EAAAG,CAAA,KAAAK,CAAA,CAAA1D,CAAA,GAAAqD,CAAA,GAAAK,CAAA,CAAAC,CAAA,GAAAN,CAAA,aAAAjD,CAAA,MAAAD,CAAA,QAAA+C,CAAA,KAAAhD,CAAA,YAAAL,CAAA,GAAAM,CAAA,CAAAD,CAAA,WAAAL,CAAA,GAAAA,CAAA,CAAAe,IAAA,CAAAT,CAAA,EAAAkD,CAAA,UAAAhB,SAAA,2CAAAxC,CAAA,CAAAkE,IAAA,SAAAlE,CAAA,EAAAwD,CAAA,GAAAxD,CAAA,CAAAkC,KAAA,EAAAmB,CAAA,SAAAA,CAAA,oBAAAA,CAAA,KAAArD,CAAA,GAAAM,CAAA,eAAAN,CAAA,CAAAe,IAAA,CAAAT,CAAA,GAAA+C,CAAA,SAAAG,CAAA,GAAAhB,SAAA,uCAAAnC,CAAA,gBAAAgD,CAAA,OAAA/C,CAAA,GAAAP,CAAA,cAAAC,CAAA,IAAA4D,CAAA,GAAAC,CAAA,CAAA1D,CAAA,QAAAqD,CAAA,GAAAtD,CAAA,CAAAa,IAAA,CAAAZ,CAAA,EAAA0D,CAAA,OAAAE,CAAA,kBAAA/D,CAAA,IAAAM,CAAA,GAAAP,CAAA,EAAAsD,CAAA,MAAAG,CAAA,GAAAxD,CAAA,cAAAO,CAAA,mBAAA2B,KAAA,EAAAlC,CAAA,EAAAkE,IAAA,EAAAN,CAAA,SAAA1D,CAAA,EAAAG,CAAA,EAAAC,CAAA,QAAAkD,CAAA,QAAAO,CAAA,gBAAAR,UAAA,cAAAY,kBAAA,cAAAC,2BAAA,KAAApE,CAAA,GAAAgB,MAAA,CAAAqD,cAAA,MAAAhB,CAAA,MAAAlD,CAAA,IAAAH,CAAA,CAAAA,CAAA,IAAAG,CAAA,SAAAuD,mBAAA,CAAA1D,CAAA,OAAAG,CAAA,iCAAAH,CAAA,GAAAwD,CAAA,GAAAY,0BAAA,CAAAd,SAAA,GAAAC,SAAA,CAAAD,SAAA,GAAAtC,MAAA,CAAAyC,MAAA,CAAAJ,CAAA,YAAA9C,EAAAR,CAAA,WAAAiB,MAAA,CAAAsD,cAAA,GAAAtD,MAAA,CAAAsD,cAAA,CAAAvE,CAAA,EAAAqE,0BAAA,KAAArE,CAAA,CAAAS,SAAA,GAAA4D,0BAAA,EAAAV,mBAAA,CAAA3D,CAAA,EAAAM,CAAA,yBAAAN,CAAA,CAAAuD,SAAA,GAAAtC,MAAA,CAAAyC,MAAA,CAAAD,CAAA,GAAAzD,CAAA,WAAAoE,iBAAA,CAAAb,SAAA,GAAAc,0BAAA,EAAAV,mBAAA,CAAAF,CAAA,iBAAAY,0BAAA,GAAAV,mBAAA,CAAAU,0BAAA,iBAAAD,iBAAA,GAAAA,iBAAA,CAAAI,WAAA,wBAAAb,mBAAA,CAAAU,0BAAA,EAAA/D,CAAA,wBAAAqD,mBAAA,CAAAF,CAAA,GAAAE,mBAAA,CAAAF,CAAA,EAAAnD,CAAA,gBAAAqD,mBAAA,CAAAF,CAAA,EAAArD,CAAA,iCAAAuD,mBAAA,CAAAF,CAAA,8DAAAN,YAAA,YAAAA,aAAA,aAAAsB,CAAA,EAAAlE,CAAA,EAAAmE,CAAA,EAAAlE,CAAA;AAAA,SAAAmD,oBAAA3D,CAAA,EAAAG,CAAA,EAAAC,CAAA,EAAAH,CAAA,QAAAM,CAAA,GAAAU,MAAA,CAAAC,cAAA,QAAAX,CAAA,uBAAAP,CAAA,IAAAO,CAAA,QAAAoD,mBAAA,YAAAgB,mBAAA3E,CAAA,EAAAG,CAAA,EAAAC,CAAA,EAAAH,CAAA,aAAAK,EAAAH,CAAA,EAAAC,CAAA,IAAAuD,mBAAA,CAAA3D,CAAA,EAAAG,CAAA,YAAAH,CAAA,gBAAA4E,OAAA,CAAAzE,CAAA,EAAAC,CAAA,EAAAJ,CAAA,SAAAG,CAAA,GAAAI,CAAA,GAAAA,CAAA,CAAAP,CAAA,EAAAG,CAAA,IAAAgC,KAAA,EAAA/B,CAAA,EAAAoB,UAAA,GAAAvB,CAAA,EAAAmC,YAAA,GAAAnC,CAAA,EAAAoC,QAAA,GAAApC,CAAA,MAAAD,CAAA,CAAAG,CAAA,IAAAC,CAAA,IAAAE,CAAA,aAAAA,CAAA,cAAAA,CAAA,mBAAAqD,mBAAA,CAAA3D,CAAA,EAAAG,CAAA,EAAAC,CAAA,EAAAH,CAAA;AAAA,SAAA4E,mBAAAzE,CAAA,EAAAH,CAAA,EAAAD,CAAA,EAAAG,CAAA,EAAAG,CAAA,EAAA0D,CAAA,EAAAV,CAAA,cAAA/C,CAAA,GAAAH,CAAA,CAAA4D,CAAA,EAAAV,CAAA,GAAAG,CAAA,GAAAlD,CAAA,CAAA4B,KAAA,WAAA/B,CAAA,gBAAAJ,CAAA,CAAAI,CAAA,KAAAG,CAAA,CAAA4D,IAAA,GAAAlE,CAAA,CAAAwD,CAAA,IAAAqB,OAAA,CAAAC,OAAA,CAAAtB,CAAA,EAAAuB,IAAA,CAAA7E,CAAA,EAAAG,CAAA;AAAA,SAAA2E,kBAAA7E,CAAA,6BAAAH,CAAA,SAAAD,CAAA,GAAA4B,SAAA,aAAAkD,OAAA,WAAA3E,CAAA,EAAAG,CAAA,QAAA0D,CAAA,GAAA5D,CAAA,CAAAsB,KAAA,CAAAzB,CAAA,EAAAD,CAAA,YAAAkF,MAAA9E,CAAA,IAAAyE,kBAAA,CAAAb,CAAA,EAAA7D,CAAA,EAAAG,CAAA,EAAA4E,KAAA,EAAAC,MAAA,UAAA/E,CAAA,cAAA+E,OAAA/E,CAAA,IAAAyE,kBAAA,CAAAb,CAAA,EAAA7D,CAAA,EAAAG,CAAA,EAAA4E,KAAA,EAAAC,MAAA,WAAA/E,CAAA,KAAA8E,KAAA;AAaA,IAAME,SAAS,GAAG;EAChBC,SAAS,EAAE,GAAG;EACdC,WAAW,EAAE;AACf,CAAC;AAED,IAAMC,MAAgB,GAAG,SAAnBA,MAAgBA,CAAA,EAAS;EAAA,IAAAC,mBAAA;EAC7B,IAAAC,eAAA,GAAc,IAAAC,4BAAc,EAAC,CAAC;IAAtBzF,CAAC,GAAAwF,eAAA,CAADxF,CAAC;EACT,IAAM0F,QAAQ,GAAG,IAAAC,wBAAW,EAAC,CAAC;EAC9B,IAAAC,UAAA,GAA+C,IAAAC,WAAS,EAAC,CAAC;IAAlDC,aAAa,GAAAF,UAAA,CAAbE,aAAa;IAAEC,SAAS,GAAAH,UAAA,CAATG,SAAS;IAAEC,QAAQ,GAAAJ,UAAA,CAARI,QAAQ;EAC1C,IAAAC,UAAA,GAEI,IAAAC,WAAS,EAAC,CAAC;IADIC,KAAK,GAAAF,UAAA,CAAtBG,aAAa,CAAID,KAAK;EAExB,IAAME,YAAY,IAAAd,mBAAA,GAAGY,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,YAAY,cAAAd,mBAAA,cAAAA,mBAAA,GAAI,KAAK;EAEjD,IAAMe,kBAAkB,GAAG,IAAAC,aAAM,EAAyB,IAAI,CAAC;EAE/D,IAAMC,uBAAuB,GAAG,IAAAC,kBAAW,EAAC,YAAM;IAChD,IAAIH,kBAAkB,CAACI,OAAO,EAAE;MAC9BJ,kBAAkB,CAACI,OAAO,CAACC,KAAK,CAAC,CAAC;MAClCL,kBAAkB,CAACI,OAAO,GAAG,IAAI;IACnC;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAE,gBAAS,EAAC,YAAM;IACd,OAAO;MAAA,OAAMJ,uBAAuB,CAAC,CAAC;IAAA;EACxC,CAAC,EAAE,CAACA,uBAAuB,CAAC,CAAC;EAE7B,IAAMK,YAAY,GAAG,IAAAJ,kBAAW,EAC9B,UAACK,KAA2B,EAAK;IAC/BA,KAAK,CAACC,eAAe,CAAC,CAAC;IACvBP,uBAAuB,CAAC,CAAC;EAC3B,CAAC,EACD,CAACA,uBAAuB,CAC1B,CAAC;EAED,IAAMQ,iBAAiB,GAAG,IAAAP,kBAAW,EACnC,UAACK,KAA2B,EAAE5E,KAAsB,EAAE+E,MAAc,EAAW;IAC7EH,KAAK,CAACC,eAAe,CAAC,CAAC;IACvB,IAAIE,MAAM,KAAK,cAAc,EAAE;MAC7B,IAAMC,OAAO,GAAGb,YAAY,GAAGnE,KAAK,CAAC,SAAS,CAAC,CAACiF,IAAI,GAAGjF,KAAK,CAACiF,IAAI;MACjEzB,QAAQ,IAAA0B,MAAA,CAAIC,YAAK,CAACC,MAAM,EAAAF,MAAA,CAAGF,OAAO,CAAE,CAAC;IACvC;EACF,CAAC,EACD,CAACxB,QAAQ,EAAEW,YAAY,CACzB,CAAC;;EAED;AACF;AACA;EACE,IAAMkB,mBAAmB,GAAG,IAAAd,kBAAW;IAAA,IAAAe,KAAA,GAAAxC,iBAAA,cAAA9B,YAAA,GAAAuB,CAAA,CACrC,SAAAgD,QAAAC,IAAA;MAAA,IAAAxF,KAAA,EAAAyF,UAAA,EAAAC,EAAA;MAAA,OAAA1E,YAAA,GAAAsB,CAAA,WAAAqD,QAAA;QAAA,kBAAAA,QAAA,CAAAlE,CAAA,GAAAkE,QAAA,CAAA1H,CAAA;UAAA;YAAS+B,KAAK,GAAAwF,IAAA,CAALxF,KAAK;YAAA,MACR,CAAAA,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAE4F,IAAI,CAAC,CAAC,MAAK,EAAE;cAAAD,QAAA,CAAA1H,CAAA;cAAA;YAAA;YACtB;YACAqG,uBAAuB,CAAC,CAAC;;YAEzB;YACMmB,UAAU,GAAG,IAAII,eAAe,CAAC,CAAC;YACxCzB,kBAAkB,CAACI,OAAO,GAAGiB,UAAU;YAACE,QAAA,CAAAlE,CAAA;YAAAkE,QAAA,CAAA1H,CAAA;YAAA,OAGhC6F,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAG;cACfgC,IAAI,EAAE9F,KAAK;cACX+F,MAAM,EAAEN,UAAU,CAACM;YACrB,CAAC,CAAC;UAAA;YAAAJ,QAAA,CAAA1H,CAAA;YAAA;UAAA;YAAA0H,QAAA,CAAAlE,CAAA;YAAAiE,EAAA,GAAAC,QAAA,CAAA/D,CAAA;YAEF,IAAI8D,EAAA,CAAIT,IAAI,KAAKhC,SAAS,CAACE,WAAW,EAAE;cACtC6C,OAAO,CAACC,IAAI,CAAC,wBAAwB,CAAC;YACxC,CAAC,MAAM;cACLD,OAAO,CAACE,KAAK,CAAC,eAAe,EAAAR,EAAK,CAAC;YACrC;UAAC;YAAA,OAAAC,QAAA,CAAA9D,CAAA;QAAA;MAAA,GAAA0D,OAAA;IAAA,CAGN;IAAA,iBAAAY,EAAA;MAAA,OAAAb,KAAA,CAAA/F,KAAA,OAAAE,SAAA;IAAA;EAAA,KACD,CAACqE,QAAQ,EAAEQ,uBAAuB,CACpC,CAAC;EAED,IAAM8B,YAAY,GAAG,SAAfA,YAAYA,CAAIC,KAAK,EAAEC,MAAM,EAAK;IACtC,IAAQC,GAAG,GAAoBF,KAAK,CAA5BE,GAAG;MAAKC,UAAU,GAAA5F,wBAAA,CAAKyF,KAAK,EAAAzI,SAAA;IAEpC,IAAIuG,YAAY,EAAE;MAChB,IAAMsC,IAAqB,GAAGH,MAAM,WAAQ;MAC5C,IAAMI,SAAS,GAAGJ,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEK,gBAAgB;MAC1C,IAAMC,QAAQ,GAAGN,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEO,kBAAkB;MAC3C,IAAMC,QAAQ,GAAG,CAACF,QAAQ,IAAI,CAACF,SAAS;MACxC,oBACEvJ,MAAA,YAAA4J,aAAA,CAACrJ,WAAA,WAAU,EAAA+C,QAAA;QACT8F,GAAG,EAAEA;MAAI,GACLC,UAAU;QACdQ,WAAW,EAAEP,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEO,WAAY;QAC/BJ,QAAQ,EAAEA,QAAS;QACnBF,SAAS,EAAEA,SAAU;QACrBI,QAAQ,EAAEA,QAAS;QACnB7B,IAAI,EAAEwB,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAExB,IAAK;QACjBgC,OAAO,EAAER,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEQ;MAAQ,EACxB,CAAC;IAEN,CAAC,MAAM;MACL,IAAMR,KAAqB,GAAGH,MAAM,WAAQ;MAC5C,oBACEnJ,MAAA,YAAA4J,aAAA,CAACrJ,WAAA,WAAU,EAAA+C,QAAA;QACT8F,GAAG,EAAEA;MAAI,GACLC,UAAU;QACdQ,WAAW,EAAEP,KAAI,aAAJA,KAAI,uBAAJA,KAAI,CAAEO,WAAY;QAC/B/B,IAAI,EAAEwB,KAAI,aAAJA,KAAI,uBAAJA,KAAI,CAAExB,IAAK;QACjBgC,OAAO,EAAER,KAAI,aAAJA,KAAI,uBAAJA,KAAI,CAAEQ;MAAQ,EACxB,CAAC;IAEN;EACF,CAAC;EAED,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAIC,MAAM,EAAK;IAC9B,oBACEhK,MAAA,YAAA4J,aAAA,CAACpJ,OAAA,CAAAyJ,eAAe,EAAA3G,QAAA,KACV0G,MAAM;MACVE,UAAU,EAAA7H,aAAA,CAAAA,aAAA,KACL2H,MAAM,CAACE,UAAU;QACpBC,cAAc,eACZnK,MAAA,YAAA4J,aAAA,CAACpJ,OAAA,CAAA4J,oBAAoB;UAACC,QAAQ,EAAC;QAAO,gBACpCrK,MAAA,YAAA4J,aAAA,CAAChK,OAAA,WAAS,MAAE,CACQ;MACvB,EACD;MACF0K,KAAK,EAAC,EAAE;MACRC,WAAW,EAAE5J,CAAC,CAAC,iBAAiB,CAAE;MAClC6J,OAAO,EAAC;IAAU,EACnB,CAAC;EAEN,CAAC;EAED,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAItB,MAAM,EAAK;IAAA,IAAAuB,eAAA;IACjC,OAAOvB,MAAM,aAANA,MAAM,gBAAAuB,eAAA,GAANvB,MAAM,WAAS,cAAAuB,eAAA,uBAAfA,eAAA,CAAiB5C,IAAI;EAC9B,CAAC;EAED,oBACE9H,MAAA,YAAA4J,aAAA,CAACtJ,aAAA,WAAY;IACXmK,cAAc,EAAEA,cAAe;IAC/BE,kBAAkB,EAAEnD,YAAa;IACjCoD,YAAY,EAAEjD;IACd;IAAA;IACAkD,kBAAkB,EAAE,IAAAC,oBAAQ,EAAC5C,mBAAmB,EAAEpC,SAAS,CAACC,SAAS,CAAE;IACvEwE,WAAW,EAAE5J,CAAC,CAAC,iBAAiB,CAAE;IAClCoJ,WAAW,EAAEA,WAAY;IACzBd,YAAY,EAAEA,YAAa;IAC3B8B,WAAW,EAAEtE,aAAc;IAC3BuE,kBAAkB,EAAEtE;EAAU,CAC/B,CAAC;AAEN,CAAC;AAAC,IAAAuE,QAAA,GAAAC,OAAA,cAEajF,MAAM","ignoreList":[]}
|
|
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"}
|
|
@@ -9,10 +9,10 @@ type SearchItemProps = {
|
|
|
9
9
|
isRemote?: boolean;
|
|
10
10
|
};
|
|
11
11
|
export declare const Description: import("@emotion/styled").StyledComponent<{
|
|
12
|
-
theme?: import("@emotion/react").Theme
|
|
13
|
-
as?: React.ElementType
|
|
12
|
+
theme?: import("@emotion/react").Theme;
|
|
13
|
+
as?: React.ElementType;
|
|
14
14
|
} & {
|
|
15
|
-
theme?: Theme
|
|
15
|
+
theme?: Theme;
|
|
16
16
|
}, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
17
17
|
declare const SearchItem: React.FC<SearchItemProps>;
|
|
18
18
|
export default SearchItem;
|