Submit
Path:
~
/
/
opt
/
psa
/
admin
/
cp
/
public
/
javascript
/
views
/
admin
/
home
/
File Content:
admin.js.map
{"version":3,"file":"javascript/views/admin/home/admin.js?0a27e9e2f83e9aaa1d33","mappings":"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","sources":["webpack:///./views/admin/home/admin/CustomButtons.js","webpack:///./views/admin/home/admin/HomePage.js","webpack:///./views/admin/home/admin/HomePanel.js","webpack:///./views/admin/home/admin/MySubscriptions.js","webpack:///./views/admin/home/admin/Overview.js","webpack:///./views/admin/home/admin/Promo.js","webpack:///./views/admin/home/admin/PromoNewHomeView.js","webpack:///./views/admin/home/admin/PromoPuv.js","webpack:///./views/admin/home/admin/PumUpdates.js","webpack:///./views/admin/home/admin/ResourceUsage.js","webpack:///./views/admin/home/admin/SecurityInfo.js","webpack:///./views/admin/home/admin/SystemInfo.js","webpack:///./views/admin/home/admin/SystemOverview.js","webpack:///./views/admin/home/admin/UpdateBlock.js","webpack:///./views/admin/home/admin/UpdatesAvailable.js","webpack:///./views/admin/home/admin/UpgradeAvailable.js","webpack:///./icons/16/plesk/open-webspace.png","webpack:///./icons/16/plesk/resources.png","webpack:///./icons/16/plesk/stats.png","webpack:///./icons/16/plesk/update-light.png","webpack:///./icons/32/plesk/custom-buttons.png","webpack:///./icons/32/plesk/system-overview.png","webpack:///./icons/32/plesk/webspaces.png","webpack:///./images/wave.png","webpack:///./queries/HideHomeViewPromo.graphql","webpack:///./queries/HomePage.graphql","webpack:///./queries/Promos.graphql","webpack:///./queries/SwitchHomeView.graphql","webpack:///./queries/Updates.graphql"],"sourcesContent":["// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport PropTypes from 'prop-types';\nimport { Container, Locale } from 'jsw';\nimport JswComponent from 'components/jsw/JswComponent';\nimport HomePanel from './HomePanel';\n\nconst Translate = Locale.getTranslate('admin.controllers.home.admin');\n\nconst CustomButtons = ({ buttons }) => (\n <HomePanel\n className=\"bp-custom-buttons\"\n icon={require('icons/32/plesk/custom-buttons.png')}\n title={<Translate content=\"panelCustomButtons\" />}\n >\n <JswComponent>\n {() => new Container({\n tag: 'ul',\n cls: 'tools-list',\n items: buttons,\n })}\n </JswComponent>\n </HomePanel>\n);\n\nCustomButtons.propTypes = {\n buttons: PropTypes.array.isRequired,\n};\n\nexport default CustomButtons;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport PropTypes from 'prop-types';\nimport { Grid, GridCol } from '@plesk/ui-library';\nimport { useQuery } from '@apollo/client';\nimport { withPageLayout } from 'components/layouts/PageLayout';\nimport SystemOverview from './SystemOverview';\nimport Overview from './Overview';\nimport MySubscriptions from './MySubscriptions';\nimport CustomButtons from './CustomButtons';\nimport Promo from './Promo';\nimport PromoPuv from './PromoPuv';\nimport PromoNewHomeView from './PromoNewHomeView';\n\nimport HOME_PAGE_QUERY from 'queries/HomePage.graphql';\nimport PROMOS_QUERY from 'queries/Promos.graphql';\n\nconst HomePage = ({\n customButtonsList = [],\n showPromoPuv = false,\n promoNewHomeView = undefined,\n ...props\n}) => {\n const { data: { viewer: user } = {} } = useQuery(HOME_PAGE_QUERY);\n const { data: { promos } = { promos: [] } } = useQuery(PROMOS_QUERY);\n\n if (!user) {\n return null;\n }\n\n return (\n <>\n {!!promoNewHomeView && (\n <PromoNewHomeView {...promoNewHomeView} />\n )}\n {promos.length ? (\n <Promo className=\"home-promo-block\" items={promos} />\n ) : null}\n <Grid sm={2} gap=\"md\">\n <GridCol>\n {user.type === 'ADMIN' ? (\n <SystemOverview {...props} />\n ) : (\n <Overview {...props} />\n )}\n {customButtonsList.length ? <CustomButtons buttons={customButtonsList} /> : null}\n </GridCol>\n <GridCol>\n {showPromoPuv ? <PromoPuv /> : null}\n <MySubscriptions {...props} />\n </GridCol>\n </Grid>\n </>\n );\n};\n\nHomePage.propTypes = {\n customButtonsList: PropTypes.array,\n showPromoPuv: PropTypes.bool,\n promoNewHomeView: PropTypes.object,\n};\n\nexport default withPageLayout(HomePage);\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport { Panel, Heading } from '@plesk/ui-library';\n\nconst HomePanel = ({\n baseClassName = 'home-panel',\n className = undefined,\n icon,\n title,\n children,\n}) => (\n <Panel\n className={classNames(baseClassName, className)}\n title={\n <Heading className=\"home-panel__title\" level={3} icon={{ src: icon }}>\n {title}\n </Heading>\n }\n >\n {children}\n </Panel>\n);\n\nHomePanel.propTypes = {\n baseClassName: PropTypes.string,\n className: PropTypes.string,\n icon: PropTypes.string.isRequired,\n title: PropTypes.node.isRequired,\n children: PropTypes.node.isRequired,\n};\n\nexport default HomePanel;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport PropTypes from 'prop-types';\nimport { useQuery, gql } from '@apollo/client';\nimport { Locale } from 'jsw';\nimport { Section, SectionItem, Action } from '@plesk/ui-library';\nimport Link from 'components/common/Link';\nimport HomePanel from './HomePanel';\n\nconst MySubscriptions = ({\n mySubscriptions = [],\n mySubscriptionsTotal = 0,\n createNoPermission = false,\n}) => {\n const { data: { viewer: user } = {} } = useQuery(gql`\n {\n viewer {\n login\n type\n pname\n }\n }\n `);\n\n if (!user) {\n return null;\n }\n\n const Translate = user.type === 'ADMIN'\n ? Locale.getTranslate('admin.controllers.home.admin')\n : Locale.getTranslate('admin.controllers.home.reseller');\n\n return (\n <HomePanel\n className=\"bp-webspaces\"\n icon={require('icons/32/plesk/webspaces.png')}\n title={<Translate content=\"panelMyWebspaces\" />}\n >\n {mySubscriptions.length ? (\n <Section>\n {mySubscriptions.map(({ id, name }) => (\n <SectionItem key={id}>\n <Link to={`/admin/subscription/overview/id/${id}`}>{name}</Link>\n </SectionItem>\n ))}\n {mySubscriptionsTotal > mySubscriptions.length ? (\n <SectionItem>\n {/* eslint-disable-next-line max-len */}\n <Link to={`/admin/subscription/list?context=subscriptions&force-show-search=true&searchFilter[subscriberName][searchText]=${encodeURIComponent(user.pname)}`}>\n <Translate content=\"panelMyWebspacesMore\" />{' >>'}\n </Link>\n </SectionItem>\n ) : null}\n </Section>\n ) : (\n <Section>\n <SectionItem>\n <Translate\n content=\"panelMyWebspacesDescription\"\n params={{\n link: (\n <a href=\"/help.php?context=home.admin.mywebspaces\" target=\"_blank\" rel=\"noopener noreferrer\">\n <Translate content=\"panelMyWebspacesHelpLink\" />\n </a>\n ),\n }}\n />\n </SectionItem>\n </Section>\n )}\n {createNoPermission ? null : (\n <>\n <hr />\n <Action\n data-action-name=\"addSubscription\"\n component={Link}\n to=\"/admin/subscription/create?context=subscriptions\"\n icon={{ src: require('icons/16/plesk/open-webspace.png') }}\n >\n <Translate content={user.type === 'ADMIN' ? 'panelMyWebspacesCreate' : 'panelMyWebspacesNew'} />\n </Action>\n </>\n )}\n </HomePanel>\n );\n};\n\nMySubscriptions.propTypes = {\n mySubscriptions: PropTypes.arrayOf(PropTypes.shape({\n id: PropTypes.number.isRequired,\n name: PropTypes.string.isRequired,\n })),\n mySubscriptionsTotal: PropTypes.number,\n createNoPermission: PropTypes.bool,\n};\n\nexport default MySubscriptions;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport HomePanel from './HomePanel';\nimport ResourceUsage from './ResourceUsage';\nimport PropTypes from 'prop-types';\nimport { Locale } from 'jsw';\nimport { Section, SectionItem, Action } from '@plesk/ui-library';\n\nconst Translate = Locale.getTranslate('admin.controllers.home.reseller');\nconst SharedTranslate = Locale.getTranslate('admin.controllers.home._shared');\n\nconst Overview = ({\n creationDate,\n servicePlan,\n diskSpace,\n traffic,\n resourceUsage,\n}) => (\n <HomePanel\n className=\"bp-overview\"\n icon={require('icons/32/plesk/system-overview.png')}\n title={<Translate content=\"panelOverview\" />}\n >\n <Section>\n <SectionItem title={<Translate content=\"setupDate\" />}>\n {creationDate}\n </SectionItem>\n <SectionItem title={<Translate content=\"servicePlan\" />}>\n {servicePlan ? (\n <div\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{ __html: servicePlan }}\n />\n ) : (\n <Translate content=\"servicePlanCustom\" />\n )}\n </SectionItem>\n <SectionItem title={<Translate content=\"diskSpace\" />}>\n <div\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{ __html: diskSpace }}\n />\n </SectionItem>\n <SectionItem title={<Translate content=\"traffic\" />}>\n <div\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{ __html: traffic }}\n />\n </SectionItem>\n <SectionItem>\n <Action href=\"/cp/reseller-tools/summary-report\" icon={{ src: require('icons/16/plesk/stats.png') }}>\n <SharedTranslate content=\"linkDetailedReport\" />\n </Action>\n </SectionItem>\n <SectionItem>\n <Action href=\"/admin/reseller-self/subscription-overview/\" icon={{ src: require('icons/16/plesk/resources.png') }}>\n <SharedTranslate content=\"myResourcesOverview\" />\n </Action>\n </SectionItem>\n </Section>\n <hr />\n <ResourceUsage resourceUsage={resourceUsage} />\n </HomePanel>\n);\n\nOverview.propTypes = {\n creationDate: PropTypes.string.isRequired,\n servicePlan: PropTypes.string.isRequired,\n diskSpace: PropTypes.string.isRequired,\n traffic: PropTypes.string.isRequired,\n resourceUsage: PropTypes.array.isRequired,\n};\n\nexport default Overview;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { Alert, ItemList, Item, Icon, Button, Heading, Columns, Column } from '@plesk/ui-library';\nimport { api, Locale } from 'jsw';\n\nconst Translate = Locale.getTranslate('admin.controllers.home.admin');\n\nconst Promo = ({\n className = null,\n baseClassName = 'admin-home-promo',\n ...props\n}) => {\n const [items, setItems] = useState(props.items);\n const [pageSize, setPageSize] = useState(1);\n const [currentPage, setCurrentPage] = useState(0);\n\n const countPages = Math.ceil(items.length / pageSize);\n if (currentPage * pageSize >= items.length) {\n setCurrentPage(countPages - 1);\n }\n\n const handleNextPage = () => {\n setCurrentPage(currentPage + 1 > countPages - 1 ? 0 : currentPage + 1);\n };\n\n const handlePrevPage = () => {\n setCurrentPage(currentPage - 1 < 0 ? countPages - 1 : currentPage - 1);\n };\n\n const handleCloseItem = itemToClose => {\n setItems(items.filter(item => item !== itemToClose));\n\n if (itemToClose.hideUrl) {\n api.post(itemToClose.hideUrl);\n }\n };\n\n const handleColumnsChange = newPageSize => {\n if (pageSize === newPageSize) {\n return;\n }\n\n setPageSize(newPageSize);\n };\n\n const renderItem = (item, key) => {\n const { buttonUrl, buttonTarget, buttonText, iconUrl, title, text, hideText } = item;\n\n return (\n <Item\n key={key}\n icon={<Icon src={iconUrl} size=\"24\" />}\n title={<Heading component=\"h3\" level=\"5\">{title}</Heading>}\n >\n <p>{text}</p>\n <div>\n <Button component=\"a\" href={buttonUrl} target={buttonTarget}>{buttonText}</Button>\n {' \\u00A0 '}\n <Button ghost onClick={() => handleCloseItem(item)}>{hideText}</Button>\n </div>\n </Item>\n );\n };\n\n const currentOffset = currentPage * pageSize;\n const currentItems = items.slice(currentOffset, currentOffset + pageSize);\n\n if (!currentItems.length) {\n return null;\n }\n\n return (\n <Alert className={classNames(baseClassName, className)}>\n <div>\n <p><Translate content=\"promosTitle\" /></p>\n <ItemList minColumnWidth={300} onColumnsChange={handleColumnsChange} gap=\"md\" hoverable={false}>\n {currentItems.map((item, key) => renderItem(item, key))}\n </ItemList>\n </div>\n {countPages > 1 && (\n <Columns gap=\"md\" vertical={false}>\n <Column fill>\n <Button ghost data-action-name=\"promosPrevPage\" onClick={handlePrevPage}><Translate content=\"promosPrev\" /></Button>\n </Column>\n <Column>\n <Button ghost data-action-name=\"promosNextPage\" onClick={handleNextPage}><Translate content=\"promosNext\" /></Button>\n </Column>\n </Columns>\n )}\n </Alert>\n );\n};\n\nPromo.propTypes = {\n items: PropTypes.array.isRequired,\n baseClassName: PropTypes.string,\n className: PropTypes.string,\n};\n\nexport default Promo;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport PropTypes from 'prop-types';\nimport { Locale } from 'jsw';\nimport { Alert, Heading, Column, Action, Columns, Media, MediaSection, Icon } from '@plesk/ui-library';\nimport { useMutation } from '@apollo/client';\nimport { useNavigate } from 'react-router-dom';\nimport { useEffect, useState } from 'react';\n\nimport waveImg from 'images/wave.png';\nimport SWITCH_HOME_VIEW from 'queries/SwitchHomeView.graphql';\nimport HIDE_PROMO from 'queries/HideHomeViewPromo.graphql';\n\nconst Translate = Locale.getTranslate('admin.controllers.home.admin.promoNewPage');\n\nconst Actions = ({ feedbackURL, progress = false, switchView }) => (\n <Columns gap=\"md\">\n <Column>\n <Action\n id=\"switch\"\n icon=\"projects\"\n onClick={switchView}\n progress={progress}\n >\n <Translate content=\"switch\" />\n </Action>\n </Column>\n <Column>\n <Action\n id=\"feedback\"\n icon=\"feedback\"\n href={feedbackURL}\n target=\"_blank\"\n >\n <Translate content=\"feedback\" />\n </Action>\n </Column>\n </Columns>\n);\n\nActions.propTypes = {\n feedbackURL: PropTypes.string.isRequired,\n progress: PropTypes.bool,\n switchView: PropTypes.func.isRequired,\n};\n\nconst PromoNewHomeView = ({ feedbackURL, wasSwitched = false }) => {\n const navigate = useNavigate();\n const [progress, setProgress] = useState(false);\n const [isOpen, setIsOpen] = useState(true);\n\n const [switchView, { loading }] = useMutation(SWITCH_HOME_VIEW, {\n variables: { enableNewView: true },\n onCompleted: () => navigate('/cp/home'),\n });\n\n const [hidePromo] = useMutation(HIDE_PROMO, {\n onCompleted: () => setIsOpen(false),\n });\n\n useEffect(() => {\n if (loading) {\n setProgress(true);\n }\n }, [loading]);\n\n if (!isOpen) {\n return null;\n }\n\n return (\n <Alert\n data-type=\"promo-new-home-view\"\n intent=\"info\"\n onClose={hidePromo}\n >\n <Media\n title={<Heading level={4}><Translate content={wasSwitched ? 'titleSwitched' : 'title'} /></Heading>}\n image={<Icon size=\"32\" src={waveImg} />}\n >\n <MediaSection>\n <Translate content={wasSwitched ? 'descriptionSwitched' : 'description'} />\n </MediaSection>\n <MediaSection>\n <Actions\n feedbackURL={feedbackURL}\n progress={progress}\n switchView={switchView}\n />\n </MediaSection>\n </Media>\n </Alert>\n );\n};\n\nPromoNewHomeView.propTypes = {\n feedbackURL: PropTypes.string.isRequired,\n wasSwitched: PropTypes.bool,\n};\n\nexport default PromoNewHomeView;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { Alert, Icon, Button, Media, MediaSection, Hint } from '@plesk/ui-library';\nimport Link from 'components/common/Link';\nimport { Locale, redirect, api, UAT } from 'jsw';\nimport { useState } from 'react';\n\nconst Translate = Locale.getTranslate('admin.controllers.home.admin');\n\nconst PromoPuv = () => {\n const [isOpen, setIsOpen] = useState(true);\n const handleClosePromo = () => {\n setIsOpen(false);\n UAT.dispatchAction('CLOSE-INVITATION-TO-PUV');\n api.post('/admin/home/hide-promo-puv');\n };\n\n const handleSwitchView = () => {\n setIsOpen(false);\n api.post('/admin/home/hide-promo-puv');\n api.post('/admin/index/change-view').then(data => redirect(data.redirect));\n };\n\n if (!isOpen) {\n return null;\n }\n\n return (\n <Alert intent=\"info\" onClose={handleClosePromo}>\n <Media\n image={\n <Icon size=\"32\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 48 48\">\n {/* eslint-disable-next-line max-len */}\n <path fill=\"#673b72\" d=\"M48 41.1v2.8c0 1.2-.9 2.1-2.1 2.1H2.1C1 46 0 45.1 0 43.8v-2.7h48z\" /><path fill=\"#8d629c\" d=\"M0 9.8V4.1C0 3 .9 2 2.1 2h43.8C47 2 48 2.9 48 4.1v5.8L0 9.8z\" /><path fill=\"#b485bb\" d=\"M0 8v33.9C0 43 .9 44 2.1 44h43.8c1.2 0 2.1-1 2.1-2.1V8H0z\" /><path fill=\"#e4e6ed\" d=\"M43 19H5a1 1 0 0 1-1-1v-5a1 1 0 0 1 1-1h38a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1z\" /><path fill=\"#fff\" d=\"M43 40H5a1 1 0 0 1-1-1V16h40v23a1 1 0 0 1-1 1z\" /><path fill=\"#54bce7\" d=\"M6 18h16v10H6z\" /><path fill=\"#d1d3dd\" d=\"M24 18h8v20h-8zM34 18h8v20h-8z\" />\n </svg>\n </Icon>\n }\n title={<b><Translate content=\"promoPuvTitle\" /></b>}\n >\n <MediaSection>\n <Translate\n content=\"promoPuvDescription\"\n params={{\n accent: <b><Translate content=\"promoPuvDescriptionAccent\" /></b>,\n }}\n />\n </MediaSection>\n <MediaSection>\n <Button intent=\"primary\" data-action=\"TO-POWER-USER\" onClick={handleSwitchView}><Translate content=\"promoPuvButton\" /></Button>\n </MediaSection>\n <MediaSection>\n <Hint>\n <Translate\n content=\"promoPuvHint\"\n params={{\n link: (\n <Link to=\"/cp/settings-ui/edit-interface-view\">\n <b><Translate content=\"promoPuvHintLink\" /></b>\n </Link>\n ),\n }}\n />\n </Hint>\n </MediaSection>\n </Media>\n </Alert>\n );\n};\n\nexport default PromoPuv;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { Button, Link } from '@plesk/ui-library';\nimport PropTypes from 'prop-types';\nimport { Locale } from 'jsw';\nimport UpdateBlock from './UpdateBlock';\n\nconst Translate = Locale.getTranslate('admin.controllers.home.admin');\n\nconst PumUpdates = ({ compact = false, updates = [], lastChecked = null }) => {\n const handleUpdateClick = async () => {\n const { PopupPackagesUpdate } = await Plesk.require('app/pum');\n new PopupPackagesUpdate({\n urls: {\n packageUpdateInfo: '/admin/pum/update-info',\n updatePackages: '/admin/pum/update',\n },\n packages: updates,\n });\n };\n\n return (\n <UpdateBlock\n compact={compact}\n title={updates.length > 1 ? (\n <Translate\n content=\"updatesForPackagesAreAvailable\"\n params={{\n packages: (\n <Link href=\"/admin/pum/updates-list\">\n <Translate content=\"packages\" params={{ count: updates.length }} />\n </Link>\n ),\n }}\n />\n ) : (\n <Translate\n content=\"updatesForPackageIsAvailable\"\n params={{\n package: `${updates[0].name} ${updates[0].version_to}`,\n }}\n />\n )}\n hint={lastChecked ? (\n <Translate content=\"updatesLastChecked\" params={{ date: lastChecked }} />\n ) : null}\n >\n <Button onClick={handleUpdateClick} intent=\"primary\">\n {updates.length > 1 ? (\n <Translate content=\"updateAll\" />\n ) : (\n <Translate content=\"updateNow\" />\n )}\n </Button>\n {' \\u00A0\\u00A0 '}\n <Link href=\"/admin/pum/updates-list\">\n <Translate content=\"showDetails\" />\n </Link>\n </UpdateBlock>\n );\n};\n\nPumUpdates.propTypes = {\n compact: PropTypes.bool,\n updates: PropTypes.array,\n lastChecked: PropTypes.string,\n};\n\nexport default PumUpdates;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport PropTypes from 'prop-types';\nimport { Locale } from 'jsw';\nimport { AuxiliaryActions, Status, Text } from '@plesk/ui-library';\nimport Link from 'components/common/Link';\n\nconst Translate = Locale.getTranslate('admin.controllers.home._shared');\n\nconst ResourceUsage = ({ resourceUsage }) => (\n <table className=\"form-table\" width=\"100%\" cellSpacing=\"0\" data-name={'resourceUsage'}>\n <tbody>\n {resourceUsage.map(({ iconUrl, title, listUrl, total, createUrl, overuseUrl, overuse }) => (\n <tr className=\"form-row\" key={title}>\n <td className=\"field-name\">\n <Text bold component={Status} icon={{ src: iconUrl }}><Translate content={title} /></Text>\n </td>\n <td className=\"number t-r\">\n <Link to={listUrl}><Translate content=\"totalItems\" params={{ value: total }} /></Link>\n </td>\n <td>\n {createUrl ? (\n <AuxiliaryActions>\n <Link to={createUrl}><Translate content=\"linkAddNew\" /></Link>\n </AuxiliaryActions>\n ) : (\n <span> </span>\n )}\n </td>\n <td>\n {overuseUrl ? (\n <Link to={overuseUrl}><Translate content=\"overuseItems\" params={{ value: overuse }} /></Link>\n ) : (\n <span> </span>\n )}\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n);\n\nResourceUsage.propTypes = {\n resourceUsage: PropTypes.arrayOf(PropTypes.shape({\n iconUrl: PropTypes.string.isRequired,\n title: PropTypes.string.isRequired,\n listUrl: PropTypes.string.isRequired,\n total: PropTypes.number.isRequired,\n createUrl: PropTypes.string,\n overuseUrl: PropTypes.string,\n overuse: PropTypes.number,\n })).isRequired,\n};\n\nexport default ResourceUsage;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport PropTypes from 'prop-types';\nimport { Locale } from 'jsw';\nimport { Section, SectionItem, Status, Link } from '@plesk/ui-library';\n\nconst Translate = Locale.getTranslate('admin.controllers.home.admin');\n\nconst SecurityInfo = ({\n isOutgoingMessagesLimitEnabled = false,\n isOutgoingMessagesExceedingForConfiguredPeriod = false,\n outgoingMailUrl,\n serverProtectionSettingsUrl,\n fail2banStatus,\n banListUrl,\n isFail2banAvailable = false,\n isModSecurityAvailable = false,\n modSecurityState,\n modSecurityChangeSettingsLink = null,\n webAppFirewallUrl,\n}) => {\n const renderOutgoingMessagesLimit = () => {\n if (!isOutgoingMessagesLimitEnabled) {\n return null;\n }\n return (\n <SectionItem title={<Translate content=\"outgoingAntispamTitle\" />}>\n {isOutgoingMessagesExceedingForConfiguredPeriod ? (\n <>\n <Status intent=\"warning\"><Translate content=\"outgoingAntispamStatusAttention\" /></Status>\n <br />\n <Link href={outgoingMailUrl}><Translate content=\"outgoingAntispamStatusAttentionLink\" /></Link>\n </>\n ) : (\n <>\n <Status intent=\"success\"><Translate content=\"outgoingAntispamStatusOk\" /></Status>\n <br />\n <Link href={outgoingMailUrl}><Translate content=\"outgoingAntispamStatusOkLink\" /></Link>\n </>\n )}\n </SectionItem>\n );\n };\n\n const renderFail2banStatus = () => {\n if (!isFail2banAvailable) {\n return null;\n }\n\n let fail2banStatusText = <Status intent=\"inactive\"><Translate content=\"fail2banInactive\" /></Status>;\n let fail2banStatusLink = <Link href={serverProtectionSettingsUrl}><Translate content=\"fail2banChangeSettings\" /></Link>;\n\n if ('on' === fail2banStatus) {\n fail2banStatusText = <Status intent=\"success\"><Translate content=\"fail2banActive\" /></Status>;\n fail2banStatusLink = <Link href={banListUrl}><Translate content=\"fail2banBannedIps\" /></Link>;\n } else if ('failed' === fail2banStatus) {\n fail2banStatusText = <Translate content=\"fail2banError\" />;\n }\n\n return (\n <SectionItem title={<Translate content=\"fail2banTitle\" />}>\n {fail2banStatusText}\n <br />\n {fail2banStatusLink}\n </SectionItem>\n );\n };\n\n const renderModeSecurity = () => {\n if (!isModSecurityAvailable) {\n return null;\n }\n\n return (\n <SectionItem title={<Translate content=\"modSecurityTitle\" />}>\n {'On' === modSecurityState ? (\n <>\n <Status intent=\"success\"><Translate content={`modSecurityState${modSecurityState}`} /></Status>\n <br />\n <Link href={webAppFirewallUrl}><Translate content=\"modSecurityManagement\" /></Link>\n </>\n ) : (\n <>\n <Status intent=\"inactive\"><Translate content={`modSecurityState${modSecurityState}`} /></Status>\n <br />\n {modSecurityChangeSettingsLink}\n <Link href={webAppFirewallUrl}><Translate content=\"modSecurityChangeSettings\" /></Link>\n </>\n )}\n </SectionItem>\n );\n };\n\n if (isOutgoingMessagesLimitEnabled || isFail2banAvailable || isModSecurityAvailable) {\n return (\n <>\n <hr />\n <Section>\n {renderOutgoingMessagesLimit()}\n {renderFail2banStatus()}\n {renderModeSecurity()}\n </Section>\n </>\n );\n }\n\n return null;\n};\n\nSecurityInfo.propTypes = {\n isOutgoingMessagesLimitEnabled: PropTypes.bool,\n isOutgoingMessagesExceedingForConfiguredPeriod: PropTypes.bool,\n outgoingMailUrl: PropTypes.string.isRequired,\n serverProtectionSettingsUrl: PropTypes.string.isRequired,\n fail2banStatus: PropTypes.string.isRequired,\n banListUrl: PropTypes.string.isRequired,\n isFail2banAvailable: PropTypes.bool,\n isModSecurityAvailable: PropTypes.bool,\n modSecurityState: PropTypes.string.isRequired,\n modSecurityChangeSettingsLink: PropTypes.string,\n webAppFirewallUrl: PropTypes.string.isRequired,\n};\n\nexport default SecurityInfo;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport PropTypes from 'prop-types';\nimport { Section, SectionItem, Hint } from '@plesk/ui-library';\nimport { Locale } from 'jsw';\n\nconst Translate = Locale.getTranslate('admin.controllers.home.admin');\n\nconst SystemInfo = ({\n hostName,\n ipAddress,\n os,\n productName,\n panelVersion,\n installedPatch = null,\n lastUpdate = null,\n}) => (\n <Section data-name={'systemInfo'}>\n <SectionItem title={<Translate content=\"hostname\" />}>\n {hostName}\n </SectionItem>\n <SectionItem title={<Translate content=\"ipAddress\" />}>\n {ipAddress}\n </SectionItem>\n <SectionItem title={<Translate content=\"os\" />}>\n {os}\n </SectionItem>\n <SectionItem title={<Translate content=\"product\" />}>\n {productName}\n <br />\n <Hint>\n <Translate content=\"panelVersion\" /> {panelVersion}\n {installedPatch ? (\n <>\n {' '}<Translate content=\"installedPatchVersion\" params={{ installedPatch }} />\n </>\n ) : null}\n {lastUpdate ? (\n <Translate content=\"lastUpdateDate\" params={{ lastUpdate }} />\n ) : null}\n </Hint>\n </SectionItem>\n </Section>\n);\n\nSystemInfo.propTypes = {\n hostName: PropTypes.string.isRequired,\n ipAddress: PropTypes.string.isRequired,\n os: PropTypes.string.isRequired,\n productName: PropTypes.string.isRequired,\n panelVersion: PropTypes.string.isRequired,\n installedPatch: PropTypes.string,\n lastUpdate: PropTypes.string,\n};\n\nexport default SystemInfo;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { useQuery } from '@apollo/client';\nimport { Locale } from 'jsw';\nimport { Action } from '@plesk/ui-library';\nimport HomePanel from './HomePanel';\nimport SystemInfo from './SystemInfo';\nimport UpgradeAvailable from './UpgradeAvailable';\nimport UpdatesAvailable from './UpdatesAvailable';\nimport PumUpdates from './PumUpdates';\nimport ResourceUsage from './ResourceUsage';\nimport SecurityInfo from './SecurityInfo';\nimport PropTypes from 'prop-types';\n\nimport UPDATES_QUERY from 'queries/Updates.graphql';\n\nconst Translate = Locale.getTranslate('admin.controllers.home.admin');\nconst SharedTranslate = Locale.getTranslate('admin.controllers.home._shared');\n\nconst SystemOverview = ({\n updates = undefined,\n pum = undefined,\n systemInfo,\n upgrade = undefined,\n securityInfo,\n resourceUsage,\n isClassicMode,\n}) => {\n const { data: { config } = {} } = useQuery(UPDATES_QUERY);\n\n return (\n <HomePanel\n className=\"bp-system-overview\"\n icon={require('icons/32/plesk/system-overview.png')}\n title={<Translate content=\"panelSystemOverview\" />}\n >\n <SystemInfo {...systemInfo} />\n {config?.updates?.showControls ? (\n <UpgradeAvailable {...upgrade} isClassicMode={isClassicMode} />\n ) : null}\n {config?.updates?.showControls && updates ? (\n <UpdatesAvailable {...updates} />\n ) : null}\n {pum ? <PumUpdates {...pum} /> : null}\n <SecurityInfo {...securityInfo} />\n <hr />\n <ResourceUsage resourceUsage={resourceUsage} />\n <hr />\n <Action href=\"/cp/server/summary-report\" icon={{ src: require('icons/16/plesk/stats.png') }}>\n <SharedTranslate content=\"linkDetailedReport\" />\n </Action>\n </HomePanel>\n );\n};\n\nSystemOverview.propTypes = {\n updates: PropTypes.object,\n pum: PropTypes.shape(PumUpdates.propTypes),\n systemInfo: PropTypes.object.isRequired,\n upgrade: PropTypes.object,\n securityInfo: PropTypes.object.isRequired,\n resourceUsage: PropTypes.array.isRequired,\n isClassicMode: PropTypes.bool.isRequired,\n};\n\nexport default SystemOverview;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { Alert, Icon, Media, MediaSection, Text } from '@plesk/ui-library';\nimport PropTypes from 'prop-types';\n\nconst UpdateBlock = ({ compact = false, title, hint = null, children }) => {\n const icon = <Icon src={require('icons/16/plesk/update-light.png')} size=\"16\" />;\n return (\n <Alert intent=\"info\">\n {compact ? (\n <>\n <p>{icon}{' '}{title}</p>\n <p>{children}</p>\n {hint ? (\n <p>\n <Text intent=\"muted\">{hint}</Text>\n </p>\n ) : null}\n </>\n ) : (\n <Media image={icon}>\n <MediaSection>{title}</MediaSection>\n <MediaSection>{children}</MediaSection>\n {hint ? (\n <MediaSection>\n <Text intent=\"muted\">{hint}</Text>\n </MediaSection>\n ) : null}\n </Media>\n )}\n </Alert>\n );\n};\n\nUpdateBlock.propTypes = {\n compact: PropTypes.bool,\n title: PropTypes.any.isRequired,\n children: PropTypes.any.isRequired,\n hint: PropTypes.any,\n};\n\nexport default UpdateBlock;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { Button, Link } from '@plesk/ui-library';\nimport { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { gql, useMutation } from '@apollo/client';\nimport { clearStatusMessages, addStatusMessage, Locale, Observer } from 'jsw';\nimport UpdateBlock from './UpdateBlock';\n\nconst Translate = Locale.getTranslate('admin.controllers.home.admin');\n\nconst UPDATE_COMPONENTS = gql`\n mutation UpdateComponents {\n updateComponents {\n id\n }\n }\n`;\n\nconst UpdatesAvailable = ({ compact = false, availablePatch, updateWhatsNewUrl, runningTaskId = undefined }) => {\n const [taskId, setTaskId] = useState(runningTaskId);\n const [updateComponents, { loading: startingUpdate }] = useMutation(UPDATE_COMPONENTS, {\n onCompleted: ({ updateComponents }) => {\n setTaskId(updateComponents.id);\n },\n });\n\n useEffect(() => {\n if (!taskId) {\n return;\n }\n\n Observer.append(({ id }) => {\n if (+id === +taskId) {\n window.location.reload();\n }\n }, 'plesk:taskComplete');\n }, [taskId]);\n\n return (\n <UpdateBlock\n compact={compact}\n title={<Translate content=\"updatesAvailable\" params={{ version: availablePatch }} />}\n >\n <Button\n intent=\"primary\"\n onClick={async () => {\n clearStatusMessages();\n try {\n await updateComponents();\n } catch ({ message }) {\n addStatusMessage('warning', message);\n }\n }}\n state={startingUpdate || taskId ? 'loading' : null}\n >\n <Translate content=\"installNow\" />\n </Button>\n {' \\u00A0\\u00A0 '}\n <Link href=\"/admin/update\" target=\"_blank\">\n <Translate content=\"installShow\" />\n </Link>\n {' \\u00A0\\u00A0 '}\n <Link href={updateWhatsNewUrl} target=\"_blank\">\n <Translate content=\"seeWhatsNew\" />\n </Link>\n </UpdateBlock>\n );\n};\n\nUpdatesAvailable.propTypes = {\n compact: PropTypes.bool,\n availablePatch: PropTypes.string.isRequired,\n updateWhatsNewUrl: PropTypes.string.isRequired,\n runningTaskId: PropTypes.string,\n};\n\nexport default UpdatesAvailable;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { Status, Link, Text, Heading, Button } from '@plesk/ui-library';\nimport { useState } from 'react';\nimport { api, addStatusMessage, clearStatusMessages, Locale } from 'jsw';\nimport PropTypes from 'prop-types';\nimport UpdateBlock from './UpdateBlock';\n\nconst Translate = Locale.getTranslate('admin.controllers.home.admin');\nconst locale = Locale.getSection('admin.controllers.home.admin');\n\nconst UpgradeAvailable = ({\n isClassicMode = false,\n isAutoupdatesDisabled,\n updateSettingsUrl,\n changelogUrl,\n availableUpgrade = null,\n upgradeWhatsNewUrl = null,\n ...props\n}) => {\n const [loading, setLoading] = useState(false);\n const [newVersion, setNewVersion] = useState(availableUpgrade);\n const [whatsNewUrl, setWhatsNewUrl] = useState(upgradeWhatsNewUrl);\n const [lastChecked, setLastChecked] = useState(props.lastChecked);\n\n const handleCheckForUpdates = async () => {\n setLoading(true);\n clearStatusMessages();\n\n let result;\n try {\n result = await api.post('/admin/home/check-for-updates');\n addStatusMessage('success', locale.lmsg('checkForUpdatesSuccess'));\n } catch (e) {\n addStatusMessage('error', e.message);\n return;\n } finally {\n setLoading(false);\n }\n const { status, lastChecked, statusMessages, newVersion, whatsNewUrl } = result;\n\n if (status === 'error') {\n statusMessages.forEach(({ status, content }) => {\n addStatusMessage(status, content);\n });\n return;\n }\n\n setNewVersion(newVersion);\n setWhatsNewUrl(whatsNewUrl);\n setLastChecked(lastChecked);\n };\n\n return (\n <>\n <Heading component=\"div\" level={5}>\n {loading ? (\n <Status progress>\n <Translate content=\"waitMessage\" />\n </Status>\n ) : (\n <Link onClick={handleCheckForUpdates} data-name={'checkForUpdates'}><Translate content=\"checkForUpdates\" /></Link>\n )}\n </Heading>\n {lastChecked ? (\n <p>\n <Text intent=\"muted\" data-name={'lastCheckedDate'}>\n <Translate\n content=\"checkedAt\"\n params={{\n lastChecked,\n }}\n />\n </Text>\n </p>\n ) : null}\n {isClassicMode ? (\n <p>\n <Link href={changelogUrl} target=\"_blank\"><Translate content=\"seeChangelog\" /></Link>\n <span className=\"delimiter\">{' | '}</span>\n <Link href=\"/admin/update/add-components/\" target=\"_blank\"><Translate content=\"addComponents\" /></Link>\n </p>\n ) : null}\n {isClassicMode && isAutoupdatesDisabled ? (\n <Status intent=\"warning\">\n <Link href={updateSettingsUrl}><Translate content=\"enableAutoupdate\" /></Link>\n </Status>\n ) : null}\n {newVersion ? (\n (\n <UpdateBlock\n compact={!isClassicMode}\n title={<Translate content=\"updateIsAvailable\" params={{ product: newVersion }} />}\n >\n <Button\n intent=\"primary\"\n component=\"a\"\n href=\"/admin/update/product\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <Translate content=\"installNow\" />\n </Button>\n {' \\u00A0\\u00A0 '}\n <Link href={whatsNewUrl} target=\"_blank\">\n <Translate content=\"seeWhatsNew\" />\n </Link>\n </UpdateBlock>\n )\n ) : null}\n </>\n );\n};\n\nUpgradeAvailable.propTypes = {\n isClassicMode: PropTypes.bool,\n availableUpgrade: PropTypes.string,\n upgradeWhatsNewUrl: PropTypes.string,\n lastChecked: PropTypes.string.isRequired,\n changelogUrl: PropTypes.string.isRequired,\n updateSettingsUrl: PropTypes.string.isRequired,\n isAutoupdatesDisabled: PropTypes.bool.isRequired,\n};\n\nexport default UpgradeAvailable;\n","module.exports = Jsw.skinUrl + \"/icons/16/plesk/open-webspace.png?eacf27c9d2806ff2c2e196b3e611f4e4\";","module.exports = Jsw.skinUrl + \"/icons/16/plesk/resources.png?aca573a2ea3c713332e0319fe62f99ac\";","module.exports = Jsw.skinUrl + \"/icons/16/plesk/stats.png?6a39051adc0633466df48a83a804028c\";","module.exports = Jsw.skinUrl + \"/icons/16/plesk/update-light.png?74fefb9b3ca4a30e8fb17619678aa233\";","module.exports = Jsw.skinUrl + \"/icons/32/plesk/custom-buttons.png?7cf218aebaf85599ee9d8db8e1a3ee91\";","module.exports = Jsw.skinUrl + \"/icons/32/plesk/system-overview.png?6ef318b83eea9b5c63f530e457fed0af\";","module.exports = Jsw.skinUrl + \"/icons/32/plesk/webspaces.png?33a8ec192f24d9bbfbc60969b75b1841\";","module.exports = Jsw.skinUrl + \"/images/wave.png?cb207b07fa5bec748d1d05473f492a23\";","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"mutation\",\"name\":{\"kind\":\"Name\",\"value\":\"HideHomeViewPromo\"},\"variableDefinitions\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"hideHomeViewPromo\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"query\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"viewer\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"login\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"home\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"feedbackURL\"},\"arguments\":[],\"directives\":[]}]}}]}}]}}]}}]}}],\"loc\":{\"start\":0,\"end\":217}};\n doc.loc.source = {\"body\":\"mutation HideHomeViewPromo {\\n hideHomeViewPromo {\\n query {\\n viewer {\\n login\\n home {\\n feedbackURL\\n }\\n }\\n }\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"HideHomeViewPromo\"] = oneQuery(doc, \"HideHomeViewPromo\");\n \n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"query\",\"name\":{\"kind\":\"Name\",\"value\":\"HomePage\"},\"variableDefinitions\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"viewer\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"login\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"type\"},\"arguments\":[],\"directives\":[]}]}}]}}],\"loc\":{\"start\":0,\"end\":65}};\n doc.loc.source = {\"body\":\"query HomePage {\\n viewer {\\n login\\n type\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"HomePage\"] = oneQuery(doc, \"HomePage\");\n \n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"query\",\"name\":{\"kind\":\"Name\",\"value\":\"Promos\"},\"variableDefinitions\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"promos\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"title\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"buttonUrl\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"buttonText\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"buttonTarget\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"hideUrl\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"hideText\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"text\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"iconUrl\"},\"arguments\":[],\"directives\":[]}]}}]}}],\"loc\":{\"start\":0,\"end\":170}};\n doc.loc.source = {\"body\":\"query Promos {\\n promos {\\n title\\n buttonUrl\\n buttonText\\n buttonTarget\\n hideUrl\\n hideText\\n text\\n iconUrl\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"Promos\"] = oneQuery(doc, \"Promos\");\n \n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"mutation\",\"name\":{\"kind\":\"Name\",\"value\":\"SwitchHomeView\"},\"variableDefinitions\":[{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"enableNewView\"}},\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Boolean\"}}},\"directives\":[]}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"switchHomeView\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"enableNewView\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"enableNewView\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"enableNewView\"},\"arguments\":[],\"directives\":[]}]}}]}}],\"loc\":{\"start\":0,\"end\":134}};\n doc.loc.source = {\"body\":\"mutation SwitchHomeView($enableNewView: Boolean!) {\\n switchHomeView(enableNewView: $enableNewView) {\\n enableNewView\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"SwitchHomeView\"] = oneQuery(doc, \"SwitchHomeView\");\n \n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"query\",\"name\":{\"kind\":\"Name\",\"value\":\"Updates\"},\"variableDefinitions\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"config\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"updates\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"showControls\"},\"arguments\":[],\"directives\":[]}]}}]}}]}}],\"loc\":{\"start\":0,\"end\":90}};\n doc.loc.source = {\"body\":\"query Updates {\\n config {\\n updates {\\n showControls\\n }\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"Updates\"] = oneQuery(doc, \"Updates\");\n \n"],"names":["Translate","Locale","getTranslate","CustomButtons","buttons","_jsx","HomePanel","className","icon","require","title","content","children","JswComponent","Container","tag","cls","items","propTypes","PropTypes","isRequired","HomePage","customButtonsList","showPromoPuv","promoNewHomeView","props","data","viewer","user","useQuery","HOME_PAGE_QUERY","promos","PROMOS_QUERY","_jsxs","_Fragment","PromoNewHomeView","length","Promo","Grid","sm","gap","GridCol","type","SystemOverview","Overview","PromoPuv","MySubscriptions","withPageLayout","baseClassName","Panel","classNames","Heading","level","src","mySubscriptions","mySubscriptionsTotal","createNoPermission","gql","Section","map","id","name","SectionItem","Link","to","encodeURIComponent","pname","params","link","href","target","rel","Action","component","SharedTranslate","creationDate","servicePlan","diskSpace","traffic","resourceUsage","dangerouslySetInnerHTML","__html","ResourceUsage","setItems","useState","pageSize","setPageSize","currentPage","setCurrentPage","countPages","Math","ceil","renderItem","item","key","buttonUrl","buttonTarget","buttonText","iconUrl","text","hideText","Item","Icon","size","Button","ghost","onClick","handleCloseItem","itemToClose","filter","hideUrl","api","post","currentOffset","currentItems","slice","Alert","ItemList","minColumnWidth","onColumnsChange","newPageSize","hoverable","Columns","vertical","Column","fill","handlePrevPage","handleNextPage","Actions","feedbackURL","progress","switchView","wasSwitched","navigate","useNavigate","setProgress","isOpen","setIsOpen","loading","useMutation","SWITCH_HOME_VIEW","variables","enableNewView","onCompleted","hidePromo","HIDE_PROMO","useEffect","intent","onClose","Media","image","waveImg","MediaSection","handleClosePromo","UAT","dispatchAction","xmlns","viewBox","d","accent","handleSwitchView","then","redirect","Hint","PumUpdates","compact","updates","lastChecked","UpdateBlock","packages","count","package","version_to","hint","date","async","PopupPackagesUpdate","Plesk","urls","packageUpdateInfo","updatePackages","width","cellSpacing","listUrl","total","createUrl","overuseUrl","overuse","Text","bold","Status","value","AuxiliaryActions","SecurityInfo","isOutgoingMessagesLimitEnabled","isOutgoingMessagesExceedingForConfiguredPeriod","outgoingMailUrl","serverProtectionSettingsUrl","fail2banStatus","banListUrl","isFail2banAvailable","isModSecurityAvailable","modSecurityState","modSecurityChangeSettingsLink","webAppFirewallUrl","renderFail2banStatus","fail2banStatusText","fail2banStatusLink","SystemInfo","hostName","ipAddress","os","productName","panelVersion","installedPatch","lastUpdate","pum","systemInfo","upgrade","securityInfo","isClassicMode","config","UPDATES_QUERY","showControls","UpgradeAvailable","UpdatesAvailable","UPDATE_COMPONENTS","availablePatch","updateWhatsNewUrl","runningTaskId","taskId","setTaskId","updateComponents","startingUpdate","Observer","append","window","location","reload","version","clearStatusMessages","message","addStatusMessage","state","locale","getSection","isAutoupdatesDisabled","updateSettingsUrl","changelogUrl","availableUpgrade","upgradeWhatsNewUrl","setLoading","newVersion","setNewVersion","whatsNewUrl","setWhatsNewUrl","setLastChecked","result","lmsg","e","status","statusMessages","forEach","product","module","exports","Jsw","skinUrl","doc","loc","source","collectFragmentReferences","node","refs","kind","add","selectionSet","selections","selection","variableDefinitions","def","definitions","definitionRefs","findOperation","i","element","Set","operationName","newDoc","hasOwnProperty","opRefs","allRefs","newRefs","refName","prevRefs","has","childRef","op","push","oneQuery"],"sourceRoot":""}
Edit
Rename
Chmod
Delete
FILE
FOLDER
INFO
Name
Size
Permission
Action
admin.js
33846 bytes
0644
admin.js.map
104140 bytes
0644
N4ST4R_ID | Naxtarrr