@verdaccio/ui-components 5.0.0-next-9.7 → 5.0.0-next-9.9
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.d.ts +1 -1
- package/build/Theme/StyleBaseline.d.ts +1 -2
- package/build/Theme/ThemeProvider.d.ts +1 -1
- package/build/Theme/modes.d.ts +13 -1
- package/build/Theme/modes.js +18 -3
- package/build/Theme/modes.js.map +1 -1
- package/build/Theme/modes.mjs +16 -2
- package/build/Theme/modes.mjs.map +1 -1
- package/build/Theme/theme.d.ts +27 -3
- package/build/Theme/theme.js.map +1 -1
- package/build/Theme/theme.mjs.map +1 -1
- package/build/api/use-data-mutation.d.ts +3 -3
- package/build/api/use-data.d.ts +2 -2
- package/build/components/ActionBar/ActionBar.d.ts +1 -1
- package/build/components/ActionBar/ActionBarAction.d.ts +7 -2
- package/build/components/AppRoute/AppRoute.d.ts +1 -1
- package/build/components/Author/Author.d.ts +1 -1
- package/build/components/Author/styles.d.ts +9 -2
- package/build/components/CopyClipboard/CopyToClipBoard.d.ts +1 -1
- package/build/components/CopyClipboard/utils.d.ts +1 -1
- package/build/components/Dependencies/Dependencies.d.ts +1 -1
- package/build/components/Dependencies/DependencyBlock.d.ts +15 -7
- package/build/components/Dependencies/DependencyBlock.mjs +2 -2
- package/build/components/Dependencies/DependencyBlock.mjs.map +1 -1
- package/build/components/Dependencies/index.js +1 -1
- package/build/components/Dependencies/types.d.ts +1 -1
- package/build/components/Deprecated/Deprecated.d.ts +1 -1
- package/build/components/Developers/Developers.d.ts +8 -3
- package/build/components/Developers/Title.d.ts +1 -1
- package/build/components/Developers/Title.mjs +2 -2
- package/build/components/Developers/Title.mjs.map +1 -1
- package/build/components/Developers/get-unique-developer-values.d.ts +1 -1
- package/build/components/Distribution/Dist.d.ts +2 -2
- package/build/components/Distribution/styles.d.ts +12 -3
- package/build/components/Distribution/styles.mjs +2 -2
- package/build/components/Distribution/styles.mjs.map +1 -1
- package/build/components/Engines/Engines.d.ts +2 -2
- package/build/components/Engines/styles.d.ts +9 -2
- package/build/components/Engines/styles.mjs +2 -2
- package/build/components/Engines/styles.mjs.map +1 -1
- package/build/components/ErrorBoundary/ErrorBoundary.d.ts +2 -3
- package/build/components/Forbidden/Forbidden.d.ts +1 -1
- package/build/components/FundButton/FundButton.d.ts +1 -1
- package/build/components/FundButton/FundButton.js +1 -1
- package/build/components/FundButton/FundButton.js.map +1 -1
- package/build/components/FundButton/FundButton.mjs +1 -1
- package/build/components/FundButton/FundButton.mjs.map +1 -1
- package/build/components/HeaderInfoDialog/HeaderInfoDialog.d.ts +1 -1
- package/build/components/Heading/Heading.d.ts +2 -2
- package/build/components/Heading/Heading.mjs +2 -2
- package/build/components/Heading/Heading.mjs.map +1 -1
- package/build/components/Help/Help.d.ts +1 -1
- package/build/components/Help/Help.mjs +3 -3
- package/build/components/Help/Help.mjs.map +1 -1
- package/build/components/Help/styles.d.ts +3 -1
- package/build/components/Icons/DevsIcons/CommonJS.d.ts +1 -1
- package/build/components/Icons/DevsIcons/ES6Module.d.ts +1 -1
- package/build/components/Icons/DevsIcons/Git.d.ts +1 -1
- package/build/components/Icons/DevsIcons/NodeJS.d.ts +1 -1
- package/build/components/Icons/DevsIcons/TypeScript.d.ts +1 -1
- package/build/components/Icons/DevsIcons/commonjs.svg +4 -0
- package/build/components/Icons/DevsIcons/es6module.svg +4 -0
- package/build/components/Icons/DevsIcons/git.svg +4 -0
- package/build/components/Icons/DevsIcons/nodejs.svg +6 -0
- package/build/components/Icons/DevsIcons/typescript.svg +4 -0
- package/build/components/Icons/Earth.d.ts +1 -1
- package/build/components/Icons/FileBinary.d.ts +1 -1
- package/build/components/Icons/Law.d.ts +1 -1
- package/build/components/Icons/License.d.ts +1 -1
- package/build/components/Icons/Managers/Npm.d.ts +1 -1
- package/build/components/Icons/Managers/Pnpm.d.ts +1 -1
- package/build/components/Icons/Managers/Yarn.d.ts +1 -1
- package/build/components/Icons/Managers/npm.svg +15 -0
- package/build/components/Icons/Managers/pnpm.svg +1 -0
- package/build/components/Icons/Managers/yarn.svg +1 -0
- package/build/components/Icons/SvgIcon.d.ts +2 -2
- package/build/components/Icons/Time.d.ts +1 -1
- package/build/components/Icons/Version.d.ts +1 -1
- package/build/components/Install/Install.d.ts +3 -3
- package/build/components/Install/InstallListItem.d.ts +1 -1
- package/build/components/Install/InstallListItem.mjs +2 -2
- package/build/components/Install/InstallListItem.mjs.map +1 -1
- package/build/components/Keywords/KeywordListItems.d.ts +1 -1
- package/build/components/Keywords/Keywords.d.ts +2 -2
- package/build/components/Keywords/Keywords.mjs +2 -2
- package/build/components/Keywords/Keywords.mjs.map +1 -1
- package/build/components/Label/Label.d.ts +2 -2
- package/build/components/Link/Link.d.ts +1 -1
- package/build/components/Link/Link.mjs +2 -2
- package/build/components/Link/Link.mjs.map +1 -1
- package/build/components/LinkExternal/LinkExternal.d.ts +1 -1
- package/build/components/Loading/Loading.d.ts +1 -1
- package/build/components/Loading/Spinner/Spinner.d.ts +1 -1
- package/build/components/Loading/styles.d.ts +7 -7
- package/build/components/LoginDialog/LoginDialog.d.ts +1 -1
- package/build/components/LoginDialog/LoginDialogCloseButton.d.ts +1 -1
- package/build/components/LoginDialog/LoginDialogCloseButton.js +2 -2
- package/build/components/LoginDialog/LoginDialogCloseButton.js.map +1 -1
- package/build/components/LoginDialog/LoginDialogCloseButton.mjs +2 -2
- package/build/components/LoginDialog/LoginDialogCloseButton.mjs.map +1 -1
- package/build/components/LoginDialog/LoginDialogForm.d.ts +1 -1
- package/build/components/LoginDialog/LoginDialogFormError.d.ts +1 -1
- package/build/components/LoginForm/Login.d.ts +2 -2
- package/build/components/LoginForm/Login.mjs +2 -2
- package/build/components/LoginForm/Login.mjs.map +1 -1
- package/build/components/LoginForm/PasswordField.d.ts +3 -3
- package/build/components/LoginForm/UsernameField.d.ts +3 -3
- package/build/components/LoginForm/styles.d.ts +1 -1
- package/build/components/LoginForm/styles.js +2 -2
- package/build/components/LoginForm/styles.js.map +1 -1
- package/build/components/LoginForm/styles.mjs +2 -2
- package/build/components/LoginForm/styles.mjs.map +1 -1
- package/build/components/LoginForm/useLoginForm.d.ts +17 -17
- package/build/components/Logo/Logo.d.ts +1 -1
- package/build/components/Logo/img/logo-black-and-white.svg +1 -0
- package/build/components/Logo/img/logo.svg +1 -0
- package/build/components/MenuItem/MenuItem.d.ts +2 -2
- package/build/components/NoItems/NoItems.d.ts +1 -1
- package/build/components/NoItems/NoItems.mjs +2 -2
- package/build/components/NoItems/NoItems.mjs.map +1 -1
- package/build/components/NotFound/NotFound.d.ts +1 -1
- package/build/components/NotFound/img/package.svg +1 -0
- package/build/components/Package/Package.d.ts +3 -3
- package/build/components/Package/Package.js.map +1 -1
- package/build/components/Package/Package.mjs.map +1 -1
- package/build/components/Package/styles.d.ts +39 -29
- package/build/components/Package/styles.mjs +2 -2
- package/build/components/Package/styles.mjs.map +1 -1
- package/build/components/PackageList/PackageList.d.ts +2 -2
- package/build/components/Person/Person.d.ts +2 -2
- package/build/components/Person/PersonTooltip.d.ts +2 -2
- package/build/components/Person/PersonTooltip.mjs +2 -2
- package/build/components/Person/PersonTooltip.mjs.map +1 -1
- package/build/components/Person/utils.d.ts +1 -1
- package/build/components/RawViewer/RawViewer.d.ts +1 -1
- package/build/components/Readme/Readme.d.ts +2 -5
- package/build/components/Readme/Readme.js +6 -6
- package/build/components/Readme/Readme.js.map +1 -1
- package/build/components/Readme/Readme.mjs +6 -6
- package/build/components/Readme/Readme.mjs.map +1 -1
- package/build/components/Readme/github-markdown.css +1654 -0
- package/build/components/Readme/hljs-github-dark.css +117 -0
- package/build/components/Readme/hljs-github-light.css +117 -0
- package/build/components/RegistryInfoDialog/RegistryInfoDialog.d.ts +2 -2
- package/build/components/RegistryInfoDialog/styles.d.ts +11 -7
- package/build/components/RegistryInfoDialog/types.d.ts +1 -1
- package/build/components/Repository/Repository.d.ts +1 -1
- package/build/components/Repository/Repository.mjs +4 -4
- package/build/components/Repository/Repository.mjs.map +1 -1
- package/build/components/Search/AutoComplete/AutoComplete.d.ts +2 -3
- package/build/components/Search/AutoComplete/styles.d.ts +3 -3
- package/build/components/Search/Search.d.ts +1 -1
- package/build/components/Search/Search.js +15 -30
- package/build/components/Search/Search.js.map +1 -1
- package/build/components/Search/Search.mjs +15 -30
- package/build/components/Search/Search.mjs.map +1 -1
- package/build/components/Search/SearchItem.d.ts +4 -4
- package/build/components/Search/styles.d.ts +10 -6
- package/build/components/Search/utils.d.ts +21 -0
- package/build/components/Search/utils.js +37 -0
- package/build/components/Search/utils.js.map +1 -1
- package/build/components/Search/utils.mjs +37 -1
- package/build/components/Search/utils.mjs.map +1 -1
- package/build/components/SettingsMenu/SettingsMenu.d.ts +1 -1
- package/build/components/SideBarTitle/SideBarTitle.d.ts +1 -1
- package/build/components/UnAuthorized/UnAuthorized.d.ts +1 -1
- package/build/components/UpLinks/UpLinks.d.ts +1 -1
- package/build/components/UpLinks/UplinkLink.d.ts +1 -1
- package/build/components/UpLinks/index.js +1 -1
- package/build/components/UpLinks/styles.d.ts +11 -7
- package/build/components/UpLinks/styles.mjs +5 -5
- package/build/components/UpLinks/styles.mjs.map +1 -1
- package/build/components/Versions/HistoryList.d.ts +2 -2
- package/build/components/Versions/TagList.d.ts +2 -2
- package/build/components/Versions/Versions.d.ts +7 -2
- package/build/components/Versions/Versions.mjs +2 -2
- package/build/components/Versions/Versions.mjs.map +1 -1
- package/build/components/Versions/index.js +1 -1
- package/build/components/Versions/styles.d.ts +6 -6
- package/build/components/Versions/styles.mjs +3 -3
- package/build/components/Versions/styles.mjs.map +1 -1
- package/build/components/Versions/types.d.ts +1 -1
- package/build/configuration.d.ts +1 -1
- package/build/hooks/useOnClickOutside.d.ts +1 -1
- package/build/index.d.ts +0 -3
- package/build/index.js +59 -62
- package/build/index.mjs +2 -6
- package/build/layouts/Security/Dialog.d.ts +1 -1
- package/build/layouts/Version/Version.d.ts +1 -1
- package/build/pages/Front/index.js +1 -1
- package/build/pages/Version/Version.d.ts +1 -1
- package/build/pages/Version/index.js +1 -1
- package/build/providers/AppConfigurationProvider/AppConfigurationProvider.d.ts +2 -2
- package/build/providers/AuthProvider/AuthProvider.d.ts +2 -3
- package/build/providers/AuthProvider/types.d.ts +1 -1
- package/build/providers/AuthProvider/utils.d.ts +1 -1
- package/build/providers/DownloadProvider/DownloadProvider.d.ts +1 -2
- package/build/providers/ManifestsProvider/ManifestsProvider.d.ts +2 -3
- package/build/providers/ManifestsProvider/README.md +22 -0
- package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.d.ts +1 -2
- package/build/providers/SearchProvider/SearchProvider.d.ts +2 -3
- package/build/providers/TranslatorProvider/TranslatorProvider.d.ts +2 -3
- package/build/providers/VersionProvider/README.md +22 -0
- package/build/providers/VersionProvider/VersionProvider.d.ts +2 -2
- package/build/routes/SecurityRoutes.d.ts +1 -1
- package/build/sections/Detail/ContainerContent.d.ts +1 -1
- package/build/sections/Detail/Detail.d.ts +1 -1
- package/build/sections/Detail/ReadmeSection.d.ts +1 -1
- package/build/sections/Detail/Tabs.d.ts +1 -1
- package/build/sections/Footer/Footer.d.ts +1 -1
- package/build/sections/Footer/styles.d.ts +17 -17
- package/build/sections/Header/Header.d.ts +1 -1
- package/build/sections/Header/HeaderGreetings.d.ts +1 -1
- package/build/sections/Header/HeaderLeft.d.ts +1 -1
- package/build/sections/Header/HeaderMenu.d.ts +1 -2
- package/build/sections/Header/HeaderMenu.js +10 -11
- package/build/sections/Header/HeaderMenu.js.map +1 -1
- package/build/sections/Header/HeaderMenu.mjs +10 -11
- package/build/sections/Header/HeaderMenu.mjs.map +1 -1
- package/build/sections/Header/HeaderRight.d.ts +1 -1
- package/build/sections/Header/HeaderSettingsDialog.d.ts +1 -1
- package/build/sections/Header/HeaderToolTip.d.ts +2 -2
- package/build/sections/Header/HeaderToolTipIcon.d.ts +1 -1
- package/build/sections/Header/LanguageSwitch.d.ts +12 -3
- package/build/sections/Header/LanguageSwitch.mjs +2 -2
- package/build/sections/Header/LanguageSwitch.mjs.map +1 -1
- package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.d.ts +7 -8
- package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.mjs +5 -5
- package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.mjs.map +1 -1
- package/build/sections/Header/RegistryInfoContent/styles.d.ts +7 -7
- package/build/sections/Header/styles.d.ts +33 -19
- package/build/sections/Home/Home.d.ts +1 -1
- package/build/sections/Security/AddUser.d.ts +1 -1
- package/build/sections/Security/AddUser.js +0 -1
- package/build/sections/Security/AddUser.js.map +1 -1
- package/build/sections/Security/AddUser.mjs +0 -1
- package/build/sections/Security/AddUser.mjs.map +1 -1
- package/build/sections/Security/ChangePassword.d.ts +1 -1
- package/build/sections/Security/ChangePassword.js +0 -1
- package/build/sections/Security/ChangePassword.js.map +1 -1
- package/build/sections/Security/ChangePassword.mjs +0 -1
- package/build/sections/Security/ChangePassword.mjs.map +1 -1
- package/build/sections/Security/Login.d.ts +1 -1
- package/build/sections/Security/Success.d.ts +1 -1
- package/build/sections/Security/styles.d.ts +5 -3
- package/build/sections/Security/styles.js +1 -1
- package/build/sections/Security/styles.js.map +1 -1
- package/build/sections/Security/styles.mjs +1 -1
- package/build/sections/Security/styles.mjs.map +1 -1
- package/build/sections/SideBar/Sidebar.d.ts +1 -1
- package/build/types/index.d.ts +1 -1
- package/build/types/packageMeta.d.ts +1 -1
- package/build/ui-components.css +1024 -334
- package/build/utils/cli-utils.d.ts +1 -1
- package/build/utils/loadable.d.ts +1 -1
- package/build/utils/utils.d.ts +2 -2
- package/package.json +5 -8
- package/build/pages/Security/index.js +0 -4
- package/build/pages/Security/index.mjs +0 -4
- package/build/test/i18n-config.d.ts +0 -2
- package/build/test/test-react-testing-library.d.ts +0 -23
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoginDialogCloseButton.mjs","names":[],"sources":["../../../src/components/LoginDialog/LoginDialogCloseButton.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport CloseIcon from '@mui/icons-material/Close';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport IconButton from '@mui/material/IconButton';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\n\nconst StyledIconButton = styled(IconButton)<{ theme?: Theme }>(({ theme }) => ({\n position: 'absolute',\n right: theme.spacing()
|
|
1
|
+
{"version":3,"file":"LoginDialogCloseButton.mjs","names":[],"sources":["../../../src/components/LoginDialog/LoginDialogCloseButton.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport CloseIcon from '@mui/icons-material/Close';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport IconButton from '@mui/material/IconButton';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\n\nconst StyledIconButton = styled(IconButton)<{ theme?: Theme }>(({ theme }) => ({\n position: 'absolute',\n right: theme.spacing(0.5),\n top: theme.spacing(0.5),\n color: theme.palette.grey[500],\n zIndex: 99,\n}));\n\ninterface Props {\n onClose: () => void;\n}\n\nconst LoginDialogCloseButton: React.FC<Props> = ({ onClose }) => {\n const { t } = useTranslation();\n return (\n <DialogTitle>\n <StyledIconButton data-testid=\"close-login-dialog-button\" onClick={onClose}>\n <CloseIcon titleAccess={t('button.close')} />\n </StyledIconButton>\n </DialogTitle>\n );\n};\n\nexport default LoginDialogCloseButton;\n"],"mappings":";;;;;;;;AASA,IAAM,mBAAmB,OAAO,WAAW,EAAqB,EAAE,aAAa;CAC7E,UAAU;CACV,OAAO,MAAM,QAAQ,GAAI;CACzB,KAAK,MAAM,QAAQ,GAAI;CACvB,OAAO,MAAM,QAAQ,KAAK;CAC1B,QAAQ;CACT,EAAE;AAMH,IAAM,0BAA2C,EAAE,cAAc;CAC/D,MAAM,EAAE,MAAM,gBAAgB;AAC9B,QACE,oBAAC,aAAD,EAAA,UACE,oBAAC,kBAAD;EAAkB,eAAY;EAA4B,SAAS;YACjE,oBAAC,WAAD,EAAW,aAAa,EAAE,eAAe,EAAI,CAAA;EAC5B,CAAA,EACP,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { FieldErrors, UseFormHandleSubmit, UseFormRegister } from 'react-hook-form';
|
|
3
3
|
export interface LoginFormValues {
|
|
4
4
|
username: string;
|
|
5
5
|
password: string;
|
|
@@ -9,7 +9,7 @@ import "react";
|
|
|
9
9
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
10
10
|
import { useTranslation } from "react-i18next";
|
|
11
11
|
import Link from "@mui/material/Link";
|
|
12
|
-
import
|
|
12
|
+
import Typography from "@mui/material/Typography";
|
|
13
13
|
import Button from "@mui/material/Button";
|
|
14
14
|
//#region src/components/LoginForm/Login.tsx
|
|
15
15
|
var StyledForm = styled("form")(({ theme }) => ({ marginTop: theme.spacing(1) }));
|
|
@@ -41,7 +41,7 @@ var LoginForm = ({ register, handleSubmit, onSubmit, errors, isValid }) => {
|
|
|
41
41
|
variant: "contained",
|
|
42
42
|
children: t("button.login")
|
|
43
43
|
}),
|
|
44
|
-
changePasswordEnabled && /* @__PURE__ */ jsx(
|
|
44
|
+
changePasswordEnabled && /* @__PURE__ */ jsx(Typography, {
|
|
45
45
|
align: "center",
|
|
46
46
|
sx: {
|
|
47
47
|
mt: 2,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Login.mjs","names":[],"sources":["../../../src/components/LoginForm/Login.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport Button from '@mui/material/Button';\nimport Link from '@mui/material/Link';\nimport Typography from '@mui/material/Typography';\nimport type { FC } from 'react';\nimport React from 'react';\nimport type { FieldErrors, UseFormHandleSubmit, UseFormRegister } from 'react-hook-form';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\nimport { getConfiguration } from '../../configuration';\nimport { Route } from '../../utils';\nimport LoginDialogFormError from '../LoginDialog/LoginDialogFormError';\nimport PasswordField from './PasswordField';\nimport UsernameField from './UsernameField';\n\nconst StyledForm = styled('form')<{ theme?: Theme }>(({ theme }) => ({\n marginTop: theme.spacing(1),\n}));\n\nconst StyledButton = styled(Button)<{ theme?: Theme }>(({ theme }) => ({\n margin: theme.spacing(3, 0, 2),\n}));\n\nexport interface LoginFormValues {\n username: string;\n password: string;\n}\n\ninterface Props {\n register: UseFormRegister<LoginFormValues>;\n handleSubmit: UseFormHandleSubmit<LoginFormValues>;\n onSubmit: (data: LoginFormValues) => void;\n errors: FieldErrors<LoginFormValues>;\n isValid: boolean;\n}\n\nconst LoginForm: FC<Props> = ({ register, handleSubmit, onSubmit, errors, isValid }) => {\n const { t } = useTranslation();\n const configuration = getConfiguration();\n const changePasswordEnabled = configuration?.flags?.changePassword;\n\n return (\n <StyledForm noValidate={true} onSubmit={handleSubmit(onSubmit)}>\n <UsernameField errors={errors} register={register} />\n <PasswordField errors={errors} register={register} />\n\n {errors.root && <LoginDialogFormError error={errors.root} />}\n\n <StyledButton\n color=\"primary\"\n data-testid=\"login-dialog-form-login-button\"\n disabled={!isValid}\n fullWidth={true}\n id=\"login--dialog-button-submit\"\n size=\"large\"\n type=\"submit\"\n variant=\"contained\"\n >\n {t('button.login')}\n </StyledButton>\n {changePasswordEnabled && (\n <Typography align=\"center\" sx={{ mt: 2, fontSize: 12 }} variant=\"body2\">\n <Link href={Route.CHANGE_PASSWORD} sx={{ ml: 1 }}>\n {t('security.changePassword.title')}\n </Link>\n </Typography>\n )}\n </StyledForm>\n );\n};\n\nexport default LoginForm;\n"],"mappings":";;;;;;;;;;;;;;AAgBA,IAAM,aAAa,OAAO,OAAO,EAAqB,EAAE,aAAa,EACnE,WAAW,MAAM,QAAQ,EAAE,EAC5B,EAAE;AAEH,IAAM,eAAe,OAAO,OAAO,EAAqB,EAAE,aAAa,EACrE,QAAQ,MAAM,QAAQ,GAAG,GAAG,EAAE,EAC/B,EAAE;AAeH,IAAM,aAAwB,EAAE,UAAU,cAAc,UAAU,QAAQ,cAAc;CACtF,MAAM,EAAE,MAAM,gBAAgB;CAE9B,MAAM,wBADgB,kBAAkB,EACK,OAAO;AAEpD,QACE,qBAAC,YAAD;EAAY,YAAY;EAAM,UAAU,aAAa,SAAS;YAA9D;GACE,oBAAC,eAAD;IAAuB;IAAkB;IAAY,CAAA;GACrD,oBAAC,eAAD;IAAuB;IAAkB;IAAY,CAAA;GAEpD,OAAO,QAAQ,oBAAC,sBAAD,EAAsB,OAAO,OAAO,MAAQ,CAAA;GAE5D,oBAAC,cAAD;IACE,OAAM;IACN,eAAY;IACZ,UAAU,CAAC;IACX,WAAW;IACX,IAAG;IACH,MAAK;IACL,MAAK;IACL,SAAQ;cAEP,EAAE,eAAe;IACL,CAAA;GACd,yBACC,oBAAC,
|
|
1
|
+
{"version":3,"file":"Login.mjs","names":[],"sources":["../../../src/components/LoginForm/Login.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport Button from '@mui/material/Button';\nimport Link from '@mui/material/Link';\nimport Typography from '@mui/material/Typography';\nimport type { FC } from 'react';\nimport React from 'react';\nimport type { FieldErrors, UseFormHandleSubmit, UseFormRegister } from 'react-hook-form';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\nimport { getConfiguration } from '../../configuration';\nimport { Route } from '../../utils';\nimport LoginDialogFormError from '../LoginDialog/LoginDialogFormError';\nimport PasswordField from './PasswordField';\nimport UsernameField from './UsernameField';\n\nconst StyledForm = styled('form')<{ theme?: Theme }>(({ theme }) => ({\n marginTop: theme.spacing(1),\n}));\n\nconst StyledButton = styled(Button)<{ theme?: Theme }>(({ theme }) => ({\n margin: theme.spacing(3, 0, 2),\n}));\n\nexport interface LoginFormValues {\n username: string;\n password: string;\n}\n\ninterface Props {\n register: UseFormRegister<LoginFormValues>;\n handleSubmit: UseFormHandleSubmit<LoginFormValues>;\n onSubmit: (data: LoginFormValues) => void;\n errors: FieldErrors<LoginFormValues>;\n isValid: boolean;\n}\n\nconst LoginForm: FC<Props> = ({ register, handleSubmit, onSubmit, errors, isValid }) => {\n const { t } = useTranslation();\n const configuration = getConfiguration();\n const changePasswordEnabled = configuration?.flags?.changePassword;\n\n return (\n <StyledForm noValidate={true} onSubmit={handleSubmit(onSubmit)}>\n <UsernameField errors={errors} register={register} />\n <PasswordField errors={errors} register={register} />\n\n {errors.root && <LoginDialogFormError error={errors.root} />}\n\n <StyledButton\n color=\"primary\"\n data-testid=\"login-dialog-form-login-button\"\n disabled={!isValid}\n fullWidth={true}\n id=\"login--dialog-button-submit\"\n size=\"large\"\n type=\"submit\"\n variant=\"contained\"\n >\n {t('button.login')}\n </StyledButton>\n {changePasswordEnabled && (\n <Typography align=\"center\" sx={{ mt: 2, fontSize: 12 }} variant=\"body2\">\n <Link href={Route.CHANGE_PASSWORD} sx={{ ml: 1 }}>\n {t('security.changePassword.title')}\n </Link>\n </Typography>\n )}\n </StyledForm>\n );\n};\n\nexport default LoginForm;\n"],"mappings":";;;;;;;;;;;;;;AAgBA,IAAM,aAAa,OAAO,OAAO,EAAqB,EAAE,aAAa,EACnE,WAAW,MAAM,QAAQ,EAAE,EAC5B,EAAE;AAEH,IAAM,eAAe,OAAO,OAAO,EAAqB,EAAE,aAAa,EACrE,QAAQ,MAAM,QAAQ,GAAG,GAAG,EAAE,EAC/B,EAAE;AAeH,IAAM,aAAwB,EAAE,UAAU,cAAc,UAAU,QAAQ,cAAc;CACtF,MAAM,EAAE,MAAM,gBAAgB;CAE9B,MAAM,wBADgB,kBAAkB,EACK,OAAO;AAEpD,QACE,qBAAC,YAAD;EAAY,YAAY;EAAM,UAAU,aAAa,SAAS;YAA9D;GACE,oBAAC,eAAD;IAAuB;IAAkB;IAAY,CAAA;GACrD,oBAAC,eAAD;IAAuB;IAAkB;IAAY,CAAA;GAEpD,OAAO,QAAQ,oBAAC,sBAAD,EAAsB,OAAO,OAAO,MAAQ,CAAA;GAE5D,oBAAC,cAAD;IACE,OAAM;IACN,eAAY;IACZ,UAAU,CAAC;IACX,WAAW;IACX,IAAG;IACH,MAAK;IACL,MAAK;IACL,SAAQ;cAEP,EAAE,eAAe;IACL,CAAA;GACd,yBACC,oBAAC,YAAD;IAAY,OAAM;IAAS,IAAI;KAAE,IAAI;KAAG,UAAU;KAAI;IAAE,SAAQ;cAC9D,oBAAC,MAAD;KAAM,MAAM,MAAM;KAAiB,IAAI,EAAE,IAAI,GAAG;eAC7C,EAAE,gCAAgC;KAC9B,CAAA;IACI,CAAA;GAEJ"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { FieldErrors } from 'react-hook-form';
|
|
3
|
+
import { AddUserFormValues, LoginFormValues } from '../../utils/schemas';
|
|
4
4
|
interface Props {
|
|
5
5
|
register: any;
|
|
6
6
|
errors: FieldErrors<LoginFormValues | AddUserFormValues>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { FieldErrors } from 'react-hook-form';
|
|
3
|
+
import { AddUserFormValues, LoginFormValues } from '../../utils/schemas';
|
|
4
4
|
interface Props {
|
|
5
5
|
register: any;
|
|
6
6
|
errors: FieldErrors<LoginFormValues | AddUserFormValues>;
|
|
@@ -44,8 +44,8 @@ var StyledAvatar = (0, _emotion_styled.default)(_mui_material_Avatar.default)(({
|
|
|
44
44
|
}));
|
|
45
45
|
var StyledIconButton = (0, _emotion_styled.default)(_mui_material_IconButton.default)(({ theme }) => ({
|
|
46
46
|
position: "absolute",
|
|
47
|
-
right: theme.spacing()
|
|
48
|
-
top: theme.spacing()
|
|
47
|
+
right: theme.spacing(.5),
|
|
48
|
+
top: theme.spacing(.5),
|
|
49
49
|
color: theme.palette.grey[500]
|
|
50
50
|
}));
|
|
51
51
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","names":[],"sources":["../../../src/components/LoginForm/styles.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport CloseIcon from '@mui/icons-material/Close';\nimport LockOutlined from '@mui/icons-material/LockOutlined';\nimport Avatar from '@mui/material/Avatar';\nimport Box from '@mui/material/Box';\nimport IconButton from '@mui/material/IconButton';\nimport { common } from '@mui/material/colors';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\nimport { Heading } from '../../';\n\ninterface Props {\n onClose?: () => void;\n}\n\nconst LoginFormHeader: React.FC<Props> = ({ onClose }) => {\n const { t } = useTranslation();\n\n return (\n <Box alignItems=\"center\" display=\"flex\" flexDirection=\"column\" position=\"relative\">\n {onClose && (\n <StyledIconButton aria-label={t('button.close')} onClick={onClose}>\n <CloseIcon />\n </StyledIconButton>\n )}\n <StyledAvatar>\n <LockOutlined />\n </StyledAvatar>\n <Heading>{t('button.login')}</Heading>\n </Box>\n );\n};\n\nconst StyledAvatar = styled(Avatar)<{ theme?: Theme }>(({ theme }) => ({\n margin: theme.spacing(1),\n backgroundColor:\n theme.palette.mode === 'light' ? theme.palette.primary.main : theme.palette.cyanBlue,\n color: common.white,\n}));\n\nconst StyledIconButton = styled(IconButton)<{ theme?: Theme }>(({ theme }) => ({\n position: 'absolute',\n right: theme.spacing()
|
|
1
|
+
{"version":3,"file":"styles.js","names":[],"sources":["../../../src/components/LoginForm/styles.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport CloseIcon from '@mui/icons-material/Close';\nimport LockOutlined from '@mui/icons-material/LockOutlined';\nimport Avatar from '@mui/material/Avatar';\nimport Box from '@mui/material/Box';\nimport IconButton from '@mui/material/IconButton';\nimport { common } from '@mui/material/colors';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\nimport { Heading } from '../../';\n\ninterface Props {\n onClose?: () => void;\n}\n\nconst LoginFormHeader: React.FC<Props> = ({ onClose }) => {\n const { t } = useTranslation();\n\n return (\n <Box alignItems=\"center\" display=\"flex\" flexDirection=\"column\" position=\"relative\">\n {onClose && (\n <StyledIconButton aria-label={t('button.close')} onClick={onClose}>\n <CloseIcon />\n </StyledIconButton>\n )}\n <StyledAvatar>\n <LockOutlined />\n </StyledAvatar>\n <Heading>{t('button.login')}</Heading>\n </Box>\n );\n};\n\nconst StyledAvatar = styled(Avatar)<{ theme?: Theme }>(({ theme }) => ({\n margin: theme.spacing(1),\n backgroundColor:\n theme.palette.mode === 'light' ? theme.palette.primary.main : theme.palette.cyanBlue,\n color: common.white,\n}));\n\nconst StyledIconButton = styled(IconButton)<{ theme?: Theme }>(({ theme }) => ({\n position: 'absolute',\n right: theme.spacing(0.5),\n top: theme.spacing(0.5),\n color: theme.palette.grey[500],\n}));\n\nexport default LoginFormHeader;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAiBA,IAAM,mBAAoC,EAAE,cAAc;CACxD,MAAM,EAAE,OAAA,GAAA,cAAA,iBAAsB;AAE9B,QACE,iBAAA,GAAA,kBAAA,MAAC,kBAAA,SAAD;EAAK,YAAW;EAAS,SAAQ;EAAO,eAAc;EAAS,UAAS;YAAxE;GACG,WACC,iBAAA,GAAA,kBAAA,KAAC,kBAAD;IAAkB,cAAY,EAAE,eAAe;IAAE,SAAS;cACxD,iBAAA,GAAA,kBAAA,KAAC,0BAAA,SAAD,EAAa,CAAA;IACI,CAAA;GAErB,iBAAA,GAAA,kBAAA,KAAC,cAAD,EAAA,UACE,iBAAA,GAAA,kBAAA,KAAC,iCAAA,SAAD,EAAgB,CAAA,EACH,CAAA;GACf,iBAAA,GAAA,kBAAA,KAAC,gBAAA,SAAD,EAAA,UAAU,EAAE,eAAe,EAAW,CAAA;GAClC;;;AAIV,IAAM,gBAAA,GAAA,gBAAA,SAAsB,qBAAA,QAAO,EAAqB,EAAE,aAAa;CACrE,QAAQ,MAAM,QAAQ,EAAE;CACxB,iBACE,MAAM,QAAQ,SAAS,UAAU,MAAM,QAAQ,QAAQ,OAAO,MAAM,QAAQ;CAC9E,OAAO,qBAAA,OAAO;CACf,EAAE;AAEH,IAAM,oBAAA,GAAA,gBAAA,SAA0B,yBAAA,QAAW,EAAqB,EAAE,aAAa;CAC7E,UAAU;CACV,OAAO,MAAM,QAAQ,GAAI;CACzB,KAAK,MAAM,QAAQ,GAAI;CACvB,OAAO,MAAM,QAAQ,KAAK;CAC3B,EAAE"}
|
|
@@ -36,8 +36,8 @@ var StyledAvatar = styled(Avatar)(({ theme }) => ({
|
|
|
36
36
|
}));
|
|
37
37
|
var StyledIconButton = styled(IconButton)(({ theme }) => ({
|
|
38
38
|
position: "absolute",
|
|
39
|
-
right: theme.spacing()
|
|
40
|
-
top: theme.spacing()
|
|
39
|
+
right: theme.spacing(.5),
|
|
40
|
+
top: theme.spacing(.5),
|
|
41
41
|
color: theme.palette.grey[500]
|
|
42
42
|
}));
|
|
43
43
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.mjs","names":[],"sources":["../../../src/components/LoginForm/styles.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport CloseIcon from '@mui/icons-material/Close';\nimport LockOutlined from '@mui/icons-material/LockOutlined';\nimport Avatar from '@mui/material/Avatar';\nimport Box from '@mui/material/Box';\nimport IconButton from '@mui/material/IconButton';\nimport { common } from '@mui/material/colors';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\nimport { Heading } from '../../';\n\ninterface Props {\n onClose?: () => void;\n}\n\nconst LoginFormHeader: React.FC<Props> = ({ onClose }) => {\n const { t } = useTranslation();\n\n return (\n <Box alignItems=\"center\" display=\"flex\" flexDirection=\"column\" position=\"relative\">\n {onClose && (\n <StyledIconButton aria-label={t('button.close')} onClick={onClose}>\n <CloseIcon />\n </StyledIconButton>\n )}\n <StyledAvatar>\n <LockOutlined />\n </StyledAvatar>\n <Heading>{t('button.login')}</Heading>\n </Box>\n );\n};\n\nconst StyledAvatar = styled(Avatar)<{ theme?: Theme }>(({ theme }) => ({\n margin: theme.spacing(1),\n backgroundColor:\n theme.palette.mode === 'light' ? theme.palette.primary.main : theme.palette.cyanBlue,\n color: common.white,\n}));\n\nconst StyledIconButton = styled(IconButton)<{ theme?: Theme }>(({ theme }) => ({\n position: 'absolute',\n right: theme.spacing()
|
|
1
|
+
{"version":3,"file":"styles.mjs","names":[],"sources":["../../../src/components/LoginForm/styles.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport CloseIcon from '@mui/icons-material/Close';\nimport LockOutlined from '@mui/icons-material/LockOutlined';\nimport Avatar from '@mui/material/Avatar';\nimport Box from '@mui/material/Box';\nimport IconButton from '@mui/material/IconButton';\nimport { common } from '@mui/material/colors';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\nimport { Heading } from '../../';\n\ninterface Props {\n onClose?: () => void;\n}\n\nconst LoginFormHeader: React.FC<Props> = ({ onClose }) => {\n const { t } = useTranslation();\n\n return (\n <Box alignItems=\"center\" display=\"flex\" flexDirection=\"column\" position=\"relative\">\n {onClose && (\n <StyledIconButton aria-label={t('button.close')} onClick={onClose}>\n <CloseIcon />\n </StyledIconButton>\n )}\n <StyledAvatar>\n <LockOutlined />\n </StyledAvatar>\n <Heading>{t('button.login')}</Heading>\n </Box>\n );\n};\n\nconst StyledAvatar = styled(Avatar)<{ theme?: Theme }>(({ theme }) => ({\n margin: theme.spacing(1),\n backgroundColor:\n theme.palette.mode === 'light' ? theme.palette.primary.main : theme.palette.cyanBlue,\n color: common.white,\n}));\n\nconst StyledIconButton = styled(IconButton)<{ theme?: Theme }>(({ theme }) => ({\n position: 'absolute',\n right: theme.spacing(0.5),\n top: theme.spacing(0.5),\n color: theme.palette.grey[500],\n}));\n\nexport default LoginFormHeader;\n"],"mappings":";;;;;;;;;;;;;AAiBA,IAAM,mBAAoC,EAAE,cAAc;CACxD,MAAM,EAAE,MAAM,gBAAgB;AAE9B,QACE,qBAAC,KAAD;EAAK,YAAW;EAAS,SAAQ;EAAO,eAAc;EAAS,UAAS;YAAxE;GACG,WACC,oBAAC,kBAAD;IAAkB,cAAY,EAAE,eAAe;IAAE,SAAS;cACxD,oBAAC,WAAD,EAAa,CAAA;IACI,CAAA;GAErB,oBAAC,cAAD,EAAA,UACE,oBAAC,cAAD,EAAgB,CAAA,EACH,CAAA;GACf,oBAAC,SAAD,EAAA,UAAU,EAAE,eAAe,EAAW,CAAA;GAClC;;;AAIV,IAAM,eAAe,OAAO,OAAO,EAAqB,EAAE,aAAa;CACrE,QAAQ,MAAM,QAAQ,EAAE;CACxB,iBACE,MAAM,QAAQ,SAAS,UAAU,MAAM,QAAQ,QAAQ,OAAO,MAAM,QAAQ;CAC9E,OAAO,OAAO;CACf,EAAE;AAEH,IAAM,mBAAmB,OAAO,WAAW,EAAqB,EAAE,aAAa;CAC7E,UAAU;CACV,OAAO,MAAM,QAAQ,GAAI;CACzB,KAAK,MAAM,QAAQ,GAAI;CACvB,OAAO,MAAM,QAAQ,KAAK;CAC3B,EAAE"}
|
|
@@ -1,76 +1,76 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { LoginFormValues } from '../../utils/schemas';
|
|
2
2
|
type Options = {
|
|
3
3
|
onSuccess?: () => void;
|
|
4
4
|
};
|
|
5
5
|
export declare function useLoginForm({ onSuccess }?: Options): {
|
|
6
6
|
onSubmit: (data: LoginFormValues) => Promise<void>;
|
|
7
|
-
watch: import(
|
|
7
|
+
watch: import('react-hook-form').UseFormWatch<{
|
|
8
8
|
username: string;
|
|
9
9
|
password: string;
|
|
10
10
|
}>;
|
|
11
|
-
getValues: import(
|
|
11
|
+
getValues: import('react-hook-form').UseFormGetValues<{
|
|
12
12
|
username: string;
|
|
13
13
|
password: string;
|
|
14
14
|
}>;
|
|
15
|
-
getFieldState: import(
|
|
15
|
+
getFieldState: import('react-hook-form').UseFormGetFieldState<{
|
|
16
16
|
username: string;
|
|
17
17
|
password: string;
|
|
18
18
|
}>;
|
|
19
|
-
setError: import(
|
|
19
|
+
setError: import('react-hook-form').UseFormSetError<{
|
|
20
20
|
username: string;
|
|
21
21
|
password: string;
|
|
22
22
|
}>;
|
|
23
|
-
clearErrors: import(
|
|
23
|
+
clearErrors: import('react-hook-form').UseFormClearErrors<{
|
|
24
24
|
username: string;
|
|
25
25
|
password: string;
|
|
26
26
|
}>;
|
|
27
|
-
setValue: import(
|
|
27
|
+
setValue: import('react-hook-form').UseFormSetValue<{
|
|
28
28
|
username: string;
|
|
29
29
|
password: string;
|
|
30
30
|
}>;
|
|
31
|
-
trigger: import(
|
|
31
|
+
trigger: import('react-hook-form').UseFormTrigger<{
|
|
32
32
|
username: string;
|
|
33
33
|
password: string;
|
|
34
34
|
}>;
|
|
35
|
-
formState: import(
|
|
35
|
+
formState: import('react-hook-form').FormState<{
|
|
36
36
|
username: string;
|
|
37
37
|
password: string;
|
|
38
38
|
}>;
|
|
39
|
-
resetField: import(
|
|
39
|
+
resetField: import('react-hook-form').UseFormResetField<{
|
|
40
40
|
username: string;
|
|
41
41
|
password: string;
|
|
42
42
|
}>;
|
|
43
|
-
reset: import(
|
|
43
|
+
reset: import('react-hook-form').UseFormReset<{
|
|
44
44
|
username: string;
|
|
45
45
|
password: string;
|
|
46
46
|
}>;
|
|
47
|
-
handleSubmit: import(
|
|
47
|
+
handleSubmit: import('react-hook-form').UseFormHandleSubmit<{
|
|
48
48
|
username: string;
|
|
49
49
|
password: string;
|
|
50
50
|
}, {
|
|
51
51
|
username: string;
|
|
52
52
|
password: string;
|
|
53
53
|
}>;
|
|
54
|
-
unregister: import(
|
|
54
|
+
unregister: import('react-hook-form').UseFormUnregister<{
|
|
55
55
|
username: string;
|
|
56
56
|
password: string;
|
|
57
57
|
}>;
|
|
58
|
-
control: import(
|
|
58
|
+
control: import('react-hook-form').Control<{
|
|
59
59
|
username: string;
|
|
60
60
|
password: string;
|
|
61
61
|
}, any, {
|
|
62
62
|
username: string;
|
|
63
63
|
password: string;
|
|
64
64
|
}>;
|
|
65
|
-
register: import(
|
|
65
|
+
register: import('react-hook-form').UseFormRegister<{
|
|
66
66
|
username: string;
|
|
67
67
|
password: string;
|
|
68
68
|
}>;
|
|
69
|
-
setFocus: import(
|
|
69
|
+
setFocus: import('react-hook-form').UseFormSetFocus<{
|
|
70
70
|
username: string;
|
|
71
71
|
password: string;
|
|
72
72
|
}>;
|
|
73
|
-
subscribe: import(
|
|
73
|
+
subscribe: import('react-hook-form').UseFormSubscribe<{
|
|
74
74
|
username: string;
|
|
75
75
|
password: string;
|
|
76
76
|
}>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><filter x="-19.8%" y="-11.7%" width="139.6%" height="140.4%" filterUnits="objectBoundingBox" id="a"><feOffset dy="4" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"/><feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"/><feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" in="shadowBlurOuter1"/></filter><filter x="-33.9%" y="-50%" width="167.9%" height="272.7%" filterUnits="objectBoundingBox" id="c"><feOffset dy="4" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"/><feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" in="shadowBlurOuter1"/></filter><path id="b" d="M48 16.729L32.672 47h-8.874L0 0h15.328l12.907 25.492 4.437-8.763H48z"/><path d="M35.2 11H28V8.643h8.4l1.2-2.357H32V3.929h6.8l.8-1.572H36V0h20l-5.6 11H35.2z" id="d"/></defs><g fill="none" fill-rule="evenodd"><rect fill="#000" width="100" height="100" rx="37"/><g transform="translate(22 30)"><use fill="#000" filter="url(#a)" xlink:href="#b"/><use fill-opacity=".6" fill="#FFF" xlink:href="#b"/></g><g transform="translate(22 30)"><use fill="#000" filter="url(#c)" xlink:href="#d"/><use fill="#FFF" xlink:href="#d"/></g><path fill="#FFF" d="M54.785 77H45.88L22 30h15.38L58 70.718z"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="verdaccio"><Title>Verdaccio</Title><defs><path id="b" d="M48 17.6L32.8 48H24L.4.8h15.2l12.8 25.6 4.4-8.8H48z"/><filter x="-20%" y="-11.7%" width="139.9%" height="140.3%" filterUnits="objectBoundingBox" id="a"><feOffset dy="4" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"/><feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"/><feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" in="shadowBlurOuter1"/></filter><path id="d" d="M50.8 12H35.6L41.2.8h15.2L50.8 12z"/><filter x="-45.7%" y="-49.1%" width="191.3%" height="269.6%" filterUnits="objectBoundingBox" id="c"><feOffset dy="4" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"/><feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"/><feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" in="shadowBlurOuter1"/></filter></defs><g fill="none" fill-rule="evenodd"><rect fill="#F7F8F6" width="100" height="100" rx="37"/><g transform="translate(22 29)"><use fill="#000" filter="url(#a)" xlink:href="#b"/><path stroke="#405236" stroke-width="2.4" d="M46.058 18.8H33.542L28.4 29.083 14.858 2H2.342l22.4 44.8h7.316l14-28z" stroke-linejoin="square" fill="#405236"/></g><g transform="translate(22 29)"><use fill="#000" filter="url(#c)" xlink:href="#d"/><path stroke="#CD4000" stroke-width="2.4" d="M50.058 10.8l4.4-8.8H41.942l-4.4 8.8h12.516z" stroke-linejoin="square" fill="#CD4000"/></g><path d="M54.06 75.8l2.575-5.112L36.857 31H24.342l22.4 44.8h7.319z" stroke="#405236" stroke-width="2.4" fill="#4A5E3F"/><path d="M59.6 31h15.221M55.6 35h15.221M51.6 39.8h15.221" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"/></g></svg>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import React from 'react';
|
|
1
|
+
import { MenuItemProps } from '@mui/material/MenuItem';
|
|
2
|
+
import { default as React } from 'react';
|
|
3
3
|
type HTMLElementTagName = keyof HTMLElementTagNameMap;
|
|
4
4
|
type MenuItemRef = HTMLElementTagNameMap[HTMLElementTagName];
|
|
5
5
|
interface Props extends Omit<MenuItemProps, 'component'> {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import "react";
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
|
-
import
|
|
3
|
+
import Typography from "@mui/material/Typography";
|
|
4
4
|
import Alert from "@mui/material/Alert";
|
|
5
5
|
//#region src/components/NoItems/NoItems.tsx
|
|
6
6
|
var NoItems = ({ text, ...props }) => /* @__PURE__ */ jsx(Alert, {
|
|
7
7
|
severity: "info",
|
|
8
|
-
children: /* @__PURE__ */ jsx(
|
|
8
|
+
children: /* @__PURE__ */ jsx(Typography, {
|
|
9
9
|
...props,
|
|
10
10
|
children: text
|
|
11
11
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NoItems.mjs","names":[],"sources":["../../../src/components/NoItems/NoItems.tsx"],"sourcesContent":["import Alert from '@mui/material/Alert';\nimport Typography from '@mui/material/Typography';\nimport React from 'react';\n\ninterface Props {\n text: string;\n}\n\nconst NoItems: React.FC<Props> = ({ text, ...props }) => (\n // @ts-ignore - Alert does accept children despite the type error\n <Alert severity=\"info\">\n <Typography {...props}>{text}</Typography>\n </Alert>\n);\n\nexport default NoItems;\n"],"mappings":";;;;;AAQA,IAAM,WAA4B,EAAE,MAAM,GAAG,YAE3C,oBAAC,OAAD;CAAO,UAAS;WACd,oBAAC,
|
|
1
|
+
{"version":3,"file":"NoItems.mjs","names":[],"sources":["../../../src/components/NoItems/NoItems.tsx"],"sourcesContent":["import Alert from '@mui/material/Alert';\nimport Typography from '@mui/material/Typography';\nimport React from 'react';\n\ninterface Props {\n text: string;\n}\n\nconst NoItems: React.FC<Props> = ({ text, ...props }) => (\n // @ts-ignore - Alert does accept children despite the type error\n <Alert severity=\"info\">\n <Typography {...props}>{text}</Typography>\n </Alert>\n);\n\nexport default NoItems;\n"],"mappings":";;;;;AAQA,IAAM,WAA4B,EAAE,MAAM,GAAG,YAE3C,oBAAC,OAAD;CAAO,UAAS;WACd,oBAAC,YAAD;EAAY,GAAI;YAAQ;EAAkB,CAAA;CACpC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 495.2 495.2"><path fill="#d38c0d" d="M325.6 224.4L495.2 126 325.6 28.4l-168.8 99.2z"/><g fill="#efbb67"><path d="M170.4 224.4l168-97.6-168-98.4L0 126.8z"/><path d="M416 368.4l-168 98.4-168-98.4v-196L248 74l168 98.4z"/></g><path fill="#d38c0d" d="M248 74l168 98.4v196l-168 98.4"/><path fill="#efbb67" d="M326.4 314.8L495.2 218l-169.6-98.4L156 218z"/><path fill="#d38c0d" d="M170.4 316.4l168.8-99.2-168.8-97.6L0 218z"/><path fill="#704a0e" d="M248.8 270.8L416 172.4 248.8 74 78.4 172.4z"/><path fill="#513307" d="M248.8 270.8L416 172.4 248.8 74"/><path fill="#2d1c05" d="M248.8 270.8l36-21.6-36-20.8-36 20.8z"/><g fill="#0dd396"><path d="M368 379.6l40-23.2v-12.8l-40 23.2zM368 356.4l40-23.2v-12.8l-40 23.2zM368 333.2l40-23.2v-13.6l-40 24z"/></g></svg>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import
|
|
3
|
-
import
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { Author as PackageAuthor } from '../../providers/ManifestsProvider/ManifestsProvider';
|
|
3
|
+
import { PackageMetaInterface } from '../../types/packageMeta';
|
|
4
4
|
interface Bugs {
|
|
5
5
|
url: string;
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Package.js","names":[],"sources":["../../../src/components/Package/Package.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport BugReport from '@mui/icons-material/BugReport';\nimport DownloadIcon from '@mui/icons-material/CloudDownload';\nimport HomeIcon from '@mui/icons-material/Home';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport Grid from '@mui/material/Grid';\nimport List from '@mui/material/List';\nimport ListItem from '@mui/material/ListItem';\nimport Tooltip from '@mui/material/Tooltip';\nimport { common, grey } from '@mui/material/colors';\nimport React, { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\nimport { Link, LinkExternal, useDownload, useManifests } from '../../';\nimport { FileBinary, Law, Time, Version } from '../../components/Icons';\nimport { getConfiguration } from '../../configuration';\nimport type { Author as PackageAuthor } from '../../providers/ManifestsProvider/ManifestsProvider';\nimport type { PackageMetaInterface } from '../../types/packageMeta';\nimport { Route, url, utils } from '../../utils';\nimport KeywordListItems from '../Keywords/KeywordListItems';\nimport {\n Author,\n Avatar,\n Description,\n Details,\n GridRightAligned,\n IconButton,\n OverviewItem,\n PackageListItemText,\n PackageTitle,\n Published,\n Wrapper,\n WrapperLink,\n} from './styles';\n\ninterface Bugs {\n url: string;\n}\n\ninterface Dist {\n unpackedSize: number;\n tarball: string;\n}\n\nexport interface PackageInterface {\n name: string;\n version: string;\n time?: number | string;\n author: PackageAuthor;\n description?: string;\n keywords?: PackageMetaInterface['latest']['keywords'];\n license?: PackageMetaInterface['latest']['license'];\n homepage?: string;\n bugs?: Bugs;\n dist?: Dist;\n showDownload?: boolean;\n}\n\nconst Package: React.FC<PackageInterface> = ({\n author: { name: authorName, avatar: authorAvatar },\n bugs,\n description,\n dist,\n homepage,\n keywords,\n license,\n name: packageName,\n time,\n showDownload = true,\n version,\n}) => {\n const config = getConfiguration();\n const { t } = useTranslation();\n const { isLoading } = useManifests();\n const { downloadTarball } = useDownload();\n\n const handleDownload = useCallback(\n async (tarballDist: string) => {\n // FIXME: check, the dist might be different thant npmjs\n const link = tarballDist.replace(`https://registry.npmjs.org/`, config.base);\n downloadTarball?.({ link });\n },\n [config, downloadTarball]\n );\n\n const renderVersionInfo = (): React.ReactNode =>\n version && (\n <OverviewItem>\n <StyledVersion />\n {t('package.version', { version })}\n </OverviewItem>\n );\n\n const renderAuthorInfo = (): React.ReactNode => {\n const name = utils.getAuthorName(authorName);\n return (\n <OverviewItem>\n <Author>\n <Avatar alt={name} src={authorAvatar} />\n <Details>{name}</Details>\n </Author>\n </OverviewItem>\n );\n };\n\n const renderFileSize = (): React.ReactNode =>\n dist?.unpackedSize && (\n <OverviewItem>\n <StyledFileBinary />\n {utils.fileSizeSI(dist.unpackedSize)}\n </OverviewItem>\n );\n\n const renderLicenseInfo = (): React.ReactNode =>\n license && (\n <OverviewItem>\n <StyledLaw />\n {license as string}\n </OverviewItem>\n );\n\n const renderPublishedInfo = (): React.ReactNode =>\n time && (\n <OverviewItem>\n <StyledTime />\n <Published title={utils.formatDate(time)}>\n {t('package.published-on', { time: utils.formatDateDistance(time) })}\n </Published>\n </OverviewItem>\n );\n\n const renderHomePageLink = (): React.ReactNode =>\n homepage &&\n url.isURL(homepage) && (\n <LinkExternal to={homepage}>\n <Tooltip aria-label={t('package.homepage')} title={t('package.visit-home-page')}>\n <IconButton aria-label={t('package.homepage')} color=\"primary\" size=\"large\">\n <HomeIcon />\n </IconButton>\n </Tooltip>\n </LinkExternal>\n );\n\n const renderBugsLink = (): React.ReactNode =>\n bugs?.url &&\n url.isURL(bugs.url) && (\n <LinkExternal to={bugs.url}>\n <Tooltip aria-label={t('package.bugs')} title={t('package.open-an-issue')}>\n <IconButton aria-label={t('package.bugs')} color=\"primary\" size=\"large\">\n <BugReport />\n </IconButton>\n </Tooltip>\n </LinkExternal>\n );\n\n const renderDownloadLink = (): React.ReactNode =>\n dist?.tarball &&\n url.isURL(dist.tarball) && (\n <Link\n onClick={() => {\n handleDownload(dist.tarball);\n }}\n to=\"#\"\n >\n <Tooltip\n aria-label={t('package.download', { what: t('package.the-tar-file') })}\n title={t('package.tarball')}\n >\n <IconButton\n aria-label={t('package.download')}\n color=\"primary\"\n data-testid=\"download-tarball\"\n size=\"large\"\n >\n {isLoading ? <CircularProgress size={13} /> : <DownloadIcon />}\n </IconButton>\n </Tooltip>\n </Link>\n );\n\n const renderPrimaryComponent = (): React.ReactNode => {\n return (\n <Grid alignItems=\"center\" container={true} size={{ xs: 12 }} wrap=\"wrap\">\n <Grid size=\"grow\">\n <WrapperLink to={`${Route.DETAIL}${packageName}`}>\n <PackageTitle className=\"package-title\" data-testid=\"package-title\">\n {packageName}\n </PackageTitle>\n </WrapperLink>\n </Grid>\n <GridRightAligned size=\"auto\">\n {renderHomePageLink()}\n {renderBugsLink()}\n {showDownload && renderDownloadLink()}\n </GridRightAligned>\n </Grid>\n );\n };\n\n const renderSecondaryComponent = (): React.ReactNode => <Description>{description}</Description>;\n\n const renderPackageListItemText = (): React.ReactNode => (\n <PackageListItemText\n primary={renderPrimaryComponent()}\n secondary={renderSecondaryComponent()}\n />\n );\n\n const renderKeywords = (): React.ReactNode => (\n <ListItem alignItems={'flex-start'} sx={{ py: 0, my: 0 }}>\n <List sx={{ p: 0, my: 0 }}>\n <KeywordListItems keywords={keywords} />\n </List>\n </ListItem>\n );\n\n return (\n <Wrapper className={'package'} data-testid=\"package-item-list\">\n <ListItem alignItems={'flex-start'} sx={{ mb: 0 }}>\n {renderPackageListItemText()}\n </ListItem>\n {keywords && keywords?.length > 0 ? renderKeywords() : null}\n <ListItem alignItems={'flex-start'} sx={{ mt: 0 }}>\n {renderAuthorInfo()}\n {renderVersionInfo()}\n {renderPublishedInfo()}\n {renderFileSize()}\n {renderLicenseInfo()}\n </ListItem>\n </Wrapper>\n );\n};\n\nexport default Package;\n\nconst iconStyle = ({ theme }: { theme: Theme }) => css`\n margin: 0 10px 0 0;\n fill: ${theme.palette.mode === 'light' ? grey[900] : common.white};\n`;\n\nconst StyledVersion = styled(Version)`\n ${iconStyle};\n`;\n\nconst StyledFileBinary = styled(FileBinary)`\n ${iconStyle};\n`;\n\nconst StyledLaw = styled(Law)`\n ${iconStyle};\n`;\n\nconst StyledTime = styled(Time)`\n ${iconStyle};\n`;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Package.js","names":[],"sources":["../../../src/components/Package/Package.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport BugReport from '@mui/icons-material/BugReport';\nimport DownloadIcon from '@mui/icons-material/CloudDownload';\nimport HomeIcon from '@mui/icons-material/Home';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport Grid from '@mui/material/Grid';\nimport List from '@mui/material/List';\nimport ListItem from '@mui/material/ListItem';\nimport Tooltip from '@mui/material/Tooltip';\nimport { common, grey } from '@mui/material/colors';\nimport React, { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\nimport { Link, LinkExternal, useDownload, useManifests } from '../../';\nimport { FileBinary, Law, Time, Version } from '../../components/Icons';\nimport { getConfiguration } from '../../configuration';\nimport type { Author as PackageAuthor } from '../../providers/ManifestsProvider/ManifestsProvider';\nimport type { PackageMetaInterface } from '../../types/packageMeta';\nimport { Route, url, utils } from '../../utils';\nimport KeywordListItems from '../Keywords/KeywordListItems';\nimport {\n Author,\n Avatar,\n Description,\n Details,\n GridRightAligned,\n IconButton,\n OverviewItem,\n PackageListItemText,\n PackageTitle,\n Published,\n Wrapper,\n WrapperLink,\n} from './styles';\n\ninterface Bugs {\n url: string;\n}\n\ninterface Dist {\n unpackedSize: number;\n tarball: string;\n}\n\nexport interface PackageInterface {\n name: string;\n version: string;\n time?: number | string;\n author: PackageAuthor;\n description?: string;\n keywords?: PackageMetaInterface['latest']['keywords'];\n license?: PackageMetaInterface['latest']['license'];\n homepage?: string;\n bugs?: Bugs;\n dist?: Dist;\n showDownload?: boolean;\n}\n\nconst Package: React.FC<PackageInterface> = ({\n author: { name: authorName, avatar: authorAvatar },\n bugs,\n description,\n dist,\n homepage,\n keywords,\n license,\n name: packageName,\n time,\n showDownload = true,\n version,\n}) => {\n const config = getConfiguration();\n const { t } = useTranslation();\n const { isLoading } = useManifests();\n const { downloadTarball } = useDownload();\n\n const handleDownload = useCallback(\n async (tarballDist: string) => {\n // FIXME: check, the dist might be different thant npmjs\n const link = tarballDist.replace(`https://registry.npmjs.org/`, config.base);\n downloadTarball?.({ link });\n },\n [config, downloadTarball]\n );\n\n const renderVersionInfo = (): React.ReactNode =>\n version && (\n <OverviewItem>\n <StyledVersion />\n {t('package.version', { version })}\n </OverviewItem>\n );\n\n const renderAuthorInfo = (): React.ReactNode => {\n const name = utils.getAuthorName(authorName);\n return (\n <OverviewItem>\n <Author>\n <Avatar alt={name} src={authorAvatar} />\n <Details>{name}</Details>\n </Author>\n </OverviewItem>\n );\n };\n\n const renderFileSize = (): React.ReactNode =>\n dist?.unpackedSize && (\n <OverviewItem>\n <StyledFileBinary />\n {utils.fileSizeSI(dist.unpackedSize)}\n </OverviewItem>\n );\n\n const renderLicenseInfo = (): React.ReactNode =>\n license && (\n <OverviewItem>\n <StyledLaw />\n {license as string}\n </OverviewItem>\n );\n\n const renderPublishedInfo = (): React.ReactNode =>\n time && (\n <OverviewItem>\n <StyledTime />\n <Published title={utils.formatDate(time)}>\n {t('package.published-on', { time: utils.formatDateDistance(time) })}\n </Published>\n </OverviewItem>\n );\n\n const renderHomePageLink = (): React.ReactNode =>\n homepage &&\n url.isURL(homepage) && (\n <LinkExternal to={homepage}>\n <Tooltip aria-label={t('package.homepage')} title={t('package.visit-home-page')}>\n <IconButton aria-label={t('package.homepage')} color=\"primary\" size=\"large\">\n <HomeIcon />\n </IconButton>\n </Tooltip>\n </LinkExternal>\n );\n\n const renderBugsLink = (): React.ReactNode =>\n bugs?.url &&\n url.isURL(bugs.url) && (\n <LinkExternal to={bugs.url}>\n <Tooltip aria-label={t('package.bugs')} title={t('package.open-an-issue')}>\n <IconButton aria-label={t('package.bugs')} color=\"primary\" size=\"large\">\n <BugReport />\n </IconButton>\n </Tooltip>\n </LinkExternal>\n );\n\n const renderDownloadLink = (): React.ReactNode =>\n dist?.tarball &&\n url.isURL(dist.tarball) && (\n <Link\n onClick={() => {\n handleDownload(dist.tarball);\n }}\n to=\"#\"\n >\n <Tooltip\n aria-label={t('package.download', { what: t('package.the-tar-file') })}\n title={t('package.tarball')}\n >\n <IconButton\n aria-label={t('package.download')}\n color=\"primary\"\n data-testid=\"download-tarball\"\n size=\"large\"\n >\n {isLoading ? <CircularProgress size={13} /> : <DownloadIcon />}\n </IconButton>\n </Tooltip>\n </Link>\n );\n\n const renderPrimaryComponent = (): React.ReactNode => {\n return (\n <Grid alignItems=\"center\" container={true} size={{ xs: 12 }} wrap=\"wrap\">\n <Grid size=\"grow\">\n <WrapperLink to={`${Route.DETAIL}${packageName}`}>\n <PackageTitle className=\"package-title\" data-testid=\"package-title\">\n {packageName}\n </PackageTitle>\n </WrapperLink>\n </Grid>\n <GridRightAligned size=\"auto\">\n {renderHomePageLink()}\n {renderBugsLink()}\n {showDownload && renderDownloadLink()}\n </GridRightAligned>\n </Grid>\n );\n };\n\n const renderSecondaryComponent = (): React.ReactNode => <Description>{description}</Description>;\n\n const renderPackageListItemText = (): React.ReactNode => (\n <PackageListItemText\n primary={renderPrimaryComponent()}\n secondary={renderSecondaryComponent()}\n />\n );\n\n const renderKeywords = (): React.ReactNode => (\n <ListItem alignItems={'flex-start'} sx={{ py: 0, my: 0 }}>\n <List sx={{ p: 0, my: 0 }}>\n <KeywordListItems keywords={keywords} />\n </List>\n </ListItem>\n );\n\n return (\n <Wrapper className={'package'} data-testid=\"package-item-list\">\n <ListItem alignItems={'flex-start'} sx={{ mb: 0 }}>\n {renderPackageListItemText()}\n </ListItem>\n {keywords && keywords?.length > 0 ? renderKeywords() : null}\n <ListItem alignItems={'flex-start'} sx={{ mt: 0 }}>\n {renderAuthorInfo()}\n {renderVersionInfo()}\n {renderPublishedInfo()}\n {renderFileSize()}\n {renderLicenseInfo()}\n </ListItem>\n </Wrapper>\n );\n};\n\nexport default Package;\n\nconst iconStyle = ({ theme }: { theme: Theme }) => css`\n margin: 0 10px 0 0;\n fill: ${theme.palette.mode === 'light' ? grey[900] : common.white};\n`;\n\nconst StyledVersion = styled(Version)<{ theme?: Theme }>`\n ${iconStyle};\n`;\n\nconst StyledFileBinary = styled(FileBinary)<{ theme?: Theme }>`\n ${iconStyle};\n`;\n\nconst StyledLaw = styled(Law)<{ theme?: Theme }>`\n ${iconStyle};\n`;\n\nconst StyledTime = styled(Time)<{ theme?: Theme }>`\n ${iconStyle};\n`;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Package.mjs","names":[],"sources":["../../../src/components/Package/Package.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport BugReport from '@mui/icons-material/BugReport';\nimport DownloadIcon from '@mui/icons-material/CloudDownload';\nimport HomeIcon from '@mui/icons-material/Home';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport Grid from '@mui/material/Grid';\nimport List from '@mui/material/List';\nimport ListItem from '@mui/material/ListItem';\nimport Tooltip from '@mui/material/Tooltip';\nimport { common, grey } from '@mui/material/colors';\nimport React, { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\nimport { Link, LinkExternal, useDownload, useManifests } from '../../';\nimport { FileBinary, Law, Time, Version } from '../../components/Icons';\nimport { getConfiguration } from '../../configuration';\nimport type { Author as PackageAuthor } from '../../providers/ManifestsProvider/ManifestsProvider';\nimport type { PackageMetaInterface } from '../../types/packageMeta';\nimport { Route, url, utils } from '../../utils';\nimport KeywordListItems from '../Keywords/KeywordListItems';\nimport {\n Author,\n Avatar,\n Description,\n Details,\n GridRightAligned,\n IconButton,\n OverviewItem,\n PackageListItemText,\n PackageTitle,\n Published,\n Wrapper,\n WrapperLink,\n} from './styles';\n\ninterface Bugs {\n url: string;\n}\n\ninterface Dist {\n unpackedSize: number;\n tarball: string;\n}\n\nexport interface PackageInterface {\n name: string;\n version: string;\n time?: number | string;\n author: PackageAuthor;\n description?: string;\n keywords?: PackageMetaInterface['latest']['keywords'];\n license?: PackageMetaInterface['latest']['license'];\n homepage?: string;\n bugs?: Bugs;\n dist?: Dist;\n showDownload?: boolean;\n}\n\nconst Package: React.FC<PackageInterface> = ({\n author: { name: authorName, avatar: authorAvatar },\n bugs,\n description,\n dist,\n homepage,\n keywords,\n license,\n name: packageName,\n time,\n showDownload = true,\n version,\n}) => {\n const config = getConfiguration();\n const { t } = useTranslation();\n const { isLoading } = useManifests();\n const { downloadTarball } = useDownload();\n\n const handleDownload = useCallback(\n async (tarballDist: string) => {\n // FIXME: check, the dist might be different thant npmjs\n const link = tarballDist.replace(`https://registry.npmjs.org/`, config.base);\n downloadTarball?.({ link });\n },\n [config, downloadTarball]\n );\n\n const renderVersionInfo = (): React.ReactNode =>\n version && (\n <OverviewItem>\n <StyledVersion />\n {t('package.version', { version })}\n </OverviewItem>\n );\n\n const renderAuthorInfo = (): React.ReactNode => {\n const name = utils.getAuthorName(authorName);\n return (\n <OverviewItem>\n <Author>\n <Avatar alt={name} src={authorAvatar} />\n <Details>{name}</Details>\n </Author>\n </OverviewItem>\n );\n };\n\n const renderFileSize = (): React.ReactNode =>\n dist?.unpackedSize && (\n <OverviewItem>\n <StyledFileBinary />\n {utils.fileSizeSI(dist.unpackedSize)}\n </OverviewItem>\n );\n\n const renderLicenseInfo = (): React.ReactNode =>\n license && (\n <OverviewItem>\n <StyledLaw />\n {license as string}\n </OverviewItem>\n );\n\n const renderPublishedInfo = (): React.ReactNode =>\n time && (\n <OverviewItem>\n <StyledTime />\n <Published title={utils.formatDate(time)}>\n {t('package.published-on', { time: utils.formatDateDistance(time) })}\n </Published>\n </OverviewItem>\n );\n\n const renderHomePageLink = (): React.ReactNode =>\n homepage &&\n url.isURL(homepage) && (\n <LinkExternal to={homepage}>\n <Tooltip aria-label={t('package.homepage')} title={t('package.visit-home-page')}>\n <IconButton aria-label={t('package.homepage')} color=\"primary\" size=\"large\">\n <HomeIcon />\n </IconButton>\n </Tooltip>\n </LinkExternal>\n );\n\n const renderBugsLink = (): React.ReactNode =>\n bugs?.url &&\n url.isURL(bugs.url) && (\n <LinkExternal to={bugs.url}>\n <Tooltip aria-label={t('package.bugs')} title={t('package.open-an-issue')}>\n <IconButton aria-label={t('package.bugs')} color=\"primary\" size=\"large\">\n <BugReport />\n </IconButton>\n </Tooltip>\n </LinkExternal>\n );\n\n const renderDownloadLink = (): React.ReactNode =>\n dist?.tarball &&\n url.isURL(dist.tarball) && (\n <Link\n onClick={() => {\n handleDownload(dist.tarball);\n }}\n to=\"#\"\n >\n <Tooltip\n aria-label={t('package.download', { what: t('package.the-tar-file') })}\n title={t('package.tarball')}\n >\n <IconButton\n aria-label={t('package.download')}\n color=\"primary\"\n data-testid=\"download-tarball\"\n size=\"large\"\n >\n {isLoading ? <CircularProgress size={13} /> : <DownloadIcon />}\n </IconButton>\n </Tooltip>\n </Link>\n );\n\n const renderPrimaryComponent = (): React.ReactNode => {\n return (\n <Grid alignItems=\"center\" container={true} size={{ xs: 12 }} wrap=\"wrap\">\n <Grid size=\"grow\">\n <WrapperLink to={`${Route.DETAIL}${packageName}`}>\n <PackageTitle className=\"package-title\" data-testid=\"package-title\">\n {packageName}\n </PackageTitle>\n </WrapperLink>\n </Grid>\n <GridRightAligned size=\"auto\">\n {renderHomePageLink()}\n {renderBugsLink()}\n {showDownload && renderDownloadLink()}\n </GridRightAligned>\n </Grid>\n );\n };\n\n const renderSecondaryComponent = (): React.ReactNode => <Description>{description}</Description>;\n\n const renderPackageListItemText = (): React.ReactNode => (\n <PackageListItemText\n primary={renderPrimaryComponent()}\n secondary={renderSecondaryComponent()}\n />\n );\n\n const renderKeywords = (): React.ReactNode => (\n <ListItem alignItems={'flex-start'} sx={{ py: 0, my: 0 }}>\n <List sx={{ p: 0, my: 0 }}>\n <KeywordListItems keywords={keywords} />\n </List>\n </ListItem>\n );\n\n return (\n <Wrapper className={'package'} data-testid=\"package-item-list\">\n <ListItem alignItems={'flex-start'} sx={{ mb: 0 }}>\n {renderPackageListItemText()}\n </ListItem>\n {keywords && keywords?.length > 0 ? renderKeywords() : null}\n <ListItem alignItems={'flex-start'} sx={{ mt: 0 }}>\n {renderAuthorInfo()}\n {renderVersionInfo()}\n {renderPublishedInfo()}\n {renderFileSize()}\n {renderLicenseInfo()}\n </ListItem>\n </Wrapper>\n );\n};\n\nexport default Package;\n\nconst iconStyle = ({ theme }: { theme: Theme }) => css`\n margin: 0 10px 0 0;\n fill: ${theme.palette.mode === 'light' ? grey[900] : common.white};\n`;\n\nconst StyledVersion = styled(Version)`\n ${iconStyle};\n`;\n\nconst StyledFileBinary = styled(FileBinary)`\n ${iconStyle};\n`;\n\nconst StyledLaw = styled(Law)`\n ${iconStyle};\n`;\n\nconst StyledTime = styled(Time)`\n ${iconStyle};\n`;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Package.mjs","names":[],"sources":["../../../src/components/Package/Package.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport BugReport from '@mui/icons-material/BugReport';\nimport DownloadIcon from '@mui/icons-material/CloudDownload';\nimport HomeIcon from '@mui/icons-material/Home';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport Grid from '@mui/material/Grid';\nimport List from '@mui/material/List';\nimport ListItem from '@mui/material/ListItem';\nimport Tooltip from '@mui/material/Tooltip';\nimport { common, grey } from '@mui/material/colors';\nimport React, { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport type { Theme } from '../../';\nimport { Link, LinkExternal, useDownload, useManifests } from '../../';\nimport { FileBinary, Law, Time, Version } from '../../components/Icons';\nimport { getConfiguration } from '../../configuration';\nimport type { Author as PackageAuthor } from '../../providers/ManifestsProvider/ManifestsProvider';\nimport type { PackageMetaInterface } from '../../types/packageMeta';\nimport { Route, url, utils } from '../../utils';\nimport KeywordListItems from '../Keywords/KeywordListItems';\nimport {\n Author,\n Avatar,\n Description,\n Details,\n GridRightAligned,\n IconButton,\n OverviewItem,\n PackageListItemText,\n PackageTitle,\n Published,\n Wrapper,\n WrapperLink,\n} from './styles';\n\ninterface Bugs {\n url: string;\n}\n\ninterface Dist {\n unpackedSize: number;\n tarball: string;\n}\n\nexport interface PackageInterface {\n name: string;\n version: string;\n time?: number | string;\n author: PackageAuthor;\n description?: string;\n keywords?: PackageMetaInterface['latest']['keywords'];\n license?: PackageMetaInterface['latest']['license'];\n homepage?: string;\n bugs?: Bugs;\n dist?: Dist;\n showDownload?: boolean;\n}\n\nconst Package: React.FC<PackageInterface> = ({\n author: { name: authorName, avatar: authorAvatar },\n bugs,\n description,\n dist,\n homepage,\n keywords,\n license,\n name: packageName,\n time,\n showDownload = true,\n version,\n}) => {\n const config = getConfiguration();\n const { t } = useTranslation();\n const { isLoading } = useManifests();\n const { downloadTarball } = useDownload();\n\n const handleDownload = useCallback(\n async (tarballDist: string) => {\n // FIXME: check, the dist might be different thant npmjs\n const link = tarballDist.replace(`https://registry.npmjs.org/`, config.base);\n downloadTarball?.({ link });\n },\n [config, downloadTarball]\n );\n\n const renderVersionInfo = (): React.ReactNode =>\n version && (\n <OverviewItem>\n <StyledVersion />\n {t('package.version', { version })}\n </OverviewItem>\n );\n\n const renderAuthorInfo = (): React.ReactNode => {\n const name = utils.getAuthorName(authorName);\n return (\n <OverviewItem>\n <Author>\n <Avatar alt={name} src={authorAvatar} />\n <Details>{name}</Details>\n </Author>\n </OverviewItem>\n );\n };\n\n const renderFileSize = (): React.ReactNode =>\n dist?.unpackedSize && (\n <OverviewItem>\n <StyledFileBinary />\n {utils.fileSizeSI(dist.unpackedSize)}\n </OverviewItem>\n );\n\n const renderLicenseInfo = (): React.ReactNode =>\n license && (\n <OverviewItem>\n <StyledLaw />\n {license as string}\n </OverviewItem>\n );\n\n const renderPublishedInfo = (): React.ReactNode =>\n time && (\n <OverviewItem>\n <StyledTime />\n <Published title={utils.formatDate(time)}>\n {t('package.published-on', { time: utils.formatDateDistance(time) })}\n </Published>\n </OverviewItem>\n );\n\n const renderHomePageLink = (): React.ReactNode =>\n homepage &&\n url.isURL(homepage) && (\n <LinkExternal to={homepage}>\n <Tooltip aria-label={t('package.homepage')} title={t('package.visit-home-page')}>\n <IconButton aria-label={t('package.homepage')} color=\"primary\" size=\"large\">\n <HomeIcon />\n </IconButton>\n </Tooltip>\n </LinkExternal>\n );\n\n const renderBugsLink = (): React.ReactNode =>\n bugs?.url &&\n url.isURL(bugs.url) && (\n <LinkExternal to={bugs.url}>\n <Tooltip aria-label={t('package.bugs')} title={t('package.open-an-issue')}>\n <IconButton aria-label={t('package.bugs')} color=\"primary\" size=\"large\">\n <BugReport />\n </IconButton>\n </Tooltip>\n </LinkExternal>\n );\n\n const renderDownloadLink = (): React.ReactNode =>\n dist?.tarball &&\n url.isURL(dist.tarball) && (\n <Link\n onClick={() => {\n handleDownload(dist.tarball);\n }}\n to=\"#\"\n >\n <Tooltip\n aria-label={t('package.download', { what: t('package.the-tar-file') })}\n title={t('package.tarball')}\n >\n <IconButton\n aria-label={t('package.download')}\n color=\"primary\"\n data-testid=\"download-tarball\"\n size=\"large\"\n >\n {isLoading ? <CircularProgress size={13} /> : <DownloadIcon />}\n </IconButton>\n </Tooltip>\n </Link>\n );\n\n const renderPrimaryComponent = (): React.ReactNode => {\n return (\n <Grid alignItems=\"center\" container={true} size={{ xs: 12 }} wrap=\"wrap\">\n <Grid size=\"grow\">\n <WrapperLink to={`${Route.DETAIL}${packageName}`}>\n <PackageTitle className=\"package-title\" data-testid=\"package-title\">\n {packageName}\n </PackageTitle>\n </WrapperLink>\n </Grid>\n <GridRightAligned size=\"auto\">\n {renderHomePageLink()}\n {renderBugsLink()}\n {showDownload && renderDownloadLink()}\n </GridRightAligned>\n </Grid>\n );\n };\n\n const renderSecondaryComponent = (): React.ReactNode => <Description>{description}</Description>;\n\n const renderPackageListItemText = (): React.ReactNode => (\n <PackageListItemText\n primary={renderPrimaryComponent()}\n secondary={renderSecondaryComponent()}\n />\n );\n\n const renderKeywords = (): React.ReactNode => (\n <ListItem alignItems={'flex-start'} sx={{ py: 0, my: 0 }}>\n <List sx={{ p: 0, my: 0 }}>\n <KeywordListItems keywords={keywords} />\n </List>\n </ListItem>\n );\n\n return (\n <Wrapper className={'package'} data-testid=\"package-item-list\">\n <ListItem alignItems={'flex-start'} sx={{ mb: 0 }}>\n {renderPackageListItemText()}\n </ListItem>\n {keywords && keywords?.length > 0 ? renderKeywords() : null}\n <ListItem alignItems={'flex-start'} sx={{ mt: 0 }}>\n {renderAuthorInfo()}\n {renderVersionInfo()}\n {renderPublishedInfo()}\n {renderFileSize()}\n {renderLicenseInfo()}\n </ListItem>\n </Wrapper>\n );\n};\n\nexport default Package;\n\nconst iconStyle = ({ theme }: { theme: Theme }) => css`\n margin: 0 10px 0 0;\n fill: ${theme.palette.mode === 'light' ? grey[900] : common.white};\n`;\n\nconst StyledVersion = styled(Version)<{ theme?: Theme }>`\n ${iconStyle};\n`;\n\nconst StyledFileBinary = styled(FileBinary)<{ theme?: Theme }>`\n ${iconStyle};\n`;\n\nconst StyledLaw = styled(Law)<{ theme?: Theme }>`\n ${iconStyle};\n`;\n\nconst StyledTime = styled(Time)<{ theme?: Theme }>`\n ${iconStyle};\n`;\n"],"mappings":"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"}
|
|
@@ -1,43 +1,53 @@
|
|
|
1
|
-
import
|
|
2
|
-
export declare const OverviewItem: import(
|
|
3
|
-
theme?: import(
|
|
1
|
+
import { Theme } from '../../';
|
|
2
|
+
export declare const OverviewItem: import('@emotion/styled').StyledComponent<{
|
|
3
|
+
theme?: import('@emotion/react').Theme;
|
|
4
4
|
as?: React.ElementType;
|
|
5
5
|
} & {
|
|
6
6
|
theme?: Theme;
|
|
7
|
-
}, import(
|
|
8
|
-
export declare const Published: import(
|
|
9
|
-
theme?: import(
|
|
7
|
+
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
|
|
8
|
+
export declare const Published: import('@emotion/styled').StyledComponent<{
|
|
9
|
+
theme?: import('@emotion/react').Theme;
|
|
10
10
|
as?: React.ElementType;
|
|
11
|
-
}, import(
|
|
12
|
-
export declare const Details: import(
|
|
13
|
-
theme?: import(
|
|
11
|
+
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
|
|
12
|
+
export declare const Details: import('@emotion/styled').StyledComponent<{
|
|
13
|
+
theme?: import('@emotion/react').Theme;
|
|
14
14
|
as?: React.ElementType;
|
|
15
|
-
}, import(
|
|
16
|
-
export declare const Author: import(
|
|
17
|
-
theme?: import(
|
|
15
|
+
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
|
|
16
|
+
export declare const Author: import('@emotion/styled').StyledComponent<{
|
|
17
|
+
theme?: import('@emotion/react').Theme;
|
|
18
18
|
as?: React.ElementType;
|
|
19
|
-
}, import(
|
|
20
|
-
export declare const Avatar: import(
|
|
21
|
-
|
|
22
|
-
theme?: import("@emotion/react").Theme;
|
|
19
|
+
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
20
|
+
export declare const Avatar: import('@emotion/styled').StyledComponent<import('@mui/material/Avatar').AvatarOwnProps & import('@mui/material/Avatar').AvatarSlotsAndSlotProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "children" | "style" | "className" | "classes" | "sx" | "variant" | "slots" | "slotProps" | "alt" | "imgProps" | "sizes" | "src" | "srcSet"> & {
|
|
21
|
+
theme?: import('@emotion/react').Theme;
|
|
23
22
|
}, {}, {}>;
|
|
24
|
-
export declare const
|
|
25
|
-
theme?: import(
|
|
23
|
+
export declare const WrapperLink: import('@emotion/styled').StyledComponent<import('react-router').LinkProps & import('react').RefAttributes<HTMLAnchorElement> & {
|
|
24
|
+
theme?: import('@emotion/react').Theme;
|
|
25
|
+
}, {}, {}>;
|
|
26
|
+
export declare const PackageTitle: import('@emotion/styled').StyledComponent<{
|
|
27
|
+
theme?: import('@emotion/react').Theme;
|
|
26
28
|
as?: React.ElementType;
|
|
27
29
|
} & {
|
|
28
30
|
theme?: Theme;
|
|
29
|
-
}, import(
|
|
30
|
-
export declare const GridRightAligned: import(
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
export declare const
|
|
36
|
-
theme?: import(
|
|
31
|
+
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
|
|
32
|
+
export declare const GridRightAligned: import('@emotion/styled').StyledComponent<import('@mui/material/Grid').GridBaseProps & {
|
|
33
|
+
sx?: import('@mui/system').SxProps<import('@mui/material').Theme> | undefined;
|
|
34
|
+
} & import('@mui/system').SystemProps<import('@mui/material').Theme> & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "sx" | ("p" | "zIndex" | "typography" | "fontFamily" | "fontSize" | "fontWeight" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxShadow" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontStyle" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "lineHeight" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "border" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "displayPrint") | keyof import('@mui/material/Grid').GridBaseProps> & {
|
|
35
|
+
theme?: import('@emotion/react').Theme;
|
|
36
|
+
}, {}, {}>;
|
|
37
|
+
export declare const Wrapper: import('@emotion/styled').StyledComponent<import('@mui/material/List').ListOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLUListElement>, HTMLUListElement>, "children" | "style" | "className" | "classes" | "sx" | "dense" | "disablePadding" | "subheader"> & {
|
|
38
|
+
theme?: import('@emotion/react').Theme;
|
|
39
|
+
} & {
|
|
40
|
+
theme?: Theme;
|
|
41
|
+
}, {}, {}>;
|
|
42
|
+
export declare const IconButton: import('@emotion/styled').StyledComponent<import('@mui/material/IconButton').IconButtonOwnProps & Omit<import('@mui/material').ButtonBaseOwnProps, "classes"> & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "children" | "style" | "color" | "className" | "classes" | "sx" | "tabIndex" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge" | "loading" | "loadingIndicator" | "size"> & {
|
|
43
|
+
theme?: import('@emotion/react').Theme;
|
|
44
|
+
}, {}, {}>;
|
|
45
|
+
export declare const PackageListItemText: import('@emotion/styled').StyledComponent<import('@mui/material/ListItemText').ListItemTextProps<import('react').ElementType<any, keyof import("react").JSX.IntrinsicElements>, import('react').ElementType<any, keyof import("react").JSX.IntrinsicElements>> & {
|
|
46
|
+
theme?: import('@emotion/react').Theme;
|
|
37
47
|
}, {}, {}>;
|
|
38
|
-
export declare const Description: import(
|
|
39
|
-
theme?: import(
|
|
48
|
+
export declare const Description: import('@emotion/styled').StyledComponent<{
|
|
49
|
+
theme?: import('@emotion/react').Theme;
|
|
40
50
|
as?: React.ElementType;
|
|
41
51
|
} & {
|
|
42
52
|
theme?: Theme;
|
|
43
|
-
}, import(
|
|
53
|
+
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
|
|
@@ -6,7 +6,7 @@ import { Link } from "react-router";
|
|
|
6
6
|
import List from "@mui/material/List";
|
|
7
7
|
import Avatar from "@mui/material/Avatar";
|
|
8
8
|
import Grid from "@mui/material/Grid";
|
|
9
|
-
import
|
|
9
|
+
import MuiListItemText from "@mui/material/ListItemText";
|
|
10
10
|
//#region src/components/Package/styles.ts
|
|
11
11
|
var OverviewItem = styled("span")(({ theme }) => ({
|
|
12
12
|
display: "flex",
|
|
@@ -53,7 +53,7 @@ var IconButton$1 = styled(IconButton)({
|
|
|
53
53
|
padding: 6,
|
|
54
54
|
svg: { fontSize: 16 }
|
|
55
55
|
});
|
|
56
|
-
var PackageListItemText = styled(
|
|
56
|
+
var PackageListItemText = styled(MuiListItemText)({ paddingRight: 0 });
|
|
57
57
|
var Description = styled("span")(({ theme }) => ({
|
|
58
58
|
color: theme.palette.mode === "light" ? greyDark : common.white,
|
|
59
59
|
fontSize: "14px",
|