Submit
Path:
~
/
/
opt
/
psa
/
admin
/
cp
/
public
/
javascript
/
views
/
admin
/
app
/
File Content:
info.js.map
{"version":3,"file":"javascript/views/admin/app/info.js?253d16e7822fb3b0a15b","mappings":"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","sources":["webpack:///./components/jsw/JswList.js","webpack:///./components/jsw/convertToReactComponent.js","webpack:///./views/admin/app/info/AppInfoList.js","webpack:///./views/admin/app/info/AppInfoPage.js"],"sourcesContent":["// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport PropTypes from 'prop-types';\nimport { List } from 'jsw';\nimport convertToReactComponent from './convertToReactComponent';\n\nconst propTypes = {\n id: PropTypes.string,\n dataUrl: PropTypes.string,\n operations: PropTypes.array,\n itemActions: PropTypes.object,\n columns: PropTypes.array,\n data: PropTypes.shape({\n data: PropTypes.array,\n state: PropTypes.object,\n pager: PropTypes.object,\n locale: PropTypes.object,\n additional: PropTypes.object,\n pathbar: PropTypes.any,\n }),\n searchFilters: PropTypes.object,\n searchOveral: PropTypes.string,\n disabledSelectHint: PropTypes.string,\n isDisabledItem: PropTypes.func,\n onRedraw: PropTypes.func,\n emptyViewMode: PropTypes.oneOf(['all', 'items']),\n emptyView: PropTypes.any,\n};\n\nconst defaultProps = {\n id: undefined,\n dataUrl: undefined,\n operations: undefined,\n itemActions: undefined,\n columns: undefined,\n data: undefined,\n searchFilters: undefined,\n searchOveral: undefined,\n disabledSelectHint: undefined,\n isDisabledItem: undefined,\n onRedraw: undefined,\n emptyViewMode: undefined,\n emptyView: undefined,\n};\n\nconst JswList = convertToReactComponent(List, {\n propsList: Object.keys(propTypes),\n defaultProps,\n});\nJswList.displayName = 'JswList';\nJswList.propTypes = propTypes;\n\nexport default JswList;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { useRef, useLayoutEffect } from 'react';\nimport { render } from 'jsw';\n\n// eslint-disable-next-line react/display-name\nconst convertToReactComponent = (JswComponent, { propsList = [], setters = {}, defaultProps = {} }) => props => {\n const containerRef = useRef();\n const componentRef = useRef();\n\n const [componentProps, containerProps] = Object.entries({ ...defaultProps, ...props }).reduce((res, [name, value]) => {\n res[propsList.includes(name) ? 0 : 1][name] = value;\n return res;\n }, [{}, {}]);\n\n const deps = propsList.map(name => {\n const value = componentProps[name];\n\n if (setters[name]) {\n componentRef.current?.[setters[name]](value);\n return null;\n }\n\n return value;\n });\n\n useLayoutEffect(() => {\n componentRef.current = new JswComponent(componentProps);\n render(containerRef.current, componentRef.current);\n\n return () => {\n componentRef.current.remove();\n componentRef.current = null;\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [containerProps.key, ...deps]);\n\n return <div ref={containerRef} {...containerProps} />;\n};\n\nexport default convertToReactComponent;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { useCallback, useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport { escapeHtml, prepareUrl, addStatusMessage, clearStatusMessages, getControlPanelLoginHtml, Locale, SmallButton, api } from 'jsw';\nimport JswList from 'components/jsw/JswList';\n\nconst listLocale = Locale.getSection('admin.components.lists.appinfo');\n\nconst AppInfoList = ({\n packageId,\n updatesList,\n data,\n searchFilters,\n hasSettings = false,\n isClassicMode,\n}) => {\n const hasUpdate = useCallback(registryUid => updatesList.some(({ resourceId }) => resourceId === registryUid), [updatesList]);\n\n const operations = useMemo(() => [\n hasSettings ? {\n componentType: SmallButton,\n title: listLocale.lmsg('buttonChangeSettings'),\n description: listLocale.lmsg('buttonChangeSettingsDescription'),\n addCls: 'sb-app-configure',\n href: `/app/configure/id/${packageId}`,\n } : null,\n data.data.length ? {\n componentType: SmallButton,\n id: 'buttonCheckForUpdates',\n title: listLocale.lmsg('buttonCheckForUpdates'),\n description: listLocale.lmsg('buttonCheckForUpdatesDescription'),\n addCls: 'sb-upload-new-app',\n handler: () => {\n api.post(prepareUrl('/app/get-updates-data/'), { ids: packageId })\n .then(result => {\n clearStatusMessages();\n\n let message = listLocale.lmsg(result.length ? 'foundUpdates' : 'noUpdates');\n document.querySelectorAll('.update-available').forEach(element => {\n element.style.display = 'none';\n });\n result.forEach(({ resourceId, name, version }) => {\n message += `<br>${name} ${version}`;\n const updateEl = document.getElementById(`app-info-update-${resourceId}`);\n if (updateEl) {\n updateEl.style.display = '';\n }\n });\n\n addStatusMessage('info', message);\n })\n .catch(() => addStatusMessage('error', listLocale.lmsg('updateFailed')));\n },\n } : null,\n ], [data.data.length, hasSettings, packageId]);\n\n const columns = useMemo(() => [\n {\n header: listLocale.lmsg('installedAt'),\n sortable: true,\n dataIndex: 'installedAt',\n renderer(item) {\n const redirectUrl = `/app-update/index/resourceId/${item.resourceId}`;\n const returnUrl = prepareUrl(`/app/info/id/${escapeHtml(packageId)}`);\n const link = prepareUrl(`/subscription/login/id/${item.subscriptionId}?pageUrl=${redirectUrl}&returnUrl=${returnUrl}`);\n\n const text = (\n item.installedAt\n ? `<a href=\"${escapeHtml(item.installedAt)}\" target=\"_top\">${escapeHtml(item.installedAt)}</a>`\n : listLocale.lmsg('noInstallationUrlAvailable')\n );\n const updatesStyle = hasUpdate(item.resourceId) ? '' : ' style=\"display:none\"';\n const updatesText = (\n `<div id=\"app-info-update-${escapeHtml(item.resourceId)}\" class=\"hint-attention update-available\" ${updatesStyle}` +\n `<a href=\"${link}\" target=\"${'admin' !== item.subscriptionOwnerType ? '_blank' : '_top'}\">${\n listLocale.lmsg('update')\n }</a>` +\n '</div>'\n );\n\n let attentionText = '';\n if (item.notConfigured) {\n attentionText = (\n ` <span class=\"hint-attention \">${listLocale.lmsg('appNotConfigured')}</span>`\n );\n }\n return text + updatesText + attentionText;\n },\n }, {\n header: listLocale.lmsg('subscriptionName'),\n sortable: true,\n dataIndex: 'subscriptionName',\n renderer(item) {\n return (\n `<a href=\"${prepareUrl(`/subscription/overview/id/${item.subscriptionId}`)}\">${\n escapeHtml(item.subscriptionName)\n }</a>`\n );\n },\n },\n isClassicMode ? {\n header: listLocale.lmsg('subscriptionOwner'),\n sortable: true,\n dataIndex: 'subscriptionOwner',\n renderer(item) {\n if (item.subscriptionOwnerType === 'admin') {\n return escapeHtml(item.subscriptionOwner);\n }\n\n let url = '';\n if (item.subscriptionOwnerType === 'reseller') {\n url = prepareUrl('/reseller/overview/id/');\n } else {\n url = prepareUrl('/customer/overview/id/');\n }\n\n return (\n `<a href=\"${url}${item.subscriptionOwnerId}\">${\n escapeHtml(item.subscriptionOwner)\n }</a>`\n );\n },\n } : null,\n isClassicMode ? {\n header: '',\n sortable: false,\n renderer(item) {\n let hint = 'hintLoginClassicMode';\n if (!isClassicMode) {\n hint = 'admin' === item.subscriptionOwnerType ? 'hintAdminLogin' : 'hintLogin';\n }\n return getControlPanelLoginHtml(item.subscriptionId, {\n openInNew: 'admin' !== item.subscriptionOwnerType,\n label: listLocale.lmsg(isClassicMode ? 'buttonLoginClassicMode' : 'buttonLogin'),\n hint: listLocale.lmsg(hint),\n returnUrl: 'admin' === item.subscriptionOwnerType ? `/app/info/id/${packageId}` : null,\n isClassicUi: isClassicMode ? 'true' : 'false',\n });\n },\n } : null,\n ].filter(Boolean), [hasUpdate, isClassicMode, packageId]);\n\n return (\n <JswList\n id=\"admin-app-info-list\"\n data={data}\n dataUrl={`/admin/app/info-data/id/${packageId}`}\n searchFilters={searchFilters}\n searchOveral=\"installedAt\"\n operations={operations}\n columns={columns}\n />\n );\n};\n\nAppInfoList.propTypes = {\n packageId: PropTypes.string.isRequired,\n updatesList: PropTypes.array.isRequired,\n data: JswList.propTypes.data.isRequired,\n searchFilters: JswList.propTypes.searchFilters.isRequired,\n isClassicMode: PropTypes.bool.isRequired,\n hasSettings: PropTypes.bool,\n};\n\nexport default AppInfoList;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { Locale } from 'jsw';\nimport { withPageLayout } from 'components/layouts/PageLayout';\nimport AppInfoList from './AppInfoList';\n\nconst Translate = Locale.getTranslate('admin.controllers.app.info');\n\nconst AppInfoPage = props => (\n <>\n <p><Translate content=\"hint\" /></p>\n <AppInfoList {...props} />\n </>\n);\n\nexport default withPageLayout(AppInfoPage);\n"],"names":["propTypes","id","PropTypes","dataUrl","operations","itemActions","columns","data","state","pager","locale","additional","pathbar","searchFilters","searchOveral","disabledSelectHint","isDisabledItem","onRedraw","emptyViewMode","emptyView","defaultProps","undefined","JswList","convertToReactComponent","List","propsList","Object","keys","displayName","JswComponent","setters","props","containerRef","useRef","componentRef","componentProps","containerProps","entries","reduce","res","name","value","includes","deps","map","current","useLayoutEffect","render","remove","key","_jsx","ref","listLocale","Locale","getSection","AppInfoList","packageId","updatesList","hasSettings","isClassicMode","hasUpdate","useCallback","registryUid","some","resourceId","useMemo","componentType","SmallButton","title","lmsg","description","addCls","href","length","handler","api","post","prepareUrl","ids","then","result","clearStatusMessages","message","document","querySelectorAll","forEach","element","style","display","version","updateEl","getElementById","addStatusMessage","catch","header","sortable","dataIndex","renderer","item","redirectUrl","returnUrl","escapeHtml","link","subscriptionId","text","installedAt","updatesStyle","updatesText","subscriptionOwnerType","attentionText","notConfigured","subscriptionName","subscriptionOwner","url","subscriptionOwnerId","hint","getControlPanelLoginHtml","openInNew","label","isClassicUi","filter","Boolean","isRequired","Translate","getTranslate","withPageLayout","_jsxs","_Fragment","children","content"],"sourceRoot":""}
Submit
FILE
FOLDER
INFO
Name
Size
Permission
Action
info.js
5423 bytes
0644
info.js.map
16694 bytes
0644
uploaded.js
6334 bytes
0644
uploaded.js.map
18746 bytes
0644
usage.js
4331 bytes
0644
usage.js.map
13256 bytes
0644
N4ST4R_ID | Naxtarrr